0:00/0:00
// John Henry — Kenny Baker
// 155 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// 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(155/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 · "Bass"
const bass = note(`<
A B C D E F G H C I J K C L M N G@2 O P C B C D E F G H C I J K C L M N G@2 O P C B C D E F G H C I J K C L M N G@2 O
P C B C D E F G H C I J K C L M N G@2 O P Q@3
>`.pickRestart({
A: "~@10 e2@2 f2@2 f#2 ~", B: "g2@3 ~ d2@3 ~ g2@4 d2@3 ~", C: "g2@3 ~ d2@3 ~ g1@3 ~ d2@3 ~",
D: "g2@3 ~ d2@3 ~ g2@3 ~ d2@2 g2 ~", E: "d2@3 ~ a1@3 ~ d2@3 ~ a1@2 ~@2", F: "g2@3 ~ d2@2 ~@2 g2@3 ~ d2@3 ~",
G: "g2@3 ~ d2@3 ~ g2@3 ~ d2@3 ~", H: "g2@4 d2@3 ~ g1@3 ~ d2@3 ~", I: "g2@3 ~ d2@3 ~ d2@3 ~ a1@2 ~@2",
J: "g1@3 ~ d2@3 ~ g2@3 ~ d2@2 ~@2", K: "g2@3 ~ d2@3 ~ g1@2 ~@2 d2@3 ~", L: "g2@2 ~@2 d2@3 ~ g1@3 ~ b1@2 c2 ~",
M: "d2@3 ~ a1@2 ~@2 d2@3 ~ a1@2 ~@2, ~@8 e1 ~@7", N: "g2@4 d2@3 ~ g2@3 ~ d2@3 ~", O: "g1@3 ~ d2@3 ~ g2@3 ~ d2@3 ~",
P: "g2@3 ~ b1@2 c2 ~ d2@3 ~ a1@2 ~@2", Q: "[g2@3 ~ d2@3 ~ g2@3 ~ g1@31 ~@5]/3",
})).s("gm_acoustic_bass").gain(0.36)
// chords · banjo
const banjo = note(`<
A B@2 C@8 D E F@8 G H@2 I@8 J@6 K@3 L M N O P@3 Q R S T@6 U@2 V W@3 X@7 Y Z@7 AA@2 AB ~@2
>`.pickRestart({
A: "~@5 [d4,g4] g4 [f#4,g4], ~@12 e4 ~@3", // G5 Gmaj7
B: "[g4@2 g4@2 ~@2 g4!2 [d4,g4]@2 ~@2 a3 a#3 ~@2 e4@2 g4@2 ~ a3 a#3 ~@5 a3 a#3 ~ g4, ~@4 g4@2 ~@4 g4@4 d4@2 ~@2 d4@4 d4@2 [g3,d4]@4 ~ b3@3, ~@5 d4@2 ~@4 d4@2 b3@14 d4@3 d4@2, ~@15 g4@3 ~@2 g4@3 g4@3 g4@5 ~]/2", // G5
C: "[[d4,g4]@2 ~@2 g4 ~@2 g4 ~@2 g4 ~ f4 d4 e4 ~ d4@2 [c#4,d4] ~@2 d4 ~@2 [c#4,d4] d4 [c#4,d4] ~@2 d4 ~@4 g4@2 ~@2 g4!2 [d4,g4]@2 ~@2 a3 a#3 ~@2 e4 ~@3 a3 a#3 ~@2 [a3,a#3] ~@7 a3 ~ e4 ~@3 [a3,a#3] ~@3 e3 ~ d3 e3 ~@2 a3 a#3 ~@2 a3 a#3 ~@2 [a3,a#3] ~@3 [d3,e3] ~@3 [e4,g4]@2 g4@2 ~ a3 a#3 ~@3 e3 ~@2 a3 a#3 ~@4 [a3,a#3] ~@2 e3 ~@3 [c#4,d4] ~@2 d4 ~ g4, ~@2 g4@2 ~ g4@2 ~ g4@2 ~ g4@4 g4@5 g4@3 g4@5 g4@3 g4@3 ~@2 g4@2 ~@4 g4@4 d4@2 ~@2 [d4,g4]@5 d4@3 g3@3 b3@4 [a#3,b3]@4 b3@4 b3@4 b3@4 b3@3 ~ b3@4 b3@3 ~ b3@16 ~ d4@2 ~@4 d4@3 d4@3 ~ d4@2 ~ d4@2, ~@3 d4@3 d4@3 d4@2 ~@8 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 d4@4 ~ d4@3 ~@3 d4@2 b3@7 ~ b3@4 b3@3 g4@7 g4@10 ~@5 g4@4 g4@4 g4@6 ~@4 g4@3 g4@5 g4@3 g4@3 g4@8 ~@2 g4@3 ~, ~@47 g4@3 ~@4 g4@5 d4@3 g3@2 ~@8 g3@2 ~@4 g3@2 ~@13 g3@7 ~@5 g3@3 ~@4 [g3,d4]@4 ~ g3@2 ~ g3@4 ~@4, ~@63 d4@3 ~@2 d4@3 d4@4 d4@4 d4@4 d4@4 d4@4 d4@5 ~@2 d4@4 d4@2 d4@3 [d3,d4]@2 ~@10 d3@5 ~@4]/8", // G5 Dmaj7 G5 A#maj7 Dsus2 Em A#maj7 Dmaj7 …
D: "~@2 g4@2 ~@2 g4!2 [d4,g4]@2 ~@2 g4 [d4,g4]@3, d4@2 g4 ~@2 g4 ~@2, ~@5 d4@2 ~@4 d4@2 ~@3", // G5
E: "[e4,g4]@2 ~@2 a3 a#3 ~ a#3 ~@4 a3 a#3 d4 g4, ~ d4@3 [a3,d4] g3 ~@2, ~@2 g4@3 b3@8 b3@2 ~, ~@6 g4@3 g4@6 ~, ~@11 d4@3 ~@2", // Em D5
F: "[c#4 g4 ~@2 g4 ~@2 g4 ~ c#4 ~@2 f4 ~ e4 ~ d4@2 c#4 ~@2 d4 ~@2 c#4 ~@3 e4 d4 ~@2 d4@2 ~ g4 ~@2 g4!2 g4@2 ~@2 [a3,a#3] ~@3 [d4,e4] ~@3 a3 a#3 ~ a#3 ~@4 [a3,a#3] d4@2 ~ e4@2 g4@2 ~ [a3,a#3] ~@4 e3 ~ [d3,e3] g3@2 ~ [a3,a#3] ~@3 a3 a#3 ~ d4 [a3,a#3] ~@3 d3@2 d#3@2 ~@2 e4 ~@3 [a3,a#3] ~@3 e3 ~@2 a3 a#3 ~ a#3 a3 ~@3 a3 a#3 ~@7 d3@2, d4@2 g4@2 ~ g4@2 ~ g4@3 g4@4 g4@5 g4@3 g4@3 g4@5 g4@4 ~ g4@2 ~@4 g4@4 d4@2 ~@2 d4@6 d4@3 d4@2 b3@9 ~@3 g3@4 b3@4 b3@4 b3@4 b3@12 b3@3 ~ b3@4 ~@5 g3@3 ~@3 [g3,d4]@4 ~ g3@3, ~@3 d4@3 d4@3 ~ d4@3 d4@3 ~@3 d4@2 ~ d4@3 d4@2 d4@2 ~ d4@2 ~@2 d4@3 d4@5 ~ d4@2 b3@8 b3@2 a3@2 ~ g3@2 ~@8 g4@3 g4@10 ~ g4@4 g4@4 g4@9 g4@9 g4@3 g4@5 g4@3 g4@3 g4@6, ~@47 g4@3 g4@4 g4@3 g4@6 g4@3 d4@4 d4@2 d4@3 d4@4 d4@4 d4@4 ~@2 d4@5 ~@6 d4@3 d4@4 d4@3 d4@3 d4@2 d4@2 ~ d4@2 ~@4 d4@4, ~@91 g3@5 e3@4 ~@4 g3@2 ~ d3@5 ~@11 g3@2 ~@3]/8", // A#maj7 Dsus2 A#maj7 Dsus2 A#maj7 G5
G: "[g3,g4]@2 ~@7 g3 e3 ~@2 a3 a#3 g4, d4@3 g3@2 g4@2 d4@4 [d3,d4]@2 ~ d4@2, ~@2 g4@2 d4@2 g3@2 g4@4 g4@3 ~", // G D
H: "[~@4 d4@2 ~@6 e3 g3 e3 d3 g3@2 ~@7 g3 ~@2 e3 g3 d#3 d4, [g3,d4]@3 g3@2 ~ g3@2 g4@8 ~@2 g4@3 g4@3 g4@8, ~@2 g4@3 ~@2 d4@3 d3@2 ~@7 g3@2 ~ g3@3 ~ f3@2 ~@4, ~@9 g3@2 d4@4 d4@4 ~ d4@3 d4@4 d4@4 ~]/2", // G5
I: "[~@6 f#4 ~ d4@2 [c#4,d4] ~@2 d4 ~@2 [a3,a#3] ~@4 g3 e3 d3 g3@2 ~@7 g3 e3 ~@2 a3 a#3 ~@9 a3 a#3 ~@4 [a3,a#3] ~@3 e3 ~@2 a3 a#3 ~ d4@2 [c#4,d4] ~@2 d4!2 ~ [c#4,d4] ~ c#4 g4 ~@2 g4 ~ a#3 a3 ~@3 g3 [e3,f3] ~@6 g3 e3 ~ g3@2 g4@2 ~@5 g3 e3 ~@2 a3 a#3 ~@10 g3 e3 ~@2 g3@2 g4, d3@4 d3@14 g3@3 ~@6 g3@3 g3@3 ~@2 d3@19 ~@3 b3@2 ~@5 g3@8 ~@10 g3@3 ~@6 g3@2 ~@9 g3@3 ~@7 [g3,d4]@4 d4@3 d4@4 d4@2 ~@3, ~@2 g4@5 g4@5 g4@3 g4@5 g4@6 g4@3 g4@3 g4@4 g4@3 g4@3 g4@2 d4@2 g3@2 ~ b3@4 b3@3 g3@2 ~ d3@21 ~@8 d3@6 ~@13 d3@15 ~@6, ~@5 d4@2 ~@4 d4@2 ~ d4@3 d4@2 d4@4 d4@4 ~ d4@3 d4@4 d4@3 d4@2 [g3,d4]@3 g3@2 g4@6 g4@9 g4@3 g4@5 g4@3 g4@2 g4@2 ~ g4@2 ~ g4@5 g4@6 g4@8 ~@3 g4@3 g4@4 g4@3 g4@3 g4@3 g4@3 g4@4 g4@3 ~, ~@47 d4@3 d4@2 d4@3 d4@4 d4@2 ~ d4@2 ~@3 d4@2 ~@6 d4@2 d4@2 ~@2 d4@2 d4@4 d4@4 ~ d4@3 d4@4 ~ d4@3 d4@3 ~ d4@2 ~ d4@2 ~@3 g3@3 g3@3 ~@7]/8", // Dmaj7 A#maj7 Dmaj7 Fmaj7 G5
J: "[g3@2 ~ g3@2 ~@3 g4@2 [f#4,g4] ~@3 [a3,a#3] ~ g3@2 ~@11 g3 [e3,f3] ~@3 d4@2 ~ d4@2 ~ d4@2 a3 e4 f4 ~@12 g3 e3 ~@2 a3 a#3 ~ [a3,a#3] ~ a3 a#3 ~ a#3 ~@7 g3 e3 ~ g3@2 ~@7 g3 e3 ~@2 a3 a#3 g4, d4@4 ~@2 g3@7 b3@16 ~@4 a3@3 a3@3 a3@3 ~@3 g3@5 ~ g3@3 g3@3 ~@13 [a3,d4]@2 [g3,d4]@4 ~@7 g3@3 g3@3 ~@7, ~@2 g4@3 ~@6 g4@7 g4@2 d4@2 g3@2 g4@2 d4@2 d4@3 d4@2 ~@13 e4@2 d4@4 d4@3 d4@3 ~@4 d4@3 d4@2 d4@2 ~@7 d4@3 d4@4 ~ d4@3 d4@4 d4@2 ~ d4@2, ~@12 d4@3 d4@4 g3@2 g4@2 d4@2 g3@4 ~@3 d3@3 ~@61, ~@27 g4@11 ~@6 g4@3 g4@3 g4@3 g4@3 g4@4 g4@3 g4@5 g4@3 g4@3 g4@8 g4@3 g4@3 g4@4 g4@3 ~]/6", // Gmaj7 A#maj7 Fmaj7 A#maj7 D5 G5
K: "[g3@2 ~@4 e3 ~ a3 a#3 ~@2 a3 a#3 ~@2 [a3,a#3] ~@4 g3 [e3,f3] ~@6 a3 ~@2 g3@2 ~@3 g3 e3 ~ g3@2 ~@3 b3 a#3@2, d4@4 d4@3 ~@2 b3@4 b3@3 ~@2 g3@3 ~@3 d3@6 ~@18, ~ g4@4 g4@2 g4@3 g4@3 g4@4 g4@4 g4@3, ~@5 g3@3 ~@7 d4@4 d4@3 ~ d4@4 a3@2 ~ f#3@2 ~@16, ~@28 d4@3 d4@5 ~@12]/3", // A#maj7 Fmaj7
L: "b3@2 [b3,d4,g4] ~@3 [b3,d4,g4] ~@3 [d4,g4] ~@3 b3 ~", // G G5
M: "~@2 [d4,g4,b4] ~@3 [b3,d4,g4] ~@3 [d4,g4] ~@3 [d5,g5] ~", // G G5
N: "~@2 [b4,d5,g5] ~@3 [b4,g5] ~@3 [b4,g5] ~@3 [g4,b4,d5] ~", // G Em G
O: "~@14 f#4 ~, f#4@9 b4@3 b4@2 ~@2, ~@2 d5@2 a4@2 b4@2 d5@3 d5@4 ~, ~@3 b4@2 d5@2 a4@3 a4@3 a4@2 ~",
P: "[~@6 e5@2 ~ e5@2 ~ e5@2 ~@4 e5 ~ b4 ~ a#4@2 g4 ~@2 b4@3 ~@5 e5@2 ~ e5@2 ~ e5@2 ~ e5 ~@3, b4@5 g5@3 g5@3 g5@3 g5@2 g5@3 g5@2 g5@2 ~@3 g5@3 ~@2 g5@3 g5@3 g5@3 g5@3 g5@3 ~@2, ~@2 g5@2 d5@3 ~@10 d5@3 ~@12 b4@9 ~@7, ~ e5 ~@3 e5 ~@10]/3",
Q: "d5 ~@2 b4 g4 ~ e4 ~ g4@2 g4 ~@3 e4 ~, ~ g4@3 ~ g4@3 ~@5 g4@3, ~@2 a#4@2 ~@3 b4@5 b4@2 ~@2",
R: "g4@2 g4 ~@3 d4 ~ f#4@2 d5@3 ~@2 b4, ~@3 g4@2 g4@9 ~@2, ~@4 b4@3 ~@7 a#4@2",
S: "g4@2 g4 ~@3 e4 ~ g4@2 g4 ~ b4@2 ~ b4, ~@4 b4@2 ~ b4@5 ~@4, ~@5 g4@3 ~@6 d4@2",
T: "[g3@2 g4@2 d4@2 g3@3 ~ d3 ~@5 g3@2 ~@6 f#3 ~ d4@2 ~@2 e3 ~ g3@2 ~ g3@2 ~ [a#3,c#4,d4] ~@2 d4 ~@2 [a3,a#3] ~@11 d4@2 ~@6 g3@2 g4@2 ~@6 e3 ~@2 a3 a#3 ~ [a3,a#3] ~ g3@2 ~ g3 e3 ~@7 g3 ~, ~@9 g3@3 g4@2 d4@2 d4@4 d4@2 d3@2 ~ g3@4 g3@2 ~@15 g3@2 f#3@5 a3@2 a3@2 ~ a3@3 a3@2 ~@33, ~@13 g3@2 g4@3 g4@9 ~@7 g4@3 g4@2 ~ g4@3 g4@8 g4@9 g4@6 ~@3 g4@2 ~@5 g4@2 g4@6 g4@6 g4@6, ~@21 g3@2 d4@2 ~@3 d4@3 d4@5 ~@11 d4@2 a3@3 d4@4 ~@3 d4@3 ~ d4@5 d4@3 d4@4 ~@4 d4@4 ~@13, ~@54 f#3@3 ~@5 f#3@2 ~@6 g3@3 g3@3 ~@12 g3@6 ~@2]/6", // A# A#maj7
U: "[[g3,g4]@2 g4@2 d4@2 ~@3 g3 e3 ~@2 a3 a#3 ~@4 a3 a#3 g3 ~@4 a3 a#3 ~ g3 e3 d3, d4@4 ~@2 g3@3 ~@3 g4@3 g4@3 g4@10 d4@4, ~@7 d4@4 d4@2 ~ d4@2 [g3,d4]@4 d4@3 ~ g3@2 ~@6, ~@25 d4@2 b3@5]/2", // G G5
V: "g3@2 ~ g3 ~ d4 ~@6 a3 g3 f#3 d4, d4@2 f3 e3 d3@2 ~@2, ~ g4@4 g4@3, ~@7 d4@4 d4@3 ~@2",
W: "[~@3 a3 a#3 ~ e3 ~ g3 ~ [d4,g4]@4 d4 ~ c#5 ~@7 g5@2 c#5 ~@2 d5 g5 ~ e5 ~ d5 ~@3 b4 g4 [g4,b4]@2 ~@2 g4 ~ b4 g4, g3@2 g4@7 ~@5 g4@6 g4@3 g4@5 g4@3 g4@5 g4@3 ~@3 g4@2 ~ g4@2 ~, ~ d4@2 ~ d4@2 ~ d4@2 ~@9 d5@3 d5@3 ~@2 [g3,d5]@2 ~@20, ~@5 g3@3 ~@11 g5@3 g5@2 ~@3 g5@3 ~@7 a#4@2 ~@4 b4@3 ~@2]/3", // G5 G G5
X: "[c#5 ~@9 g5 ~ f5 ~ e5 ~ d5@2 a#4 ~@9 e5 ~ d5 ~ f5 f#5 ~@6 b5@2 ~@2 g4@2 b5 ~ e5 ~ d5 ~@3 b4 g4 [g4,b4]@2 ~@2 g4 ~ b4 ~ e5 ~ d5@2 ~@2 b4 ~ b4 ~ e4 ~ d4 e4 ~@8 b4 g4 g4@2 g4 ~@2 g4 ~ a#4 ~@2 e5 ~ d5 ~@2 b4 g4 ~ e4 b4 ~@2 b4 g4, ~ [d5,g5]@2 d5@2 g4@2 g5@2 d5@2 ~@7 b4@2 g4@2 d5@2 b4@2 g4@3 g4@6 b5@2 g5@2 g4@4 b5@3 ~@7 a#4@2 ~@4 b4@3 ~@7 a#4@2 ~@4 b4@2 b4@2 ~ a#4@2 a#4@3 a#4@2 ~@8 g3@3 ~@14, ~@2 g4@2 g5@2 d5@2 g4@3 g4@8 d5@2 b4@2 g4@2 d5@2 b4@3 ~@4 g5@2 g4@2 b5@2 ~@2 g5@3 ~@2 g4@5 g4@3 ~@3 g4@2 ~ g4@2 g4@5 g4@3 g4@2 g4@5 g4@6 g4@3 ~@4 g4@2 ~ g4@3 g4@6 ~@2 g4@3 g4@3 ~, ~@81 b4@2 b4@3 ~@6 b4@2 ~@2 b4@5 ~ a#4@2 ~@5 a#4@2 ~]/7", // G G5
Y: "g4@2 g4 ~@3 e4 ~ d4@2 g4@2 g4@2 [e4,g4]@2, ~@3 g4@2 g4@4 ~@7, ~@4 b4@3 b4@2 ~@7", // Em
Z: "[g4@2 g4@2 ~@2 g4!2 [d4,g4]@2 ~@2 a3 a#3 ~@2 e4@2 ~@2 a3 a#3 ~@2 a#3 a3 ~@2 a3 a#3 d4 ~ c#4 g4 ~@2 g4 ~@2 g4 ~ d4 ~@2 f4 ~ e4 ~ d4@2 c#4 ~@2 d4 ~@2 c#4 ~ c#4 ~@2 d4!2 ~ f#5 g5 ~@4 b5 ~ [c#5,d5] ~@5 g5 ~ e5 ~@5 d5 g4 [g4,b4]@2 ~@2 g4 ~ b4 ~ e5 ~ d5@2 ~@2 b4 ~@3 e4 ~ d4 e4 g4@2, ~@4 g4@2 ~@4 g4@4 d4@2 ~@2 [d4,g4]@5 d4@3 g3@2 ~@22 g3@6 ~@56, ~@5 d4@2 ~@4 d4@2 b3@8 b3@4 b3@4 ~@39 g4@3 g4@5 g4@3 g4@5 g4@3 ~@3 g4@2 ~ g4@2 g4@5 g4@3 g4@2 g4@5 ~@2, ~@15 g4@3 ~@4 g4@9 g4@2 ~ g4@2 ~ g4@2 ~ g4@3 g4@4 g4@5 g4@3 g4@5 g4@3 g4@4 b5@2 ~@6 g5@3 ~@7 a#4@2 ~@4 b4@3 ~@7 a#4@2 ~ b4@3 b4@2 b4@2 ~, ~@27 d4@3 ~@3 d4@2 d4@3 d4@3 ~ d4@3 d4@3 ~@3 d4@2 ~ d4@3 d4@2 d4@2 ~@5 g5@3 g5@2 ~@3 d5@3 d5@2 ~@3 d5@4 ~@26]/7", // G5 Dmaj7 G G5
AA: "[a#4 b4 a#4!2 ~ a#4 [a4,d5] g4 [g4,b4]@2 ~@2 g4 ~ b4 ~ e5 ~ d5@2 ~@2 b4 ~@4 b4 ~ a#4 b4 g4, ~@3 d5@3 ~@5 b4@3 ~@7 a#4@2 ~ b4@2 e4@2 ~@4, ~@4 g4@3 ~@3 g4@2 ~ g4@2 g4@5 g4@3 g4@2 g4@3 g4@3 ~]/2", // D5 G
AB: "~@2 g5 ~@2 a5 ~@2 a#5@2 ~@2 b5@2 ~@2, g4@11 ~@5",
})).s("gm_banjo").gain(0.26)
// chords · banjo · soft notes
const banjo_soft = note("<~@22 A ~ B ~@5 C D E ~ F@3 G@2 H I ~@4 J K@2 L@2 M@2 N@2 O P Q R S T ~@23>".pickRestart({
A: "~@5 g4@3 ~@8", B: "~@3 f#4@2 ~@11", C: "~@3 g3@2 ~@11", D: "~@7 d4", E: "~@5 g4@2 d4@2 ~@7, ~@4 d4@3 ~@9",
F: "[~@3 d3@3 d3@3 ~@4 e4 ~@13 d3@8 ~@8 g3@2 ~@3, ~@9 d3@16 ~@2 d4@2 ~@19]/3",
G: "[~@19 g3@2 ~@2 d4@4 d4@4 ~, ~@11 d3@11 ~@10]/2", H: "~ b3@15",
I: "~@4 d4@3 d4@4 ~ d4@2 ~@2, ~@3 g3@2 ~@2 d3 ~@3 g3@2 ~@3", J: "~@7 d5@2 ~ d5@3 d5@3",
K: "[~@13 g5 ~@6 d5@3 d5@3 d5@3 d5 b4 ~, ~@6 d5@3 ~@7]/2", L: "[~@11 g4@2 ~@2 b4@5 ~@8 a4 d5 ~@2, ~@27 f#4@2 ~@3]/2",
M: "[~@3 g4@2 ~@6 g4@2 g4@5 ~ g3@2 g4@2 ~ g4@3 d4@2 ~@3, ~@23 d4@4 ~@5]/2",
N: "[~@3 g3@2 ~@10 d3 ~@4 d4@2 ~ d4@2 ~ d4@3 d4@2 ~, ~@11 g4@7 ~@14]/2", O: "~@2 d4@2 ~@5 f#3@5 ~@2",
P: "~@3 g3@2 ~@3 g4@3 d4@4 ~", Q: "~@3 d4@4 d4@4 ~@2 b3@3, ~ b3@9 ~@2 d4@4, ~@7 d3 ~@8",
R: "~@3 g3@2 g4@2 ~ g4@3 d3 ~@4", S: "~@6 e3 d4@2 ~@7, ~@7 d3 ~@8", T: "~@15 b3",
})).s("gm_banjo").gain(0.15)
// chords · acoustic guitar steel · "Mandolin"
const acoustic_guitar_steel = note(`<
~ A B C D E@2 F A G H@2 I J K L A M N O P@2 Q@2 R S F T U V W X Y@2 Z AA AB@2 F AC AD AE AF AG AH AI@2 AJ AK AL AM AN
AO AP AQ AR AS AT@2 AU@2 M F AV AW AX AY E@2 AZ BA BB@4 A BC BD@2 BE BF ~@2
>`.pickRestart({
A: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~", // G
B: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,g5] ~@3 [d4,g4,b4,g5] ~", // G G5 G
C: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~", // G
D: "~@2 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~", // D
E: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~", // G
F: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G
G: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,f#4] ~@3 [d4,f#4] ~", // G D
H: "[~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@2 [d4,g4,b4] [g4,b4] b4@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,g5] ~@3 [d4,g4,b4,g5] ~, ~@7 [d4,g5]@2 ~@7, ~@15 g4 ~@16]/2", // G G5 G G5
I: "~@2 [d4,g4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~", // G5 G
J: "~@2 [d4,g4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~", // G5 G
K: "~@2 [d4,f#4]@4 [d4,f#4]@4 [d4,f#4]@3 [d4,f#4] [d4,f#4,d5] ~", // D
L: "~@2 [g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~", // G
M: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G
N: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~", // G G5 G
O: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~", // G D
P: "[~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@2 d4 [d4,g4,b4,g5] g4 d4@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4] ~@3 [d4,g4,b4] ~, ~@15 [b4,g5]@3 ~@14]/2", // G G5 G Em
Q: "[~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@2 d4 [d4,g4,b4] ~ [d4,g4]@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~, ~@7 g5@2 ~@7, ~@15 b4@3 ~@14]/2", // G G5 G
R: "~@2 [d4,f#4]@2 ~ d4 d4@2 f#4 [d4,f#4,d5] [d4,f#4]@2 d4 [d4,f#4,d5] [d4,f#4] ~, ~@6 f#4 ~@9", // D
S: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~", // G
T: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G
U: "~@2 [d4,g4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G5 G
V: "~@2 [d4,g4,b4,f#5] ~ e4 ~ [c#4,f4] ~ [d4,f#4]@2 [d4,f#4] ~@3 [d4,f#4] ~", // Gmaj7 C# D
W: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@2 [g3,e4,d5] [g3,e4,d5,g5] g3", // G Em7
X: "d4@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~", // G
Y: "[~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@2 [d4,g4] [d4,g4,b4,g5] g4 d4@2 [d4,g4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@2 d4 [d4,g4,b4] ~, ~@15 [b4,g5]@3 ~@14]/2", // G G5 G G5 G Em
Z: "~@2 d4 ~ d4@2 [d4,f#4]@3 [d4,f#4]!2 [d4,f#4,d5] [d4,f#4] [d4,f#4,d5] [d4,f#4] ~", // D
AA: "[d4,g5]@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G5 G
AB: "[~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@2 d4 [d4,g4,b4,g5] ~ g4@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~, ~@15 [b4,g5]@3 ~@14]/2", // G Em
AC: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,f#4] ~@3 [d4,f#4,d5] ~", // G D
AD: "~@2 [d4,g4,b4] ~@2 d4 [d4,g4,b4,g5] ~@5 g3@2 [g3,e4]@2", // G C
AE: "~ g4@2 g4 ~ g4@2 g4 ~ g4@2 g4 ~ g4@2 ~, [g3,e4] ~ g3 ~ [g3,g4] ~ [g3,g4] ~", // C G
AF: "e4@2 d4@2 a3 b3 ~ b3 g3@2 [g3,d4] a3 b3 d4 e4 f#4, ~@3 d4@2 ~@3", // G5
AG: "[g3,g#3,f#4] ~@2 g4 ~ g4 [g3,a#4] b4 ~@4 d4@2 b3 ~, ~ g4@2 ~@6 g4@2 ~@5, ~ g3!2 ~ [g3,g4] g3@2 ~", // Gm G
AH: "[c4,e4] [c#4,d4,f#4] ~@3 f#4 d4 f#4 [c4,f#4]@2 ~ d4 ~ d4 ~ d4, ~@3 f#4@2 ~@11, ~@2 d4 ~@2 [g3,d4] g3 [g3,e4]", // C Dmaj7 Cdim G5 C
AI: "[e4 g4@2 g4!3 a#4 ~ [g3,g4]@2 ~@5 d4 e4@2 d4@2 b3 g3 a3 ~ g3@2 [d4,g4]@2 d4 e4 g4 ~, g3@6 ~ b4@2 ~@5 g3@5 ~@13]/2", // G G5
AJ: "[a#4,c#5] d5@4 b4 a4 ~ g4 d4!2 ~ d4 e4 g4@2, ~ b4 ~@14", AK: "[a4,d5] b4 g4!2 ~@3 g4 ~@2 g3 ~ b3 ~ d4 f#4",
AL: "g4 f#4 g4 b4 ~ g4 a4 c5 b4 d5 c5 b4 a4 c5 b4 a4",
AM: "g4@2 g4 f4 e4 d4 [b3,d4] a3 ~@3 f#4 g4 b4 c5 [c#5,d5], ~@2 g3 ~, ~@5 d4 ~@2", // Bm Dmaj7
AN: "~ g5@2 ~ g5@2 ~ g5@2 ~ g5@3 g5 ~ a#5, d5@2 ~ d5@3 d5@2 ~ d5@3 ~@2 a4@2",
AO: "b5 ~ e5 g5 e5 d5 ~ b4 g4 e4 d4 e4 g4 b4 c5 c#5", AP: "~ g5@2 d5 g5 a#5 ~@2 g5@2 g5 a5 g5 d5 b4 c5, d5 ~@7",
AQ: "[c#5,d5] ~ a4 ~ d5 a4 g4 f#4 ~@6 a4@2, ~ d5@2 a4@2 ~@3 d4@8", // Dmaj7
AR: "[d4,c#5,f#5] g5@2 g5 [d5,g5]@3 g5 [d5,g5]@3 g5 [d5,g5]@2 ~ g5, ~@7 d5", // Dmaj7 G5
AS: "[d5,g5]@2 d5 g5 d5 b4 g4 e4 ~ b3 g3 ~ d4 f#4 g4 a#4, ~@2 d4 ~", // G5
AT: "[b4 a#4 ~@3 a#4 b4 a#4 ~@2 g4 a#4 b4 a#4 a4 ~ a#4 b4@2 ~@3 b4!4 g4 b4 d4 e4 g4 a4, ~@15 g4@3 ~@14]/2",
AU: "[b4@2 g5@2 d5 b4 a4 g4 d4 e4 d4 c#4 c4 b3 a3 b3 g3@2 g3 a3 b3 d4 e4 f#4 g4@2 ~@6, a#4 ~@14 d4@3 ~@14]/2",
AV: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~", // G
AW: "~@2 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4,d5] ~", // D
AX: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~", // G
AY: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@2 d4 [d4,g4,b4,g5] ~", // G
AZ: "~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@3 [d4,f#4,d5] ~@2 d4 [d4,f#4,d5] ~", // G D
BA: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@2 d4 [d4,g4,b4,g5] ~@2 [d4,d5,g5] [g3,d5,g5] [d4,d5]", // G G5 D
BB: "[[g3,d4,g5] [g3,d4,g5]@2 [d4,d5] d5 [d4,d5,g5] [g3,d4,d5]@3 d5 ~ d4 [g3,d5]@3 g3@2 ~ [g3,d4,d5]@3 [d4,d5]@2 [d4,d5] [g3,d4]@2 g3 ~@2 [d4,d5,g5] [g3,d4,d5,g5] ~ [g3,d4,d5]@2 [g3,d4,d5,g5]@4 [g3,d4,d5,g5]@4 [g3,d4,d5,g5]@3 [g3,d4,d5] [g3,d4] [d4,f4]@2 ~ [d4,f#4,d5] ~@3 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~, d5@3 ~@3 g5@5 ~ g5@6 g5@6 [d5,g5]@5 ~@2 g5@3 ~@30, ~@12 d4 ~@51]/4", // G5 D G5 D G5 Dm D G5
BC: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4] ~@2 d4 [d4,g4,b4] ~", // G
BD: "[~@2 [d4,g4,b4,g5] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@2 [d4,g4] [d4,g4,b4,g5] g4 d4@2 [d4,g4,b4] ~@3 [d4,g4,b4,g5] ~@3 [d4,g4,b4] ~@2 d4 [d4,g4,b4,g5] ~, ~@15 [b4,g5]@3 ~@14]/2", // G G5 G Em
BE: "~ [d4,g4,b4] [d4,g4,b4,g5] ~ [c4,e4] [e4,c5] [c#4,f4,c#5] f#4 [d4,f#4]@2 [d4,f#4,d5] ~@2 [d4,f#4] [d4,f#4,d5] ~", // G C C# D
BF: "~@2 [d4,b4,g5]@4 [d4,b4]@2 [d4,g4] [d4,g4,b4] [d4,g4,b4,g5]@2 [d4,b4,g5]@4, ~@2 g4 ~@3 g5@4 ~@6, ~@6 g4 ~@5 g4 ~@3", // G G5 G
})).s("gm_acoustic_guitar_steel").gain(0.41)
// chords · acoustic guitar steel · "Mandolin" · soft notes
const acoustic_guitar_steel_2 = note(`<
~ A B C D E@2 ~ A F G H I J K L A M N O P Q R S T U V W X Y Z C AA AB AC ~ AD AE AF AG AH AI@2 AJ AK AL AM AN AO AP AQ
AR AS AT AU AV AW AX AY AZ BA M ~ BB BC BD BE BF BG BH BI BJ@2 ~ BK BL BM BN BO BP BQ ~@2
>`.pickRestart({
A: "~@2 g5 ~@7 g5 ~@3 g5 ~", B: "~@2 g5 ~@3 g5 ~@3 b4 ~@5", C: "~@2 g5 ~@3 g5 ~@7 g5 ~", D: "~@14 d5 ~",
E: "~@2 g5 ~@3 g5 ~@3 g5 ~@3 g5 ~", F: "~@2 g5 ~@7 d5 ~@5", G: "~@6 g5 ~@5 g4 g5 ~@2", H: "~@2 g5 ~@7 b4 ~@5",
I: "~@2 [b4,g5] ~@7 g5 ~@5", J: "~@2 b4 ~@3 g5 ~@7 g5 ~", K: "~@10 d5@3 ~@3", L: "~@2 [d4,g5] ~@7 g5 ~@3 g5 ~",
M: "~@2 g5 ~@3 g5 ~@9", N: "~@6 b4 ~@7 g5 ~", O: "~@2 g5 ~@3 [g#3,g5] ~@3 d5 ~@3 d5 ~",
P: "~@2 g5 ~@7 g5 ~@2 [g4,b4] ~@2", Q: "~@6 g5 ~@3 b4 ~@3 g5 ~", R: "~@9 d4 ~@2 g4!2 ~@2", S: "~@13 [d4,g4,g5] ~@2",
T: "~ d4 ~ d4 [d4,f#4] f#4 ~ f#4 ~@4 f#4 ~@3, ~@11 d5@2 ~@3", U: "~@10 g5 ~@5", V: "~@13 [d4,g5] ~@2",
W: "~@2 g5 ~@2 [d4,g4,g5] ~@10", X: "~ [d4,g5] b4 ~@2 [d4,g5] ~@3 [d4,g5] ~@3 [d4,g5] ~@2",
Y: "~ [d4,g4] ~ a4 [d4,c5] f4 c#5 f4 ~@2 d5 ~@2 d4 d5 ~", Z: "~@6 g5 ~@3 g5 ~ g3 ~@3", AA: "~@13 b4 ~@2",
AB: "~@5 d4 ~@4 g5 ~@2 g4 f#5 ~", AC: "~ d4 f#4 [d4,f#4]@2 f#4 ~@2 d4 ~@7, ~@7 d5@4 ~@5",
AD: "~ d4 ~@3 d4 ~@3 [d4,g4] ~@3 g4 ~@2", AE: "d4@2 ~@3 [d4,g4] g5 ~@2 d4 ~@3 [d4,g4] ~@2",
AF: "~ d4 ~@2 d4!2 ~@3 [d4,g4] ~@3 [d4,g4] ~@2", AG: "~ g4 g5 ~@2 d4 ~@3 d4 d5 ~@2 [d4,f#4] ~@2",
AH: "~ d4 ~@3 g4 ~@10", AI: "[~@2 g3!2 g4@2 g3!2 ~@2 g3@2 ~@2 g3 g3@5 ~@9 a#3 ~@2]/2", AJ: "~@4 g4@2 f#4 ~@7 d4 ~",
AK: "~ f4 d4@2 ~@2 f#4 ~@5 d4@2 ~@2", AL: "~@6 f#4 ~@3 g3@2 g3!2 ~@2", AM: "~@7 b3 d4@2 ~@6",
AN: "~@2 b4!3 ~@2 d4 ~@2 g4 ~@2 d#4 a4@2", AO: "~@4 g4!3 ~ g4 d4@2 a3 ~ c4 ~@2", AP: "~@4 a4 ~@11", AQ: "~@5 a4 ~@2",
AR: "~@2 d5 ~@5 d5 ~@3 d5@2 e5@2", AS: "~@6 c5 ~@6 d4 ~@2", AT: "~@2 d5 ~@4 a#5 ~@8, ~@3 b5 ~@4",
AU: "~@5 g4 ~@7 a4 ~ [c#5,e5]", AV: "~ d5@2 d5 ~@2 d5@2 ~@3 d5 ~@2 g5@2", AW: "~@8 g#4 ~@2 b3 ~@4",
AX: "~@2 a4 g4 d4@2 ~@3 f#4 ~@6, ~@6 e5@5 ~@5, ~@4 a4 ~@3", AY: "e5@2 ~@2 g4 g4@5 ~@6, ~ g4 ~@6, ~@3 b4@3 ~@10",
AZ: "e5 ~@10 g#4 ~@4", BA: "~@2 d4 ~@13", BB: "~@6 g5 ~@6 d4 ~@2", BC: "~@2 d5 ~@3 d5 ~@3 d5 ~@2 d4 ~@2",
BD: "~@2 g5 ~@3 g5 ~@3 g5 ~@2 [d4,g4] ~@2", BE: "~@2 g5 ~@2 d4 g5 ~@3 g5 ~@2 g4 ~@2",
BF: "d4 ~ g5 ~@3 g5 ~@2 d4 g5 ~@2 [d4,g4] g5 ~", BG: "~@2 g5 ~@2 d4 g5 ~@2 d4 g5 ~@3 g5 ~",
BH: "~ d4 ~@3 [d4,g4] g5 ~@6 f#4 ~@2", BI: "~ d4 g5 ~@2 [d4,g4,b4] ~@3 g4 ~@3 g3 ~ g5",
BJ: "[~@3 [g3,g5] [g3,d4] ~@4 [g3,d4]!2 [g3,d5,g5] ~@3 [d4,d5]@2 [d4,d5] ~@4 g3@2 ~@4 d4 ~@3, ~@21 g3@2 ~@4 [g3,d4]@2 ~@3]/2", // G G5 D G5
BK: "~@5 d4 d5 ~@2 d4 d5 ~@2 [d4,f#4] d5 ~", BL: "d4@2 ~@3 d4 ~@2 d4 [d4,g4] g5 ~@2 d4 g5 ~",
BM: "~ d4 g5 ~@2 d4 g5 ~@2 d4 g5 ~@2 g4 g5 g3", BN: "d4 [d4,g4] ~@3 d4 ~@3 d4 g5 ~@2 b4 ~@2",
BO: "~@2 g5 ~@2 d4 ~@3 d4 g5 ~@2 g4 ~@2", BP: "g4 ~@3 c5 ~@3 d5@2 ~@5 f#4", BQ: "d4 ~@7",
})).s("gm_acoustic_guitar_steel").gain(0.2)
// chords · acoustic guitar nylon · "Guitar"
const acoustic_guitar_nylon = note(`<
~ A@3 B@6 C A@3 B@6 C A@3 B@6 C D E F G H I J K L M A@3 B@6 C A@3 B@6 C A@3 B@6 C A@3 B@6 C ~@2
>`.pickRestart({
A: "[~@2 b2@2 ~ [d3,g3] ~@6 b2@2 g4@2 ~@2 g4@2 b2 ~ e3@2 g3@2 [d3,g3,d4,g4]@2 ~ [d3,g3] g4!2 ~@10 g4 ~ b2@2 c3 ~, g2@2 g2@2 g2@2 g2@2 [g2,b2]@2 g2@4 g2 [b2,g3]@2 ~@2 g3@2 g3@3, ~ [d3,g3,d4,g4]@2 d3@6 [d3,g3]@2 ~@4 d3@8 ~, ~@6 [g3,d4,g4]@4 [g3,d4,g4]@4 [g3,d4]@4 d4@8 ~@3 d4@4 ~ [g3,d4,g4]@4 d4@7 ~@3, ~@15 g2 g2@2 [g2,b2]@2 [g2,b2]@2 ~@2]/3", // G5 G Em G5 G
B: "[d3@2 ~@3 d3 ~@4 f#4 ~@3 [a3,d4,f#4] ~ b2@2 [b2,d3]@2 ~ b2 g4 ~@11 g4 ~@3 e3@2 g3@2 g4 ~@3 g4 ~ b2 ~ g4@2 b2@2 [g3,d4,g4] ~@7 [d4,g4]@2 [g2,b2]@2 g4 ~ b2 d3 e3 d3 g3@2 d3@2 b2 ~ [g3,g4] ~ b2@2 g4@2 [g2,b2]@2 b2 c3 ~@6 [a3,f#4] ~, ~@2 d4@8 ~ f#4@3 ~@8 [b2,g3]@4 [g3,d4]@4 [b2,g3,d4]@4 g3@4 ~@8 [g3,d4]@4 [g3,d4]@4 ~ [g3,d4,g4]@3 [g3,d4,g4]@4 ~@12 [g3,d4]@5 [d4,g4]@3 ~@14, ~@2 [d3,a3,f#4]@4 d3@6 ~@2 d3@4 ~@3 d3@9 d3@8 ~@4 [d3,g3,d4]@4 d3@8 d3@8 [d3,g3]@4 [d3,g3]@4 ~@7 d3@5 g3@7 ~ [a3,d4,f#4]@4 ~@2, ~ a2!3 g2!4 g2 g2@2 g2 g2!2 [g2,b2] g2 ~@3 g2 g2 ~@2 a2, ~@6 [a3,f#4]@4 [a3,d4]@4 ~@4 [g3,d4,g4]@5 [d4,g4]@3 g4@6 ~@2 d4@8 ~@24 d4@8 g4 ~@2 b2@3 ~@2 [d3,d4]@5 ~ d3@4 ~ d3@2 ~]/6", // D Bm G5 G D Em G5 G …
C: "[g2,b2]@2 [d4,g4]@2 ~ d3 e3 ~ g3@2 ~@4 [d3,g3]@2, ~@2 [b2,d3,g3]@4 ~ d3@3 [b2,d4,g4]@6, ~ g2@2 g2, ~@5 [d3,g3]@2 ~", // G G5 G G5
D: "[d4,g4] [d4,g4]@2 g4 d4@3 [d4,g4] g4 g4@2 ~ [d4,g4]@2 d4 e4, ~@4 g4 ~@3 d4@4 ~@4", // G5
E: "f4 e4 d4 c4 b3 g3 a#3 b3 g3@2 ~ a#3 b3 d4 e4 d4",
F: "[d4,g4] ~@2 d4 [d4,g4]@2 d4 e4 f4 e4 d4 f4 e4 d4 c4 e4, ~ d4@2 ~@13, ~ g4 ~@6", // G5
G: "d4@2 c4 d4 a3 g#3 g3 f3 f#3 d3 b2 a2 d3@4",
H: "[c#4,e4,a#4] [d4,f4,b4]@2 [d4,f4,b4] [f4,b4] ~ c5 b4 g4 f4 d4 c#4 c4 g3 a#3 b3", // A#dim Bdim Fdim
I: "g3 f3 d3 c#3 c3 a2 a#2 b2 g2@3 a#2 b2 d3 e3 g3", J: "[d4,g4] [e4,a4]@3 [d4,g4]@2 e4 f#4 g4 e4 d4 b3 a3 g3 e3 g3",
K: "[a#3,c#4] [b3,d4]@3 [b3,d4]@3 ~ [a#3,b3,c#4,d4] a3 g3@2 ~@2 e4 f#4, e4@3 ~ [a#3,c#4] ~@11", // A#m Bm A#m
L: "g4 e4 d4 ~ a#3 a3 g3 a3 a#3 b3 d4 b3 a3 g3 f#3 a3, ~@3 b3@4 ~@2 e4@4 ~@3",
M: "~@2 a2 ~ [a#2,b2] ~ [d3,e3] d3 g3@2 ~@4 [b2,d3,d4,g4] ~, g3@6 ~@4 [b2,d3,g3,d4,g4]@3 [d3,g3]@2 ~, ~@12 g2@3 ~", // Bmaj7 Dsus2 G G5
})).s("gm_acoustic_guitar_nylon").gain(0.31)
// chords · violin · "Fiddle"
const violin = note("<~@20 A B C D E F G H I J K ~@52>".pickRestart({
A: "~@10 [d5,g5]!3 ~ [d5,g5] ~", B: "g5@3 ~ a#5 b5@3 [d5,g5]@4 ~ d5 e5 f#5, d5 ~",
C: "g5 e5 d5 c5 b4 g4 a4 b4 g4@2 d4 e4 g4 a4 b4 d5", D: "g5@3 ~ a#5 a5@3 [d5,g5]@4 [e5,f5] ~ e5 ~, d5 ~",
E: "[g#4,c#5] a4@3 a4@3 b4 a4@7 ~, ~ d5@14 ~", F: "[d4,g4]@4 ~ d4 e4 f#4 g4 e4 d4 c4 b3 g3 g4 e4, [c#4,f#4] ~@15",
G: "d4 b3 d4 [d4,e4] c#4 g3 c4 d4 a#3 b3 g4@4 ~@2", // Dsus2
H: "[b4,f#5] [a4,e5] [g4,d5] [e4,b4] [d4,a4] [e4,b4] [b4,f#5] [a4,e5] [g4,d5] [e4,b4] [d4,a4] [e4,b4] [d4,a4] [b3,f#4] [a3,e4] [b3,f#4]", // B5 A5 G5 E5 D5 E5 B5 A5 …
I: "a4 b4@3 b4@3 c5 b4@6 e5 f#5, ~ f#5@6 ~@9", J: "g5 a5 g5 e5 d5 g5 e5 f#5 g5 e5 d5 b4 a4 g4 e4 d4",
K: "g4 d4 f4 g4 d4 c#4 c4 a#3 b3 [d4,g4]@7", // G5
})).s("gm_violin").gain(0.36)
stack(bass, banjo, banjo_soft, acoustic_guitar_steel, acoustic_guitar_steel_2, acoustic_guitar_nylon, violin)
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.