0:00/0:00
// Rama Lama Ding Dong — Edsels
// 127 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: Full arrangement: all 73 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(127/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(`<
~@4 A B C B C B C D A B C B C B C D E F G F G F G H I J K L M J N@2 O P Q P Q P Q R O P Q P Q P Q R ~@3 A B C B C B C
D A B C B C B S@2 ~@2
>`.pickRestart({
A: "~@12 [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~ [c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~", // C
B: "[c4,e4,a4]@3 [a1,a2,c4,e4,a4] ~@2 [c4,e4,a4]@2 ~ [c4,e4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2] [c4,f4,a4] ~ [c4,f4,a4] [f1,f2] ~ [c4,f4,a4]@2 ~, ~@9 [a1,a2] ~@14", // Am F A
C: "[b3,d4,g4]@3 [g1,g2,b3,d4,g4] ~@3 [g1,g2] ~ [b3,d4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~ [c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~, ~@3 [b3,d4,g4] ~@8", // G C G
D: "[c4,f4,a4]@3 [f2,f3] [c4,f4,a4] ~@2 [f2,f3] ~ [c4,f4,a4]@2 ~ [c4,e4,g4]@2 ~@10, ~@3 [c4,f4,a4] ~@8", // F C F
E: "~@12 [c4,e4,g4]@3 [c2,c3] ~ [c4,e4,g4]!2 ~ [c2,c3] [c4,e4,g4]@2 ~", // C
F: "[c4,e4,a4]@3 [a1,a2,c4,e4,a4] ~@2 [c4,e4,a4]@2 ~ [c4,e4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2] ~ [c4,f4,a4]!2 ~ [f1,f2] [c4,f4,a4]@2 ~, ~@9 [a1,a2] ~@14", // Am F A
G: "[b3,d4,g4]@3 [g1,g2,b3,d4,g4] ~@2 [b3,d4,g4]@2 [g1,g2] [b3,d4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3] ~ [c4,e4,g4]!2 ~ [c2,c3] [c4,e4,g4]@2 ~", // G C
H: "[c4,f4,a4]@3 [f2,f3] ~ [c4,f4,a4] [c4,f4,a4]@2 [f2,f3] [c4,f4,a4]@2 ~ [c4,e4,g4]@2 ~@10", // F C
I: "~@18 [c4,f4,a4]@3 [f1,f2] [c4,f4,a4] ~", // F
J: "[c4,f4,a4] [f1,f2] ~ [c4,f4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2,c4,f4,a4] ~@3 [f1,f2] ~ [c4,f4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2] [c4,f4,a4] ~, ~@6 [c4,f4,a4] ~@5", // F
K: "[c4,f4,a4] [f1,f2] ~ [c4,f4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2,c4,f4,a4] ~@3 [f1,f2] ~ [c4,f4,a4]@2 ~ [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~, ~@6 [c4,f4,a4] ~@5", // F C F
L: "[c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3,c4,e4,g4] ~@2 [c4,e4,g4]@2 ~ [c4,e4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~, ~@15 [c2,c3] ~@8", // C
M: "[c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3,c4,e4,g4] ~@2 [c4,e4,g4]@2 ~ [c4,e4,g4]@2 ~ [c4,f4,a4]@3 [f1,f2] [c4,f4,a4] ~, ~@15 [c2,c3] ~@8", // C F C
N: "[[c4,f4,a4] [f1,f2] ~ [c4,f4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2,c4,f4,a4] ~@3 [f1,f2] ~ [c4,f4,a4]@2 ~ [d3,f3,a3]@24 ~@6, ~@6 [c4,f4,a4] ~@17]/2", // F Dm F
O: "~@18 [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~", // C
P: "[c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~ [c4,e4,a4]@3 [a1,a2,c4,e4,a4] ~@2 [c4,e4,a4]@2 ~ [c4,e4,a4]@2 ~ [c4,f4,a4]@3 [f1,f2] [c4,f4,a4] ~, ~@15 [a1,a2] ~@8", // C Am F A
Q: "[c4,f4,a4] [f1,f2] ~ [c4,f4,a4]@2 ~ [b3,d4,g4]@3 [g1,g2,b3,d4,g4] ~@3 [g1,g2] ~ [b3,d4,g4]@2 ~ [c4,e4,g4]@3 [c2,c3] [c4,e4,g4] ~, ~@6 [b3,d4,g4] ~@5", // F G C G
R: "[c4,e4,g4] [c2,c3] ~ [c4,e4,g4]@2 ~ [c4,f4,a4]@3 [f2,f3] [c4,f4,a4] ~@2 [f2,f3] ~ [c4,f4,a4]@2 ~ [c4,e4,g4]@2 ~@4, ~@6 [c4,f4,a4] ~@5", // C F C F
S: "[[b3,d4,g4]@3 [g1,g2,b3,d4,g4] ~@3 [g1,g2] ~ [b3,d4,g4]@2 ~ [c2,c3,c4,e4,g4]@16 ~@20, ~@3 [b3,d4,g4] ~@20]/2", // G C G
})).s("gm_piano").gain(0.23).pan(0.3)
// bass · acoustic bass
const bass = note(`<
~@4 A B C B C B D E A B C B C B D E A B C B C B D E F G H I J K L@2 M N O N O N O P M N O N O N O P ~@3 A B C B C B D
E A B C B C B Q@2 ~@2
>`.pickRestart({
A: "~@6 c2@2 ~ c2@2 ~", B: "a1@3 ~@3 a1@4 ~@2 f1@4 ~@2 f1@4 ~@2", C: "g1@3 ~@3 g1@2 ~ b1@3 c2@4 ~@2 c2@4 ~@2",
D: "g1@3 ~@3 g1@2 ~ b1@3 c2@4 ~@2 c2@3 ~@3", E: "f2@4 ~@2 f2@4 ~@2 c2@3 ~@9", F: "~@9 f1@2 ~",
G: "f1@3 ~@3 f1@4 ~@2 f1@3 c2@3 f2@5 ~, ~@18 e2 ~@5", H: "c2@4 ~@2 f2@2 ~ e2@2 ~ d2@2 ~ c2@2 ~ c2@4 ~@2",
I: "g1@3 ~@3 c2@4 ~@2 g1@3 ~@3 c2@4 ~@2", J: "g1@4 ~@2 c2 ~@2 c2@2 ~ d2 ~@2 e2 ~@2 f2@4 ~@2",
K: "c2@3 ~@3 f2@4 ~@2 c2@3 ~@3 f2@4 ~@2", L: "[c2@2 ~ f2@2 ~ c2@2 ~ d2@12 ~@3]/2", M: "~@9 c2@2 ~",
N: "c2@4 ~@2 a1@3 ~@3 a1@4 ~@2 f1@4 ~@2", O: "f1@4 ~@2 g1@3 ~@3 g1@2 ~ b1@3 c2@4 ~@2",
P: "c2@3 ~@3 f2@4 ~@2 f2@4 ~@2 c2@3 ~@3", Q: "[g1@3 ~@3 g1@2 ~ b1@3 c2@36]/2",
})).s("gm_acoustic_bass").gain(0.44)
// other · tenor sax
const tenor_sax = note("<~@43 A B@3 C D E F G ~@4 H I J K L M N ~@10>".pickRestart({
A: "~@18 g4@3 g4 ~ g4",
B: "[g4@3 ~ g4!2 ~ g4!2 f4 ~ d4 e4@3 g4@2 ~ c5@18 a4 g4 ~ e4 d4 ~ c4@11 ~ c4@6 a3@6 g3 ~ g3 ~@3]/3",
C: "g3@3 ~@7 g3 ~ e3 a3!5 a3@2 ~ c4 ~@2", D: "c4@2 ~ a3@3 b3@2 d4 ~@3 g4@4 ~@8, ~@3 c4 ~@20",
E: "e4!3 [e4,g4] ~@2 c5@18", F: "~@6 a4 ~@2 a4!2 ~ g4 ~@2 g4!2 ~ e4 ~ e4 d4 ~@2",
G: "c4@5 ~ c4 ~ c4@3 ~ c4@3 ~@3 c4 ~@5", H: "~@15 a4 ~ a4 c5 ~ c5 a4 ~ a4", I: "g4 ~@2 g4 ~ e4 ~@2 d4@4 ~ c4 ~@10",
J: "~@9 g4 f4 ~ e4 ~@11", K: "~@8 d4 f4@2 g4 ~@12", L: "~@3 a4 ~@2 c5@2 d5 c5 ~@2 c5 ~@8 c5 ~@2",
M: "d5@8 ~@4 c5 ~ c5@6 ~@4", N: "g4 ~@9 d#4 d4 c4@2 ~@10",
})).s("gm_tenor_sax").gain(0.46).pan(0.6)
// chords · banjo
const banjo = note("<~@4 A@2 B@2 C@2 D@2 E@2 C@2 F@2 D@2 G@2 C@4 D@2 H@7 ~ I@8 J@8 ~@21>".pickRestart({
A: "[~@12 [c3,e3,g3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], ~@15 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7, ~@16 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@5, ~@39 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2]/2", // C C5 C Am A5 Am A Am …
B: "[~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@7 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@5, ~@12 g3 ~@2 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7, ~@39 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2]/2", // G C C5 C Am A5 Am A …
C: "[~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@7 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2, ~@12 g3 ~@2 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7]/2", // G C C5 C Am A5 Am A …
D: "[~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4]@3 [c3,e3]@2 [c3,c4] c3@2 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 c3 [c3,g3,c4]@3 [c3,a3]@2 c3 c3@2 [c3,a3,c4,f4,a4] [c3,a3,c4,f4,a4]@3 [c3,e3,g3,e4,c5]@6 ~@6, d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@8 [e3,g3]@3 ~@4 e3@5 [f3,a3,c4,f4,a4]@3 f3@4 ~@12, ~@12 g3 ~@2 c4 ~@2 c4 ~ [e4,c5]@7 [c4,f4] ~@8 c4 ~@11]/2", // G C C5 F C G5 G Em …
E: "[~@12 [c3,e3,g3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], ~@15 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7, ~@16 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@5, ~@39 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2]/2", // C C5 C Am A5 Am A Am …
F: "[~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,a3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@7 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@5, ~@12 g3 ~@2 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7, ~@39 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2]/2", // G C C5 C Am A5 Am A …
G: "[~@12 [c3,e3,g3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4], ~@15 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7, ~@16 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@2]/2", // C C5 C Am A5 Am A Am …
H: "[~@18 [c3,f3,a3,c4,f4,c5]@3 f3 ~ c3 [c3,a3]@2 [c3,f3,a3,c4,f4,c5] [f3,c4]@2 [c3,f3,a3] [f3,a3,c4]@3 [c3,f3,a3]@2 [c3,a3,c4] [c3,a3]@2 [c3,f3,a3,c4,f4,a4] [c3,f3,a3,c4]@2 c3 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] [f3,a3] ~@2 [a3,c4] ~ a3!2 [a3,c4,a4] [c3,f3] [c3,f3,a3,c4]@3 [c3,e3,g3,c4,e4,c5]@3 [e3,c4] ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [e3,c4]@3 [g3,c4,e4] g3 [c3,c4] c4 g4 [c3,e3,g3,c4,e4] [c3,e3,g3,c4]@2 c3 [c3,c4]@3 [c4,e4] ~ [e3,c4] c4 e4 [c3,e3,g3,c4] [c3,e3,g3,g4]@2 [c3,e3,g3,c4] [g3,c4] ~@2 [c4,g4] ~ c4!2 [c4,g4,c5] [c3,g3] [c3,g3,c4,c5]@3 [c3,f3,a3,c4,f4,c5]@3 f3 c5 c3 [c3,a3]@2 [c3,f3,a3,c4,f4,c5] [c3,f3,c4]@2 [c3,f3,a3] [f3,a3,c4]@3 [c3,f3,a3]@2 [c3,a3,c4] [c3,a3]@2 [c3,f3,a3,c4,f4,a4] [c3,f3,a3,c4]@2 c3 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] [f3,a3] ~@2 [a3,c4] ~ a3!2 [a3,c4,a4] [c3,f3] [c3,c4,a4]@8 ~, ~@21 [a3,c4]@2 f3@3 ~ a3 ~@2 c3 ~@4 [f3,f4,a4]@3 ~@4 f3@5 ~@7 c3@3 c3@2 [c3,f3]@3 ~@7 g3@2 e3@3 ~ g3 ~@2 [c3,g3] ~@2 [c3,e3]@2 [e3,e4]@3 ~ [e4,g4]@6 g4@4 g4@2 ~@7 g4@3 ~@2 g4@7 f4@4 ~ [f4,c5]@6 ~@6 [f4,a4]@6 ~@27, ~@22 [f4,c5]@4 ~ [f4,c5]@6 [c4,f4] ~@2 c4 ~@2 [f4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@6 c4@3 ~@2 a4@7 [e4,c5]@4 ~ [e4,c5]@6 ~ g4@2 [c3,g3]@2 ~@4 e3 ~@2 [c3,g3]@2 g3@3 ~@4 c3@3 c3@2 [c3,g3]@3 ~@9 f3@3 ~@4 c3 ~@4 [f3,f4,a4]@3 ~@4 f3@5 ~@7 c3@3 c3@2 [c3,f3]@3 ~ [f3,a3]@3 ~@6, ~@94 e4@3 ~@2 [c4,e4] ~@17 [a3,c4]@3 ~@3 a3 ~@5 [c4,f4] ~@2 c4 ~@8 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@6 c4@3 ~@11]/7", // F F5 F C F F5 F Am …
I: "[~@18 [c3,e3,g3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4]@3 [c3,e3]@2 [c3,c4] c3@2 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 c3 [c3,g3,c4]@3 [c3,a3]@2 c3 c3@2 [c3,a3,c4,f4,a4] [c3,a3,c4,f4,a4]@3 [c3,e3,g3,e4,c5]@6, ~@21 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@7 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@14 g3 ~@2 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@8 [e3,g3]@3 ~@4 e3@5 [f3,a3,c4,f4,a4]@3 f3@4 ~@6, ~@22 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@14 g3 ~@2 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@7 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@14 g3 ~@2 c4 ~@2 c4 ~ [e4,c5]@7 [c4,f4] ~@8 c4 ~@5]/8", // C C5 C Am A5 Am A Am …
J: "[~@18 [c3,e3,g3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4,e4,c5]@3 e3 ~ c3 [c3,g3]@2 [c3,e3,g3,c4,e4,c5] [c3,e3,c4]@2 [c3,e3,g3] [a2,e3,a3,c4]@3 [a2,e3,a3]@2 [a2,a3,c4] [a2,a3]@2 [a2,e3,a3,c4,e4,a4] [a2,e3,a3,c4]@2 a2 [c3,c4]@3 [c3,a3]@2 [f3,c4] c4 ~ [c3,f3,a3,c4,f4,a4] [c3,f3,a3,f4,a4]@2 [c3,f3,a3,c4] ~ [g3,b3]@3 [d3,b3,g4] b3!2 ~ [d3,g3,b3,g4,b4] [g3,b3]@3 [c3,e3,c4]@3 [c3,e3]@2 [c3,c4] c3@2 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 c3 [c3,g3,c4]@3 [c3,a3]@2 c3 c3@2 [c3,a3,c4,f4,a4] [c3,a3,f4,a4]@3 [e3,g3,e4,c5]@6, ~@21 [g3,c4]@2 e3@3 ~ g3 ~@7 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@8 e3@3 ~@9 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@8 e3@3 ~@9 [e3,e4,a4]@3 ~@4 f3@5 ~@7 d3@3 ~@2 [d3,g3,g4]@3 ~ [d3,g4,b4]@8 [e3,g3]@3 ~@4 e3@5 [f3,a3,c4,f4,a4]@3 f3@4 ~@6, ~@22 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@21 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 [c4,f4] ~@5 c4 ~@18 [e4,c5]@4 ~ [e4,c5]@6 [c4,e4] ~@2 c4 ~@2 [e4,a4]@6 a4@4 ~@32 [c4,f4] ~@5 c4@6 ~@3, ~@45 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@14 g3 ~@2 [g3,c4]@3 ~@3 g3 ~@19 [a3,f4]@3 ~@16 g3 ~@2 [g3,c4]@3 ~@3 g3 ~@17 [c4,f4] ~ [a3,f4]@3 ~ c4 ~@14 g3 ~@2 c4 ~@2 c4 ~ [e4,c5]@8 ~@14]/8", // C C5 C Am A5 Am A Am …
})).s("gm_banjo").gain(0.06).pan(0.7)
// chords · banjo · soft notes
const banjo_soft = note(`<
~@4 A B C B C D E F G B C D H I E F G D C D C D E F ~ J K L M N K ~@2 N O N O N P Q ~ R O N O R P Q ~@21
>`.pickRestart({
A: "~@18 c4 ~@2 c3@2 ~", B: "~@3 a4 ~@8 a3@3 ~@3 [c3,f3]@2 ~@4", C: "~@4 b4@4 ~@10 c4 ~@5",
D: "~@3 a4 ~@8 a3@3 a4@3 [c3,f3]@2 ~@4", E: "~@4 b4@4 ~@7 c5@4 ~@5", F: "~@3 a4 ~@20", G: "~@18 c4 ~@5",
H: "~@4 b4@4 ~@10 c4 ~@2 c3@2 ~", I: "~@3 a4 ~@14 [c3,f3]@2 ~@4", J: "c4 ~@2 c3@2 ~@4 a4 ~@8 a3@3 a4@3",
K: "[c3,f3]@2 ~@7 a4@4 ~@11", L: "c4 ~@8 g4 ~@8 g3@3 ~@3", M: "[c3,e3]@2 ~@7 c5@4 ~@11", N: "c4 ~@8 a4 ~@8 a3@3 a4@3",
O: "[c3,f3] ~@4 b4@2 ~@5", P: "[c3,f3]@2 ~@8 b4@4 ~@7 c5@3", Q: "~@9 a4 ~@14", R: "c4 ~@8 a4 ~@8 a3@3 ~@3",
})).s("gm_banjo").gain(0.04).pan(0.7)
// drums · kick
const kick = s("bd").struct("<~@4 A B@6 C A B@6 C A B@6 C D B@6 ~ D B@7 D B@7 ~@3 A B@6 C A B@5 C ~@3>".pickRestart({
A: "~@2 x!2", B: "x!4", C: "x!3 ~", D: "~@3 x",
})).gain(0.32)
// drums · clap
const clap = s("cp").struct(`<
~@4 A B@6 C A B@6 C A B@6 C D B@5 E ~ D B@6 F D B@6 F ~@3 A B@6 C A B@5 G ~@3
>`.pickRestart({
A: "~@5 x ~ x", B: "~ x ~ x ~ x ~ x", C: "~ x ~ x!2 ~@3", D: "~@7 x", E: "~ x ~ x ~ x ~@2", F: "~ x ~ x ~ x!2 ~",
G: "~ x ~ x ~@4",
})).gain(0.37)
// drums · snare
const snare = s("sd").struct(`<
~@4 A B C B C B@2 D A B C B C B@2 D A B C B C B@2 D E B F B F B G ~ E B F B F B@2 H E B F B F B@2 H ~@3 A B C B C B@2
D A B C B C B I ~@3
>`.pickRestart({
A: "~@5 x ~ x", B: "~ x ~ x ~ x ~ x", C: "~@3 x ~@4 x!2 ~@5 x ~@5 x ~@2", D: "~ x ~ x!2 ~@3", E: "~@7 x",
F: "~@3 x ~@5 x ~@4 x!2 ~@5 x ~@2", G: "~ x ~ x ~ x ~@2", H: "~ x ~ x ~ x!2 ~", I: "~ x ~ x ~@4",
})).gain(0.37)
// drums · open hat
const open_hat = s("oh").struct("<~@70 [~@17 x!3 ~ x!3] [x ~ x!4 ~ x!4 ~ x!4 ~ x!4 ~ x!2] [x ~ x!4 ~ x!4 ~ x!4 ~@8]>")
.gain(0.27)
// drums · open hat · soft notes
const open_hat_soft = s("oh").struct("<~@70 [~@4 x ~ x!4 ~ x!4 ~ x ~@7] ~@2>").gain(0.14)
// drums · crash
const crash = s("cr").struct("<~@34 [~@3 x] ~@34 [~ x] ~@3>").gain(0.27)
// drums · tambourine
const tambourine = s("tb").struct(`<
~@4 A B@6 C A B@6 C A B@6 C D B@5 E ~ D B@6 F D B@6 F ~@3 A B@6 C A B@5 G ~@3
>`.pickRestart({
A: "~@5 x ~ x", B: "~ x ~ x ~ x ~ x", C: "~ x ~ x!2 ~@3", D: "~@7 x", E: "~ x ~ x ~ x ~@2", F: "~ x ~ x ~ x!2 ~",
G: "~ x ~ x ~@4",
})).gain(0.32)
stack(piano, bass, tenor_sax, banjo, banjo_soft, kick, clap, snare, open_hat, open_hat_soft, crash, tambourine)
More by
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.