0:00/0:00
// 't Is weer voorbij die mooie zomer — Gerard Cox
// 82 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 6, 4/4 at bar 7, 2/4 at bar 38, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: Full arrangement: all 65 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(82/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 · "#A.Piano"
const piano = note(`<
A@2 B C D E F G H I J K L M N O P Q R O P S T U V W X K Y Z A AA AB AC E AD AE AF AG AH AE AI AJ AF AK AL AM AN AK AL
AO AP AQ A AR AS AE AT AU A@2 B C D AV
>`.pickRestart({
A: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // D
B: "e2@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,d4,e4] ~ e2@2 [g3,a3,c#4,e4] ~ a1@2 [g3,a3,c#4,e4] ~", // Gsus2 A7
C: "~@2 [g3,b3,d4] ~@3 [g1,g3,b3,d4] ~@3 [f#3,a3,d4] ~@3 [f#1,f#3,a3,d4] ~, g1 ~ f#1 ~", // G D
D: "e1@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,c#4,e4] ~ d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~", // Gsus2 A7 D
E: "d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~ d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~", // D
F: "d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // D
G: "e2@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // A D
H: "d2@2 [a3,d4,f#4] ~ d2 ~ [a3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ a1@2 [a3,b3,d4,f#4] ~, ~@3 c#2 ~@4", // D Bm Bm7
I: "g1@2 [g3,b3,d4] ~ e1@2 [e3,g3,b3,d4] ~ a1@2 [g3,a3,d4,e4] ~ e2@2 [g3,a3,d4,e4] ~", // G Em7 Gsus2
J: "a2 ~ [a3,c#4,e4] ~ b1 ~ [a3,c#4,e4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~, ~ a1 ~ c#2 ~@4", // A D
K: "e2@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~ b1@2 [b3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~", // A Bm
L: "f#1@2 [f#3,a3,d4] ~ f#1@2 [f#3,a3,d4] ~ g1@2 [g3,b3,d4,f#4] ~ e1@2 [g3,b3,d4,e4] ~", // D Gmaj7 Em7
M: "a1@2 [g3,a3,d4,e4] ~ a2@2 [g3,a3,c#4,e4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // Gsus2 A7 D
N: "d2@2 [a3,d4,f#4] ~ d2 ~ [a3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ f#1@2 [b3,d4,f#4] ~, ~@3 c#2 ~@4", // D Bm
O: "b1@2 [b3,d4,f#4] ~ b2@2 [b3,d4,f#4] ~ f#2@2 [a3,c#4,f#4] ~ c#2@2 [a3,c#4,f#4] ~", // Bm F#m
P: "f#1@2 [a3,c#4,f#4] ~ f#2@2 [a3,c#4,f#4] ~ a2@2 [a3,c#4,e4] ~ e2@2 [a3,c#4,e4] ~", // F#m A
Q: "a2@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~ e2@2 [g#3,b3,e4] ~ b1@2 [g#3,b3,e4] ~", // A E
R: "e2@2 [g#3,b3,e4] ~ e1@2 [g#3,b3,e4] ~ b1@2 [b3,d4,f#4] ~ f#1@2 [b3,d4,f#4] ~", // E Bm
S: "a2@2 [g3,b3,d4] ~ a1@2 [a3,c#4,e4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // G A D
T: "d2 ~ [a3,d4,f#4] ~ e2 ~ [a3,d4,f#4] ~ g2@2 [b3,d4,g4] ~ d2@2 [b3,d4,g4] ~, ~ d2 ~ f#2 ~@4", // D G
U: "a2@2 [a3,c#4,e4,g4] ~ a1@2 [a3,c#4,e4,g4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // A7 D
V: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ f#1@2 [b3,d4,f#4] ~", // D Bm
W: "g1@2 [g3,b3,d4] ~ d2@2 [b3,d4,e4,g4] ~ a1@2 [a3,c#4,e4,g4] ~ e2@2 [a3,c#4,e4,g4] ~", // G Em7 A7
X: "a1 ~ [a1,a3,c#4,e4,g4]@3 ~ [a1,a3,c#4,e4,g4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // A7 D
Y: "a1@2 [a3,b3,d4,f#4] ~ a1@2 [a3,b3,d4,f#4] ~ g1@2 [g3,b3,d4] ~ g2@2 [g3,b3,d4] ~", // Bm7 G
Z: "a2@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,c#4,e4] ~ d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~", // Gsus2 A7 D
AA: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ e2@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,d4,e4] ~", // D Gsus2
AB: "e2@2 [g3,a3,c#4,e4] ~ a1@2 [g3,a3,c#4,e4] ~@3 [g3,b3,d4] ~@3 [g1,g3,b3,d4] ~, ~@2 g1 ~", // A7 G
AC: "~@2 [f#3,a3,d4] ~@3 [f#1,f#3,a3,d4] ~ e1@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,c#4,e4] ~, f#1 ~@3", // D Gsus2 A7
AD: "d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~ d2 ~ [f#3,a3,d4] ~ b1@2 [f#3,a3,d4] ~, ~@5 a1 ~ c#2", // D
AE: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ e2@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~", // D A
AF: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ d2@2 [a3,d4,f#4] ~ d2 ~ [a3,d4,f#4] ~, ~@7 c#2", // D
AG: "b1@2 [b3,d4,f#4] ~ a1@2 [a3,b3,d4,f#4] ~ g1@2 [g3,b3,d4] ~ e1@2 [e3,g3,b3,d4] ~", // Bm Bm7 G Em7
AH: "a1@2 [g3,a3,d4,e4] ~ e2@2 [g3,a3,d4,e4] ~ a2 ~ [a3,c#4,e4] ~ b1 ~ [a3,c#4,e4] ~, ~@5 a1 ~ c#2", // Gsus2 A
AI: "b1@2 [b3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ f#1@2 [f#3,a3,d4] ~ f#1@2 [f#3,a3,d4] ~", // Bm D
AJ: "g1@2 [g3,b3,d4,f#4] ~ e1@2 [g3,b3,d4,e4] ~ a1@2 [g3,a3,d4,e4] ~ a2@2 [g3,a3,c#4,e4] ~", // Gmaj7 Em7 Gsus2 A7
AK: "b1@2 [b3,d4,f#4] ~ f#1@2 [b3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ b2@2 [b3,d4,f#4] ~", // Bm
AL: "f#2@2 [a3,c#4,f#4] ~ c#2@2 [a3,c#4,f#4] ~ f#1@2 [a3,c#4,f#4] ~ f#2@2 [a3,c#4,f#4] ~", // F#m
AM: "a2@2 [a3,c#4,e4] ~ e2@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~ a1@2 [a3,c#4,e4] ~", // A
AN: "e2@2 [g#3,b3,e4] ~ b1@2 [g#3,b3,e4] ~ e2@2 [g#3,b3,e4] ~ e1@2 [g#3,b3,e4] ~", // E
AO: "a2@2 [a3,c#4,e4] ~ e2@2 [a3,c#4,e4] ~ a1@2 [g3,b3,d4] ~ a1@2 [a3,c#4,e4] ~", // A G A
AP: "d2@2 [a3,d4,f#4] ~ a1@2 [a3,d4,f#4] ~ d2 ~ [a3,d4,f#4] ~ e2 ~ [a3,d4,f#4] ~, ~@5 d2 ~ f#2", // D
AQ: "g2@2 [b3,d4,g4] ~ d2@2 [b3,d4,g4] ~ a2@2 [a3,c#4,e4,g4] ~ a1@2 [a3,c#4,e4,g4] ~", // G A7
AR: "b1@2 [b3,d4,f#4] ~ f#1@2 [b3,d4,f#4] ~ g1@2 [g3,b3,d4] ~ d2@2 [b3,d4,e4,g4] ~", // Bm G Em7
AS: "a1@2 [a3,c#4,e4,g4] ~ e2@2 [a3,c#4,e4,g4] ~ a1 ~ [a1,a3,c#4,e4,g4]@3 ~ [a1,a3,c#4,e4,g4] ~", // A7
AT: "b1@2 [b3,d4,f#4] ~ b1@2 [b3,d4,f#4] ~ a1@2 [a3,b3,d4,f#4] ~ a1@2 [a3,b3,d4,f#4] ~", // Bm Bm7
AU: "g1@2 [g3,b3,d4] ~ g2@2 [g3,b3,d4] ~ a2@2 [g3,a3,d4,e4] ~ a1@2 [g3,a3,c#4,e4] ~", // G Gsus2 A7
AV: "d2@2 [f#3,a3,d4] ~ a1@2 [f#3,a3,d4] ~@9", // D
})).s("gm_piano").gain(0.28)
// bass · electric bass pick · "Pickd.Bas"
const bass = note(`<
A@2 B C D A@2 E F G H I J K L M N O P M N Q R Q S T U I V Q A W X Y A Z W AA AB AC W AD AE AA AF AG AH AI AF AG AH AJ
AK A AL AM W AN AO A@2 B C D A
>`.pickRestart({
A: "d2 ~ a1 ~ d2 ~ a1 ~", B: "e2 ~ a1 ~ e2 ~ a1 ~", C: "g1@4 ~@2 g1 ~ f#1@4 ~@2 f#1 ~", D: "e1 ~ a1 ~ d2 ~ a1 ~",
E: "e2 ~ a1 ~ d2 ~ a1 ~", F: "d2@2 ~@2 d2 ~ c#2@2 b1@2 ~@2 a1@2 ~@2", G: "g1 ~ e1 ~ a1 ~ e2 ~",
H: "a2 ~ a1@2 b1 ~ c#2@2 d2@2 ~@2 a1@2 ~@2", I: "e2 ~ a1 ~ b1 ~ b1 ~", J: "f#1 ~ f#1 ~ g1 ~ e1 ~",
K: "a1 ~ a2 ~ d2 ~ a1 ~", L: "d2@2 ~@2 d2 ~ c#2@2 b1@2 ~@2 f#1@2 ~@2", M: "b1 ~ b2 ~ f#2 ~ c#2 ~",
N: "f#1 ~ f#2 ~ a2 ~ e2 ~", O: "a2 ~ a1 ~ e2 ~ b1 ~", P: "e2 ~ e1 ~ b1 ~ f#1 ~", Q: "a2 ~ a1 ~ d2 ~ a1 ~",
R: "d2 ~ d2@2 e2 ~ f#2@2 g2@2 ~@2 d2@2 ~@2", S: "d2 ~ a1 ~ b1 ~ f#1 ~", T: "g1 ~ d2 ~ a1 ~ e2 ~",
U: "a1 ~ a1@3 ~ a1 ~ d2@2 ~@2 a1@2 ~@2", V: "a1 ~ a1 ~ g1 ~ g2 ~", W: "d2 ~ a1 ~ e2 ~ a1 ~",
X: "e2@2 ~@2 a1@2 ~@2 g1@4 ~@2 g1 ~", Y: "f#1@4 ~@2 f#1 ~ e1@2 ~@2 a1@2 ~@2",
Z: "d2@2 ~@2 a1@2 ~@2 d2 ~ a1@2 b1@2 c#2@2", AA: "d2@2 ~@2 a1@2 ~@2 d2@2 ~@2 d2 ~ c#2@2", AB: "b1 ~ a1 ~ g1 ~ e1 ~",
AC: "a1@2 ~@2 e2@2 ~@2 a2 ~ a1@2 b1 ~ c#2@2", AD: "b1 ~ b1 ~ f#1 ~ f#1 ~", AE: "g1 ~ e1 ~ a1 ~ a2 ~",
AF: "b1 ~ f#1 ~ b1 ~ b2 ~", AG: "f#2 ~ c#2 ~ f#1 ~ f#2 ~", AH: "a2 ~ e2 ~ a1 ~ a1 ~", AI: "e2 ~ b1 ~ e2 ~ e1 ~",
AJ: "d2@2 ~@2 a1@2 ~@2 d2 ~ d2@2 e2 ~ f#2@2", AK: "g2 ~ d2 ~ a2 ~ a1 ~", AL: "b1 ~ f#1 ~ g1 ~ d2 ~",
AM: "a1@2 ~@2 e2@2 ~@2 a1 ~ a1@3 ~ a1 ~", AN: "b1 ~ b1 ~ a1 ~ a1 ~", AO: "g1 ~ g2 ~ a2 ~ a1 ~",
})).s("gm_electric_bass_pick").gain(0.4)
// chords · string ensemble 1 · "#Vlo.Strn"
const string_ensemble_1 = note("<A@5 ~@25 B@5 C@7 D@2 ~@7 E@5 ~@3 A@5 ~>".pickRestart({
A: "[~@16 f#4@15 ~@9 c#4@7 ~ [g2,b3,g4]@7 ~ a3@7 ~ b3@3 ~ c#4@4 [d3,d4,f#4]@8, ~@15 a3@32 ~@21 a3@12, ~@15 d3@16 a2@16 ~@8 [f#2,a4]@8 e2@4 a2@4 ~@9, ~@16 d4@24 ~@7 d4@20 ~@13, ~@4 e4@2 ~@2 g4 ~]/5", // G D F#m
B: "[~@8 f#4@15 ~@9 c#4@7 ~ [g2,b3,g4]@7 ~ a3@7 ~ b3@3 ~ c#4@4 [d3,d4,f#4]@9 ~@7, ~@7 a3@32 ~@21 a3@12 ~@8, ~@7 d3@16 a2@16 ~@8 [f#2,a4]@8 e2@4 a2@4 ~@17, ~@8 d4@24 ~@7 d4@20 ~@21, ~@3 e4@2 ~@2 g4 ~@2]/5", // G D F#m
C: "[~@16 [d4,f#4]@7 ~ [c#4,g4]@7 ~ [d4,f#4]@9 ~@7 [b2,f#4]@7 [g2,g4]@8 ~@9 c#4@7 ~ [d4,f#4]@7 ~ [c#4,e4]@7 ~ [b3,f#4]@7 ~ [c#4,a4]@7 g3, ~@15 a3@25 ~@7 d4@24 ~@8 a3@16 ~ d4@16, ~@15 d3@8 c#3@8 d3@9 ~@8 b3@15 a2@16 d3@9 ~@7 b2@8 f#3@8 ~, ~@64 [a3,e4]@16 ~@7 a2@9 ~@16]/7", // D C#dim D B5 G D C#m B5 …
D: "[~@3 e3@4 ~@4 c#4@4 ~ [d4,f#4]@9 ~@7, d4@3 ~@5, [b3,f#4]@7 a3@17 ~@8, ~@7 a2@8 d3@9 ~@8, ~ e4 ~@2]/2", // D B5
E: "[~@16 [g4,b4]@7 ~ [a4,c#5]@3 ~ [g4,b4]@3 ~ [d4,f#4]@15 ~ [b2,f#4]@7 [g2,g4]@8 ~ a4@14 g4@2, ~@15 [g3,d4]@8 a3@8 [d3,a3]@16 ~ b3@16 [c#4,e4]@16, ~@23 e4@4 d4@4 ~@16 d4@16 a2@16 ~]/5", // G A G D B5 G G5 D5 …
})).s("gm_string_ensemble_1").gain(0.26)
// chords · accordion
const accordion = note("<~@4 A B@2 ~@6 C D ~@19 E F ~@7 G ~@19 A H>".pickRestart({
A: "~ [d5,f#5]", B: "[[f#5,a5]@6 [e5,g5]@2 [e5,g5] [d5,f#5]@15 ~@8, [f5,g#5] ~@31]/2", C: "~@13 a4 d5 g5",
D: "f#5@3 d5 a4@4 ~@8", E: "[d5,f#5]@4 [f#5,a5]@3 [e5,g5], ~@8 [f5,g#5] ~@7", F: "[e5,g5] [d5,f#5]@15",
G: "~@5 a4 d5 g5 f#5@3 d5 a4@4", H: "[f#5,a5]@6 [e5,g5]@2 [e5,g5] [d5,f#5]@7, [f5,g#5] ~@15",
})).s("gm_accordion").gain(0.27).pan(0.6)
// chords · acoustic guitar steel · "#Nyl.Stee"
const acoustic_guitar_steel = note(`<
A B C D E F G H I J K L M N I O P Q R S T U V W X Y Z AA AB AC G AD AE AF G AG AH G AI AJ AK AL AM AN AO AP AQ AR AS
AT AU G AV AW AX AY AZ AL BA G B C D E BB
>`.pickRestart({
A: "~@7 d4 ~@7 d4, d3@8 ~@3 f#4@5, ~ a3@4 ~ a3@2 f#3@8, ~@2 d4@2 ~ d4@2 ~@2 a3@5 a3@2, ~@3 f#4@5 ~@2 d4@2 ~ d4@2 ~",
B: "~@7 d4 ~@7 d4, d3@8 ~@3 f#4@5, ~ a3@4 ~ a3@2 f#3@8, ~@2 d4@2 ~ d4@2 ~@2 a3@4 ~ a3@2, ~@3 f#4@5 ~@2 d4@2 ~ d4@2 ~",
C: "~@7 d4 ~@7 c#4, e3@2 e3!2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 e4@5 ~@3 e4@5",
D: "~@7 g4 ~@7 d4, g3@3 g4@3 d4@2 ~@2 d4@2 ~ d4@2 ~, ~ b3@4 b3@3 ~ a3@4 ~ a3@2, ~ d4 g3@2 f#3@4, ~@11 f#4@5",
E: "~@7 g4 ~@7 d4, g3@3 g4@3 c#4@2 ~@2 d4@2 ~ d4@2 ~, ~ b3@3 e3@4 d3@8, ~@2 d4@2 ~ a3@2 ~@2 a3@4 ~ a3@2, ~@11 f#4@5",
F: "~@7 d4 ~@2 g4 ~@4 d4, d3!2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@6 d4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
G: "~@7 d4 ~@7 d4, d3!2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
H: "~@7 c#4 ~@7 d4, c#3 d3, ~ a3@5 a3@2 ~ a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 g4@5 ~@3 f#4@5",
I: "~@7 d4 ~@7 d4, d3 b2, ~ a3@4 ~ a3@2 ~ b3@4 ~ b3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
J: "~@7 d4 ~@3 a3@2 ~@2 a3, g2@3 g4@5 ~@8, ~ b3@4 d4@2 ~@3 d4@2 ~ a3@2 ~, ~ d4 e2@2 a2@4, ~@6 b3@2 ~ e3@4 ~ e3@2",
K: "~@7 c#4 ~@7 d4, a2 d3, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 g4@5 ~@3 f#4@5",
L: "~@7 c#4 ~@7 d4, c#3 b2, ~ a3@4 ~ a3@2 ~ b3@4 ~ b3@2, ~@2 c#4@2 ~ c#4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 a4@5 ~@3 f#4@5",
M: "~@7 d4 ~@3 f#4 ~@3 g4, f#3@2 g3 e3, ~ a3@4 ~ a3@2 ~ b3@3 ~ b3@3, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~@2 d4@2, ~@3 f#4@5 ~@8",
N: "~@3 d4 ~@3 c#4 ~@7 a3, e3@4 a2@4 ~@2 a3@2 ~ a3@2 ~, ~ g3@3 ~ e3@3 d3@8, ~@2 b3@2 ~@2 a3@2 ~ f#3@4 ~ f#3@2, ~@11 d4@5",
O: "~@7 d4 ~@7 c#4, b2@8 ~@3 f#4@5, ~ b3@5 b3@2 f#3@8, ~@2 d4@2 ~ d4@2 ~@2 a3@4 ~ a3@2, ~@3 f#4@5 ~@2 c#4@2 ~ c#4@2 ~",
P: "~@7 c#4 ~@7 c#4, f#2 a2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 f#4@5 ~@3 a4@5",
Q: "~@7 c#4 ~@7 e4, a2@8 ~@3 g#4@5, ~ a3@4 ~ a3@2 e3@8, ~@2 c#4@2 ~ c#4@2 ~@2 b3@4 ~ b3@2, ~@3 a4@5 ~@2 e4@2 ~ e4@2 ~",
R: "~@3 g#4@2 ~ [g#4,a4]@2 ~@7 d4, e3 b2, ~ b3@4 ~@4 b3@4 ~ b3@2, ~@2 e4@2 ~ e4@2 ~@3 d4@2 ~ d4@2 ~, ~@11 f#4@5", // Amaj7
S: "~@7 d4 ~@7 c#4, f#3!2, ~ b3@4 ~ b3@2 ~ a3@4 c#4@2 ~, ~@2 d4@2 ~ d4@2 ~@4 f#4@5, ~@3 f#4@5 ~@2 a4@2 ~@2 a3@2",
T: "~@7 c#4 ~@7 c#4, f#3@8 e3@7 ~, ~ a3@4 ~ a3@2 ~ a3@3 ~@2 a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 f#4@5 ~@3 a4@5",
U: "~@3 b3 ~@2 g4@2 ~@7 d4, c#4@2 g4@2 ~ c#4@3 ~ a3@4 ~ a3@2, ~ g3@3 a3@4 d3@8, ~@10 d4@2 ~ d4@2 ~, ~@11 f#4@5",
V: "~@7 d4 ~@7 d4, d3@8 ~@3 g4@5, ~ a3@4 ~ a3@2 g3@8, ~@2 d4@2 ~ d4@2 ~@2 b3@4 ~ b3@2, ~@3 f#4@5 ~@2 d4@2 ~ d4@2 ~",
W: "~@3 g4@2 ~ a3@2 ~@7 d4, e3 d3, ~ a3@4 ~@4 a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@3 ~@2 d4@2 ~ d4@2 ~, ~@11 f#4@5",
X: "g4 ~@6 d4 ~@7 d4, d3 b2, ~ a3@4 ~ a3@2 ~ b3@4 ~ b3@2, ~ f#4@2 f#4@5 ~@3 f#4@5, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~",
Y: "~@7 b3 ~@7 c#4, d3 e3, ~ g3@4 ~ g3@2 ~ a3@4 ~ a3@2, ~@2 b3@2 ~ b3@2 ~@4 a4@5, ~@3 d4@5 ~@2 c#4@2 ~ c#4@2 ~",
Z: "e3 ~ a4@3 ~ g4@2 ~@7 d4, ~ [a3,c#4]@3 d3@4, ~@9 a3@4 ~ a3@2, ~@10 d4@2 ~ d4@2 ~, ~@11 f#4@5", // A
AA: "~@3 e4@2 ~@2 c#4 ~@7 d4, e3 b2, ~ a3@4 ~ e4@2 ~ b3@4 ~ b3@2, ~@2 c#4@2 ~ a4@2 ~@3 d4@2 ~ d4@2 ~, ~@11 f#4@5",
AB: "~@7 d4 ~@7 d4, f#3@8 g3@7 ~, ~ a3@4 ~ a3@2 ~ b3@3 ~@2 b3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 g4@5",
AC: "g3 ~@2 g4 ~@2 g4@2 ~@7 d4, ~ b3@3 a3@4 d3@8, ~@2 d4@2 ~ c#4@3 ~ a3@4 ~ a3@2, ~@10 d4@2 ~ d4@2 ~, ~@11 f#4@5",
AD: "~@7 d4 ~@7 d4, f#3 e3, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 e4@5",
AE: "~@7 c#4 ~@7 g4, e3@3 e4@5 ~@2 d4@2 ~@2 d4@2, ~ a3@4 c#4@2 ~@2 b3@4 b3@3, ~@2 c#4@2 e3@4 ~@3 g4@3 ~@2, ~@3 a3 g3@2 g3@2",
AF: "~@7 d4 ~@7 g4, f#3@2 g3 e3, ~ a3@4 ~ a3@2 ~ b3@3 ~ a3@2 ~, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~@2 c#4@2, ~@3 f#4@5 ~@3 g4@4 ~",
AG: "~@2 g4 ~@4 d4 ~@7 d4, d3!2, ~ a3@4 d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 f#4@5, ~@6 a3@2 ~ a3@4 ~ a3@2",
AH: "~@7 d4 ~@7 c#4, d3 c#3, ~ a3@4 ~ a3@2 ~ a3@5 a3@2, ~@2 d4@2 ~ d4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 f#4@5 ~@3 g4@5",
AI: "~@7 d4 ~@7 d4, b2@2 g2 e2, ~ b3@4 ~ b3@2 ~ b3@4 ~ b3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 g4@5",
AJ: "~@3 a3@2 ~@2 a3 ~@7 c#4, a2!2, ~ e3@4 a3@2 ~@2 a3@4 ~ a3@2, ~@2 d4@2 ~@2 e3@2 ~@2 c#4@2 ~ c#4@2 ~, ~@11 g4@5",
AK: "~@7 d4 ~@7 c#4, d3 c#3, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 f#4@5 ~@3 a4@5",
AL: "~@7 d4 ~@7 d4, b2@8 ~@3 f#4@5, ~ b3@4 ~ b3@2 f#3@8, ~@2 d4@2 ~ d4@2 ~@2 a3@4 ~ a3@2, ~@3 f#4@5 ~@2 d4@2 ~ d4@2 ~",
AM: "~@3 f#4 ~@3 g4 ~@3 d4 ~@3 c#4, g3 e3!2 a2, ~ b3@3 ~ b3@4 g3@3 ~ e3@3, ~ d4 ~ d4 ~ b3 ~ a3",
AN: "~@7 a3 ~@7 d4, d3!2, ~ f#3@4 ~ f#3@2 ~@3 f#4@5, ~@2 a3@2 ~ a3@2 ~@2 a3@4 ~ a3@2, ~@3 d4@5 ~@2 d4@2 ~ d4@2 ~",
AO: "~@7 d4 ~@7 d4, b2!2, ~ b3@4 ~ b3@2 ~ b3@5 b3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
AP: "~@7 c#4 ~@7 c#4, f#3 f#2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
AQ: "~@7 c#4 ~@7 c#4, a2!2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 c#4@2 ~ c#4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@3 a4@5 ~@3 a4@5",
AR: "~@7 e4 ~@3 g#4@2 ~ [g#4,a4]@2, e3!2, ~ b3@4 ~ b3@2 ~ b3@4 ~@3, ~@2 e4@2 ~ e4@2 ~@3 e4@2 ~ e4@2 ~, ~@3 g#4@5 ~@8", // Amaj7
AS: "~@7 d4 ~@7 d4, b2@8 ~@3 f#4@5, ~ b3@4 ~ b3@2 f#3@8, ~@2 d4@2 ~ d4@2 ~@2 b3@4 ~ b3@2, ~@3 f#4@5 ~@2 d4@2 ~ d4@2 ~",
AT: "~@7 c#4 ~@7 c#4, f#3!2, ~ a3@4 c#4@2 ~@3 c#4@2 ~ c#4@2 ~, ~@2 a4@2 ~@2 a3@2 ~ a3@4 ~ a3@2, ~@3 f#4@5 ~@3 f#4@5",
AU: "~@7 c#4 ~@3 b3 ~@2 g4@2, e3@6 a3@2 ~ g3@3 a3@4, ~ a3@2 a4@5 ~@2 g4@2 ~@4, ~@2 c#4@2 ~ c#4@2 ~ c#4@3 ~@2 c#4@3",
AV: "~@7 d4 ~@3 g4@2 ~ a3@2, g3 e3, ~ b3@4 ~ b3@2 ~ a3@4 ~@3, ~@2 d4@2 ~ d4@2 ~@3 c#4@2 ~ c#4@3, ~@3 g4@5 ~@8",
AW: "~@7 d4 g4 ~@6 d4, d3!2, ~ a3@4 ~ a3@2 ~ a3@4 ~ a3@2, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ d4@2 ~, ~@3 f#4@5 ~ f#4@2 f#4@5",
AX: "~@7 d4 ~@7 b3, b2 d3, ~ b3@4 ~ b3@2 ~ g3@4 ~ g3@2, ~@2 d4@2 ~ d4@2 ~@3 b3@2 ~ b3@2 ~, ~@3 f#4@5 ~@3 d4@5",
AY: "~@7 c#4 e3 ~ a4@3 ~ g4@2, e3 ~, ~ a3@4 ~ a3@2 ~@2 [a3,c#4]@6, ~@2 c#4@2 ~ c#4@2 ~@9, ~@3 a4@5 ~@8", // A
AZ: "~@7 d4 ~@3 e4@2 ~@2 c#4, d3 e3, ~ a3@4 ~ a3@2 ~ a3@4 ~@3, ~@2 d4@2 ~ d4@2 ~@3 c#4@2 ~@2 e4@2, ~@3 f#4@5 ~@5 a4@2 ~",
BA: "~@7 d4 g3 ~@2 g4 ~@2 g4@2, g3@6 b3@2 ~ b3@3 a3@4, ~ b3@2 g4@5 ~@8, ~@2 d4@2 ~ d4@2 ~@3 d4@2 ~ c#4@3",
BB: "~@7 d4 ~@2 g4 ~@3 a3@2, d3!2, ~ a3@4 ~ a3@2 ~ a3@4 ~@3, ~@2 d4@2 ~ d4@2 ~@6 d4@2 ~, ~@3 f#4@5 ~@3 f#4@5",
})).s("gm_acoustic_guitar_steel").gain(0.35).pan(0.3)
// drums · kick
const kick = s("bd").struct("<[x!4]!26 [x ~ x!2] [x!4]!28 [x!3 ~] [x!4]!9>").gain(0.48)
// drums · snare
const snare = s("sd").struct("<A@6 B A@3 B A@11 B A@12 C A@3 C A@11 C A@13>".pickRestart({
A: "~ x ~ x ~ x ~ x", B: "~ x!3 ~ x ~ x", C: "~ x ~ x ~ x!3",
})).gain(0.48)
// drums · hihat
const hihat = s("hh").struct("<[x!8]!26 [x ~@3 x!4] [x!8]!28 [x!5 ~@3] [x!8]!9>").gain(0.48)
// drums · crash
const crash = s("cr").struct("<~@26 [~ x ~@6] ~@28 [~@5 x ~@2] ~@9>").gain(0.48)
// drums · tambourine
const tambourine = s("tb").struct("<~@14 A B@11 C B@2 D ~@14 B@11 E B@3 F ~@5>".pickRestart({
A: "~@4 x!4", B: "x!8", C: "x!2 ~@2 x!4", D: "x!5 ~@3", E: "x!6 ~@2", F: "x",
})).gain(0.32)
// drums · tambourine · soft notes
const tambourine_soft = s("tb").struct("<~@14 A B@11 C B@2 D ~@14 B@11 E B@3 ~@6>".pickRestart({
A: "~@9 x ~ x ~ x ~ x", B: "~ x ~ x ~ x ~ x ~ x ~ x ~ x ~ x", C: "~@7 x ~ x ~ x ~ x ~ x", D: "~ x ~ x ~ x ~ x ~@8",
E: "~ x ~ x ~ x ~ x ~@7 x",
})).gain(0.16)
stack(
piano, bass, string_ensemble_1, accordion, acoustic_guitar_steel, kick, snare, hihat, crash, tambourine,
tambourine_soft
)
More by Gerard Cox
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.