0:00/0:00
// Il carrozzone — Zero
// 74 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 91 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(74/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
const piano = note(`<
~@13 A@2 B@2 C@3 D@2 E F G H I J@2 ~@7 K L ~@2 M N ~@2 O@2 E F G H I J@2 ~@10 P@5 ~@8 P@5 ~@10
>`.pickRestart({
A: "[~@36 [f3,f4,f5]@4 ~@2 [e3,e4,e5]@2 ~ [a#2,a#3,a#4]@26 ~@25, ~@15 [g3,g4,g5]@5 ~@28]/2", // F E A# G
B: "[~@36 [e3,e4,e5]@5 ~ [d3,d4,d5]@3 [a2,a4,a5]@31 ~@20, ~@30 [f3,f4,f5]@11 ~@55]/2", // E D A F
C: "[~@30 [a#3,a#4]@6 [a3,a4,a5]@6 [g3,g4,g5]@3 [e3,e4,e5]@27 [a4,a5]@49 ~@23, ~@15 a#5 ~@56]/3", // A# A G E A
D: "[~@48 c#7@21 ~@10 b6@2 ~@3 [d6,g6,b6]@6 ~ f#6@2 a6@2 ~, ~@46 d6@27 ~@4 d6@4 ~@9 d6@4 ~@2, ~@47 f#6@28 ~@3 g6@2 ~@16, ~@47 a6@17 ~@32]/2", // G
E: "[d6,f#6,a6]@24 ~@9 d7@2 ~ [f#6,a6,d7]@6 ~@2 a6@2 c#7 ~, ~@31 f#6@4 ~@7 e6@4 ~@2, ~@32 a6@3 ~@13", // D
F: "[e6,a6,c#7]@6 ~@3 b6 ~@2 [d6,g6,b6]@6 ~@3 a6 ~@2 [d6,f#6,a6]@6 ~@3 g6 ~@2 [b5,e6,g6]@6 ~ d6@2 f#6@2 ~, ~@6 d6@4 ~@8 d6@4 ~@8 b5@4 ~@8 a5@3 ~@3, ~@8 g6@3 ~@9 f#6@3 ~@9 e6@2 ~@14", // A G D Em
G: "[b5,e6,g6]@22 ~@8 [a6,c#7]@3 ~@3 [f#6,a6,c#7]@8 ~ [d6,g6,b6] ~@2, ~@30 f#6 ~@17", // Em A F#m G
H: "[d6,g6,b6]@26 ~@5 f#6@2 a6@2 ~ [d6,f#6,a6]@6 ~ e6@2 g6 ~@2, ~@15 d6@2 ~@4 b5@2 ~", // G D
I: "[b5,e6,g6]@25 ~@6 a6@2 c#7 ~@2 [f#6,a6,c#7]@6 ~@3 b6 ~@2, ~@15 f#6@2 ~@4 d6@2 ~, ~@44 g6@3 ~", // Em F#m
J: "[[d6,g6,b6]@6 ~@2 f#6@2 a6 ~ [f#6,a6]@6 ~ e6@2 g6 ~@2 [b5,e6,g6]@5 ~@2 d6@2 f#6 ~@2 [a5,f#6]@6 [c#6,e6]@3 ~@3 a6@45 ~@3, ~@6 d6@4 ~@2 d6@3 ~@3 b5@4 ~@7 a5@4 ~@3 d6@5 ~@4 a5@48 ~@3, ~@46 d6@47 ~@3, ~@47 f#6@46 ~@3]/2", // G F#m Em D C#m
K: "~@42 d5@2 ~ e5@2 ~", L: "f5@23 ~@25", M: "~@42 d5 ~@2 e5@2 ~", N: "f5@11 ~@13",
O: "[~@48 c#7@21 ~@10 b6@2 ~@3 [d6,g6,b6]@6 ~ f#6@2 a6@2 ~, ~@46 d6@27 ~@4 d6@4 ~@9 d6@4 ~@2, ~@47 [f#6,a6]@28 ~@3 g6@2 ~@16]/2", // G F#m
P: "[~@30 [e4,a4,c#5] ~@2 [e4,a4,c#5]@8 ~ [d4,g4,b4] ~@2 [d4,g4,b4]@28 ~@5 [d4,f#4,a4] ~@2 [d4,f#4,a4]@7 ~@2 [b3,e4,g4] ~@2 [b3,e4,g4]@27 ~@6 [e4,a4,c#5] ~@2 [e4,a4,c#5]@8 ~ [d4,g4,b4] ~@2 [d4,g4,b4]@7 ~@2 [d4,f#4,a4] ~@2 [d4,f#4,a4]@7 ~@2 [b3,e4,g4] ~@2 [b3,e4,g4]@8 ~ [a3,d4,f#4] ~@2 [a3,d4,f#4]@7 ~@2 [a3,c#4,e4]@2 ~ [d4,f#4,a4]@43 ~@8]/5", // A G D Em A G D Em …
})).s("gm_piano").gain(0.17).pan(0.4)
// bass · fretless bass · "BASSO"
const bass = note(`<
~@12 A B C D E F G H@2 I J K@2 L M N O P Q R S T U V A B C D E F G H@2 I J K@2 L M N W P Q R S T U X I J K@2 L M N O P
Q R S T I J K@2 L M N O P Q R S T U X I J Y
>`.pickRestart({
A: "d2@7 ~@5 a1@8 ~@4 d2@7 ~@5 a1@7 ~@5", B: "d2@7 ~@5 a1@6 ~@6 g1@8 ~@4 d2@7 ~@5",
C: "g1@8 ~@4 d2@5 ~ g1@5 ~ a1@7 ~@5 e2@8 ~@4", D: "a1@7 ~@5 e2@7 ~@5 d2@8 ~@4 a1@8 ~@4",
E: "d2@7 ~@5 a1@7 ~@5 d2@8 ~@4 a1@5 ~ d2@6", F: "c2@9 ~@3 d2@12 a#1@8 ~@4 a#1@10 ~@2",
G: "g1@10 ~@2 g2@10 ~@2 a1@9 ~@3 a2@10 ~@2", H: "[a1@3 ~ a1@3 ~ d2@18 ~@6]/2",
I: "d2@11 ~ a2@5 ~ d2@5 ~ a1@11 ~ a2@10 ~@2", J: "d2@11 ~ a2@11 ~ d2@10 ~@2 a2@11 ~",
K: "d2@5 ~ a2@5 ~ d2@5 ~ a2@5 ~", L: "a1@9 ~@3 e2@10 ~@2 a1@9 ~@3 e2@11 ~",
M: "e2@8 ~@4 b1@10 ~@2 e2@9 ~@3 b1@10 ~@2", N: "a1@9 ~@3 e2@9 ~@3 a1@9 ~@3 e2@10 ~@2", O: "d2@3 ~ a1@3 ~ d2@8",
P: "d2@11 ~ a2@12 d2@11 ~ a2@12", Q: "g1@11 ~ g2@12 g1@12 g2@11 ~", R: "a1@12 a2@12 a1@11 ~ e2@10 ~@2",
S: "d2@4 a1@4 d2@4 a1@3 ~", T: "d2@7 ~@5 d2@9 ~@3 e2@9 ~@3 e2@9 ~@3", U: "a2@8 ~@4 a2@9 ~@3 a2@8 ~@4 a2@8 ~@4",
V: "a1@25 ~@23", W: "d2@9 ~@3 a1@9 ~@3 d2@22 ~@2", X: "a1@8 ~@4 a1@8 ~@4 a1@9 ~@3 a1@9 ~@3", Y: "d2 ~@2",
})).s("gm_fretless_bass").gain(0.29)
// chords · acoustic guitar steel · "STEEL GT"
const acoustic_guitar_steel = note("<~ A B C ~@16 D ~@23 D ~@12 E F G ~@12 H ~@12 E F G ~@3>".pickRestart({
A: "~@12 [d4,f4,a4]@11 ~@13 [d4,f4,a4,f5]@12, a5@35 ~@13, d3 c3", // Dm
B: "~@12 [d4,f4,a4]@11 ~@13 [d4,f4,a4]@11 ~, g5, a#2 a2", // Dm
C: "~@6 [d4,f4,a4]@4 ~@8 [d4,f4,a4]@4 ~@8 [d4,f4,a4]@5 ~@7 [d4,f4,a4]@5 ~, [d3,d5]", // Dm D
D: "~@7 [g4,g5] [a4,a5]@2 [f#4,f#5]@2 [e4,e5]@2 [f#4,f#5]@2, ~ [a3,a4]@7 ~@8, ~ [d4,d5] [f#4,f#5]!2 ~@4, ~@3 [e4,e5]@5 ~@8, ~@5 [d4,d5]@3 ~@8", // G A F# E F# A D F# …
E: "~@6 [g3,a#3,d4]@4 ~@5 g3 ~@2 [g3,a#3,d4]@5 ~@4 g3 ~@2 [g3,a#3,e4]@5 ~@4 g3 ~@2 [g3,a#3,e4]@6", // Gm Edim
F: "~@3 [d4,f#4]@3 ~@3 [d4,f#4]@3 ~@3 [d4,f#4]@3 ~@3 [d4,f#4]@2 ~, ~@3 a3@8 ~@4 a3@8 ~@4 a3@8 ~@4 a3@6 ~@3", // D
G: "[b3,d4,e4,g4]@22 ~@2 [a3,c#4,e4]@23 ~", // Em7 A
H: "~@6 [g3,b3,d4]@4 ~@5 g3 ~@2 [g3,b3,d4]@5 ~@4 g3 ~@2 [g3,a#3,e4]@5 ~@4 g3 ~@2 [g3,a#3,e4]@6", // G Edim
})).s("gm_acoustic_guitar_steel").gain(0.14).pan(0.6)
// chords · acoustic guitar nylon · "NYLON GT"
const acoustic_guitar_nylon = note(`<
~ A@2 B C D E F G H I J ~@9 K L M N O P Q R S T U V W X@2 ~@9 K L M N O Y Q R S T U Z AA AB AC K L M N O P Q R AD T U
V AE K L M N O P Q R AD T U V AF AB AC K AG@2
>`.pickRestart({
A: "[a5@17 ~@7 g5@24, ~@3 f5@5]/2", B: "d5@47 ~",
C: "~@6 [a3,d4,f4]@4 ~@8 [a3,d4,f4]@5 ~@7 [a3,d4,f4]@5 ~@7 [a3,d4,f4]@5 ~, d3@15 ~", // Dm
D: "~@6 [a3,d4,f4]@4 ~@8 [a3,d4,f4]@3 ~@9 [a#3,d4,e4]@4 ~@8 [a#3,d4,e4]@5 ~, d3@11 ~", // Dm Em7b5
E: "~@6 [a#3,d4,e4]@4 ~@8 [a#3,d4,e4]@4 ~@8 [a#3,d4,e4]@4 ~@8 [a#3,d4,e4]@5 ~, d3@23 ~", // Em7b5
F: "~@3 [a#3,d4,e4]@2 ~@4 [a#3,d4,e4]@2 ~@4 [a3,d4,f4]@2 ~@4 [a3,d4,f4]@3, d3", // Em7b5 Dm
G: "~@6 [a3,d4,f4]@4 ~@8 [a3,d4,f4]@5 ~@7 [a3,d4,f4]@5 ~@7 [a3,d4,f4]@5 ~, d3", // Dm
H: "~@6 [a3,d4,f4]@4 ~@8 [a3,d4,f4]@4 ~@8 [g3,a#3,d4,e4]@4 ~@8 [g3,a#3,d4,e4]@5 ~, c3 a#2", // Dm Em7b5
I: "~@6 [g3,a#3,d4,e4]@4 ~@8 [g3,a#3,d4,e4]@4 ~@8 [a3,d4,f4]@5 ~@7 [a3,d4,f4]@4 ~@2, g2@8 a2@7 ~", // Em7b5 Dm
J: "~@6 [c#4,e4,g4]@5 ~@7 [c#4,e4,g4]@5 ~@7 [e4,g4,a#4]@5 ~@7 [g4,a#4,c#5]@5 ~, a2@47 ~", // C#dim Edim Gdim
K: "~@6 [a3,d4,f#4]@4 ~@8 [a3,d4,f#4]@5 ~@7 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~", // D Em7
L: "~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~", // D
M: "~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@6", // D
N: "~@6 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~", // Em7
O: "~@6 [b3,d4,e4]@5 ~@7 [b3,d4,e4]@5 ~@7 [b3,d4,f#4]@5 ~@7 [b3,d4,f#4]@5 ~", // E7 Bm
P: "~@6 [b3,d4,e4,g4]@4 ~@8 [b3,d4,e4,g4]@4 ~@8 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~", // Em7
Q: "~@6 [b3,d4,e4,g4]@4 ~@8 [b3,d4,e4,g4]@5 ~@7 [a3,c#4,e4,a4]@4 ~@8 [a3,c#4,e4,a4]@6", // Em7 A
R: "~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@4 ~@8 [a3,d4,f#4,a4]@6 ~@6 [a3,d4,f#4,a4]@4 ~@2", // D
S: "~@6 [c4,d4,f#4,a4]@5 ~@7 [c4,d4,f#4,a4]@7 ~@5 [c4,d4,f#4,a4]@4 ~@8 [c4,d4,f#4,a4]@5 ~", // D7
T: "~@3 [b3,d4,g4]@2 ~@4 [b3,d4,g4]@2 ~@4 [b3,d4,g4]@2 ~@4 [b3,d4,g4]@2 ~", // G
U: "~@6 [a3,c#4,a4]@4 ~@8 [a3,c#4,a4]@5 ~@7 [a3,c#4,a4]@4 ~@8 [a3,c#4,a4]@5 ~", // A
V: "~@3 [a3,d4,f#4,a4]@2 ~@4 [a3,d4,f#4,a4]@2 ~@4 [d4,f#4,a4]@2 ~@4 [a3,d4,f#4,a4]@2 ~, ~@15 a3 ~@8", // D
W: "~@2 [b3,d4] ~@3 [b3,d4] ~@3 [a#3,d4] ~@3 [a#3,d4] ~", // Bm A#
X: "[~@6 [a3,d4]@3 ~@9 [a3,d4]@4 ~@8 [a3,d4]@4 ~@8 [a3,d4]@3 ~@3 d4@21 ~@3 c#4@24, ~@45 e3@22 ~@2 e3@27, ~@23 g3@11 ~ g3@13, ~@47 b3@21 ~@3 a3@25]/2", // D5
Y: "~@6 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@4 ~@8 [b3,d4,e4,g4]@5 ~@7 [b3,d4,e4,g4]@5 ~", // Em7
Z: "~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@4 ~@8 [d4,f#4,a4]@4 ~@8 [a3,d4,f#4,a4]@4 ~@2, ~@15 a3 ~@8", // D
AA: "[g3,a#3,d4]@9 ~@3 [g3,a#3,d4]@10 ~@2 [a#3,e4]@10 ~@2 [g3,a#3,e4]@10 ~@2, ~@22 g3@11 ~@15", // Gm A#dim Edim
AB: "[a3,d4,f#4]@10 ~@2 [a3,d4,f#4]@10 ~@2 [a3,d4,f#4]@9 ~@3 [a3,d4,f#4]@9 ~@3", // D
AC: "[g3,b3,d4,e4]@23 ~ [a3,c#4,e4]@23 ~", // Em7 A
AD: "~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@7 ~@5 [a3,d4,f#4,a4]@4 ~@8 [a3,d4,f#4,a4]@5 ~", // D
AE: "[g3,b3,d4]@9 ~@3 [g3,b3,d4]@9 ~@3 [a#3,e4]@10 ~@2 [g3,a#3,e4]@10 ~@2, ~@21 g3@11 ~@16", // G A#dim Edim
AF: "[g3,a#3,d4]@9 ~@3 [g3,a#3,d4]@9 ~@3 [a#3,e4]@10 ~@2 [g3,a#3,e4]@10 ~@2, ~@21 g3@11 ~@16", // Gm A#dim Edim
AG: "[~@6 [a3,d4,f#4,a4]@5 ~@7 [a3,d4,f#4,a4]@5 ~@22 d4@2 ~@2 d5@5 ~@42, ~@24 d3@6 a3@12 a4@5 ~ a4@7 ~@41, ~@27 f#3@20 ~@49, ~@33 d3@14 ~@49, ~@36 d4@3 f#4@8 d4@8 ~@41]/2", // D
})).s("gm_acoustic_guitar_nylon").gain(0.16).pan(0.3)
// chords · string ensemble 2 · "SLOW STRI"
const string_ensemble_2 = note(`<
~@19 A@2 B@4 C@6 D E ~@10 A@2 B@4 C@6 D E F@2 ~ B@4 C@6 D E ~ B@4 C@6 D E ~@3 G@3
>`.pickRestart({
A: "[~@23 [a3,d4,f#4]@55 ~@18]/2", B: "[[a3,d4]@23 [b3,e4]@24 d4@47 ~ a4@48 [e4,g4]@48 b3, ~@47 f#4@96 ~@49]/4",
C: "[~@23 [d4,f#4]@24 g4@47 b3@47 ~@2 a3@48 a4@48 g4@25 ~@12 e4@12, ~@47 e4@96 d4@133 ~@12, ~@264 f#4@19 ~@5]/6", // D
D: "~@23 d#4@13 e4@12, d4 ~, ~@5 a3@43", E: "[d4,f#4]@47 ~", F: "[g4@47 f#4@47 ~@2, d4]/2",
G: "[[a3,d4]@23 [b3,e4]@24 d4@47 ~@2 a4@13 ~@35, ~@47 f#4@61 ~@36]/3", // D5 E5
})).s("gm_string_ensemble_2").gain(0.17).pan(0.3)
// other · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
~@22 A ~ B@4 C@5 ~@13 A ~ B@4 C@5 ~@2 D E@7 ~ F@2 G@2 H I@7 ~ F@2 G@2 ~@2 D J@3
>`.pickRestart({
A: "~@11 [f#4,d5]@6 [g4,e5]@6 [a4,f#5]@25", // D C D
B: "[~@5 b4@5 ~ a4@6 [g4,e5]@6 [e4,b4]@23 ~ a3@7 e4@6 f#4@5 ~ a3@5 ~ a3@23 b3@6 e4@6 ~ f#4@5 b3@5 ~ b3@22 ~@2 b3@6 e4@6 f#4@6 b3@5 ~ b3@25, ~@4 g5@6 f#5@7 ~@175]/4", // C E5
C: "[~@2 a3@3 b3@3 c#4@3 d4@3 e4@3 f#4@3 g4@3 a4@3 b4@3 c#5@3 d5@3 e5@3 f#5@3 g5@3 a5@3 d6@24 ~ b5@7 a5@6 d5@83 d#5@12 e5@11 [d5,f#5]@45 ~@4]/5", // D
D: "[d4,d5]@8 c#5 d5 e5 f#5 g5 a5 b5 c#6", // D
E: "[[d4,d5,d6]@23 ~ c#5@11 ~ [b3,b4,b5]@11 ~ [a4,a5]@47 [d4,d5]@13 [c#4,c#5]@12 [b3,b4]@12 [a3,a4]@11 ~@7 b5@2 ~ a5@3 g5@3 a5@3 f#5@3 g5@3 e5@3 f#5@3 a5@24 f#5@6 d5@6 b4@76 ~ a3@6 e4@6 f#4@7 e4@6 a3@22 ~@2, ~@23 [c#4,c#6]@13 ~@11 a3@48 ~@48 [b3,b4]@48 ~@145]/7", // D B A D C# B A C# …
F: "[~ d6@2 c6@2 b5@2 c6@2 b5@2 a5@2 b5@2 a5@2 g5@2 a5@2 g5@2 f#5@2 g5@2 f#5@2 e5@2 f#5@2 e5@2 d5@2 e5@2 d5@2 c5@2 d5@2 c5@2 a#4@3 b4@3 d5@3 ~ g5@3 c#5@3 d5@3 g5@2 b5@3 ~ d6@23 ~, c6 ~@47]/2",
G: "[e6@47 f#6@48 ~]/2", H: "b3@24 ~@5 c#4@7 e4@6 d4@5 ~",
I: "[[d4,d5,d6]@23 ~ c#5@11 ~ [b3,b4,b5]@11 ~ [a4,a5]@47 [d4,d5]@13 [c#4,c#5]@12 [b3,b4]@12 [a3,a4]@11 ~@6 b5@2 ~ a5@3 g5@3 a5@3 f#5@3 g5@3 e5@3 f#5@3 ~ a5@23 f#5@6 d5@7 b4@76 ~ a3@6 e4@6 f#4@7 e4@6 a3@22 ~@2, ~@23 [c#4,c#6]@13 ~@11 a3@48 ~@48 [b3,b4]@48 ~@145]/7", // D B A D C# B A C# …
J: "[[d4,d5,d6]@23 ~ c#5@11 ~ [b3,b4,b5]@11 ~@49 d5@12 ~@36, ~@23 [c#4,c#6]@13 ~@11 a3@48 d4@13 ~@36, ~@4 [a4,a5]@5 ~@3]/3", // D B C# A
})).s("gm_string_ensemble_1").gain(0.19).pan(0.4)
// chords · electric guitar clean · "CLEAN GT"
const electric_guitar_clean = note("<~@12 A B C D E F G H@2 ~@15 A B C D E F G H@2 ~@46>".pickRestart({
A: "~@12 [d4,f4,a4]@10 ~@14 [d4,f4,a4]@11 ~", B: "~@12 [d4,f4,a4]@11 ~@13 [a#3,d4,g4]@12",
C: "~@12 [a#3,d4,g4]@12 ~@12 [c#4,e4,a4]@11 ~", D: "~@12 [c#4,e4,a4]@11 ~@13 [d4,f4,a4]@10 ~@2",
E: "~@6 [d4,f4,a4]@5 ~@7 [d4,f4,a4]@5 ~", F: "~@12 [d4,f4,a4]@11 ~@13 [d4,g4,a#4]@10 ~@2",
G: "~@12 [d4,g4,a#4]@11 ~@13 [d4,f4,a4]@11 ~", // Gm Dm
H: "[~@3 [c#4,e4,a4]@2 ~ a4@18, ~@20 a3@75 ~, ~@21 d4@74 ~, ~@23 f#4@73]/2", // A
})).s("gm_electric_guitar_clean").gain(0.15).pan(0.6)
// chords · sitar
const sitar = note("<~@20 A ~@23 A ~@15 B C@3 ~ D@3 E@4 ~ B C@3 ~ F@3 G@4 H I J B K L>".pickRestart({
A: "~@7 [g4,g5] [a4,a5]@2 [f#4,f#5]@2 [e4,e5]@2 [f#4,f#5]@2, ~ [a3,a4]@7 ~@8, ~ [d4,d5] [f#4,f#5]!2 ~@4, ~@3 [e4,e5]@5 ~@8, ~@5 [d4,d5]@3 ~@8", // G A F# E F# A D F# …
B: "[f#5,a5,d6]@22 ~@2 [e5,a5,c#6]@10 ~@2 [d5,g5,b5]@8 ~ [d5,f#5,a5] ~@2", // D A G D
C: "[[d5,f#5,a5]@24 ~@6 [f#5,a5,d6] ~@2 [f#5,a5,d6]@8 ~ [e5,a5,c#6] ~@2 [e5,a5,c#6]@8 ~ [d5,g5,b5] ~@2 [d5,g5,b5]@8 ~ [d5,f#5,a5] ~@2 [d5,f#5,a5]@8 ~ [b4,e5,g5] ~@2 [b4,e5,g5]@8 ~ [d5,f#5]@2 ~ [b4,e5,g5]@49 ~@2, ~@90 a4 ~@53]/3", // D A G D Em D Em
D: "[~@30 [e5,a5,c#6] ~@2 [e5,a5,c#6]@8 ~ [d5,g5,b5] ~@2 [d5,g5,b5]@7 ~@2 [d5,f#5,a5] ~@2 [d5,f#5,a5]@7 ~@2 [b4,e5,g5] ~@2 [b4,e5,g5]@8 ~ [a4,d5,f#5] ~@2 [a4,d5,f#5]@7 ~@2 [a4,c#5,e5]@2 ~ [d5,f#5,a5]@27 ~@6 [a4,d5] ~@5 [a4,f#5]@7 ~@2 [g4,c5,e5] ~@2, ~@126 f#5@2 ~@3 d5@6 ~@7]/3", // A G D Em D A D D5 …
E: "[[g4,c5,e5]@25 ~@5 [a4,d5,f#5] ~@2 [a4,d5,f#5]@7 ~@2 [g4,c5,e5] ~ [g4,c5,e5]@12 f#5 ~ e5 ~ d5@18 [g5,b5,d6] ~@2 [g5,b5,d6]@7 ~@2 [e5,a5,c#6] ~@2 [e5,a5,c#6]@8 ~ [e5,g5,b5] ~@2 [e5,g5,b5]@7 ~@2 [d5,f#5,a5] ~@2 [d5,f#5,a5]@7 ~@2 [b4,e5,g5] ~@2 [b4,e5,g5]@8 ~ [a4,f#5]@2 ~ [d5,f#5,a5]@32 ~@19, ~@60 b4@29 ~@49 d5 ~@53, ~@5 g4@2 ~@9]/4", // C D C G A Em D Em …
F: "[~@30 [e5,a5,c#6] ~@2 [e5,a5,c#6]@8 ~ [d5,g5,b5] ~@2 [d5,g5,b5]@7 ~@2 [d5,f#5,a5] ~@2 [d5,f#5,a5]@7 ~@2 [b4,e5,g5] ~@2 [b4,e5,g5]@8 ~ [a4,d5,f#5] ~@2 [a4,d5,f#5]@7 ~@2 [a4,c#5,e5]@2 ~ [d5,f#5,a5]@32 ~ [a4,d5] ~@5 [a4,f#5]@7 ~@2 [g4,c5,e5] ~@2, ~@126 f#5@2 ~@3 d5@6 ~@7]/3", // A G D Em D A D D5 …
G: "[[g4,c5,e5]@28 ~@2 [a4,d5,f#5] ~@2 [a4,d5,f#5]@7 ~@2 [g4,c5,e5] ~ [g4,c5,e5]@12 f#5 ~ e5 ~@19 [g5,b5,d6] ~@2 [g5,b5,d6]@7 ~@2 [e5,a5,c#6] ~@2 [e5,a5,c#6]@8 ~ [e5,g5,b5] ~@2 [e5,g5,b5]@7 ~@2 [d5,f#5,a5] ~@2 [d5,f#5,a5]@7 ~@2 [b4,e5,g5] ~@2 [b4,e5,g5]@8 ~ [a4,d5,f#5]@2 ~ [d5,f#5,a5]@32 ~ [a4,a5]@3 ~@3 [g4,g5]@9 f#5@2 ~, ~@60 [b4,d5]@29 ~@103, ~@60 g4@24 ~@105 f#4 ~@2]/4", // C D C G A Em D Em …
H: "[g4,g5]@11 ~ [g4,g5]@16 ~@2 [g4,g5]@4 ~@2 [g4,g5]@9 [f#4,f#5] ~@2", // G F#
I: "[f#4,f#5]@29 ~ [a4,a5]@5 ~ [d4,d5]@5 ~ [f#4,f#5]@5 ~", // F# A D F#
J: "[e4,e5]@11 ~ [e4,e5]@5 ~ [d4,d5]@6 [f#4,f#5]@6 [e4,e5]@15 d5@2 ~, ~@45 d4 ~@2", // E D F# E
K: "[d5,f#5,a5]@24 ~@21 [d5,d6] ~@2", L: "[d5,d6]@17 ~@31",
})).s("gm_sitar").gain(0.12).pan(0.7)
// other · koto
const koto = note("<~@36 A B C D E B C F ~@24 G H I J K ~@11 L M N O P Q R>".pickRestart({
A: "d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 e5 [e5,e6] e6 e5 [e5,e6] e6 e5 [e5,e6] e6 e5 [e5,e6] e6", // D E
B: "f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 f5 [f5,f6] f6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6", // F G
C: "g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 g5 [g5,g6] g6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6", // G A
D: "a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a#5 [a#5,a#6] a#6 a#5 [a#5,a#6] a#6 a#5 [a#5,a#6] a#6 a#5 [a#5,a#6] a#6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6", // A A# A
E: "a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6", // A
F: "a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 a5 [a5,a6] a6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6 d5 [d5,d6] d6", // A D
G: "c5 ~ c6 ~ [c5,c6] ~ c5 c6 c5 ~ [c5,c6] ~ c6 c5 c6 c5 c6 ~ c6 c5 c6 ~ [c5,c6] c5 ~ [c5,c6] ~ c6 ~ c6 c5 c6 c5 c6 c5 c6 ~@3 c5 c6 c5 c6 c5 c6 ~@3", // C
H: "b4 b5 ~ b4 b5 b4 ~ b5 b4 b5 b4 b5 ~ b5 b4 ~ b5 b4 b5 b4 b5 ~ b4 b5 ~ b5 b4 ~ [b4,b5] ~ b5 b4 b5 b4 b5 ~ b4 [b4,b5] ~ b5 b4 b5 ~@5 e5", // B
I: "~ e6 ~ e5 e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~ e6 ~ e5 e6 ~ e5 e6 ~ e5 e6 ~ e5 e6 ~ e5 e6 ~",
J: "f#5 f#6 ~ f#5 f#6 ~ f#5 f#6 ~ f#5 f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 f#6 ~ f#5 f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~@2 f#6 g6 ~ f#6 ~ e6 ~ f#6 ~ e6 ~ d6 ~ e6 ~ d6 ~",
K: "b5 ~@11 g6 ~@11 a#5 ~@11 g6 ~@11", L: "~@30 a5 a6 a5 ~ a6 a5 ~ g6 g5 ~ g6 f#5 ~ f#6 f#5 ~ f#6 ~",
M: "g5 g6 g5 ~ g6 g5 ~ g6 g5 g6 g5 ~ g6 g5 ~ g6 ~ g5 g6 g5 ~ g6 g5 ~ g6 g5 g6 ~ g5 g6 ~ g5 g6 ~ g5 g6 ~ g5 g6 ~ g5 g6 ~ g5 ~ f#6 f#5 ~",
N: "f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ f#6 f#5 f#6 ~ f#5 ~ f#6 f#5 ~ f#6 a5 ~ a6 a5 ~ d6 d5 ~ d6 d5 ~ f#6 f#5 ~ f#6 f#5 ~",
O: "f#6 e5 ~ e6 e5 ~ e6 e5 ~ e6 e5 ~@2 e6 e5 ~ e6 e5 ~ d6 d5 ~ d6 f#5 ~ f#6 f#5 ~ f#6 f#5 ~ e6 e5 ~ e6 e5 ~ e6 e5 e6 ~ d6 ~ d5 d6 ~ d5 d6",
P: "~ d5 ~ d6 d5 d6 ~ d5 d6 ~ d5 d6 ~ d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 ~ d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ [d5,d6] ~ d6 d5 ~", // D
Q: "d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~ d6 d5 ~",
R: "~ d6 ~@46",
})).s("gm_koto").gain(0.07).pan(0.3)
// other · violin · "VIOLINO"
const violin = note("<~@37 A@3 B C D ~@41 E F G H I J@2>".pickRestart({
A: "[~@30 g4@6 f4@6 e4@3 a#3@27 a3@41 ~@10 a3@3 d4@3 e4@2 f4@4 g4@2 f4 e4@3 d4@2 c#5]/3", B: "d5 ~@5 d5@14 ~@28",
C: "~@3 a4 f#4 g4 a4 a#4", D: "d4@23 ~@25", E: "~@30 a4@6 g4@9 f#4@2 ~", F: "g4@11 ~ g4@17 ~ g4@5 ~ g4@9 f#4@2 ~",
G: "f#4@5 a4 d4 f#4", H: "e4@11 ~ e4@9 d4@2 ~ f#4@6 e4@11 ~ d4@6", I: "d5@24 c#5@9 b4 ~@2 b4@9 a4 ~@2",
J: "[a4@24 f#4@2 a4@2 f#4@2 e4@2 ~ d4@2 ~ a3@2 ~ f#3@3 e3@3 d3@19 ~@32]/2",
})).s("gm_violin").gain(0.17).pan(0.3)
// other · accordion
const accordion = note("<~@4 A B C D E F G H ~@21 I J K ~@55>".pickRestart({
A: "~@33 a3@2 ~ d4@6 e4@6", B: "f4@6 a4@4 g4@5 d4", C: "a#3@45 ~ a#3@2, ~@45 c4@2 ~",
D: "a3@35 ~ a3@3 d4@3 e4@3 f4@3", E: "g4@6 a4@7 d5@5 e5@6 ~ f5@17 g5@6",
F: "a5@5 f5@3 d5@4 c5@12 a#4@18 a4@2 a#4@2 a4@2", G: "g4@8 a4@6 d5 f5", H: "a5@47 ~",
I: "b4@22 ~@14 e5@11 ~, d5@35 ~@13, ~ a#4", J: "[a4,f#5]@15 ~", K: "[b4,d5]@24 [a4,c#5]@23 ~, [e4,g4]@47 ~",
})).s("gm_accordion").gain(0.12).pan(0.6)
// drums · kick
const kick = s("bd").struct(`<
~@12 A@3 B A@4 C A@7 C A@3 B A@2 ~ A@3 B A@4 C A@7 C A@3 B A@2 C A@7 C A@3 B A@11 B@2 A@2 C A@2 ~
>`.pickRestart({
A: "x!2", B: "x ~@3 x ~@2 x", C: "x",
})).gain(0.27)
// drums · snare
const snare = s("sd").struct("<~@12 A@7 B ~ A@7 B A@6 ~ A@7 B ~ A@7 B A@6 B A@7 B A@19 B A@2 ~>".pickRestart({
A: "~ x ~ x", B: "~ x ~@2",
})).gain(0.27)
// drums · low tom
const low_tom = s("lt").struct("<~@19 A ~@8 B ~@14 A ~@8 B ~@6 C ~@7 B ~@19 C ~@3>".pickRestart({
A: "~@15 x", B: "~@7 x", C: "~@6 x ~@5 x!3 ~",
})).gain(0.24)
// … 71 more lines
More by Zero
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.