0:00/0:00
// ... Baby One More Time — Britney Spears
// 93 bpm, 4/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 83 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(93/4)
// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/2 spreads a riff over 2 bars.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.
// chords · piano
const piano = note(`<
~ A ~ A ~ A ~@3 A ~@3 A B C D E F G H I@2 J K L M N O P ~ Q R S T U V W F G X Y@2 J K ~@4 Z AA AB AC AD AE AF AG@2 AH
AI O AJ AK AL AK AM AN G X I@2 J K AO AP AQ H I@2 J K ~@2
>`.pickRestart({
A: "~@5 [bb1,bb2] [c2,c3]!2", B: "[c3,g3,c4]@15 ~", C: "[g3,b3,d4]@15 ~", D: "[g3,bb3,eb4]@15 ~",
E: "[f3,ab3,c4,f4]@7 ~@3 [bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2, ~@5 bb1 ~@2", // Fm Bb C
F: "~@2 [c4,eb4,g4]@2 g3 ~ [c3,g3,c4,eb4]@2 g3 ~ [c3,g3,c4,eb4]@2 g3 ~ [g3,c4,eb4]@2, ~@2 [c3,g3] ~@11 c3 ~", // Cm C5
G: "[b3,d4] ~ [b3,d4]@2 g3 ~ [b3,d4]@2 g3 ~ [b3,d4]@2 g3 ~ [b2,b3,d4] ~, ~@2 [b2,g3] ~@3 [b2,g3] ~@3 [b2,g3] ~@3 g3@2", // Bm Em
H: "[eb3,bb3] ~ [eb3,g3,bb3,eb4]@2 ~@2 [eb3,g3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2 g3 ~ [eb3,g3,bb3,eb4]@2, eb4@2 ~@8 g3 ~@5", // Eb5 Eb Eb5 Eb
I: "[[f3,c4]@2 [f3,ab3,c4,f4]@2 ~@2 [f3,ab3,c4,f4] ~ g2 ~ g2@2 ~@2 g2@2 [c3,c4]@2 [c3,g3,c4,eb4,g4]@2 ~@2 [c3,g3,c4,eb4,g4]@2 ~@2 [c3,g3,c4,eb4]@2 ~@2 [c3,g3,eb4]@2, f4 ~@7 [c4,d4,g4]@4 [g3,g4]@6 ~@14, ~@12 [b3,d4]@4 eb4 ~@13 c4 ~]/2", // F5 Fm C Cm Csus2 G Bm
J: "[b2,d4] [b2,g3,b3,d4] ~ [b2,d4] [ab2,ab3,c4,eb4]@2 [bb2,f3,bb3,d4]@2, b3 ~@5 [g3,b3] ~@9", // Bm G Bm Ab Bb G
K: "g3 ~ eb3 ~ eb3 ~ eb3 [bb3,eb4], g4@13 ~ g4 ~, eb4@9 ~@7, [eb3,bb3]@5 ~@11, f3 ~ g3@4 [g3,bb3]@4 [g3,bb3,eb4]@4 ~@2", // Eb5 Gm Eb
L: "f3@2 ab3@2 f3@2 ab3 ~@3 [bb1,bb3]@2 [c2,c3,c4]@2 [c2,c3,c4]@2, [c4,f4]@6 ~@4 bb2 ~@5", M: "[c1,c2] ~@7",
N: "[b3,d4] ~", O: "[bb3,eb4]@15 ~", P: "[ab3,c4,f4]@7 ~@3 [bb1,bb2,bb3]@2 [c2,c3,c4]@2 [c2,c3,c4]@2, ~@12 b3 ~@3",
Q: "[b3,d4]@7 ~", R: "eb4, bb3@7 ~", S: "[ab3,c4]@8 ~@2 [bb1,bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2",
T: "[g3,c4,eb4]@10 ~@2 c4@2 eb4 ~, c3@15 ~, ~@10 g3@5 ~", // Cm
U: "~@4 b2@3 ~ b2@2 ~@2 g3 ~ [b2,d4] ~, b3@5 ~@3, d4@7 ~@3 g4@4 ~@2, ~ g3@3 ~@4", // Bm
V: "[db3,eb3] ~@9 g3@2 bb3 ~ eb4@2, [bb3,eb4]@11 ~@5, ~ eb3", // Dbsus2 Eb5
W: "c4@2 ~@2 c4@2 f4 ~ [g2,g3,c4,d4,g4]@2 [bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2, f3@7 ~@3 bb1@2 ~@4, f4@5 ~@11, ~ ab3@2 ~@5", // Gsus4 Bb C
X: "[bb3,eb4]@2 [eb3,g3,bb3,eb4]@2 ~@2 [eb3,g3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2 g3 ~ [eb3,g3,bb3,eb4]@2, eb3 ~@9 g3 ~@5", // Eb5 Eb Eb5 Eb
Y: "[[f3,c4,f4]@2 [f3,ab3,c4,f4]@2 ~@2 [f3,ab3,c4,f4] ~ g2 ~ g2@2 ~@2 g2@2 [c3,c4]@2 [c3,g3,c4,eb4,g4]@2 ~@2 [c3,g3,c4,eb4,g4]@2 ~@2 [c3,g3,c4,eb4]@2 ~@2 [c3,g3,eb4]@2, ~@4 [c4,d4,g4]@2 [g3,g4]@3 ~@7, ~@12 [b3,d4]@4 eb4 ~@13 c4 ~]/2", // F5 Fm C Cm Csus2 G Bm
Z: "~@10 [bb1,bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2", // Bb C
AA: "~@6 g4@2 eb4 ~ g4 ~ c5@2 eb5 ~, c3@7 ~, c5 ~, eb4@4 c4@11 ~, ~@2 g3@13 ~",
AB: "b4@2 d4@2 g4 ~ g5 ~ d4@2 g4 ~ c5@2 d5 ~, b3@7 ~, d5 ~@3",
AC: "~@6 bb4@2 ~@2 bb4@2 eb5@2 g5 ~, eb3@7 ~, eb5@4 g4@3 ~, g4@2 eb4@5 ~, ~ bb3@6 ~",
AD: "f5@2 c4@2 eb5@2 d5 ~ c5@2 ~@2 b4@3 ~, [f3,ab4]@4 f4 ~@3 [g3,g4]@6 ~@2, ~@5 d4@2 ~", // Fm G
AE: "ab4@2 eb4@2 ~@4 eb4@2 ~@2 c5@2 eb5 ~, ab3@7 ~, c5@4 ab4@5 ~ ab4@4 ~@2, ~@3 eb5@2 ~@3",
AF: "~@6 d4@2 f4@2 d4@2 bb4@2 f4 ~, bb2@15 ~, d5@9 ~@7, d4@4 bb3@9 ~@3, ~@2 f3@11 ~@3",
AG: "[~@2 c4@2 f4 ~@7 ab4@2 ~@2 c4@2 ~@2 ab3@2 c4 ~ d4@2 ~@2 [bb3,d4]@3 ~, [f3,c5]@13 ~@3 [ab2,eb4,ab4]@7 ~ [bb2,f4,bb4,d5]@8, ab4@2 ~ ab4@2 f4@2 c5@4 ~@5, ~@8 c4@8 ~@2 eb3@4 ~@4 f3@5 ~, ~@20 c4 ~@11]/2", // Bb F5 Ab5 Bb
AH: "[c3,g3,c4]@15 ~, c2 ~", AI: "[b2,b3,d4]@15 ~", AJ: "[c4,f4]@8 [g2,g3,d4]@7 ~, ~@2 c4 ~",
AK: "[ab1,ab2,c4,eb4,ab4]@7 ~", AL: "[bb1,bb2,bb3,d4,f4,bb4]@15 ~",
AM: "[f2,ab3,c4,f4]@3 ~ [bb1,bb2,f3,bb3] ~ [b1,b2,b3] ~", AN: "[c2,c3,c4,eb4,g4,c5]@3 ~@13",
AO: "[c4,f4,ab4]@7 ~@3 [bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2, f2@5 ~@5 bb1@2 ~@4, f3@3 ~@13", // Fm Bb C
AP: "~@2 [c4,eb4,g4]@2 g3 ~ [c3,g3,c4,eb4]@2 g3 ~ [c3,c4,eb4]@2 g3 ~ [g3,c4,eb4]@2, ~@2 [c3,g3] ~@7 g3 ~@3 c3 ~", // Cm C5
AQ: "[b3,d4] ~ [b2,b3,d4]@2 g3 ~ [b3,d4]@2 g3 ~ [b3,d4]@2 g3 ~ [b2,b3,d4] ~, ~@2 g3 ~@3 [b2,g3] ~@3 [b2,g3] ~@3 g3@2", // Bm Em
})).s("gm_piano").gain(0.33).pan(0.3)
// chords · epiano2 · "Elec Piano"
const epiano2 = note(`<
~ A ~ A ~ A B C D E F G ~ H I J K L M N O P Q R S T U V W X@2 Y Z AA AB AC AD AE AF AG AH AI AJ AK AL ~@4 A ~@4 AM AN
AO AP AQ AR AS AT AU AV AW AX AY AG AH AI AJ AK AL AZ AF BA AH AI AJ AK AL ~@2
>`.pickRestart({
A: "~@5 [bb1,bb2] [c2,c3]!2", B: "c4 ~@7", C: "d4@5 ~@5 g4@5 ~, b2@7 ~, b3@3 ~", D: "[bb3,eb4]@5 ~ eb4@6 bb3@2 ~@2",
E: "c4@5 ~@3 g2@2 [bb2,bb3]@2 [c3,c4]@2 [c3,g3,c4]@2, ab3@3 ~@5 g3@6 ~@2", // Bb C C5
F: "eb4@3 ~@2 c4 g3@2, c3@15 ~, c4@2 ~ g4@3 ~@2", G: "b3@3 ~@7 b3@3 ~@3, d4@7 ~",
H: "f2@4 g2 [bb2,bb3] c3 [c3,g3], c4@5 ~@3 g3@6 ~@2, ~@3 c4", // Bb C5
I: "c4@2 g3@6 g4@2 ~@2 c4@2 eb4 ~, c3@15 ~, eb4@10 g3@5 ~", J: "b3@4 g3@2 ~@4 g4@4 b3 ~, d4@5 ~@3",
K: "g3@7 ~@3 g4@2 g3@3 ~, [bb3,eb4]@13 ~@3", // Eb5
L: "f4@6 c4 ~ [g2,g3,d4]@2 bb3@2 [g3,c4]@2 [c2,g3,c4]@2, c4@2 ~@8 bb2 ~ c3@4", // G5 C5
M: "[g3,c4]@2 g3@2 c4 ~ [g3,eb4]@4 g3@2 [c4,eb4]@2 g3 ~, [c2,c3]@15 ~, [eb4,g4] ~@3", // C5 Cm C Eb
N: "[g3,b3,d4] ~ eb4 ~@3 b2@2 [g2,g3,b3]@2 g3 ~ [d2,d3,b3,d4]@2 g3 ~, b2@4 [d4,f4]@7 ~@5, ~ [g3,b3] ~@2", // G Dm G
O: "[g3,bb3]@2 g3@2 bb3 ~ [bb3,eb4,g4]@4 ~@2 bb3@2 eb4 ~, [eb2,eb3]@7 ~, eb4@5 ~@5 g3@4 ~@2", // Gm Eb
P: "[ab3,c4,f4] ~ [c4,g4] ~ [ab3,c4,ab4]@2 ~@2 [b3,d4]@2 g3@2 [g3,d4,g4]@2 g2 ~, f2@3 g4@3 ~@2, ~@8 g2@5 ~@3, ~@8 g3 ~@7", // Fm C5 Ab Bm G5
Q: "c4@2 g3@2 c4 ~ [c4,g4] ~ c4@2 g3@2 c4 ~ [g3,c4] ~, [c2,c3]@15 ~, [eb4,g4]@5 ~@3 g4@4 ~@4, g3 ~@15", // C5 C Eb
R: "[g3,b3]@2 c4@2 [g3,b3,d4]@2 b2@2 [ab2,ab3,c4,eb4]@3 ~ [bb1,bb2,f3,bb3,d4,f4]@3 ~, b2@5 ~@11", // G Ab Bb
S: "bb3@2 g3@2 bb3 ~ g3@2 ~@4 [bb3,g4]@2 eb3 ~, eb2@7 ~, eb3@7 ~ eb3@5 ~@3, [eb4,g4]@5 ~@5 g3@4 ~@2, g3 ~@5 [bb3,eb4]@5 ~@5", // Eb Eb5
T: "~@4 [f3,ab3,c4] ~ ab3 ~ g3@2 [bb1,bb3]@2 [c2,c3,c4]@2 [c2,c3,c4]@2, [f2,ab3,c4,f4]@2 f4 ~@5, ~@2 c3@4 ~@4 bb2 ~@5", // Fm Bb C Fm
U: "[g3,c4]@3 ~@13", V: "~@5 d4 g3@2, b2@13 ~@3, d4 ~, ~@6 g4@9 ~", W: "eb3@8 g3@2 ~@4 g4 ~, ~@5 eb3@2 ~, ~@3 g3",
X: "[~@4 ab3@2 c4@2 g2@2 bb3@2 [g3,c4]@2 ~@8 g4@2 ~@4 c4@2 eb4 ~, c4@5 ~@11 c3@14 ~@2, ~@2 f3@5 ~@7 [g3,c4]@4 g3@7 ~@7, ~@5 c4 ~@2]/2", // C5
Y: "~@6 b3 d4, b2@15 ~, d4@5 ~@3, ~@2 b3@3 ~@3, ~@6 g4@9 ~",
Z: "eb2 ~@4 g4 g3 eb4, ~@4 eb3@9 ~@3, ~@6 g3@5 ~@5, ~@2 bb3 ~",
AA: "ab3@4 f3@2 ab3 ~ [g2,d4,g4]@2 [bb2,bb3]@2 [c3,c4]@2 [g3,c4] ~, [f2,c4]@7 ~ g3@4 ~@4", // G5 Bb C C5 F5
AB: "eb4@4 c4@2 ~@2 g3@2 c4 ~ g3@2 [g3,c4,eb4] ~, c3@15 ~, g4@5 ~@3, c4@3 ~@3 eb4@4 ~@6", // Cm
AC: "~@8 g3@2 ~@2 d4@2 b2 ~, b2@13 ~@3, [b3,d4]@4 b3@5 ~@7, ~@2 g3@4 g4@9 ~", // Bm
AD: "eb3@4 eb3@3 ~@5 eb4@2 [eb3,bb3] ~, [bb3,eb4,g4]@3 ~, g3@2 ~@6 eb3@5 ~@3, ~@5 g3@2 ~", // Eb5 Eb
AE: "ab3@2 f3@2 ab3@2 f3 ~ g3@2 g2@2 [g3,g4]@2 g2 ~, [f2,f4]@7 ~ g2 ~@7, c4@5 ~@3 d4@6 ~@2", // G F
AF: "c3@2 g3@2 ~@2 [g3,c4] ~ g3@2 c3@2 g3@2 [c3,c4,eb4] ~, g4@13 ~@3, [c4,eb4]@6 ~@2 [c4,eb4]@5 ~@3, g3 ~@3 c3@5 ~@7", // C5 Cm
AG: "[b3,d4]@2 c4@2 ~@2 b2@2 ~@4 d3@3 ~, [b2,g3]@2 [b3,d4]@5 ~, ~@2 g3@3 ~@3", // Bm Em Bm
AH: "eb3 g3 eb3 ~@2 g3 ~ eb4, [bb3,eb4,g4]@7 eb3@4 ~ eb3@4, ~@3 g3 [bb3,eb4,g4]@3 ~", // Eb
AI: "ab3@2 ab3@2 f3@2 ab3 ~ [g2,g3,d4,g4]@2 [bb2,bb3]@2 [c3,g3,c4]@2 g3@2, [c4,f4]@6 ~@8 c4 ~, f3 ~@3", // G5 Bb C5 F5
AJ: "[c3,g3]@4 g3@2 ~ g3 ~@2 c3@2 c4@2 eb4 ~, [eb4,g4]@13 ~@3, c4@3 c3 [g3,c4]@2 g3@2", // C5 Eb C5
AK: "~@4 b2@2 g3 ~ [ab2,ab3,c4,eb4]@2 ab3 ~ [bb2,f3,bb3,d4]@3 ~, [g3,b3,d4]@3 ~@5", // Ab Bb G
AL: "[eb3,g3]@2 g3@2 eb3@2 ~ eb3 ~@2 eb3@2 g3@2 [eb3,g4] ~, g4@13 ~@3, [bb3,eb4]@6 g3@5 ~@5, ~@8 [bb3,eb4]@5 ~@3", // Eb Eb5
AM: "ab3@2 eb3@2 ab3@2 bb3@2 c4@2 eb3@2 ab3@2 eb4 ~, ab2@15 ~, [c4,eb4]@5 ~ eb4@6 ~@4", // Cm
AN: "~@2 f3@2 bb3 ~ bb4 ~ bb3 ~ f4 ~@3 bb3 ~, bb2, [d4,f4] ~@3", // Dm
AO: "~@4 c4@2 ab4@2 ab3@2 ~@2 ab3@2 c4 ~, f2@15 ~, [ab3,f4]@2 f3@5 ~, ~@2 c3@13 ~, ~@5 f4@2 ~", // Db
AP: "c4@2 ab3@2 c4@2 [ab2,eb4] ~ [bb3,d4]@2 f3 ~@3 bb2@2, [ab2,eb4]@4 ab3 ~@3 bb1@8, ~@2 [bb2,f4] [bb3,d4,f4]", // Ab5 Bb Ab5 Bb5 Bb
AQ: "[c3,c4,eb4]@15 ~", AR: "[b2,b3,d4]@7 ~", AS: "[eb3,bb3,eb4]@7 ~",
AT: "[f2,f3,c4,f4]@7 ~ c4@3 ~ b3 ~@3, ~@8 [g2,d4]@7 ~", AU: "[ab2,c4,eb4]@15 ~", AV: "[bb2,f3,bb3,d4]@15 ~",
AW: "[ab2,ab3,c4,eb4]@15 ~", AX: "[f2,f3,ab3,c4,eb4]@4 [bb1,bb2,f3,bb3] ~ [b1,b2,gb3,b3] ~, g3 ~@15",
AY: "[c2,c3,c4,g4,c5]@3 ~@13", AZ: "~@2 f3@2 ab3 ~ f3 ~ [c4,d4]@4 [d4,g4]@4, [f2,ab3,c4,f4]@4 ~@4 g4 ~@7",
BA: "[b3,d4]@2 c4@2 ~@2 b2@2 ~@4 d3@3 ~, [b2,g3]@2 [b3,d4]@5 ~, ~@4 g3@5 ~@7", // Bm Em Bm
})).s("gm_epiano2").gain(0.28).pan(0.7)
// chords · epiano2 · "Elec Piano" · soft notes
const epiano2_soft = note(`<
~@6 A B C D E F@3 G H I J K ~@8 L M N O P Q R S T U ~ V W X ~ Y ~@12 Z AA AB ~@9 W X ~ Y ~@3 V W X ~ Y ~@4
>`.pickRestart({
A: "~@8 g3@2 ~@4 c4 ~, c3@15 ~, eb4@4 ~ eb4@2 ~, ~ g3@2 g4@4 ~, ~ c4 ~ g3", B: "~ g3@3 ~@2 g3@5 ~ g3 ~@3",
C: "~@4 g3@2 ~@2 bb3@2 g3@4 f4 ~, eb3@13 ~@3", D: "~@2 ab3 eb4 ~@4, f2 ~, ~ f3@2 ~@5",
E: "g3@7 ~ g3@3 ~@3 eb4 ~, ~@7 eb4@5 ~@4",
F: "[~@14 b3 ~@11 g4@2 g3@2 ~@6 f3@2 ~@2 c4@2 ~@6, b2@7 ~ eb3@6 ~@10, ~@2 g3@8 ~@2 g3@8 ~@2 g3@5 ~@5 ab3@7 ~@9, ~@4 b3@6 ~@6 [bb3,eb4]@8 bb3@5 ~@19, ~@6 g4@9 ~@15 eb4@7 ~ eb4@4 ~@6]/3", // Eb5
G: "~@2 c4@3 ~@3", H: "~@6 b3 ~ g3@2 ~@2 g3@2 ~@2, ~ b2@6 ~", I: "~@8 g3@4 ~@2 [bb3,eb4] ~",
J: "~@4 ab3@2 ~@5 bb2 ~@4", K: "~@4 c4 ~@3", L: "~@4 b3@2 ~@2 g3@2 ~@4 [b2,d4] ~, ~@2 g3@5 ~@9",
M: "~@2 g3@4 bb3@5 ~@3 bb3 ~, eb4@7 ~", N: "f2 ~", O: "~@8 eb4@2 g3@5 ~", P: "~@2 g3@5 ~@3 g3@5 ~",
Q: "~@2 bb2 ~@13, eb4 ~, g3@5 ~@11", R: "~ c3@2 ~@3 g3 ~", S: "~ g3@2 ~@5", T: "~@10 b3@2 g3@3 ~",
U: "~@2 g3@3 ~ g3@2 ~@4 bb3 ~@3", V: "~@6 eb4 ~@7 g3 ~", W: "~@10 g3@3 ~@3, ~@10 g2 ~@5", X: "~@14 g3 ~",
Y: "~@14 [e1,f1] ~", Z: "~@6 f4 ~", AA: "~@3 c4 ~@4", AB: "~@4 eb4 ~@11",
})).s("gm_epiano2").gain(0.17).pan(0.7)
// chords · pad sweep · "Sweep Pad"
const pad_sweep = note(`<
~@5 A ~@7 B ~@3 A C@2 D E@4 F ~@3 G ~@3 H ~@4 C@2 D E@4 ~@9 I J K L M N O P Q R S T ~@2 D E@4 U C@2 D E@4 ~@2
>`.pickRestart({
A: "~@5 [c5,c6]@3", B: "~@5 [c4,g4,c5]@3", C: "g5/2", D: "g5", E: "[ab5@3 g5@7 ab5 bb5@5]/4", F: "ab5@8 ~ [c5,c6]@7",
G: "~@9 [c5,c6]@7", H: "~ [c5,g5,c6]", I: "[ab1,ab3,c4,eb4]@7 ~", J: "[bb1,bb3,d4,f4]@7 ~", K: "[f1,ab3,c4,eb4]@7 ~",
L: "[ab1,ab3,c4,eb4]@6 ~@2 [bb1,bb3,d4,f4]@7 ~", M: "c5", N: "d5", O: "eb5", P: "f5 g5", Q: "~@3 c5, ab4@15 ~",
R: "[bb4,d5]", S: "[c5,eb5]", T: "[c5,f5]@8 bb4 ~@7", U: "f5@8 g5@7 ~",
})).s("gm_pad_sweep").gain(0.28).pan(0.3)
// chords · pad new age · "Fantasia"
const pad_new_age = note(`<
~@2 A ~ B@2 C ~ D E C F D E C G H ~ C I D J C K L M N I D O C G H P C I L M C I D J C K L ~@5 Q R S T U V W X Y Z AA
AB AC AD AE AF AG AH D J C K L AI C I D J C K L ~@2
>`.pickRestart({
A: "c6@7 ~, g5@3 ~", B: "[c5@21 ~@11]/2", C: "c5", D: "bb4", E: "~ b4", F: "d5 ~", G: "d5@2 g4 f4", H: "g4",
I: "d5 g4", J: "c5@3 b4", K: "d5@2 ab4 bb4", L: "eb5", M: "f5@4 g5 ~@3", N: "[c5,eb5,g5,b5,c6] ~@15", O: "c5@3 ~",
P: "ab4@4 ~ bb4 c5!2", Q: "[c3,g3,c4,eb4,g4], c2@3 ~@13", R: "[b2,g3,b3,d4]@15 ~", S: "[bb2,bb3], [g3,eb4]@7 ~",
T: "[f2,ab3,c4,f4]@8 [g3,c4,d4]@4 [g3,b3,d4]@3 ~, ~ g2", U: "[ab2,ab3,c4], [bb3,eb4]@7 ~", V: "[bb2,f3,bb3,d4]",
W: "[f2,f3,ab3,c4,eb4]@15 ~", X: "[ab2,ab3,c4] [bb2,f3,bb3,d4,f4], eb4@3 ~@5", Y: "[c4,eb4]@15 ~", Z: "[d4,f4]@7 ~",
AA: "[eb4,g4]@15 ~", AB: "[f4,ab4]@7 ~ [g4,c5]@4 [g4,b4]@3 ~", AC: "[ab4,c5]@15 ~", AD: "[bb4,d5]@13 ~@3",
AE: "eb5@11 ~ eb5@3 ~, c5@15 ~", AF: "[c5,f5]@7 ~ bb4@2 ~@2 b4@2 ~@2",
AG: "[c3,c4,eb4,g4,c5] ~@5 g4 c5, ~@10 eb4@5 ~", AH: "~ g4, [b4,d5]@15 ~", AI: "ab4@7 ~ g4@2 ab4 ~ g4@4",
})).s("gm_pad_new_age").gain(0.22).pan(0.8)
// chords · pad new age · "Fantasia" · soft notes
const pad_new_age_soft = note("<~@2 A ~@4 B ~ C ~ D ~ C ~ E ~@13 F ~@23 G ~@13 H ~@15>".pickRestart({
A: "c5@3 ~", B: "d5 g4", C: "c5 ~", D: "~ g4", E: "~@8 a4 ~@7", F: "~@3 b4", G: "f3 ~", H: "~ g4@7 ~@8",
})).s("gm_pad_new_age").gain(0.17).pan(0.8)
// other · electric guitar muted · "Mute Guitar"
const electric_guitar_muted = note("<~ A ~@2 B C ~@2 D E ~@2 F@2 ~@32 G@4 ~@33>".pickRestart({
A: "~@10 [bb1,bb2,bb3] ~ [c2,c3,c4]@2 [c2,c3,c4]@2", B: "~@3 g4", C: "eb4 c4@9 ~@6", D: "~@2 bb3@5 g3", E: "f3 ~",
F: "[~@4 bb3@11 g3@8 ~@9]/2", G: "[c3@12 bb3@15 ~ bb3@14 c3@2 bb3@7 ~ f4@5 ~@7]/4",
})).s("gm_electric_guitar_muted").gain(0.39)
// other · electric guitar muted · "Mute Guitar" · soft notes · C5
const electric_guitar_muted_2 = note("<~@3 [~ [g3,c4]@3] ~@4 [~@4 b3 ~@11] ~@40 [~@9 eb4@7] ~@33>")
.s("gm_electric_guitar_muted").gain(0.24)
// chords · percussive organ · "Organ"
const percussive_organ = note(`<
~ A ~ A ~ A ~@3 A ~@3 A B C D E B C F G B H D I J K L M N O L P Q R L S B C F G B H D ~@13 T U L V W X Y Z AA C F G B
H D AB B C F G B H D ~@2
>`.pickRestart({
A: "~@5 [bb2,bb3] [c3,c4]!2", // Bb C
B: "[eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~ [eb5,g5,c6] ~", // Cm
C: "[g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~", // G
D: "[g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~", // Eb
E: "[ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [g5,b5,d6] ~@7", // Fm G
F: "[g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,eb6] ~ [g5,bb5,db6,eb6] ~ [g5,eb6] ~", // Eb Eb7 Cm
G: "[ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [g5,c6,d6] ~ [g5,c6,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~", // Fm Gsus4 G
H: "[g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [g5,b5,d6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [f5,bb5,d6] ~ [f5,bb5,d6] ~", // G Ab Bb
I: "[ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~@3 [bb2,bb3]@2 c3@2 c3@2, ~@12 c4 ~ c4 ~", // Fm Bb
J: "[g4,c5,eb5]@3 ~@13", // Cm
K: "[b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // G
L: "[bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~ [bb5,eb6,g6] ~", // Eb
M: "[c6,f6,ab6] ~ [c6,f6,ab6] ~ [c6,f6,ab6] ~ [c6,f6,ab6] ~ [c6,d6,g6] ~ [c6,d6,g6] ~ [b5,d6,g6] ~@3", // Fm Csus2 G
N: "[g5,c6,eb6,g6] ~ [c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~", // Cm
O: "[b5,d6,f6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // G7 G
P: "[ab5,c6,f6,ab6] ~ [ab5,c6,f6,ab6] ~ [ab5,c6,f6,ab6] ~ [ab5,c6,f6,ab6] ~ [c6,d6,g6] ~ [c6,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // Fm Csus2 G
Q: "[g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~ [g5,c6,eb6,g6] ~", // Cm
R: "[g5,b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // G
S: "[c6,f6,ab6] ~ [c6,f6,ab6] ~ [c6,f6,ab6] ~ [c6,ab6] ~ [c6,g6] ~ bb5@2 [g5,c6]@2 [g5,c6]@2", // Fm C5
T: "[c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~ [c6,eb6,g6] ~", // Cm
U: "[b5,c6,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // G
V: "[ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [c6,d6,g6] ~ [c6,d6,g6] ~ [b5,d6,g6] ~ [b5,d6,g6] ~", // Fm Csus2 G
W: "[ab5,c6,eb6] ~ [ab5,b5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~ [ab5,c6,eb6,ab6] ~", // Ab
X: "[bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~ [bb5,d6,f6] ~", // Bb
Y: "[ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,c6,eb6] ~ [ab5,eb6] ~", // Ab Ab5
Z: "[f5,ab5,c6,eb6] ~ [f5,ab5,c6,eb6] ~ [f5,ab5,db6,eb6] ~ [f5,ab5,db6,eb6] ~ [f5,bb5] ~@3 [gb5,b5]@2 ~@2", // Fm7 Db Bb5 B5
AA: "[c3,c4,c5,c6] ~@7", // C
AB: "[ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [ab5,c6,f6] ~ [c6,d6,g6] ~ [d6,g6] ~ [d6,g6] ~ [d6,g6] ~", // Fm Csus2 G5
})).s("gm_percussive_organ").gain(0.28).pan(0.7)
// chords · string ensemble 2 · "Slow Strings"
const string_ensemble_2 = note(`<
~@18 A B C D E F G H ~@12 A B C D E F G ~ I@4 J K J L M N O P Q R S T U V W X Y B C D E Z G AA A B C D E F G ~@2
>`.pickRestart({
A: "[eb5,g5,c6]@15 ~", B: "[g5,b5,d6]@7 ~", C: "[g5,bb5,eb6]", D: "[ab5,c6,f6]@7 ~ c6@4 b5@2 ~@2, ~@8 [g5,d6,g6]@7 ~",
E: "[c6,eb6,g6,c7], [d6,ab6] ~@15", F: "[b5,d6,g6,b6]@6 ~@2 [ab5,c6,eb6]@3 ~ [f5,bb5,d6]@3 ~",
G: "[eb5,g5,bb5,eb6]@7 ~", H: "[f5,ab5,c6,f6] ~", I: "[c7@7 ~]/4", J: "eb4", K: "d4", L: "f4@2 c5 b4",
M: "ab1@6 ~@8 c4 ~, [ab2,c5], c4@3 ab3, [eb3,ab3]@5 eb3@2 ~, ~@3 ab1@5", // Ab Ab5
N: "bb1@6 ~@6 bb3@2 d4 ~, [f3,d5], d4@13 ~@3, bb3@11 ~@5, ~@3 bb1@4 ~", // Dm
O: "f1@6 f1@9 ~, eb5, [ab3,c4,eb4]@7 ~, e1 ~@15", P: "[ab1,ab3,c4,ab4,eb5]@6 ~@2 [bb1,f3,bb3,d4,bb4,f5]@7 ~",
Q: "[g3,c4,eb4]", R: "[g3,b3,d4,f4]", S: "[g3,bb3,eb4,g4]", T: "[ab3,c4,f4]@6 ~@2 c4@3 ~ b3@3 ~, ~@8 [d4,g4]@7 ~",
U: "[c4,eb4,ab4]@7 ~, ab3@3 ~@5", V: "[d4,f4,bb4], e4 ~@15", W: "[c4,eb4,ab4]",
X: "[c4,f4,ab4]@7 ~ [bb3,bb4,bb5]@2 ~@2 [b3,b4,b5]@3 ~", Y: "[c2,c3,c5,c6] ~@7",
Z: "[b5,d6,g6,b6]@5 ~@3 [ab5,c6,eb6]@3 ~ [f5,bb5,d6]@3 ~", AA: "[ab5,f6] [g5,d6], c6",
// … 130 more lines
More by Britney Spears
(You Drive Me) CrazyE♭ major · 100 bpmLuckyA minor · 100 bpmSometimesG major · 98 bpmDon't Go Knockin' on My DoorB♭ minor · 112 bpmDon't Let Me Be The Last To KnowE major · 120 bpmFrom the Bottom of My Broken HeartG major · 76 bpmI Love Rock 'n' RollE major · 94 bpmOops!... I Did It AgainC♯ minor · 95 bpm
Not in the database
That song isn't here.
Nothing in the database matches this link. It may have been renamed, or the address was mistyped. The closest songs to :
Real transcriptions · Editable patterns · Instrumental
Type a song.
Get Strudel code.
Chords, structure, melody, bass and drums compiled from open transcriptions into Strudel live-coding patterns. Play it here, scrub through the bars, then open it in strudel.cc and start hacking.
Smells Like Teen SpiritNirvana
The JokerSteve Miller Band · 1973
Love Me DoThe Beatles · 1964
I Don't MindJames Brown · 1961
- Real transcriptionsMcGill chord charts, Lakh MIDI and quality-filtered PDMX scores. The library includes alternate transcriptions of some songs.
- One bar, one cycleEvery layer follows the same bar timeline, keeping the code, playback and song structure aligned.
- Instrumental by designDetected vocal parts are removed. Guitar riffs, harmonica and other instrumental leads stay.