0:00/0:00
// All You Need Is Love — The Beatles
// 102 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 3/4 at bar 8, 4/4 at bar 9, 3/4 at bar 10, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: Full arrangement: all 85 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(102/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.
// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
~@10 A B C@2 D E F G@3 H I@2 J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI P AJ AK AL AM AN AO AP AQ AP
AR AS AT AU AV AW AX AY AZ R BA BB BC BD BE BF BG BH BI BF@2 BJ BB BH BK ~
>`.pickRestart({
A: "~ g2", B: "f#2@11 ~ e2@12", C: "[~@6 g2@9 ~@3 f#2@11 ~ e2@15 ~@3]/2", D: "a2@4 g2@3 ~",
E: "f#2@9 ~@3 e2@8 ~@2 e2@2", F: "d2@7 ~@3 d2@2 c2@10 ~@2",
G: "[b1@4 c2@2 d2@2 ~@4 d2@3 ~ e2@2 g2@8 ~@2 g2@2 f#2@7 ~@3 f#2@2 e2@8 ~@4 d2@4 e2@2 g2@9 ~@3]/3",
H: "f#2@2 ~ e2@2 ~", I: "[d2@4 e2@2 a2@9 ~@3 g2@10 ~@2 f#2@10 ~@2 e2@6]/2", J: "~@4 e2@2 d2@6 ~@4 d2 ~ c2@6",
K: "~@4 c2@2 b1@4 c2@2 d2 ~@5 d2@4 e2@2", L: "g2@6 ~@4 g1 ~ a1@5 ~@5 a1 ~", M: "d2@6 ~@4 d2 ~ d2@6 f#2@6",
N: "g2@3 ~@2 g1 a1@3 ~@2 a1", O: "d2@6 ~@4 d2 ~ d2@6 f#2@5 ~", P: "g2@3 ~@2 g2 f#2@3 ~@2 f#2",
Q: "e2@6 ~@4 e2@2 d2@5 ~@5 d2@2", R: "c2@3 ~@2 c2 d2@3 ~@2 d2", S: "g2@3 ~@3 d2@3 ~ e2@2 g2@7 ~@3 g2@2",
T: "f#2@3 ~@2 f#2 e2@5 ~", U: "b1@2 d2 g2@3 ~@2 g2 f#2@3", V: "~@4 f#2@2 e2@7 ~@5 d2@4 e2@2",
W: "a2@7 ~@3 a2@2 g2@6 ~@4 g2@2", X: "f#2@3 ~@2 f#2 e2@3 ~@2 e2", Y: "d2@7 ~@3 d2@2 c2@6 ~@4 c2@2",
Z: "b1@2 c2 d2 ~@2 d2@2 e2 g2@3", AA: "~@4 g2@2 a2@4 ~@2 a1@3 ~@3 d2@4 ~@2", AB: "d2@3 ~@3 d2@2 ~@4 f#2@4 d2@2 g2@6",
AC: "~@4 g2@2 a2@6 a1@6 d2@3 ~@3", AD: "d2@3 ~@3 d2@4 ~@2 f#2@4 d2@2 g2@6", AE: "~@4 g2@2 f#2@4 ~@2 f#2@6 e2@3 ~@3",
AF: "e2@6 d2@4 ~@2 d2@5 ~ c2@3 ~@3", AG: "c2@6 d2@5 ~ d2@6 g2@2 ~@4", AH: "d2@4 e2@2 g2@7 ~@3 g2@2 f#2@6",
AI: "~@3 e2@4 ~@2 d2@2 e2", AJ: "e2@4 ~@2 d2@2 e2 a2@3", AK: "~@4 a2@2 g2@6 ~@4 g2@2 f#2@5 ~",
AL: "~@4 f#2@2 e2@7 ~@3 e2@2 d2@6", AM: "~@2 d2 c2@3 ~@2 c2 b1@2 c2", AN: "d2@3 ~@3 d2@4 e2@2 g2@4 ~@6 g2@2",
AO: "a2@6 a1@5 ~ d2@6 ~@4 d2 ~", AP: "d2@6 f#2@6 g2@7 ~@3 g2@2", AQ: "a2@3 ~@3 a1@6 d2@7 ~@3 d2 ~",
AR: "f#2@7 ~@3 f#2@2 e2@7 ~@3 e2@2", AS: "d2@7 ~@3 d2@2 c2@7 ~@3 c2@2", AT: "d2@7 ~@3 d2@2 g2@3 ~@3 d2@3 ~@3",
AU: "g1@3 ~@2 g1 a1@3 ~@2 a1", AV: "d2@7 ~@3 d2 ~ d2@4 ~@2 f#2@4 ~@2", AW: "g2@7 ~@3 g2@2 a2@6 ~@4 a2@2",
AX: "d2@6 ~@4 d2 ~ d2@3 ~@3 f#2@4 ~@2", AY: "g2@7 ~@3 g2@2 f#2@5 ~@5 f#2@2", AZ: "e2@3 ~@2 e2 d2@3 ~@2 d2",
BA: "g2@7 ~@3 g2 ~ d2@9 ~@3", BB: "g2@7 ~@3 g2@2 d2@6 ~@4 d2@2", BC: "g2@8 ~@2 g2@2 d2@7 ~@3 d2@2",
BD: "g2@7 ~@3 g2@2 d2@8 ~@2 d2@2", BE: "g2@3 ~@2 g2 d2@3 ~@2 d2", BF: "g2@7 ~@3 g2@2 d2@7 ~@3 d2@2",
BG: "g2@7 ~@3 g2@2 d2@8 e2@2 d2@2", BH: "g1@6 ~@4 g1@2 d2@7 ~@3 d2@2", BI: "g2@3 ~@2 g2 d2@4 ~ d2",
BJ: "g2@6 ~@4 g2@2 d2@7 ~@3 d2@2", BK: "g2@7 ~@17",
})).s("gm_acoustic_bass").gain(0.39)
// chords · piano · "A.PIANO 2"
const piano = note(`<
~@3 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU
AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS BR@2 BT BR BU BR BV BR BW BX ~
>`.pickRestart({
A: "~@6 [g4,b4,d5]@3 ~@3 [g4,b4,d5]@4 ~@2 [d4,a4,d5]@4 ~@2", // G D5
B: "[d4,a4,d5]@2 f#3 e3@3 [e4,g4,b4]@2 ~ [d3,e4,g4,b4]@2 e3, ~@2 g4 ~@5", // D5 Em Em7
C: "[g4,b4,d5]@3 ~@3 [g4,b4,d5]@4 g3 ~ [d4,f#4,a4,d5]@4 ~@2 [d4,f#4,a4,d5]@5 ~, g3 ~ f#3 ~", // G D
D: "[g4,b4]@4 ~@2 [e4,g4,b4]@4 ~@2 [d3,e4,g4,b4]@4 e3@2 [f#4,a4,d5]@3 ~@3, e3 ~@2 a3", // G Em Em7 D
E: "[f#4,a4,d5]@5 ~ [d4,g4,b4,d5]@4 ~@2 [d4,g4,b4,d5]@4 g3 ~ [d4,a4,d5]@4 ~@2, ~@3 g3@4 ~@5", // D G D5
F: "[d4,a4,d5]@4 f#3@2 [e4,g4,d5]@3 ~@3 [e4,g4,d5]@4 ~@2 [f#4,a4,d5]@4 ~@2, ~ e3 ~ d3", // D5 Em7 D
G: "[f#4,a4,d5]@4 d3@2 [f#4,a4,d5]@3 ~@3 [f#4,a4,d5]@4 ~@2 [b2,f#4,a4,d5]@4 c3@2, ~ c3 ~@2", // D Bm7
H: "[d3,f#4,a4,d5]@4 ~@2 [d3,f#4,a4,d5]@4 e3@2 [g4,b4,d5]@3 ~@3 [g4,b4,d5]@4 g3@2, ~@2 g3 ~", // D G
I: "[d4,a4,d5]@3 ~@3 [a4,d5]@6 [g4,b4]@4 ~@2 [e4,g4,b4]@4 ~@2, f#3@3 d4@2 ~ e3@3 ~@3", // D5 G Em
J: "[d3,e4,g4,b4]@2 e3 [g3,g4,b4,d5]@2 ~ [g4,b4,d5]@2 g3 [d4,a4,d5]@2 ~, ~@3 f#3", // Em7 G D5
K: "[d4,a4,d5]@4 f#3 ~ [e4,g4,b4]@4 ~@2 [e4,g4,b4]@4 ~@2 [d3,e4,g4,b4]@4 e3@2, ~ e3 ~@2", // D5 Em Em7
L: "[a4,d5]@4 ~@2 [f#4,a4,d5]@4 a3 ~ [d4,g4,b4,d5]@4 ~@2 [d4,g4,b4,d5]@5 ~, d4 ~@5 g3@3 ~@3", // D5 D G
M: "[f#3,f#4,a4]@5 ~ [f#4,a4,d5]@4 f#3 ~ [d4,a4,d5]@4 ~@2 [d4,a4,d5]@4 e3@2, d5 ~@3 e3@2 ~@2", // F#m D D5
N: "[a4,c5,d5]@4 ~@2 [a4,c5,d5]@4 d3@2 [a4,c5,d5]@3 ~@3 [a4,c5,d5]@4 c3@2, d3 ~ c3 ~", // D7
O: "[b2,a4,c5,d5]@4 c3@2 [d3,a4,d5]@4 d3 ~ [d3,a4,c5,d5]@4 e3 ~ [g4,b4,d5]@4 ~@2, ~@3 g3", // Bm7 D5 D7 G
P: "[g4,b4,d5]@4 g3@2 [a3,e4,a4,d5]@5 ~ [a4,d5]@4 ~@2 [d4,a4,d5]@4 ~@2, ~@12 e4 ~@11", // G Asus4 D5
Q: "[d4,g4,d5]@4 ~@2 [d3,d4,g4,d5]@4 e3@2 [g4,b4,d5]@3 ~@3 [g4,b4]@4 g3@2, ~@2 g3 ~", // G5 G
R: "[d4,a4,d5]@2 ~ [d4,a4,d5]@2 f#3 [e4,g4,b4]@2 ~ [g4,b4,d5]@2 ~, f#3 ~ e3 ~", // D5 Em G
S: "[d3,g4,b4,d5]@4 e3@2 [a4,d5]@3 ~@3 [d4,f#4,a4,d5]@4 a3 ~ [d4,g4,b4,d5]@4 ~@2, ~ a3 ~ g3", // G D5 D G
T: "[d4,g4,b4,d5]@5 ~ [d4,a4,d5]@4 ~@2 [d4,a4,d5]@4 f#3@2 [c5,d5]@4 ~@2, ~ f#3 ~ e3", // G D5 Csus2
U: "[a4,c5,d5]@4 e3@2 [f#4,c5,d5]@4 ~@2 [f#4,c5,d5]@4 d3 ~ [f#4,c5,d5]@4 ~@2, ~ d3 ~ c3", // D7
V: "[f#4,c5,d5]@2 c3 [b2,f#4,c5,d5]@2 c3 [d3,f#4,c5,d5]@2 ~ [f#4,c5,d5]@2 e3", // D7 Bm D7
W: "[g4,b4,d5]@2 ~ d5@2 g3 [e4,a4,d5]@2 ~ [e4,a4,d5]@2 a3, g3 [g4,b4] a3 ~", // G Dsus2 G
X: "[d3,f#4,a4,d5]@4 ~@2 [f#4,a4,d5]@4 d3 ~ [f#4,a4,d5]@3 ~@3 [f#4,a4,d5]@4 d3@2, ~@2 d3 ~", // D
Y: "[g4,b4]@3 ~@3 [g4,b4,d5]@4 ~@2 [a3,e4,a4]@4 ~@2 [e4,a4,d5]@4 a3@2, g3 ~@3", // G A5 Dsus2
Z: "d3@3 [f#4,a4,d5]@2 ~ [a4,d5]@2 ~ [f#4,a4,d5]@2 d3, d5 ~@5", // D D5 D
AA: "[d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~ [d#4,a4,b4]@2 ~ [d#4,a4,b4]@2 a3, ~@2 a3 ~", // G B7
AB: "[g3,e4,g4,b4]@2 ~ [e4,g4,b4]@2 ~ [g3,d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~", // Em G
AC: "c5@2 ~ [e4,g4,c5]@2 ~ [g4,a4,c5]@2 ~ [g4,a4,c5]@2 ~, ~@2 g3 ~", // C Am7
AD: "[g3,g4,b4]@5 ~ [d4,g4,b4]@4 ~@2 [g4,b4,d5]@3 ~@3 [g4,b4,d5]@4 ~@2", // G
AE: "[d4,a4,d5]@4 ~@2 [a4,d5]@6 [e4,g4,b4]@4 ~@2 [e4,g4,b4]@3 ~@3, ~@3 d4@2 ~@7", // D5 Em
AF: "[e4,g4,b4]@4 ~@2 [g4,b4,d5]@4 ~@2 [g4,b4,d5]@5 ~ [d4,a4,d5]@4 ~@2", // Em G D5
AG: "[a4,d5]@6 [e4,g4,b4]@3 ~@3 [e4,g4,b4]@4 ~@2 [e4,g4,b4]@4 ~@2, d4 ~@5", // D5 Em
AH: "[f#4,a4,d5]@3 ~@3 [f#4,a4]@6 [g4,b4]@3 ~@3 [g4,b4,d5]@5 ~, ~@3 d5@2 ~@7", // D F#m G
AI: "[a4,c5,d5]@2 ~ [a4,c5,d5]@2 ~ [e4,g4,d5]@2 ~ [e4,g4,d5]@2 ~", // D7 Em7
AJ: "[f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [a4,d5]@2 ~ [f#4,a4,d5]@2 ~", // D D5 D
AK: "[b2,f#4,a4,d5]@2 c3 [d3,f#4,a4,d5]@2 ~ [d3,f#4,a4,d5]@2 e3 [g4,b4,d5]@2 ~, ~@3 g3", // Bm7 D G
AL: "d5@2 g3 [e4,a4,d5]@2 ~ [e4,a4,d5]@2 a3 [a4,d5]@2 ~, [g4,b4] a3 ~ d3", // Dsus2 D5 G
AM: "[f#4,a4,d5]@4 d3@2 [f#4,a4,d5]@3 ~@3 [f#4,a4,d5]@4 d3@2 [g3,g4,b4,d5]@4 ~@2", // D G
AN: "[g4,b4,d5]@2 g3 [e4,a4,d5]@2 ~ [e4,a4,d5]@2 a3 [f#4,d5]@2 ~, ~@3 d3", // G Dsus2 D
AO: "[f#4,a4,d5]@4 ~@2 [a4,d5]@3 ~ d3@2 [f#4,a4,d5]@4 d3@2 [g3,g4,b4,d5]@5 ~", // D D5 D G
AP: "[g4,b4,d5]@3 ~ g3@2 [d#4,a4,b4]@4 ~@2 [d#4,a4,b4]@4 ~@2 [e3,e4,g4]@5 ~, ~@6 b4 ~", // G B7 Em
AQ: "[e4,g4,b4]@2 ~ [d4,g4]@2 ~ [d4,g4,b4]@2 ~ [e4,g4,c5]@2 ~", // Em G5 G C
AR: "[e4,g4,c5]@2 ~ [g4,a4,c5]@2 ~ [g4,a4,c5]@2 d3 [d4,g4,b4]@2 ~", // C Am7 G
AS: "[d3,d4,g4,b4]@2 e3 [g4,b4,d5]@2 ~ [g4,b4,d5]@2 g3 [d4,a4,d5]@2 ~, ~ g3 ~ f#3", // G D5
AT: "[a4,d5]@3 [e4,g4,b4]@2 ~ [e4,g4,b4]@2 ~ [d3,e4,g4,b4]@2 e3, d4@2 ~ e3@3 ~@6", // D5 Em Em7
AU: "[g3,g4,b4,d5]@4 ~@2 [g4,b4,d5]@6 [d4,a4,d5]@4 ~@2 [d4,a4,d5]@5 ~, ~ f#3", // G D5
AV: "[e4,g4,b4]@4 ~@2 [e4,g4,b4]@4 ~@2 [d3,e4,g4,b4]@4 e3@2 [d4,f#4,c5]@3 ~@3, e3@3 ~@5", // Em Em7 D7
AW: "[d4,f#4,c5]@3 [d4,g4,b4]@2 ~ [d4,b4]@3 [f#3,d4,a4,d5]@2 ~, ~ g3 ~@2", // D7 G D
AX: "[d4,a4,d5]@2 f#3 [e3,d5]@2 ~ [g4,a4,d5]@2 e3 [a4,d5]@2 ~, ~@3 g4 ~@5 d3@3", // D5 E7 Gsus2 D5
AY: "[f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [b2,f#4,a4,d5]@2 c3, ~ c3 ~@2", // D Bm7
AZ: "[d3,f#4,a4,d5]@2 ~ [d3,f#4,a4,d5]@2 e3 [g4,b4,d5]@2 ~@3 g3, ~@2 g3 [g4,b4,d5]", // D G
BA: "[a3,e4,a4,d5]@5 ~ [e4,a4,d5]@4 a3@2 [f#4,a4,d5]@4 ~@2 [f#4,a4,d5]@4 ~@2", // Asus4 Dsus2 D
BB: "[f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~", // D G
BC: "[e4,a4,c#5]@2 ~ [e4,a4,c#5]@2 ~ [a4,d5]@2 ~ [f#4,a4,d5]@2 ~", // A D5 D
BD: "[f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [d4,g4,b4]@2 ~ [d4,g4,b4]@2 g3", // D G
BE: "[d#4,a4,b4]@2 ~ [d#4,a4,b4]@2 ~ [e4,g4,b4]@2 ~ [b3,e4,g4,b4]@2 e3, f#3 ~ e3 ~", // B7 Em
BF: "[d3,d4,g4,b4]@5 ~ [d4,g4,b4]@4 ~@2 [e4,g4,c5]@4 ~@2 [e4,g4,c5]@4 ~@2", // G C
BG: "[g4,a4,c5]@2 ~ [g4,a4,c5]@2 ~ [d4,g4,b4]@2 ~ [d3,d4,g4,b4]@2 e3, d3 ~", // Am7 G
BH: "[g4,b4,d5]@4 ~@2 [g4,b4,d5]@4 g3@2 [e4,a4,d5]@4 ~@2 [e4,a4,d5]@4 a3 ~, g3 ~@3", // G Dsus2
BI: "[f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 ~ [f#4,a4,d5]@2 c4", // D
BJ: "[g4,b4,d5]@4 ~@2 [g4,b4,d5]@4 ~@2 [e4,a4,d5]@4 a3 ~ [e4,a4,d5]@4 ~@2", // G Dsus2
BK: "[f#4,a4,d5]@4 ~@2 [f#4,a4,d5]@4 ~@2 [f#4,a4,d5]@4 ~@2 [f#4,a4,d5]@4 c4 ~", // D
BL: "[d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~ [f#4,b4]@2 a3 [d#4,f#4,b4]@2 ~", // G B5 B
BM: "[e4,g4,b4]@2 ~ [e4,g4,b4]@2 ~ [e4,g4,b4]@2 ~ [e4,g4,b4]@2 g3", // Em
BN: "[e4,g4,c5]@4 ~@2 [e4,g4,c5]@4 ~@2 [g4,a4]@4 ~@2 [g4,a4,c5]@4 g3 ~", // C Gsus2 Am7
BO: "[d4,b4]@2 ~ [d4,g4,b4]@2 g3 [d4,a4,d5]@2 ~ [d4,a4,d5]@2 ~", // G D5
BP: "[d4,g4,b4]@4 ~@2 [d4,g4,b4]@5 ~ [d4,g4,a4,d5]@4 ~@2 [d4,g4,a4,d5]@4 d3@2", // G Dsus4
BQ: "d4@2 ~ [d4,g4,b4]@2 ~ [g4,a4,c5]@2 ~ [f#4,a4,c5]@2 ~, g4 ~@5 d3@3 ~@3", // G Am7 F#dim
BR: "[d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~ [g4,a4,c5]@2 ~ [f#4,a4,c5]@2 ~", // G Am7 F#dim
BS: "[g4,b4]@4 ~@2 [d4,g4,b4]@4 ~@2 [g4,a4,c5]@4 ~@2 [f#4,a4,c5]@4 d3 ~", // G Am7 F#dim
BT: "[d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~ [g4,a4,c5]@2 g3 [f#4,a4,c5]@2 ~", // G Am7 F#dim
BU: "~@3 [d4,g4,b4]@2 ~ [g4,a4,c5]@2 ~ [f#4,a4,c5]@2 ~", // G Am7 F#dim
BV: "[d4,g4,b4]@4 ~@2 [d4,g4,b4]@4 ~@2 [g4,a4,c5]@4 ~@2 [f#4,a4,c5]@4 g3 ~", // G Am7 F#dim
BW: "[g4,b4]@2 ~ [d4,g4,b4]@2 ~ [g4,a4,c5]@2 ~ [f#4,a4,c5]@2 ~", BX: "[g4,b4]@2 ~ [d4,g4,b4]@2 ~@7",
})).s("gm_piano").gain(0.3).pan(0.2)
// chords · piano · "A.PIANO 2" · soft notes
const piano_soft = note(`<
~@3 A B C D E ~ F ~ G ~@2 H ~@2 I ~ J ~@2 K ~ L ~@2 M N O ~ P Q ~@3 R ~ S ~ T ~ U V W X Y ~@2 O ~ A Z AA ~ AB@2 S ~ AC
AD ~@2 AE AF AG AH O AI AJ AK AL AM AN AO AP H AQ AR O AS AT Q@2 ~
>`.pickRestart({
A: "~@8 g3 ~@3", B: "~@3 [e4,b4]@2 ~@7", C: "~@11 f#3", D: "e4 ~@5", E: "~@3 f#3", F: "~@8 c3 ~@3",
G: "~@10 f#3@2 e4@3 ~@9", H: "~@11 g3", I: "~@3 c5@2 ~@7", J: "~@9 d5@2 ~", K: "~@2 g3 ~@6 a4@2 ~", L: "~@6 d3 ~",
M: "d5@3 ~@7 g3@2 d5@4 ~@8", N: "[f#4,a4] ~@2 f#4 ~@2", O: "~@5 g3 ~@6", P: "[g3,e4,g4]@4 ~@6 g3 ~@11 g3 ~",
Q: "d4 ~@5", R: "~@4 d5 ~@3", S: "~@3 f#4 ~@2", T: "~@9 f#4@2 ~", U: "~@9 a4@2 ~", V: "~@2 d3 f#4 ~@8",
W: "~@3 f#3@2 ~@3 f#3 ~@3", X: "~@4 e3@2 [d3,b4]@4 ~@6 d3 ~ c3@6", Y: "~@3 d3@2 ~@7", Z: "~@6 a4@3 ~@9 f#4@4 ~@2",
AA: "d3@3 ~ d3 ~@11 c3@2 ~@6", AB: "[~@6 d3@3 ~@2 d3@3 ~@10]/2", AC: "~@5 f#3 ~@6", AD: "~@10 d3@2 c3@5 ~@7",
AE: "d3@5 ~@11 c4@2 ~@6", AF: "~@5 b3 ~@5 a3", AG: "~@8 c4 ~@3", AH: "~@12 d#4@4 ~@6 a3 ~", AI: "~@10 g3 ~ c5@4 ~@8",
AJ: "g4@2 ~@4 d3@3 ~@3", AK: "~@12 d3@5 ~@7", AL: "b4@2 ~@3 g3 ~@5 d3", AM: "~@5 g3 d3@3 ~@2 d3",
AN: "~@5 g3 d3@3 ~@3", AO: "~@2 d3 ~", AP: "~@6 d3@3 ~@2 d3", AQ: "~@4 g3@2 ~@4 g3 ~@11 g3@2",
AR: "[g4,b4]@4 ~@6 g3 ~@13", AS: "~@10 g3 ~@5 g3 ~@7", AT: "~@10 g3 ~@13",
})).s("gm_piano").gain(0.18).pan(0.2)
// chords · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note(`<
~@3 A B@4 C D E@3 F G H@3 I J@3 K L@2 M N O P Q R S T ~@6 U V W X Y Z AA AB AC@3 AD AE AF AG@2 AH@2 AI AJ AK AL AM AN
AO AP AQ AR AS AT AU AV AW AX AY AX AZ BA BB@2 BC BD BE BF BG ~
>`.pickRestart({
A: "~@5 g3 ~ d3 a3@2 ~ a3, ~@3 b3 ~@2",
B: "[~@2 d3@2 a3@3 ~ g3@2 e3@2 ~@2 e3@2 g3@10 ~@2 g3@2 b3@2 d3@2 ~@4 a3@2 d3@2 ~@4 d4@4 g3@2 e3@2 ~@4 e4@8 ~@8 d3@2 f#3@3 ~ g3@2 ~@2 g3@2 ~@2 b3@4 a3@2 d3@2, d4@2 ~@4 e4@4 ~@7 d4@4 a3@2 ~@4 g3@6 ~@2 f#3@2 ~@11, ~@22 d3@3 ~@3 e3@3 ~@3 d3@2 d4@6 ~@6]/4",
C: "~ d3 a3@2 g3 e3 ~ e3 g3@2 ~ f#3, d4@2 ~ d4@2 d3",
D: "~ d3 f#3 ~@2 a3 ~ c3 f#3 ~ g3 d4, d4@5 ~ c3@6 d4@4 ~@8, ~@8 f#3@5 ~@11",
E: "[~@2 g3@2 ~@2 d3@2 ~@8 g3@2 b3@3 ~@13 a3@4 g3@2 e3@2 ~@2 e3@2 ~@2 e3@2 g3@2 ~@6 g3@2 ~@2 d3@2 ~@4 a3@2 d3@2, ~@7 d3@2 ~@2 d4@3 a3@2 d3@2 ~@3 g3@2 ~@5 d3@2 ~@6, ~@26 d3@4 d4@4 ~@12 e4@7 ~@7 b3@4 d4@8]/3",
F: "~ d3 d4@2 g3 e3 ~ e3 ~@3 e3, a3@2 ~@4 g3@3 ~ g3@2, ~@8 e4@3 ~",
G: "~@2 f#3 ~ d3 f#3 ~ g3 d3 g3 d3 b3, ~@2 d3@4 d4@11 ~@7",
H: "[~ a3 d3 ~ d3 ~@3 e3 ~ e3 ~@2 f#3 d3 ~@5 d3 ~ d3 a3@2 ~ d3 ~ d3 a3 d3 f#3 d3 ~@2 g3, ~@6 a3@4 d4@8 g3@4 d4@8 a3@7 ~ a3@4 ~@30, ~@8 d3 ~@8 d3, ~@17 d4@3 ~ d4@3 ~@3 d4@6 ~@3]/3",
I: "~ d3 g3@2 a3 d3 ~ d3 a3@2 g3 e3, b3@2 ~@4 d4@3 ~@3",
J: "[~@6 e3@2 ~@2 e3@2 ~@4 g3@2 b3@2 d3@2 d4@4 a3@2 d3@2 a3@2 d3@2 d4@4 g3@2 e3@2 g3@2 e3@2 ~@4 g3 ~ e3@2 ~@2 d3@2 f#3@2 ~@2 d3@2 f#3@4 d3@2 g3@2, e4@6 ~@17 e4@3 ~@4 c4@2 ~@4, ~@4 g3@4 b3@5 ~ d3@4 ~@54]/3",
K: "b3 ~ d3@2 ~ d3 ~ d3 a3@2 g3 e3, ~ d4@2 ~ a3@2 d4@2 ~@4",
L: "[~@2 e3@2 g3@3 ~@3 f#3@2 c4@2 d3@2 f#3@4 ~@6 d3@2 f#3@3 ~ d3@2 g3@2 ~@2 d3 ~ g3@3 ~ a3@2 d3@2, d4@2 ~@2 d3@2 ~@4 d3@2 d4@3 ~@3 d4@2 ~@4, ~@11 f#3@2 ~@11]/2",
M: "[g3,b3]@3 ~ d3 ~ [g3,b3,d4]@4 d3 ~ a3@4 e3 ~ [a3,d4]@4 e3 ~", // G D5
N: "[a3,d4]@3 ~ d3 ~ [f#3,a3,d4]@2 ~@2 d3 ~ a3@3 ~ d3 ~ [f#3,c4,d4]@3 ~ d3@2", // D5 D D7
O: "[g3,d4]@3 ~ d3 ~ [g3,b3,d4]@4 d3 ~ [a3,d4]@4 ~@2 [a3,d4]@4 ~@2, b3 ~@5", // G5 G D5
P: "[a3,d4]@4 d3 ~ [f#3,a3,d4]@4 d3 ~ a3@3 ~ d3 ~ [f#3,a3,d4]@3 ~ d3@2", // D5 D
Q: "[g3,b3,d4]@4 ~@2 [b3,d4]@4 g3 ~ [a3,d#4]@4 f#3 ~ [a3,d#4]@4 f#3 ~", // G Bm Adim
R: "[b3,e4]@4 ~@2 [b3,e4]@4 g3 ~ [b3,d4,g4]@4 g3 ~ [b3,d4,g4]@4 g3 ~", // E5 G
S: "[c4,e4]@4 g3 ~ [c4,e4]@4 ~@2 [c4,d4]@4 d3 ~ [c4,d4]@4 d3 ~", T: "[g3,b3]@4 d3 ~ [g3,b3,d4]@4 d3 ~@13",
U: "~@18 [g3,d4]@4 d3 ~", V: "[g3,b3,d4]@4 d3 ~ [a3,d4]@4 e3@2 [a3,d4]@4 e3 ~ [a3,d4]@4 d3 ~",
W: "[f#3,a3,d4]@4 d3 ~ [f#3,a3]@4 d3 ~ [f#3,c4,d4]@4 d3@2 g3@4 d3 ~", // D F#m D7
X: "[g3,d4]@4 d3 ~@5 e3 ~ [a3,d4]@4 e3@2 [a3,d4]@4 d3 ~, b3 ~@7", // G5 D5
Y: "[f#3,a3,d4]@4 d3@2 [f#3,a3]@4 d3 ~ c4@4 d3@2 [g3,b3]@4 d3 ~, ~@12 d4@7 ~@5", // D F#m G
Z: "[g3,b3,d4]@4 d3 ~ a3@4 f#3 ~ [d#4,f#4]@4 f#3 ~ b3@4 g3 ~, ~@4 a3 ~@3", // G D#m
AA: "[b3,e4,g4]@4 g3@2 b3@4 g3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4] ~ e4@4 g3@2", // Em G
AB: "[c4,e4]@3 ~@3 d4@4 d3@2 [g3,c4,d4]@5 ~ [g3,b3]@4 d3@2, ~@4 g3@5 ~@15", // C Gsus4 G
AC: "[[g3,d4]@2 ~@2 d3 ~ d3 ~ d3 ~ d3 ~ d3 ~ d3 ~ e3 ~ e3 ~ e3 ~@4 d3 b3 d3 ~ d3 ~ d3 ~ d3 ~ d3, b3@6 g3@8 b3@5 ~@3 d4@8 g3@5 ~@3 g3@6 d3@4 g3@5 ~@7 a3@5 ~@3 a3@4, ~@10 d4@8 a3@6 ~@2 a3@5 ~@3 e4@5 ~@3 a3@4 d4@4 ~@6 d4@4 ~@4 d4@5 ~@3]/3", // G5
AD: "g3 e3 ~ e3 ~ e3 ~ e3 e4 c4 ~ a3, ~ e4@2 b3 ~@2, ~@4 g3@3 ~@3 e3@2",
AE: "~@4 f#3@2 ~@4 g3@2 ~@4 g3@2 a3@3 ~ a3@2, c4@4 ~@2 b3@5 ~ d4@4 ~@8, ~ d3@2 ~ d3@2 ~ d3@2 ~@3",
AF: "~ d3 a3 g3 e3 ~ e3 g3 e3 a3 ~ a3, d4@2 ~@3 d4@4 ~ d3@2",
AG: "[~ d3 a3 d3 ~ d3 ~ d3 a3 d3 ~ d3 ~ d3 ~ d3 ~ d3 ~@4 d3 g3, d4@8 a3@6 ~@6 a3@6 ~@2 a3@5 ~@5 d3@5 ~@5, ~@6 d4@2 ~@4 d4@3 ~ c4@2 b3@3 d4@3, ~@10 g3 ~]/2",
AH: "[a3 ~@4 c#4 d4@2 ~@2 d3 ~ d3 ~ d3 f#3 d3 c4 ~@2 g3 ~@2 g3, ~@2 e3@4 e4@4 ~@8 d4@4 c4@6 ~@8 b3@5 ~ d4@4 ~@2, ~@4 a3@4 e3@4 ~@4 a3@5 ~@5 a3@4 ~@8 d3@4 ~@2 d3@4]/2",
AI: "a3 ~ a3 e4 g3 a3 ~@2 f#3 a3 ~ a3, ~@2 e3@4 ~@6 d4@7 ~@5, ~@7 d3@2 ~ d3@2",
AJ: "~ d3 ~@2 c4 f#3 ~@2 g3 ~ d3 g3, d4@4 a3@5 ~@3 b3@4 ~@2 b3@4 ~@2, ~@3 d3@3 ~ d3@2 ~@3",
AK: "~ d#3 a3 ~ f#3 a3 ~@2 b3 ~@2 b3, b3@4 ~@2 d#4@5 ~ e4@4 ~@2 g4@6, ~@14 g3@5 ~ g3@4",
AL: "~@2 b3 ~@2 b3 e4 ~@3 e3 g3, d4@4 ~@2 g4@5 ~@5 c4@6 ~@2, ~ g3@2 ~ f3@2 ~ g3@2 ~@3",
AM: "~ d3 a3 d3 a3@2 ~@2 g3 b3 ~ g3, d4@2 ~ b3 ~@2, ~@7 d3@2 ~ d3@2",
AN: "~@2 g3 ~ d3 b3 a3 d3 a3 c#4@2 a3, b3@5 ~ d4@6 ~@12, ~ d3@2 ~@9",
AO: "~@4 a3@2 d4@2 ~@4 c4 ~@5 d4@3 ~ c4@2, d4@2 ~@3 a3@3 ~@4, ~ d3@2 ~ d3@2 ~@6",
AP: "b3@2 ~@2 g3@2 d4@2 ~@2 g3@2 a3@3 ~@3 c#4@2 ~@2 a3@2, ~@2 d3@5 ~ d3@4 ~@8 e3@4",
AQ: "~@2 d3@2 a3@2 ~@2 f#3@2 ~@2 c4@2 ~@2 a3@2 b3 ~@3 c4@2, d4@4 ~@2 d3@4 a3@4 d3@5 ~ d3@4",
AR: "b3@4 d3 ~ [g3,b3]@4 d3@2 [a3,b3]@4 f#3 ~ [a3,b3]@4 f#3@2, ~@9 f#3 ~@2", // G Asus2
AS: "[g3,b3]@4 e3 ~ b3@4 e3 ~ [b3,d4]@4 g3@2 [b3,d4,g4]@4 f3 ~, ~ [g3,e4] ~@2", // G Bm G C
AT: "[c4,e4]@4 g3 ~ [c4,e4]@4 g3@2 [c4,e4]@4 ~@2 [c4,d4]@5 ~", // C Csus2
AU: "[b3,d4]@4 g3 ~ b3@5 ~ [c4,e4]@4 g3 ~ [f#3,c4,d4]@4 d3@2, ~@2 d4 ~@5", // Bm C D7
AV: "[g3,b3]@4 d3 ~ [g3,b3]@4 d3 ~ [g3,c4]@4 e3 ~ [f#3,c4,d4]@4 d3@2, ~@6 e3 ~@5", // G C5 D7
AW: "[g3,b3]@5 ~ [g3,b3]@4 d3 ~ [g3,c4]@4 e3 ~ [f#3,d4]@4 d3@2, ~@6 c4 ~", // G C5 D
AX: "[g3,b3]@4 d3 ~ [g3,b3]@4 d3 ~ [g3,c4]@4 e3 ~ [f#3,c4,d4]@4 d3@2", // G C5 D7
AY: "[g3,b3]@3 ~ d3 ~ [g3,b3]@4 ~@2 [g3,c4]@4 d3 ~ [f#3,c4,d4]@4 d3@2", // G C5 D7
AZ: "[g3,b3]@4 d3 ~ [g3,b3]@4 d3 ~ [g3,c4]@4 ~@2 [f#3,c4,d4]@4 d3 ~, ~@18 d3 ~@5", // G C5 D7
BA: "[g3,b3]@4 d3 ~ [g3,b3]@5 ~ [g3,c4]@4 e3 ~ [f#3,c4,d4]@4 d3@2", // G C5 D7
BB: "[g3,b3]@4 d3 ~ [g3,b3]@4 d3 ~ [g3,c4,d4]@4 e3 ~ [f#3,c4,d4]@4 d3 ~", // G Gsus4 D7
BC: "[g3,b3,d4]@4 d3 ~ [g3,b3,d4]@4 d3@2 [g3,c4,d4]@4 e3 ~ [f#3,c4,d4]@4 d3 ~", // G Gsus4 D7
BD: "[g3,b3,d4]@4 d3 ~ [g3,b3,d4]@4 d3 ~ [g3,c4,d4]@4 e3 ~ [f#3,c4,d4]@4 d3@2", // G Gsus4 D7
BE: "[g3,b3,d4]@4 d3@2 [g3,b3,d4]@4 d3@2 [g3,c4,d4]@4 e3 ~ [f#3,c4,d4]@4 d3@2", // G Gsus4 D7
BF: "[g3,b3,d4]@4 d3@2 [g3,b3,d4]@4 ~@2 [g3,c4,d4]@4 ~@2 [f#3,c4,d4]@4 d3 ~", // G Gsus4 D7
// … 123 more lines
More by The Beatles
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.