0:00/0:00
// Ask Me Why — The Beatles
// 142 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 79 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(142/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, A@4 for four bars: edit a riff to change every repeat.
// chords · electric guitar clean · "Lead Guitar"
const electric_guitar_clean = note(`<
A B C D E F G H@2 I@3 J K@2 L@3 M N@3 O P@2 Q R S T U V@2 W X Y Z AA AB AC AD AE@5 B AF AG@3 AH@2 AI ~ AJ AK AB AA AL
AM AN AO AP@2 AQ AR AS AT AU AV@2 AW AL AX ~ AY@2 AZ@2
>`.pickRestart({
A: "e4@9 ~ b3@6 ~@2 b2@4 ~@2", B: "e3@5 ~@6 [e3,g#3,b3]@5 ~@2 [f#3,a3,c#4]@4 ~@2", C: "[g#3,b3,d#4]@7 ~",
D: "[f#3,a3,c#4]@5 ~@7", E: "e4@5 ~@3 b3@2 ~@7 b2@4 ~@3",
F: "e3@5 ~@6 e3@4 ~@3 [f#3,a3,c#4]@4 ~@2, ~@10 [g#3,b3]@5 ~@9", G: "~ [g#3,d#4]@19 ~@4, b3@17 ~@7",
H: "[[f#3,a3,c#4]@12 ~@11 [b3,e4]@17 ~@8, ~@22 [e3,g#3]@17 ~@9]/2", // F#m E5 E
I: "[~ [d3,f#4]@15 ~ d3@3 ~@3 [c#3,e3,g#3]@21 ~@3 [c#3,e3,g#3]@20 ~@5, c4@5 ~@19]/3", J: "~ [c3,e3,a3]@14 ~@9",
K: "[[f#3,a#3,c#4]@10 ~@13 [f#3,b3,d#4]@6 ~@6 [e3,g#3,b3]@4 ~@3 [f#3,a3]@4 ~@2, ~@41 c#4@5 ~@2]/2", // F# B E F#m
L: "[~@2 [g#3,c4,d#4]@18 ~@4 c#4@9 ~@14 e4@4 ~@6 b3@3 ~@6 b2@3 ~@3, ~@23 [f#3,a3]@8 ~@41]/3", // G# F#m
M: "~@2 e3@6 ~@4 [e3,g#3,b3]@3 ~@2 [f#3,a3,c#4]@4 ~@3, d#3 ~@5", // E F#m
N: "[[g#3,b3,d#4]@17 ~@7 c#4@5 ~@18 [e3,b3,e4]@18 ~@7, ~@23 [f#3,a3]@5 ~@19 g#3@12 ~@13]/3", // G#m E5 F#m
O: "~@8 f#4@10 d3@5 ~, [a3,c4]@19 ~@5, ~ d3@16 ~@7", // Am
P: "[~@16 e3@3 ~@4 [c#3,e3,g#3]@22 ~@3, c#3@17 ~@31, e3 ~@3, ~@4 g#3@15 ~@29]/2", Q: "~ [c3,e3,a3]@18 ~@5",
R: "~ [e3,g#3]@12 ~@5 g#3@4 ~@2, ~ b3@16 ~@7", // E
S: "[e3,g#3,c4]@9 ~@2 [e3,g#3,c4]@3 ~ [e3,g#3,c4]@4 ~@2 g#3 ~@2, ~@10 [e3,c4] ~", // Eaug C
T: "[e3,a3,c#4]@10 ~@2 [e3,a3,c#4]@3 ~ [e3,a3,c#4]@4 ~ [e3,a3,c#4]@3", // A
U: "~ g#3@2 ~ f#3@6 ~ [f#3,b3,d#4]@4 ~ b3@4 ~ b3@2 ~, ~ b3@9 ~@5 [f#3,d#4]@4 ~ [f#3,d#4]@2 ~@2, ~ d#4@2 ~@5", // B D#m
V: "[[e3,g#3,b3]@8 ~@7 e3@4 ~@4 [e3,g#3,c4]@9 ~@2 [e3,g#3,c4]@4 ~ [e3,g#3,c4]@4 ~ [e3,g#3,c4]@2 ~@2, ~@11 g#3@6 ~@31]/2", // E Eaug
W: "[e3,a3,c#4]@10 ~@2 [e3,a3,c#4]@3 ~ [e3,a3,c#4]@4 ~ [e3,a3]@2 ~, ~@10 c#4 ~", // A A5
X: "~ [f#3,d#4]@8 ~@3 [f#3,b3,d#4]@4 ~@8, ~ c4@6 ~@17", // D#m B
Y: "[e3,g#3,b3,e4]@2 ~ [d3,e3,g#3,b3,e4]@2 ~ [e3,g#3,b3,e4]@5 ~@13, ~@3 a#3 ~@8", // E E7 E
Z: "~@6 b2@3 ~@3 [e3,g#3,b3]@4 ~@2 [f#3,a3,c#4]@4 ~@2", AA: "[g#3,b3,d#4]@3 ~", AB: "[e3,a3,c#4]@3 ~",
AC: "[g#3,b3,d#4]@5 ~@7", AD: "[a3,c#4]@7 ~@5, e3 ~",
AE: "[e4@6 ~@3 b3@5 ~@4 b2@4 ~ e3@7 ~@6 [g#3,b3]@4 ~@2 [f#3,a3,c#4]@3 ~@3 g#3@18 ~@5 [f#3,a3,c#4]@9 ~@15 e4@7 ~@2 b3@5 ~@4 b2@4 ~@3, ~@35 e3@4 ~@8 [b3,d#4]@18 ~@55]/5", // G#m F#m B
AF: "~ [g#3,b3]@15 ~@8, d#4@2 ~", // G#m
AG: "[[f#3,a3,c#4]@5 ~@19 [b3,e4]@13 ~@12 f#4@16 d#3@5 ~@2, ~@22 e3@14 ~@12 [d#3,c4]@17 ~@7, ~@23 g#3@11 ~@13 g#3@18 ~@7]/3", // F#m E5 Cm
AH: "[~@2 g#3@11 ~@11 g#3@17 ~@7, c#3@14 ~@9 [c#3,e3]@17 ~@8, ~ e3@12 ~@35]/2", AI: "~ [c3,e3,a3]@20 ~@3",
AJ: "~@12 [e3,g#3,b3]@5 ~@2 [f#3,a3,c#4]@3 ~@2", AK: "~ [g#3,b3,d#4]@8 ~@3", AL: "[e3,a3,c#4]@23 ~",
AM: "[e3,g#3,b3]@3 ~", AN: "~@11 [e3,g#3,b3]@4 ~ [e3,g#3,b3]@3 ~@2 [e3,g#3,b3]@2 ~",
AO: "[e3,a3,c#4]@10 ~@2 [e3,a3,c#4]@2 ~@2 [e3,a3,c#4]@4 ~ [e3,a3,c#4] ~@2", // A
AP: "[[f#3,b3,d#4]@10 ~@2 [f#3,b3,d#4]@3 ~@2 b3@4 [f#3,d#4]@3 ~ [e3,g#3]@12 ~ g#3@3 ~ e3@4 ~@2, ~@16 [f#3,d#4]@4 ~ b3@16 ~@11]/2", // B D#m E D#m
AQ: "~ c#4 ~ [g#3,c4]@7 ~ [e3,g#3,c4]@3 ~@2 [e3,g#3,c4]@3 ~@2 [e3,g#3,a#3,c4]@2 ~, ~ e3@8 ~@15", // G# Eaug
AR: "g#3 c#4@9 ~@2 [e3,a3,c#4]@3 ~ [e3,a3,c#4]@4 ~ [e3,a3]@2 ~, [e3,a3]@5 ~@5 c#4 ~", // A A5
AS: "a#3@4 b3@5 ~ [f#3,b3,d#4]@2 ~ b3 [f#3,d#4] ~@4 b3 ~@4, [f#3,d#4]@3 ~@3 d#4 ~", // B D#m
AT: "~ [g#3,b3]@2 ~ e3@2 ~ [e3,b3,e4]@17, [e3,e4]@2 ~ [g#3,a#3,b3,e4]@2 ~ g#3@18", // G#m E5 E
AU: "~@6 b2@2 ~@4 [e3,g#3,b3]@3 ~@3 [f#3,a3,c#4]@3 ~@3", AV: "[[g#3,b3,d#4]@15 ~@8 [e3,a3,c#4]@19 ~@6]/2",
AW: "~ g#3@12 ~@11, [b3,d#4]@11 ~@13", AX: "~@2 e3@3 ~@3 b3@5 ~ b2@10", AY: "[~@7 e3@3 ~ b3@7 ~ b2@8 ~@21]/2",
AZ: "[a4@3 f#4@2 ~ f#4@3 d#4@2 ~ d#4@3 [d#3,g#3]@3 [d#3,g#3]@13 ~@17]/2", // G#5
})).s("gm_electric_guitar_clean").gain(0.13)
// chords · acoustic guitar steel · "Rhythm Guitar"
const acoustic_guitar_steel = note(`<
A B C D@3 E F@5 G H I J@3 B K L@3 M N O P Q R S T U@4 ~ V@2 W X Y Z@2 AA@4 AB AC@5 AD@2 AE AF AG AH AI AJ@8 ~ AK AL AM
AN AO AP AQ AR AS@2
>`.pickRestart({
A: "~@8 [e3,g#3,b3]@8 ~@2 b3@5 ~, ~@17 [e3,g#3]@5 ~@2", B: "[e3,g#3,b3] ~@2",
C: "[g#3,b3,d#4]@5 ~ [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@7 ~ [g#3,b3,d#4]@4 ~@3", // G#m
D: "[[f#3,a3,c#4]@5 ~ [f#3,a3,c#4] ~@2 [f#3,a3,c#4]@7 ~@2 [f#3,a3,c#4]@4 ~@2 [e3,g#3]@5 [e3,g#3,b3] ~@2 [e3,g#3,b3]@7 ~@2 [e3,g#3,b3]@5 ~ [e3,g#3,b3]@6 ~@19, ~@23 b3@5 ~@44]/3", // F#m E
E: "[g#3,b3,d#4]@5 ~ [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@7 ~@2 [g#3,b3,c4,d#4]@4 ~@2", // G#m G#
F: "[[f#3,a3,c#4]@5 ~ [f#3,a3,c#4] ~@2 [f#3,a3,c#4]@7 ~@2 [f#3,a3,c#4]@4 ~@2 [e3,g#3]@4 ~ [e3,g#3,b3] ~@2 [e3,g#3,b3]@8 ~ [e3,g#3,b3]@5 ~@2 b3@5 [g#3,b3,d#4]@2 ~@2 [d#4,e4] ~@4 d#4@3 ~ [g#3,c4,d#4]@3 ~@3 e4@5 [g#3,c#4,e4] ~@2 [g#3,c#4,e4]@7 ~@2 [g#3,c#4,e4]@5 ~ [g#3,c#4,e4]@3 ~@2 [g#3,c#4,e4] [g#3,c#4,e4]@3 ~ [g#3,c#4,e4]@5 ~ [g#3,c#4,e4]@2 ~ [g#3,c#4,e4]@2 ~ [g#3,c#4,e4]@2 ~, ~@23 b3@5 ~@19 [g#3,d#4]@5 ~@5 [g#3,c4]@8 ~@6 [g#3,c#4]@5 ~@4 d#4@2 ~@38]/5", // F#m E G#m Emaj7 G# C#m G#5 G# …
G: "[a3,c4,e4]@3 [a3,c4,e4] ~ [a3,c4]@4 ~ [a3,c4]@6 [a3,c4,e4] ~ [a3,c4,e4]@5 ~, ~@5 e4@11 ~@2 b3@2 ~@4", // Am
H: "~@5 [f#3,a#3,c#4]@2 ~@3 [f#3,a#3,c#4]@5 ~ [f#3,a#3,c#4]@2 ~@2 [f#3,a#3,c#4] ~@2 d#4", // F#
I: "~ [f#3,b3,e4]@2 ~@4 b3@2 ~@15, ~@3 [f#3,d#4] ~@8", // Esus2 D#m
J: "[[g#3,b3,d#4]@5 ~ [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@7 ~ [g#3,b3,d#4]@4 ~@2 [f#3,a3,c#4]@5 ~ [f#3,a3,c#4] ~@3 [f#3,a3,c#4]@5 [f#3,a3,c#4] ~@2 [f#3,a3,c#4]@4 ~@3 b3@5 [e3,g#3,b3] ~@2 [e3,g#3,b3]@8 ~@2 [e3,g#3,b3]@5 ~, ~@33 a#3 ~@13 [e3,g#3]@4 ~@21, ~@47 a#3@2 ~@23, ~@48 c#4 ~@23]/3", // G#m F#m E
K: "[g#3,b3,d#4]@5 ~ [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@7 ~@2 [g#3,b3,d#4]@5 ~", // G#m
L: "[[f#3,a3,c#4]@5 ~ [f#3,a3,c#4]@2 ~ [f#3,a3,c#4]@7 ~@2 [f#3,a3]@4 ~ [e3,g#3,b3]@5 ~ [e3,g#3,b3]@2 ~@2 [e3,g#3,b3]@7 ~@2 b3@4 ~ [g#3,c4,d#4]@5 ~@2 [c4,d#4]@2 ~ [g#3,c4,d#4]@7 ~@2 [g#3,d#4]@5 ~, a#3 ~@16 c#4@5 ~@19 [e3,g#3]@4 ~@8 g#3@2 ~@11 c4@3 ~@3]/3", // F#m E G# Cm G# G#5 E
M: "[g#3,c#4,e4]@5 ~ [g#3,c#4,e4]@2 ~ [g#3,c#4,e4]@7 ~@2 c#4@4 ~@2, ~@17 [g#3,e4]@4 ~@3", // C#m
N: "[g#3,c#4,e4]@2 ~ [g#3,c#4,e4] ~ [g#3,c#4,e4]@4 [g#3,c#4,e4]@5 ~ [g#3,c#4,e4]@2 ~@2 g#3 ~ [g#3,c#4,e4]@2 ~, ~@9 [c#4,e4] ~@2", // C#m
O: "[b3,c4]@3 c4 a3 ~ [a3,c4,e4]@2 ~ [a3,c4,e4] ~@2 [a3,c4,e4]@2 ~@3 [a3,c4,e4]@2 ~ [a3,c4,e4] ~@3, e4@5 ~@19, a3 ~@23", // Cmaj7 Am
P: "e3 ~ [e3,g#3]@3 ~ [e3,g#3,b3] ~@2 [e3,b3] ~@2 [e3,b3]@3 ~@3 [e3,g#3,b3]@4 ~@2, b3@5 ~@4 g#3@6 ~@9", // E E5 E
Q: "[e3,g#3,c4]@4 ~@2 [e3,g#3,c4] ~@2 [e3,g#3,c4]@7 ~@2 e3@4 ~@2, ~@17 [g#3,c4]@3 ~@4", // Eaug G#
R: "[e3,a3,c#4]@5 ~ [e3,a3,c#4]@2 ~ [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 ~ [e3,a3,c#4] ~@2", // A
S: "[f#3,b3,d#4]@6 [f#3,b3,d#4]@2 ~ [f#3,b3,d#4]@6 ~ [f#3,b3,d#4]@4 ~ [f#3,b3,d#4]@2 ~, a#3 ~@23", // B
T: "[e3,g#3,b3]@5 ~ [e3,g#3,b3]@2 ~ [e3,g#3,b3]@5 ~ [e3,g#3,b3]@4 ~@2 [e3,g#3,b3]@2 ~, a#3 ~@7", // E
U: "[[e3,g#3,c4]@4 ~ [e3,g#3,c4]@2 ~ [e3,g#3,c4]@5 ~ [e3,g#3,c4]@4 ~@2 [e3,g#3,c4]@2 ~@2 [a3,c#4]@5 ~ c#4 ~@2 [e3,a3,c#4]@4 ~ [e3,a3,c#4]@4 ~@2 [e3,a3,c#4] ~@2 c4 ~ b3@3 ~ [f#3,b3,d#4]@2 ~ [f#3,b3,d#4]@5 ~ [f#3,b3,d#4]@2 ~ [f#3,b3,d#4]@3 ~@3 [e3,g#3,b3]@2 ~ [e3,g#3,b3]@2 ~@2 [e3,g#3,b3]@5 ~@13, ~@23 e3@5 ~ [e3,a3]@2 ~@16 [f#3,d#4]@5 ~@44, ~@24 a#3 ~@8 g#3 ~@62]/4", // Eaug A B E A5 D#m
V: "[~ [g#3,b3,d#4]@2 [g#3,b3,d#4] ~ b3@4 b3@5 ~@2 [g#3,b3,d#4] ~ [g#3,b3,d#4]@2 ~ [g#3,b3,d#4] ~@2 [e3,a3]@3 [e3,a3] ~@2 [e3,a3,c#4]@2 ~ [e3,a3,c#4] ~ [e3,a3,c#4] [e3,a3,c#4]@2 ~ [e3,a3,c#4]@2 ~@2 [e3,g#3] ~@2 [d3,e3,a3] ~, ~@5 [g#3,d#4]@10 ~@9 f3 ~@18 a3@2 ~@3, ~@5 c4 ~@17 c#4@5 ~@15 c#4@5]/2", // G#m A5 A E Dsus2 G#5
W: "~ [g#3,b3,d#4]@3 [g#3,b3,d#4] ~ [g#3,b3,d#4]@3 ~ [g#3,b3,d#4]@5 [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@2 ~", // G#m
X: "[e3,a3,c#4]@2 ~ [e3,a3,c#4] ~ [e3,a3,c#4]@3 ~ [e3,a3,c#4]@5 ~ [e3,a3,c#4]@2 ~ a3@3 [e3,c#4] ~@2, ~@9 c#4 ~@2, ~@18 e3 ~@5", // A C#m
Y: "[e3,g#3,b3]@2 ~ [e3,g#3,b3] ~ b3 b3@3 ~ [e3,g#3]@5 ~ [e3,g#3,b3] ~ [e3,g#3,b3]@3 ~ g#3 ~, ~@5 [e3,g#3]@4 b3@6 ~@6 [e3,b3]@2 ~", // E E5
Z: "[~ [e3,g#3,b3]@6 ~@17 b3@6 [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@5 ~ [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@4 ~@2, ~@23 [g#3,d#4]@6 ~@4 a#3 ~@14]/2", // E G#m G#5
AA: "[[f#3,a3,c#4]@5 ~ [f#3,a3,c#4] ~@2 [f#3,a3,c#4]@4 ~@2 a3 ~ [f#3,a3,c#4]@4 ~@2 [e3,g#3,b3]@8 ~ [e3,g#3,b3]@8 ~ [e3,g#3,b3]@6 ~ [e3,g#3]@6 ~@17 [g#3,b3,d#4]@5 ~@2 [g#3,b3,d#4] ~@2 [g#3,b3,d#4]@7 ~@2 [g#3,b3,d#4]@4 ~@2, ~@14 [f#3,c#4]@2 ~@31 b3@7 ~@42, ~@48 a#3 ~@47]/4", // F#m E G#m F#5
AB: "~ a3@4 ~ [f#3,a3,c#4] ~@2 [f#3,a3,c#4]@8 ~ [f#3,a3,c#4]@4 ~@2, [f#3,c#4]@5 ~@19", // F#m F#5
AC: "[[e3,g#3,b3]@4 ~@2 [e3,g#3,b3]@2 ~ [e3,g#3,b3]@7 ~@2 [e3,g#3,b3]@4 ~@2 c4@5 ~ [g#3,c4,d#4]@2 ~ [g#3,c4,d#4]@7 ~@2 [g#3,c4,d#4]@3 ~@3 e4@5 ~ [g#3,c#4]@3 ~ [g#3,c#4]@6 ~@2 [g#3,e4]@3 ~@2 [g#3,c#4,e4]@2 ~ c#4 [g#3,e4] [g#3,c#4,e4] ~ [g#3,c#4,e4]@3 [g#3,c#4,e4]@5 ~ [g#3,c#4,e4] ~@2 [g#3,c#4,e4] ~@2 e4@2 ~ [g#3,e4]@2 ~@2 [a3,c4,e4] ~ [a3,c4,e4]@2 ~ [a3,c4,e4] ~@2 [a3,c4,e4] ~@2 [a3,c4,e4] ~@2 [a3,c4,e4]@4 ~@2, ~@23 [g#3,d#4]@6 ~@18 [g#3,c#4]@6 ~@40 g#3 ~@26, ~@48 d#4@2 ~@4 e4@10 ~ c#4@4 ~@24 c#4@5 ~@22]/5", // E G# C#5 C#m Am G#5 C#5
AD: "[[f#3,a3,c#4]@3 ~ [f#3,c#4] a3 ~ a#3@3 ~ a#3@5 ~ [f#3,a#3,c#4] ~@2 [f#3,c#4]@2 ~ [f#3,a#3,c#4]@2 ~ d#4 b3@4 ~@2 [f#3,b3,d#4] ~@14, a#3 ~@6 [f#3,c#4]@9 ~@3 a#3@2 ~@5 [f#3,e4]@5 ~@17]/2", // F#m F#5 F# F#5 F# B F#5 F#7
AE: "~ [g#3,b3,d#4]@2 ~@2 d#4 [b3,d#4] ~ [b3,d#4]@2 ~ [g#3,b3,d#4]@5 ~ [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@2 ~@2, ~@3 g#3@2 ~@7", // G#m B G#m
AF: "~ [e3,g#3,a3,c#4]@3 ~@2 [e3,a3,c#4]@2 ~ [e3,a3,c#4] ~@2 [e3,a3]@3 [e3,a3,c#4]@2 ~ [e3,a3,c#4]@2 ~ [e3,a3,c#4] ~@2, ~@11 c#4@3 ~@10", // Amaj7 A A5 A
AG: "[g#3,b3,d#4]@2 ~ [g#3,b3] d#4 g#3 ~ g#3@2 ~ [g#3,b3,d#4]@5 ~ b3@2 [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@2 ~, ~@5 [b3,d#4]@4 ~@6 [g#3,d#4]@2 ~@7", // G#m B G#5
AH: "[e3,a3,c#4]@3 [e3,a3,c#4] ~@2 [e3,a3,c#4] ~@2 [e3,a3,c#4] ~@2 [e3,a3,c#4]@4 ~@3 c#4@5, f3 ~@17 [e3,a3]@6", // A A5
AI: "~ [e3,g#3,b3]@5 ~ [e3,g#3,b3]@2 ~ [e3,g#3,b3]@7 ~@2 [e3,g#3,b3]@4 ~", // E
AJ: "[~ [g#3,c4]@6 ~@2 [g#3,d#4] ~@13 [e3,a3,c#4]@8 ~@3 [e3,a3,c#4]@3 ~ [e3,a3,c#4]@4 ~ [e3,a3,c#4]@2 ~@2 f#3@9 ~@2 [f#3,b3,d#4]@3 ~@2 [f#3,b3,d#4]@4 ~ [f#3,b3,d#4]@2 ~@2 [e3,a3]@4 ~@7 [e3,g#3,b3]@2 ~@2 [e3,g#3,b3]@3 ~ [e3,b3]@3 ~ e3@10 ~ [e3,g#3,c4]@3 ~ [e3,g#3,c4]@4 ~@2 [e3,g#3,c4]@2 ~ [e3,a3,c#4]@11 ~@2 [e3,a3,a#3,c#4]@2 ~@2 a3@4 ~ [e3,a3,c#4] ~@2 [f#3,b3]@9 ~@2 [f#3,b3,d#4]@2 ~ [f#3,b3,d#4]@2 ~ [f#3,b3,d#4]@2 ~@4 [e3,g#3,b3,e4]@2 ~ [e3,g#3,b3,e4]@3 ~ [e3,g#3,b3,e4]@5 ~@13, e3@4 ~@41 d#4@10 ~@16 c#4@4 ~@19 c4@10 ~@40 d4 ~@47, ~@46 b3@9 ~@88 [a#3,d#4]@2 ~@29 a#3@2 ~@16, ~@47 g#3@2 ~@42 g#3@13 ~@31 [e3,c#4]@4 ~@53]/8", // G# G#5 A B A5 E E5 Eaug …
AK: "[g#3,b3,d#4]@3 [g#3,b3,d#4] ~ d#4 d#4@2 ~@2 [g#3,b3,d#4]@5 ~ g#3@2 ~ g#3@2 ~@3, ~@5 [g#3,b3]@4 ~ a#3 ~@4 [b3,d#4]@2 ~ [b3,d#4]@3 ~@3", // G#m B
AL: "[e3,a3,c#4]@4 ~ [e3,a3,c#4]@3 ~ [e3,a3,c#4] [e3,a3]@4 ~ [e3,a3]@2 ~ [e3,g#3,a3,c#4]@2 ~ [e3,a3,c#4]@2 ~, ~@10 c#4@7 ~@7", // A A5 Amaj7 A
AM: "~ g#3@2 [g#3,d#4] b3 [g#3,b3,d#4] ~ [g#3,b3,d#4]@3 [g#3,b3,d#4]@5 ~ [g#3,b3,d#4]@2 ~ [g#3,b3,d#4]@2 ~ [g#3,b3]@2, [b3,d#4]@3 ~@18 d#4@2 ~", // G#5 G#m B
AN: "~ b3 ~@2 [a3,c#4]!2 ~ [a3,c#4]@3 [a3,c#4]@5 ~ [a3,c#4]@2 ~ [a3,c#4]@2 ~ [a3,b3,c#4] ~, [a3,c#4] ~@7", // A
AO: "~@4 [g#3,b3] ~ [g#3,b3] ~ [g#3,b3,c4]@3 b3@6 [e3,b3]@2 ~ [e3,g#3,b3]@4, ~@11 g#3@8 ~@5", // G#m G# E5 E
AP: "~@2 e3 ~@15 [e3,g#3,b3]@2 ~@4", // E
AQ: "[e3,a3]@3 ~ [a3,c#4] ~ [e3,a3,c#4]@3 ~ [e3,g#3,a3,c#4]@5 ~ [e3,c#4] a3 ~ [e3,a3,c#4] ~@2 [e3,a3,c#4] ~, g#3 ~@23", // A5 A Amaj7 C#m A
AR: "~@2 [e3,a3,c#4]@3 ~@2 [e3,a3,c#4]@2 ~ [e3,a3,c#4] ~ [e3,a3,c#4]@4 ~@2 [e3,a3,c#4] ~@5, ~@2 [g#3,a#3] ~@21", // A G#sus2
AS: "[~ [b3,d#4]@41 ~@6, g#3@7 ~]/2", // B
})).s("gm_acoustic_guitar_steel").gain(0.05)
// bass · electric bass finger · "Bass"
const bass = note(`<
A B C D@3 E F G@2 H@2 I J K E L@2 M@4 N@2 O P Q R S T U@2 V W@2 X Y@2 Z AA Q AB C AC@3 AD@2 AE AF AG@2 AH AI@2 AJ AK
AL AM AN Q AO AP@4 AQ AR AS AT AU@2 AV AW@3 AX@2 ~
>`.pickRestart({
A: "~ e2@9 b2@7 b1@7, ~ f2 ~@22", B: "e2@6 ~@5 e2@7 f#2@6", C: "g#2@8 ~ g#2@6 d#2@5 ~ g#2@3",
D: "[f#2@7 ~ f#2@6 c#2@3 b1@5 ~ e2@9 b2@8 ~ b1@6 e2@7 ~@5 e2@6 f#2@7]/3", E: "g#2@8 ~ g#2@5 d#2@6 g#2@4",
F: "f#2@7 ~ f#2@6 c#2@4 b1@6", G: "[e2@9 b2@5 e2@3 f#2@3 g2@3 g#2@8 ~@2 g#2@6 d#2@2 d2@3 c#2@3 ~]/2",
H: "[g#2@7 g#2@8 ~ a1 ~@2 b1@3 ~ c#2@8 ~ g#2@4 ~@2 g#2@3 c#2@7]/2", I: "a2@7 ~@2 a2@6 e2@4 ~@5",
J: "f#2@5 ~@2 f#2 ~@2 f#2@7 f#2@7", K: "~ b1@8 ~@3 e2@5 ~ f#2@6",
L: "[f#2@6 ~@2 f#2@7 c#2@3 b1@5 ~@6 d2 ~@2 b2@9 b1@7, ~@23 e2@9 ~@16]/2",
M: "[e2@7 ~@4 e2@7 f#2@5 g#2@7 ~@2 g#2@6 d#2@5 ~ g#2@3 f#2@8 ~ f#2@6 c#2@3 b1@5 ~ e2@10 b2@5 e2@4 f#2@2 g2@4]/4",
N: "[g#2@8 ~ g#2@6 d#2@3 d2@3 c#2@16 ~ g#2@3 ~ g#2@6]/2", O: "b1@2 e2@4 ~@6 g#2@3 ~ g#2@2 c#2@6",
P: "a#2 a2@6 ~ a2@6 ~ e2@3 a2@6", Q: "e2@7 ~@2 b2@9 b1@6", R: "e2@5 c3@4 e2@3", S: "a2@9 f#2@6 e2@5 c#2@4",
T: "a2 ~@2 b2@4 a2@5 g#2@6 f#2@6", U: "[e2@5 ~ e2@4 b2@5 ~ b1@6 ~ e2@6 ~ e2@5 ~ c3@6 e2@6]/2",
V: "a2@6 f#2@5 e2@6 c#2@7", W: "[b2@6 a2@6 g#2@6 f#2@5 e2@2 ~ e2@2 ~ e2@5 ~@14]/2", X: "~@6 b1@5 ~ e2@6 f#2@6",
Y: "[g#2@6 ~ g#2@2 g#2@5 d#2@4 g#2@5 f#2@5 ~@4 c#2@6 ~@2 e2@8, ~@15 f#2@2 ~@7]/2",
Z: "~ f#2@4 ~@2 g#2@9 ~ d#2@4 g#2@3", AA: "f#2@6 ~@3 c#2@7 ~@2 d#2@6", AB: "e2@7 ~@4 e2@6 ~ f#2@6",
AC: "[f#2@6 ~@8 c#2@4 b1@5 e2@6 ~@3 b2@8 ~ b1@6 e2@7 ~@5 e2@6 f#2@7, ~@9 f#2@7 ~@56]/3",
AD: "[g#2@7 ~@2 g#2@5 ~ d#2@4 ~ g#2@2 ~ f#2@7 ~@2 f#2@6 ~ c#2@3 b1@5 ~]/2", AE: "e2@9 b2@5 e2@3 f2@2 ~ f#2@3 ~",
AF: "g2@5 g#2@10 e2@2 ~ d#2@2 c#2@2 ~@2", AG: "[~ f#2 ~@2 g#2@2 ~@6 c#2 ~@5 b1@2 ~@3 c#2@7 g#2@2 ~ g#2@7 c#2@8]/2",
AH: "a2@7 ~@2 a2@6 c#2@3 f#2@2 ~@4", AI: "[~@6 f#2@4 f#2@5 ~ f#2 ~@3 f#2@6 ~@6 b1@2 ~@4 e2@4 ~ f#2@5]/2",
AJ: "g#2@5 ~@2 g#2 ~@2 d#2@5 ~ g#2@8", AK: "a2@8 ~ c#2@7 e2@6 ~@2", AL: "g#2@7 ~ g#2@6 ~ d#2@3 g#2@6",
AM: "a2@4 ~@2 a2@3 c#2@7 ~ d#2@7", AN: "~@8 e2@11 ~@5", AO: "e2@8 ~@4 e2@5 ~ c#2@6",
AP: "[~ a2 ~ b2@5 a2@3 g#2@7 f#2@5 e2@6 ~ e2@4 ~@2 b2@3 b1@6 ~ e2@7 ~ e2@5 c3@6 e2@6 a2@7 f#2@6 e2@6 c#2@6]/4",
AQ: "b2 a2 g#2 f#2", AR: "e2@2 ~ e2@2 e2@5 ~@14", AS: "~@7 b1@5 ~ e2@5 f#2@4 ~@2",
AT: "g#2@5 ~@5 g#2@6 d#2@3 ~ g#2@4", AU: "[~@2 a2@8 ~@2 c#2@3 e2@2 ~@6 g#2@8 ~@2 g#2@7 d#2@3 g#2@5]/2",
AV: "~ a2@4 ~ a2@3 c#2@8 d#2@7", AW: "[~ e2@5 ~ b2@3 e3@9 b2@7 f2@6 ~ b2@3 e3@9 b2@6 e2@6 b2@3 e3@8 b2@4]/3",
AX: "[~ e2@5 ~ b2@3 e3@9 ~@5 g#1@22 ~@2, ~@19 b2@7 ~@22]/2",
})).s("gm_electric_bass_finger").gain(0.18)
// drums · rim
const rim = s("rim").struct(`<
A ~ B C D ~ C E D C@4 F G H D@2 ~ C@2 D C@2 I C J C K E@4 L M N J O P C J ~ I C Q ~ C@2 J R S T C U V W C@3 ~ X Y Z AA
AB AC AD AE ~ C AF C AG AH AI@2 AJ G ~
>`.pickRestart({
A: "x ~@4 x ~@3 x ~@2", B: "x ~@4 x!2 ~@2 x ~@2", C: "~@2 x!2 ~@2 x ~", D: "~@5 x ~@2 x ~@8 x ~@6", E: "x!2 ~ x",
F: "~@2 x ~@3 x!2", G: "x", H: "x ~@6 x ~@2 x ~@7 x ~@5", I: "~@2 x!2 ~@4", J: "~ x ~ x", K: "x ~@3 x ~@4 x ~@2",
L: "x ~@6 x ~ x ~@8 x ~@5", M: "~ x ~ x ~@2 x ~@17", N: "~@5 x", O: "x ~@2 x!2 ~@4 x ~@2", P: "x ~@2 x",
Q: "~@5 x ~@2 x ~@8 x ~@5 x", R: "x ~@5 x ~@2 x ~@7 x ~@5 x", S: "~@9 x ~ x ~@6 x ~@5", T: "x ~ x!2 ~@2 x ~",
U: "~@6 x ~@12 x ~@2 x ~", V: "~@7 x ~@16", W: "~ x ~@6 x ~ x ~@8 x ~@4", X: "~ x", Y: "~@5 x ~@3 x ~@7 x ~@6",
Z: "x ~@4 x ~@11 x ~@5 x", AA: "~@6 x ~@10 x ~@5 x", AB: "~@4 x ~@4 x ~@2", AC: "x ~@3 x!2 ~@2",
AD: "x ~@10 x ~@10 x ~", AE: "~ x ~ x ~@8", AF: "x ~@2 x ~@5 x ~@7 x ~@6", AG: "~ x ~@7 x ~@8 x ~@3 x ~",
AH: "~@7 x ~@12 x ~@3", AI: "~@8 x ~@2 x ~@8 x ~@3", AJ: "~ x ~@4 x ~@5",
})).gain(0.19)
// drums · snare
const snare = s("sd").struct("<~ A ~@15 B ~@17 C ~@5 D ~@26 E ~@10>".pickRestart({
A: "x ~@10 x ~@6 x ~@5", B: "~@23 x", C: "~@4 x!2 ~@2", D: "~ x ~@22", E: "~@6 x ~@2 x!2 ~ x ~@2 x ~@8",
})).gain(0.19)
// drums · clap
const clap = s("cp").struct("<~@68 [~ x ~@2] ~@10>").gain(0.19)
// drums · crash
const crash = s("cr").struct("<~@77 x ~>").gain(0.19)
// drums · ride
const ride = s("rd").struct(`<
A B C@2 D ~ C E F G H G I C B J G K ~ L M G@2 N O P Q R S C@2 T U V B W X C@4 ~ C Y G ~ Z C Y AA AB C Y AC AD AE A C Y
AF C D G@2 AB C AG ~ AH C Y N AI AJ G@2 AK ~@2
>`.pickRestart({
A: "~ x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x ~@2", B: "x", C: "x!8",
D: "x ~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x", E: "x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x",
F: "~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@3 x ~ x ~@2 x", G: "~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x",
H: "~@2 x ~@3 x ~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x", I: "~@2 x ~@3 x ~ x ~@2 x ~@2 x ~@3 x ~@5",
J: "~@3 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~ x", K: "~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@4",
L: "x ~@2 x ~@2 x ~@3 x ~@2 x ~ x ~@2 x ~@2 x ~ x", M: "~@3 x ~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x", N: "~ x!7",
O: "x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@5 x", P: "~@2 x ~@3 x ~@5 x ~ x ~@2 x ~@2 x ~@2 x",
Q: "~@2 x ~@3 x ~ x ~@2 x ~@2 x ~@3 x ~@2 x ~@2", R: "x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x ~@3",
S: "x ~@4 x ~@2 x ~@3 x ~@2 x ~@2 x ~@2 x ~@2", T: "x ~ x ~@3 x ~ x ~@3 x ~@2 x ~ x ~@2 x ~@2 x",
U: "~@2 x ~@2 x ~@2 x ~@3 x ~@2 x ~@2 x ~@2 x ~@2", V: "x!4 ~ x!2 ~", W: "~ x ~@2",
X: "~@6 x ~@2 x ~@3 x ~@2 x ~ x ~@2 x ~@2", Y: "x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~@2 x",
Z: "x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@3 x ~@2 x ~", AA: "~@2 x ~@2 x ~@2 x ~@3 x ~@2 x ~ x ~@2 x ~@2 x",
AB: "~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@2 x ~@3 x ~@2", AC: "~@3 x ~@2 x ~@6 x ~@2 x ~@2 x ~@2 x ~",
AD: "~ x ~@2 x ~@2 x ~@2 x ~@13", AE: "~ x ~@2 x ~@2 x ~ x ~ x ~@2 x ~@2 x ~@2 x ~ x ~", AF: "~@19 x ~@4",
AG: "x ~@2 x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@6", AH: "~ x ~@10", AI: "x!6 ~@2",
AJ: "~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@3 x ~@2 x ~@2 x", AK: "~ x ~@2 x ~@2 x ~ x ~@2 x ~@2 x ~@2 x ~@2 x ~@2",
})).gain(0.19)
stack(electric_guitar_clean, acoustic_guitar_steel, bass, rim, snare, clap, crash, ride)
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.