0:00/0:00
// Hi-De-Ho — Blood, Sweat & Tears
// 72 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 79 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(72/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 2"
const piano = note(`<
~@4 A@2 B C D@2 E F ~ G@3 H I J K L@4 M N O@2 ~@2 P Q ~@5 R@5 S@4 T U V W X Y Z@8 AA@2 AB AC AD AE AF AG AH@8 ~@3
>`.pickRestart({
A: "[~@46 [c3,g3,c4,e4]@22 ~@4 [c3,a3,c4,f4]@6 ~@7 [c3,a3,c4,f4]@6 ~@5]/2", // C F
B: "~ [c3,g3,c4,e4]@22 ~@4 [a3,c4,f4]@3 ~@9 [a3,c4,f4]@6 ~@3, ~@9 c3@2 ~@2 c3 ~@2", // C F
C: "~@4 [c3,g3,c4,e4]@22 ~@4 [c3,a3,c4,f4]@3 ~@9 [c3,a3,c4,f4]@3 ~@3", // C F
D: "[~@7 [c3,g3,c4,e4]@22 ~@3 [c3,a3,c4,f4]@3 ~@10 [c3,a3,c4,f4]@6 ~@7 [c3,g3,c4,e4]@22 ~@3 [c3,a3,c4,d#4,f4]@7 ~@6]/2", // C F C F7
E: "[c3,a3,c4,d#4,f4]@3 ~@10 [c3,g3,c4,e4]@22 ~@3 [c3,a3,c4,d#4,f4]@7 ~@3", F: "~ [c3,a3,c4,f4]@3 ~@12, ~ d#4 ~@14",
G: "[~@20 [g3,c4,e4]@11 ~@2 [g3,c4,e4]@11 ~ [a3,c4,d#4,f4]@11 ~ [a3,c4,d#4,f4]@10 ~@3 [g3,c4,e4]@11 ~ [g3,c4,e4]@10 ~@2 [b3,d#4,g4]@10 ~@3 [a3,c4,d#4,f4]@11 ~ [c4,e4,g4]@11 ~ [c4,e4,g4]@11 ~@2]/3", // C F7 C Baug F7 C
H: "[b3,e4,g4]@11 ~ [b3,e4,g4]@10 ~@2 [a3,c4,f4]@10 ~@3 [a3,c4,f4]@10 ~", // Em F
I: "~ [g3,c4,e4]@4 ~@8 [a3,c4,f4]@11 ~@2 [g3,c4]@16 g3@4 c4@2, ~@26 e4@21 ~", // C F C5
J: "~@2 [f3,a3,c4,d#4]@10 ~@3 [f3,a3,c4,d#4]@10 ~@2 [g3,c4,e4]@11 ~@2 [g3,c4,e4]@8", // F7 C
K: "g3@3 ~ [f3,a3,c4,d#4]@9 ~@3 [f3,a3,c4,d#4]@10 ~@2 [g3,c4,e4]@6 ~@14", // F7 C
L: "[~@5 [c4,e4,g4]@7 ~ [a3,d4,f4]@4 [g3,c4,e4]@8 ~@5 [a3,c4,f4]@22 ~@3 [a3,f4]@5 ~@7 [a3,c4,f4]@5 ~@7 [g3,c4,e4]@11 ~@2 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@10 ~@3 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@10 ~@3 [g3,c4,e4]@11 ~ [a3,c4,d#4]@8 ~@5 [a3,c4,d#4]@9 ~@3 [g3,c4,e4]@8 ~@5, ~@54 c4@5 ~@133]/4", // C Dm C F Dm F C F7 …
M: "[g3,c4,e4]@11 ~@2 [a3,c4,f4]@8 ~@4 [a3,c4,f4]@9 ~@3 [g3,c4,e4]@8 ~@3", // C F C
N: "~@2 [g3,c4,e4]@10 ~@3 [a3,c4,d#4]@8 ~@4 [a3,c4,d#4]@8 ~@5 [g3,c4,e4]@8", // C Adim C
O: "[~@4 [g3,c4,e4]@11 ~@2 [a3,c4,d#4,f4]@11 ~ [a3,c4,d#4,f4]@10 ~@3 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10 ~@3 [a3,c4,d#4]@9 ~@3 [a3,c4,d#4]@9 ~@4 [g3,c4,e4]@4]/2", // C F7 C Adim C
P: "[g3,c4,e4]@3 ~@15 [a3,c4,d#4]@5 ~", Q: "[g3,c4,e4]@6 ~@18 [b3,d#4,g4]@11 ~ [a3,d#4,f4]@11 ~",
R: "[~@44 [g3,c4,e4]@22 ~@2 [a3,c4,f4]@23 [g3,c4,e4]@11 ~@2 [g3,c4,e4]@11 [a3,c4,f4]@23 ~ [g3,c4,e4]@11 ~ [g3,c4,e4]@11 ~ [a3,c4,f4]@23 [g3,c4,e4]@11 ~ [g3,c4,e4]@11 ~ [a3,c4,f4]@11 ~ [a3,c4,f4]@11 ~ [g3,e4]@6, ~@233 c4@7]/5", // C F C F C F C F …
S: "[~@5 [g3,c4,e4]@11 ~ [a3,c4,f4]@11 ~ [a3,c4,f4]@10 ~@2 [g3,c4,e4]@23 ~ [a3,c4,f4]@20 ~@3 [e3,g3,c4]@23 [d#3,a3,c4]@23 ~ [e3,g3,c4]@23 ~ [d#3,a3,c4]@22 ~@11]/4", // C F C F C Adim C Adim
T: "~@22 [a4,c5]@3 ~ [g4,c5]@2 ~@2 d#4 ~ f4 d#4 d4@3 ~ [c4,e4,g4]@10", // Am C5 C
U: "~@2 [c4,e4,g4]@9 ~@3 [b3,e4,g4]@10 ~@2 [a3,d4,f4]@9 ~@2 [g3,c4,e4]@10 ~", // C Em Dm C
V: "~ [g3,c4,e4]@10 ~@2 [g3,b3,e4]@9 ~@3 [g3,b3,e4]@9 ~@3 [a3,c4,f4]@10 ~", // C Em F
W: "~ [a3,c4,f4]@10 ~@2 [g3,c4,e4]@5 ~@6 [a3,c4,f4]@9 ~@3 [g3,c4,e4]@10 ~@2", // F C F C
X: "e4@7 ~ d4@3 c4@20 ~@4 [g3,c4,e4]@10 ~@3", // C
Y: "[g3,c4,e4]@8 ~@3 [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@5 ~@7 [c4,e4,g4,a#4]@6 ~@7", // C F7 C7
Z: "[~@11 [c4,e4,g4]@7 [a3,d4,f4]@4 [g3,c4,e4]@7 ~@5 [a3,c4,f4]@21 ~@2 [a3,c4,f4]@7 ~@6 [a3,c4,f4]@5 ~@7 [g3,c4,e4]@11 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@11 ~ [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@9 ~@3 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@10 ~ [a3,c4,d#4,f4]@7 ~ [a3,d#4,f4]@2 ~@2 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@9 ~@2 [g3,c4,e4]@9 ~@3 [a3,c4,d#4,f4]@9 ~@3 [a3,c4,d#4,f4]@7 ~@5 [g3,c4,e4]@9 ~@3 [g3,c4,e4]@9 ~@3 [a3,c4,d#4,f4]@9 ~@2 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@11 ~ [g#3,b3,e4]@11 ~ [a3,c4,e4]@11 ~ [a#3,c4,e4]@12 [a3,c4,f4]@9 ~@2 [a3,c4,f4]@7, ~@172 c4 ~@211]/8", // C Dm C F C F7 C F7 …
AA: "[~@5 [a3,c4,f4]@9 ~@3 [a3,c4,f4]@10 ~@2 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@11 ~ [a3,c4,f4]@10 ~ [a3,c4,f4]@7 ~@5 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@8]/2", // F C F C
AB: "~@4 [a3,c4,d#4,f4]@9 ~@3 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@10 ~ [g3,c4,e4]@9", // F7 C
AC: "~@3 [a3,c4,d#4,f4]@9 ~@3 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@9 ~@3 [g3,c4,e4]@9", // F7 C
AD: "~@3 [a3,c4,d#4,f4]@8 ~@3 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10", // F7 C
AE: "~@2 [a3,c4,d#4,f4]@9 ~@3 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@9 ~@2 [g3,c4,e4]@10 ~", // F7 C
AF: "~ [a3,c4,f4]@12 [a3,c4,d#4,f4]@10 ~@2 [g3,c4,e4]@11 ~ [g#3,b3,e4]@11, ~ d#4@7 ~@40", // F F7 C E
AG: "~ [a3,c4,e4]@11 [g3,a#3,c4,e4]@10 ~@2 [f3,a3,c4]@12 [f3,a3,c4]@10 ~@2", // Am C7 F
AH: "[[f3,a3,c4]@10 ~@2 [f3,a3,c4]@11 ~ [g3,c4,e4]@11 [g3,c4,e4]@11 ~ [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@11 ~ [g3,c4,e4]@10 ~@2 [g3,c4,e4]@11 ~ [a3,c4,d#4,f4]@11 ~ [a3,c4,d#4,f4]@10 ~ [g3,c4,e4]@11 ~ [g3,c4,e4]@11 ~ [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@9 ~@3 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10 ~ [a3,c4,d#4,f4]@9 ~@3 [a3,c4,d#4,f4]@11 ~ [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@9 ~@2 [g3,c4,e4]@10 ~@2 [g3,c4,e4]@10 ~@2 [a3,c4,d#4,f4]@10 ~@2 [a3,c4,d#4,f4]@9 ~@3 [g3,c4,e4]@10 ~@2 [g#3,b3,d4,e4]@11 [a3,c4,e4]@25 ~@28]/8", // F C F7 C F7 C F7 C …
})).s("gm_piano").gain(0.28).pan(0.8)
// bass · fretless bass · "FRETLESS"
const bass = note(`<
~@4 A@2 B C D E@3 ~ F@3 G H@2 I J@2 K@2 L M N O ~@2 P Q R@5 S@2 T U V W X ~ Y Z@2 AA@2 AB AC AD@4 AE@3 AF AG AH AI@3
AJ AK AL AM@5 AN AO@2 ~@3
>`.pickRestart({
A: "[~@46 c2@19 ~@3 c2@4 f2@5 ~@8 f2@5 ~@6]/2", B: "~ c2@18 ~@3 c2@4 ~ f2@7 ~@5 f2@8 ~",
C: "g2@4 c2@19 ~@2 c2@3 ~@2 f2@10 ~@2 f2@4 a1@2", D: "~@3 g1@2 ~@2 c2@19 ~@2 c2@4 f2@11 ~@2 f2@3",
E: "[~ g2@4 ~ c3@4 c2@12 c2@7 ~@2 g2@3 ~ f2@3 ~ c2@4 ~ f1@7 ~ a1@4 b1@4 ~ c2@11 ~ c2@8 ~ e2@4 f2@8 f2@14 ~@36]/3",
F: "[~@16 g1@4 c2@7 ~@2 c2@4 g1@3 ~ a1@2 ~@2 c2@4 f2@8 f2@6 ~@2 g1@3 ~ a1@3 ~@2 c2@7 ~ c2@4 g1@3 ~ a1@2 ~@2 c2@4 g2@12 ~ f2@12 c2@15 ~ g1@3 ~@2 c2@4]/3",
G: "b1@11 ~ b1@4 g1@2 ~@2 b1@4 a1@7 ~@2 a1@7 ~ g1@3 ~ f1@3",
H: "[~ c2@3 ~@9 f2@12 ~ c2@18 ~@2 g2@4 f2@3 ~ c2@3 ~@2 f1@8 a1@3 ~ b1@4 c2@11 ~@2 c2@6 ~@2]/2",
I: "e2@4 f2@11 ~ f2@8 g2@3 ~ c2@6 ~@14",
J: "[~@22 g2@3 ~ f#2@3 ~ f2@23 ~@2 g2@9 ~@3 g2@3 ~ a2@3 ~ c3@2 ~@2 c2@12 ~ c2@4]/2",
K: "[~@4 e2@4 f2@11 ~@2 f2@7 ~ g1@4 c2@11 ~@2 c2@7 ~ g2@4 f2@7 ~@2 f2@4 g1@4 a1@3 ~ b1@3 ~ c2@11 ~@2]/2",
L: "c2@8 g2@3 ~@2 f2@11 ~ f2@7 ~ g2@3 ~ c2@11", M: "~@2 c2@8 e2@3 ~@2 f2@7 ~ f2@7 ~ a2@4 b2@4 ~ c3@3 ~ g2@4",
N: "c2@7 ~ g2@4 c2@4 ~ f2@3 ~ c2@5 ~@3 f1@4 a1@3 ~ b1@4 ~ c2@6",
O: "~@2 c2@8 d2@4 e2@3 ~@2 f2@7 ~ f2@10 ~@3 f2@4 c2@4", P: "c2 ~@5 f2@2", Q: "c2@5 ~@19 g1@6 ~@6 g1@5 ~@7",
R: "[c2@15 ~ g1@4 c2@4 b1@6 ~@2 b1@7 g1@3 ~ b1@4 a1@10 ~@2 a1@3 ~ g1@3 ~ a1@3 ~ c2@7 ~ c2@4 f2@3 ~ g2@4 c3@3 ~ c2@6 ~@2 c2@4 c3@3 a2@3 ~ g2@3 ~ f2@3 ~ c2@3 ~ f1@8 a1@4 b1@3 ~ c2@7 ~ c2@4 c3@4 a2@4 g2@4 f2@11 ~ f2@3 a1@4 b1@4 c2@7 ~ g1@3 ~ c2@7 ~ g1@3 ~ c2@7 ~ g1@3 ~ c2@3 ~ g1@4 f#1@4 f1@3]/5",
S: "[~ c2@3 f2@4 c2@4 f1@3 ~ f#1@4 g1@4 d2@4 g2@3 ~ g2@4 a2@4 b2@3 ~ c3@7 ~ a2@3 ~ c3@7 ~ a2@3 ~ f2@7 ~ f2@7 g2@3 ~ a2@2 ~@2 c3@5]/2",
T: "~@3 a2 ~@3 c3@8 a2@2 ~@2 d#3@4 g2@4 f2@3 ~ d#2@4 d2@4 b1@4 c2@5",
U: "~@3 c2@3 d#2@4 ~ c2@3 d#2@3 ~ f2@3 ~ c2@4 f1@2 ~@2 f1@4 d#2@3 ~ f2@4 a1@3 ~ a#1@2",
V: "~@2 b1@4 c2@4 a#1@3 ~ b1@4 c2@4 g1@4 f1@3 f1@4 g1@4 a1@4 c2@7",
W: "~ a1@3 ~ c2@4 c3@4 g2@3 ~ f2@6 ~@2 f2@3 ~ c3@4 a2@3 ~ f2@3 ~ c2@3 ~ c2@2 ~",
X: "~ c2@2 ~ e2@3 ~ g2@4 c3@4 f2@3 ~ c2@3 ~ f1@7 ~ f1@3 ~ a1@4 ~@8", Y: "~@36 g1@2 ~ c2@9",
Z: "[~@3 g1@3 a1@3 ~ c2@3 ~ f2@13 ~@3 g1@3 ~ a1@3 ~ c2@7 ~ c2@4 g1@3 ~ a1@2 ~@2 c2@4 g2@11 ~ f2@10 ~ c2@10 ~]/2",
AA: "[~ c2@4 g1@3 ~ c2@4 b1@7 ~ b1@3 ~ b1@4 g1@3 ~ b1@4 a1@6 ~@2 a1@6 ~ g1@3 ~ a1@4 c2@4 ~@8 f2@8 ~@5 c2@11]/2",
AB: "~@4 g2@3 ~ c3@3 f2@6 ~@2 f2@8 a1@4 b1@3 ~ c2@13", AC: "~@3 g2@3 ~ c3@4 f2@10 ~@2 f2@9 ~@3 c2@7 ~@6",
AD: "[~@27 g2@3 f#2@3 ~@2 f2@21 ~@2 g2@9 ~@3 g2@3 ~ a2@3 c3@3 ~@2 c2@11 c2@8 e2@4 f2@8 c2@3 ~ d#2@3 ~ d2@4 b1@4 c2@11 ~ c2@7 ~ e2@3 f2@3 ~ g2@4 a2@2 ~@2 c3@3 ~ g2@3 ~ a2@3 ~ c3@6 ~@2 c3@7 ~]/4",
AE: "[g2@3 ~ f#2@3 ~ f2@3 ~ c3@3 ~ a2@3 ~ f2@3 ~ c2@3 b1@4 ~ c2@7 c2@4 g1@4 e1@4 g1@4 f1@6 ~@2 f1@8 a1@4 b1@3 ~ c2@7 ~ c2@3 ~ c2@3 ~ d2@3 ~ e2@3 ~ f2@7 f2@4 g2@3 ~ a2@3 ~ b2@3 ~ c2@7 ~ c2@3 ~ b1@6]/3",
AF: "~@2 b1@3 ~ a1@4 e2@3 ~ a2@3 ~ g2@6 ~ g2@3 ~ f2@6 ~@2 f2@7 ~ f2@3",
AG: "~ f2@3 ~ g2@7 ~ g2@2 ~@2 g2@3 ~ e3@3 ~ d3@4 c3@7 ~ c3@3 ~ c3@3 ~ g2@3",
AH: "~ a2@3 ~ c3@6 ~ c3@7 ~ e3@4 d3@2 ~@2 c3@5 ~@3 c3@7 ~ g2@4",
AI: "[a2@4 c3@3 ~ g2@3 ~ a2@3 ~ c3@4 a2@3 ~ g2@3 ~ c3@6 ~ c3@6 ~@2 g2@4 a2@3 ~ c3@3 ~ g2@3 ~ a2@3 ~ c3@3 ~ a2@4 g2@4 c3@11 ~ c3@3 ~ g2@4 a2@4 c3@4 g2@3 a2@3 ~ c3@3 ~ a2@4 g2@4 c3@6 ~@2 c3@3 ~ c3@4 g2@3 ~ a2@2]/3",
AJ: "~@2 c3@3 ~ a1@7 ~ a#1@7 ~ b1@4 c2@7 ~ c2@3 e2@3 ~ g2@3 ~ c3@3",
AK: "~ f2@4 a2@3 ~ c3@4 f2@4 d2@4 g2@4 c2@7 ~ c2@3 ~ b1@4 d2@3 ~ e2@3",
AL: "~ a2@11 g2@7 ~ g2@3 ~ f2@7 ~ f2@7 ~ c2@3 ~ f2@3 ~",
AM: "[g2@3 ~ g2@3 ~ d2@3 ~ e2@4 g2@4 e2@3 ~ c3@7 c3@3 ~ c3@6 ~@2 c3@3 ~ f3@3 ~ f3@3 ~ f3@3 ~ f3@4 f#3@3 ~ g3@4 d#3@3 ~ e3@4 c3@4 g2@4 c3@4 f#2@3 ~ f2@11 d#3@7 ~ a#2@4 c3@4 e3@3 ~ c3@4 g2@4 c3@4 f#2@3 ~ f2@4 c3@3 ~ d3@4 c3@3 ~ a2@4 b2@4 c3@4 g2@3 c3@8 g2@4 f#2@4 f2@8 f2@3 ~ d#2@10 ~@2 c2@4 c2@2 ~@2 c2@3 ~ c2@3 ~ c2@4 e2@3 ~ f2@3]/5",
AN: "~ f2@3 f2@3 ~ f2@3 ~ a1@3 ~ b1@4 c2@9 ~@3 c2@4 g2@3 ~ c3@4 f2@2 ~@2",
AO: "[f2@3 ~ f2@3 ~ c3@4 f2@3 ~ c2@3 ~ c2@11 ~ b1@10 ~ a1@45 ~@8]/2",
})).s("gm_fretless_bass").gain(0.44)
// chords · percussive organ · "ORGAN 2"
const percussive_organ = note(`<
~ A@2 B@2 ~@6 C@3 D@3 E@3 F@5 G H I@3 J K L@6 M N O P Q R@2 S@7 T@5 U V@4 W X@2 Y Z AA@5 AB AC AD@2 ~@3
>`.pickRestart({
A: "[~@56 a4@4 ~ [f4,c5]@13 ~ [f4,a4]@13 ~@8, ~@34 [c3,e4,g4]@27 f3@27 ~@8]/2", // F5 F C
B: "[~@42 [c4,c5]@19 ~ [a3,c5,a5]@6 f3@6 ~ e3@6 d3@7 g3@6 ~@2, ~@42 [e5,g5]@26 [c5,f5,a5,c6]@13 [c5,f5,a5]@13 ~@2]/2", // C Am Em F
C: "[~@15 [e5,a#5]@25 ~ [d#5,a5]@25 [e5,a#5]@25 [d#5,a5]@25 [e5,a#5,c6]@23 ~@5, ~@15 c6@100 ~@29]/3", // Edim D#dim Edim D#dim C7
D: "[~@46 [b4,g5]@13 [a4,f5]@11 ~ c5@24 ~ b4@23 ~ [c5,f5,a5]@23 ~, ~@71 [e5,g5]@47 ~@26]/3", // Em Dm F Em
E: "[~ [c5,e5,g5]@4 ~@8 [a4,c5,f5]@11 ~@2 [g4,e5]@23 ~@2 [a4,d#5,f5]@23 ~ [g4,e5]@24 ~@3 a4@21 ~ [c5,e5,g5]@7 ~@13, ~@26 c5@49 c5@46 ~@23, ~@100 [d#5,f5]@21 ~@23]/3", // C F C F7 C D#sus2
F: "[~@30 [c5,f5,a5]@23 ~@2 a4@5 ~@7 [a4,c5,f5]@5 ~@8 [c5,e5,g5]@22 ~@6 [d#5,a5,c6]@3 ~@6 [d#5,a5,c6]@4 ~@21 [g4,c5,e5]@14 ~@3 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@4 ~@20 [g4,c5,e5]@8 ~@2 [a4,c5,d#5]@4 ~@4 [a4,c5,f5]@4 ~@4 [a4,c5,d#5,f5]@4 ~@19, ~@54 [c5,f5]@5 ~@150 d#5 ~@30]/5", // F C Adim C F7 C Adim F …
G: "~@2 [g4,c5,e5]@7 ~@2 [a4,d#5]@2 ~@6 [a4,c5,f5]@3 ~@5 [a4,c5,d#5,f5]@3 ~@18, ~@5 c5 ~@18", // C Adim F F7
H: "~@4 [g4,c5,e5]@8 ~ [a4,c5,d#5]@4 ~@4 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@5 ~@14", // C Adim F7
I: "[~@6 [g4,c5,e5]@7 ~ [a4,c5,d#5]@4 ~@5 [a4,c5,d#5,f5]@3 ~@6 [a4,c5,d#5,f5]@4 ~@8 [e6,a#6]@24 [d#6,a6]@26 [e6,a#6]@24 [d#6,a6]@24 ~@2, ~@22 c7@49 ~]/3", // C Adim F7 Edim D#dim Edim D#dim
J: "[g6,a#6,c7]@5 ~@31 [a4,c5,d#5]@11 ~", K: "[g4,c5,e5]@6 ~@18 [b4,d#5,g5]@11 ~ [a4,d#5,f5]@11 ~",
L: "[c5@24 b4@22 ~ [c5,f5,a5]@21 ~@3 [c5,e5,g5]@4 ~@8 [a4,c5,f5]@11 ~ [g4,c5,e5]@23 [a4,c5,d#5,f5]@23 ~ [g4,c5,e5]@22 ~@2 [a4,c5,d#5,f5]@23 [g4,c5,e5]@46 ~@2 [a4,c5,f5]@47 ~@4, [e5,g5]@23 ~@121]/6", // F C F C F7 C F7 C …
M: "~@8 [g4,c5,e5]@12 ~@4 [a4,c5,d#5,f5]@3 ~@4 [a4,c5,d#5,f5]@6 ~@11", // C F7
N: "~@7 [g4,c5,e5]@12 ~@4 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@4 ~@13", // C F7
O: "~@7 [g4,c5,e5]@7 [a4,c5,d#5]@4 ~@4 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@4 ~@14", // C Adim F7
P: "~@6 [g4,c5,e5]@7 ~ [a4,c5,d#5]@4 ~@4 [a4,c5,d#5,f5]@3 ~@4 [a4,c5,d#5,f5]@4 ~@15", // C Adim F7
Q: "~@5 [g4,c5,e5]@7 ~ [a4,c5,d#5]@4 ~@4 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@4 ~@15", // C Adim F7
R: "[~@5 [g4,c5,e5]@7 [a4,c5,d#5]@4 ~@4 [a4,c5,d#5,f5]@3 ~@5 [a4,c5,d#5,f5]@4 ~@9 [a#4,e5]@22 [a4,d#5,f5]@24 [a#4,e5]@9]/2", // C Adim F7 A#dim F7 A#dim
S: "[~@15 [a4,d#5,f5]@24 [g4,c5,e5]@23 [a4,c5,d#5,f5]@23 ~ [g4,c5,e5]@24 [b4,e5,g5]@12 [a4,d5,f5]@11 [g4,c5,e5]@24 [b4,e5,g5]@24 [c5,f5,a5]@22 ~ [c5,e5,g5,c6]@4 ~@8 [c5,f5,a5,c6]@11 ~ [e5,g5]@23 ~ [d#5,f5,a5]@23 e5@24 [d#5,f5,a5]@24 [e5,g5,a#5,c6]@5 ~@8, ~@228 c6@46 ~ c6@47 ~@14]/7", // F7 C F7 C Em Dm C Em …
T: "[~@34 [c5,f5,a5]@45 ~@14 [g5,c6,e6]@8 [a5,c6,d#6]@5 ~@3 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@5 ~@19 [g5,c6,e6]@7 ~ [a5,c6,d#6]@4 ~@3 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@5 ~@19 [g5,c6,e6]@7 ~ [a5,c6,d#6]@4 ~@4 [a5,c6,f6]@4 ~@4 [a5,c6,f6]@4 ~@19 [g5,c6,e6]@5]/5", // F C Adim F7 C Adim F7 C …
U: "~@3 [a5,c6,d#6]@4 ~@4 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@4 ~@20 [g4,c5,e5]@5", // Adim F7 C
V: "[~@3 [a4,c5,d#5]@5 ~@3 [a4,c5,f5]@4 ~@3 [a4,c5,d#5,f5]@3 ~@9 [c5,e5,g5]@11 ~ [b4,e5,g#5]@11 ~ [c5,e5,a5]@11 ~ [c5,e5,g5,a#5]@10 ~@2 [a4,c5,f5]@22 ~ [c5,f5,a5]@23 ~ [e5,g5,c6]@23 ~ [a5,c6,f6]@22 ~@13 [g5,c6,e6]@8]/4", // Adim F F7 C E Am C7 F …
W: "~@8 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@4 ~@19 [g5,c6,e6]@9", // F7 C
X: "[~@7 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@4 ~@20 [g5,c6,e6]@6 ~@2 [a5,c6,d#6]@3 ~@5 [a5,c6,f6]@2 ~@5 [a5,c6,d#6,f6]@2 ~@22 [g5,c6,e6]@7 ~ [a5,c6,d#6]@2, ~@55 d#6 ~@40]/2", // F7 C Adim F F7 C Adim
Y: "~@6 [a5,c6,d#6,f6]@3 ~@5 [a5,c6,d#6,f6]@3 ~@20 [g5,c6,e6]@8 ~@3", // F7 C
Z: "~@5 [a5,c6,d#6,f6]@2 ~@6 [a5,c6,d#6,f6]@3 ~@9 [g5,c6,e6]@11 ~ [g#5,b5,d6]@10 ~", // F7 C G#dim
AA: "[~ [a5,c6,e6]@11 [g5,a#5,c6,e6]@10 ~@2 [f5,a5,c6]@45 ~@3 [g5,c6,e6]@21 ~@2 [f5,a5,c6,d#6]@20 ~@4 [g5,c6,e6]@21 ~@3 [a5,c6,d#6,f6]@5 ~@7 [a5,c6,d#6,f6]@4 ~@7 [g5,c6,e6]@22 ~@2 [a5,c6,d#6,f6]@5 ~@7 [a5,c6,d#6,f6]@4 ~@8 [g5,c6,e6]@21 ~@2 [a5,c6,d#6,f6]@3]/5", // Am C7 F C F7 C F7 C …
AB: "~@9 [a5,c6,d#6,f6]@5 ~@7 [g5,c6,e6]@21 ~@3 [a5,c6,d#6,f6]@3", // F7 C F7
AC: "~@9 [a5,c6,d#6,f6]@4 ~@7 [g5,c6,e6]@22 ~@2 [a5,c6,d#6,f6]@4", // F7 C F7
AD: "[~@8 [a5,c6,d#6,f6]@6 ~@6 [g5,c6]@12 [g#5,b5,d6]@11 [a5,c6,e6]@26 ~@27, ~@20 e6@23 ~@53]/2", // F7 C5 G#dim Am
})).s("gm_percussive_organ").gain(0.15).pan(0.4)
// other · trumpet
const trumpet = note(`<
A@2 B@2 ~@10 C@2 D@2 E@2 F G ~@8 H I@2 ~ J K L@2 ~@10 M N O P Q@2 R@5 S ~@9 T@7 ~@3
>`.pickRestart({
A: "[~@33 g5@20 e5@4 a5@6 ~@33]/2", B: "[~@40 g5@19 ~@2 a5@4 c6@12 ~ a5@6 ~@12]/2",
C: "[~@9 d#4@7 ~ d4@3 ~ c4@3 ~ a3@3 ~ g3@33 ~@5 c4@3 d#4 e4@7 g4@16 ~@2]/2", D: "[a4@6 c5@7 ~@11]/2",
E: "[~@15 d#4@8 d4@2 ~@3 c4@3 d4@2 ~@2 c4@37 ~@24]/2", F: "~@5 g4@6 ~@2 f4@3 ~ e4@5 ~@26",
G: "~@7 f4@6 ~@6 f4@6 ~@23",
H: "c6@3 ~@3 a#5@2 ~@2 a5@2 g5@3 ~ e5@2 f5@4 g5 f5 e5@3 ~ c5 ~ g4@3 f4 ~@2 f#4@3 ~ d5@2 b4@3 ~ c5@2",
I: "[~@9 e5@2 ~ a5@3 ~ g#5 ~ g5@2 ~@2 f5@2 d5@3 ~ d#5@2 e5@2 ~@2 c5@2 g4@3 ~ d5@2 b4@2 ~@2 c5@5 [a4,b4] g4 [e4,f4] [c4,d4] ~@41]/2", // Asus2 Fmaj7 Csus2
J: "~@10 g4@12 a4@4 ~@8 a4@5 ~@9", K: "~@10 g4@11 ~ a4@4 ~@8 a4@4 ~@10", L: "[~@9 g4@35 ~ a4@44 ~@7]/2",
M: "~ g4@12 ~@12 b4@13 ~@10", N: "~ c5@10 ~ c5@5 ~@31", O: "~@12 d#4@7 d4@3 ~ c4@7 ~ a3@5 ~@12",
P: "~@3 a3@4 g3@3 ~ d#4@6 ~@2 d4@3 ~ c4@7 a3@4 ~@14", Q: "[~@41 c6@40 ~@15]/2",
R: "[~@10 g5@50 a5@5 ~@3 d#5@3 ~ c5@3 ~ d5@4 c5@11 ~ a4@10 ~@10 a4@3 ~ c5@3 d5@3 ~ d#5@3 ~ e5@4 f5@4 f#5@3 ~ g5@4 c5@2 ~@2 d#5@7 ~ f5@3 ~ f#5@3 ~ g5@4 c5@3 d#5 e5@10 ~ g5@21 ~@7 a5@6 ~ c6@9 a5@4 g5@2 ~@2 e5@6]/5",
S: "d5 ~ c5 a4 ~ c5@6 ~ a4@2 c5 d5@2 c5@12 ~@19",
T: "[~@24 g5@19 e5@3 ~ a5@7 ~@16 g5@18 ~ a5@3 ~@2 c6@11 ~ a5@9 ~@14 e6@7 ~ e6@2 ~@2 d6@7 ~ c6@7 ~@5 a5@2 ~@2 c6@7 a#5@3 ~ c6@7 ~@2 a#5@11 ~ c6@7 ~@21 e6@6 ~ e6@2 ~@2 d6@7 c6@2 ~@2 c6@4 ~ d6@3 c6@2 ~@3 g6@12 g#6@11 ~ [c6,a6]@46 ~@6]/7", // F
})).s("gm_trumpet").gain(0.32).pan(0.3)
// other · trombone
const trombone = note(`<
A@2 B@2 ~@10 C@3 D E@2 F@2 ~@8 G H@2 ~ I J K@2 ~@10 L M N O P@2 Q@5 R ~@9 S@6 ~@4
>`.pickRestart({
A: "[~@33 e4@20 e4@4 f4@6 ~@33]/2", B: "[~@40 e4@19 ~@2 e4@4 f4@11 ~@2 f4@6 ~@12]/2",
C: "[~@9 d#4@7 ~ d4@4 c4@4 a3@3 ~ g3@30 ~@8 c4@3 d#4 e4@7 g4@40 ~@2 f4@24]/3", D: "~ e4@4 ~@43",
E: "[~@15 d#4@8 d4@3 ~@2 c4@3 d4@2 ~@2 c4@12 g3@28 ~@21]/2", F: "[~@22 g3@3 f#3@3 ~@2 f3@24 ~ g2@6 ~@6 g2@5 ~@24]/2",
G: "c5@3 ~@3 a#4@2 ~@2 a4@2 g4@3 ~ e4@2 f4@4 g4 f4 e4@3 ~ c4 ~ g3@3 f3 ~@2 f#3@3 ~ d4@2 b3@3 ~ c4@2",
H: "[~@9 e4@2 ~ a4@3 ~ g#4 ~ g4@2 ~@2 f4@2 d4@3 ~ d#4@2 e4@2 ~@2 c4@2 g3@3 ~ d4@2 b3@2 ~@2 c4@5 [a3,b3] g3 [e3,f3] [c3,d3] ~@41]/2", // Asus2 Fmaj7 Csus2
I: "~@11 c4@11 c4@3 ~@9 c4@5 ~@9", J: "~@10 c4@11 ~ c4@5 ~@6 c4@5 ~@10", K: "[~@9 c4@35 ~@2 c4@45 ~@5]/2",
L: "~ c4@12 ~@12 e4@12 ~@11", M: "~ f4@11 e4@3 ~@33", N: "~@12 d#4@6 ~ d4@4 ~ c4@7 a3@5 ~@12",
O: "~@3 a3@3 ~ g3@2 ~@2 d#4@7 d4@3 ~@2 c4@6 ~ a3@4 ~@14", P: "[~@26 g2@3 ~ f#2@3 ~ f2@22 ~@2 g2@7 ~@4 g2@6 ~@21]/2",
Q: "[~@10 g4@50 a4@5 ~@3 d#4@3 ~ c4@3 ~ d4@4 c4@11 ~ a3@10 ~@10 a3@3 ~ c4@3 d4@3 ~ d#4@3 ~ e4@4 f4@4 f#4@3 ~ g4@4 c4@2 ~@2 d#4@7 ~ f4@3 ~ f#4@3 ~ g4@4 c4@3 d#4 e4@10 ~ g4@21 ~@7 a4@6 ~ c5@9 a4@4 g4@2 ~@2 e4@6]/5",
R: "d4 ~ c4 a3 ~ c4@6 ~ a3@2 c4 d4@2 c4@12 ~@19",
S: "[~@24 g4@19 e4@3 ~ a4@7 ~@16 g4@18 ~ a4@3 ~@2 c5@11 ~ a4@9 ~@14 e5@7 ~ e5@2 ~@2 d5@7 ~ c5@7 ~@5 a4@2 ~@2 c5@7 a#4@3 ~ c5@7 ~@2 a#4@11 ~ c5@6 ~@22 e5@6 ~ e5@2 ~@2 d5@7 c5@2 ~@2 c5@4 ~ d5@3 c5@2 ~@31]/6",
})).s("gm_trombone").gain(0.29).pan(0.9)
// chords · muted trumpet · "MT TRUMPET"
const muted_trumpet = note("<~@26 A B ~@10 C D E F G H ~@10 I@5 J ~@19>".pickRestart({
A: "~@17 a4@5 ~@7 a4@4 ~@15", B: "~@19 a4@5 ~@8 a4@4 ~@12",
C: "~@4 [c5,e5,g5]@6 [c5,d#5,f5,a5]@2 ~@4 [c5,d#5,f5,a5]@3 ~@5", // C F7
D: "~@7 [c5,e5,g5]@12 [c5,d#5,f5,a5]@4 ~@8 [c5,d#5,f5,a5]@6 ~@11", // C F7
E: "~@7 [c5,e5,g5]@11 [c5,d#5,f5,a5]@4 ~@8 [c5,d#5,f5,a5]@6 ~@12", // C F7
F: "~@3 [c5,e5,g5]@6 [c5,d#5,f5,a5]@2 ~@4 [c5,d#5,f5,a5]@3 ~@6", // C F7
G: "~@5 [c5,e5,g5]@12 [c5,d#5,f5,a5]@4 ~@8 [c5,d#5,f5,a5]@6 ~@13", // C F7
H: "~@5 [c5,e5,g5]@11 [c5,d#5,f5,a5]@4 ~@8 [c5,d#5,f5,a5]@6 ~@14", // C F7
I: "[~@10 g5@50 a5@5 ~@3 d#5@3 ~ c5@3 ~ d5@4 c5@11 ~ a4@10 ~@10 a4@3 ~ c5@3 d5@3 ~ d#5@3 ~ e5@4 f5@4 f#5@3 ~ g5@4 c5@2 ~@2 d#5@7 ~ f5@3 ~ f#5@3 ~ g5@4 c5@3 d#5 e5@10 ~ g5@21 ~@7 a5@6 ~ c6@9 a5@4 g5@2 ~@2 e5@6]/5",
J: "d5 ~ c5 a4 ~ c5@6 ~ a4@2 c5 d5@2 c5@12 ~@19",
})).s("gm_muted_trumpet").gain(0.32).pan(0.4)
// other · alto sax
const alto_sax = note("<A B C@2 ~@10 D@2 E F G@2 H I ~@4 J K ~@6 L M N@2 ~@10 O P ~@2 Q@2 ~@25>".pickRestart({
A: "~@11 c5@5", B: "~@5 c5@4 c5@6 ~@33", C: "[~@40 c5@20 ~ c5@4 c5@12 ~ c5@6 ~@12]/2",
D: "[~@9 d#4@7 ~ d4@4 ~ c4@3 a3@3 ~ g3@31 ~@6 c4@3 ~ d#4 e4@7 g4@17 ~]/2", E: "a4@24 ~ a4@23", F: "~ g4@4 ~@43",
G: "[~@15 d#4@7 ~ d4@2 ~@2 c4@3 ~ d4@2 ~@2 c4@41 ~@20]/2", H: "~@5 e4@6 ~@2 d4@3 ~ c4@5 ~@26",
I: "~@7 a3@6 ~@6 a3@6 ~@23", J: "~@16 f4@6 ~@7 f4@6 ~@13", K: "~@19 f4@6 ~@6 f4@6 ~@11",
L: "~@11 e4@11 ~ f4@3 ~@8 f4@4 ~@10", M: "~@10 e4@11 f4@5 ~@7 f4@5 ~@10", N: "[~@9 e4@34 ~@2 f4@45 ~@6]/2",
O: "~ e4@11 ~@13 g4@12 ~@11", P: "~ a4@12 g4@3 ~@32", Q: "[~@41 g5@40 ~@15]/2",
})).s("gm_alto_sax").gain(0.32).pan(0.3)
// bass · baritone sax · "BARITONSAX"
const bass_2 = note("<~@26 [~@6 c2@2 ~@11 g1@2 ~@3] [~@7 c2@2 ~@15] ~@51>").s("gm_baritone_sax").gain(0.32).pan(0.6)
// drums · kick
const kick = s("bd").struct(`<
~@4 A B C D E F G ~@2 H I J K L M N O P Q F G R S T ~ U V W X Y Z AA AB AC AD@2 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 X BE BF BG BH BI BJ ~@4
>`.pickRestart({
A: "~@23 x", B: "~ x", C: "~ x ~@25 x ~@20", D: "~@2 x ~@12 x ~@8", E: "~@7 x ~@24 x ~@15", F: "~@10 x ~@24 x ~@12",
G: "~@13 x ~@24 x ~@9", H: "~@20 x ~@24 x ~@2", I: "~@11 x ~@11 x", J: "~@23 x ~@24", K: "x!2", L: "~@13 x ~@10",
M: "~ x ~@7 x ~@6", N: "~ x ~@10", O: "~@5 x ~@2", P: "~@7 x ~@11 x ~@11 x ~@16", Q: "~@8 x ~@24 x ~@14",
R: "~@15 x ~@7 x ~@11 x ~@4 x ~@7", S: "~@17 x ~@24 x ~@5", T: "~@19 x ~@24 x ~@3", U: "~@29 x ~@3 x ~@14",
V: "x ~@2 x", W: "x ~ x!2", X: "x ~@19 x ~@3 x ~@22 x", Y: "~@19 x ~@3 x ~@23 x", Z: "~@9 x ~ x ~@11 x",
AA: "~@18 x ~@3 x ~@22 x ~@2", AB: "~@17 x ~@3 x ~@23 x ~@2", AC: "~@5 x ~@4 x!2", AD: "~@19 x ~@23 x ~@4",
AE: "~@3 x ~@3 x", AF: "~@17 x ~@23 x ~@6", AG: "~@17 x ~@11 x ~@11 x ~@6", AH: "~@5 x ~@10 x ~@19 x ~@11",
AI: "~@13 x ~@2", AJ: "~@7 x ~@11 x ~@4", AK: "~@14 x ~@22 x ~@7 x ~@2",
AL: "~@9 x ~@3 x ~@7 x ~@11 x ~@3 x ~@7 x ~@2", AM: "~@3 x", AN: "~@12 x ~@18 x ~@3 x ~@12",
// … 142 more lines
More by Blood, Sweat & Tears
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.