0:00/0:00
// C'Est La Vie — B*Witched
// 109 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 6 "Remixed" electric guitar clean (copy of ch 11 "Remixed" acoustic guitar steel)
// note: Full arrangement: all 80 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(109/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 · electric bass finger · "Remixed"
const bass = note(`<
~@5 A@8 B@4 C@5 D E F G H I H I H I H I H J K J L M N M O P Q R@2 S@3 T@3 M N M N M ~ U V U V U V U V U V U W X Y X Y
X Y X Y Z
>`.pickRestart({
A: "[~@31 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1]/8",
B: "[~@11 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1]/4",
C: "[~@11 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 e1@23 ~ e1@6 ~@2 a1@24 a1@7 ~ d3@23 ~ d3@7 ~ g2@15 ~ g2@3 ~ g2@4 f#2@4 e2@4 ~]/5",
D: "e1@23 ~ e3@6 ~@2", E: "a2@12 ~@2 a1 a#1", F: "c2@9 ~@3 c2@2 ~@2 c2@9 ~@3 g1@2 ~@2",
G: "c2@2 ~@2 c2 ~@3 c2@2 ~@2 c2@2 ~@2 c2@2 ~@2 d1@4 e1@4 g1@3 ~", H: "g1@4 ~@8 c2@3 ~@13 c2@2 ~@2",
I: "g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2", J: "~ g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~",
K: "~ g1@4 ~@8 c2@3 ~@13 c2@2 ~", L: "~ g1@4 ~@9 c2@3 ~@13 c2@2", M: "~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2",
N: "~@2 g1@4 ~@8 c2@3 ~@13 c2@2", O: "~@2 e1@23 ~ e1@6", P: "~ a1@12 a1@3", Q: "~@2 d3@23 ~ d3@6",
R: "[~@2 g2@15 ~ g2@2 ~@2 g2@4 f#2@4 e2@4 e1@23 ~ e3@6]/2",
S: "[~@2 a2@24 ~@5 a1@2 a#1@2 c2@9 ~@3 c2@2 ~@2 c2@9 ~@3 g1@2 ~@31]/3",
T: "[~@3 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@12 c2@2]/3",
U: "~@2 a1@4 ~@8 d2@3 ~@13 d2@2", V: "~@2 a1@3 ~@9 e2@3 ~@5 e2@2 ~@2 e2@2 ~@2 e2@2",
W: "~@2 a1@3 ~@9 e2@3 ~@4 e2@2 ~@2 e2@2 ~@2 e2@2 ~", X: "~ a1@4 ~@8 d2@3 ~@13 d2@2 ~",
Y: "~ a1@3 ~@9 e2@3 ~@5 e2@2 ~@2 e2@2 ~@2 e2@2 ~", Z: "~ a1@4 ~@27",
})).s("gm_electric_bass_finger").gain(0.59)
// chords · string ensemble 1 · "Remixed"
const string_ensemble_1 = note("<~ A@8 ~@8 B@5 C D E F G@8 ~@8 H I J@5 K L@8 ~@22>".pickRestart({
A: "[~@31 g3@128 g3@97]/8",
B: "[~@31 [g3,b3,d4]@32 [e3,a3,c#4]@31 ~ [g3,a3,a4]@32 [g3,b3]@31 ~@2, ~@31 g4@62 ~@2 d4@63 ~@2]/5", C: "[g3,b3,d4]",
D: "[e3,a3,c#4]@31 ~", E: "[d#4,g4]@9 ~@3 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@10 ~@2 [d#4,g4,a#4]@2 ~@2, a#4@3 ~@5",
F: "[d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d4,g4,b4]@4", // D# G
G: "[g5,g6]/8", H: "~ [g3,b3,d4]@15", I: "~ [e3,a3,c#4]@15",
J: "[~@2 [g3,a3,a4]@32 [g3,b3]@31 ~ [g3,b3,d4]@32 [e3,a3,c#4]@31 ~@2 [d#4,g4]@9 ~@3 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@11 ~ [d#4,g4,a#4], ~@2 d4@63 ~ g4@63 ~@2 a#4@12 ~@17]/5", // Gsus2 G A D#
K: "~@3 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d4,g4,b4]", // D# G
L: "[~@3 [g5,g6]@253]/8", // G
})).s("gm_string_ensemble_1").gain(0.21)
// chords · string ensemble 1 · "Remixed" · soft notes
const string_ensemble_1_soft = note("<~@3 A@7 ~@10 B@2 C@2 ~@18 D@2 ~ E ~@34>".pickRestart({
A: "[~@31 [g5,g6]@192 ~]/7", B: "[~@31 b4@17 ~@16]/2", C: "[g4@63 ~]/2", D: "[~ g4@31]/2", E: "~@2 b4@17 ~@13",
})).s("gm_string_ensemble_1").gain(0.12)
// bass · slap bass 1 · "Remixed"
const bass_2 = note("<~@58 A ~@8 B@8 ~@5>".pickRestart({
A: "~@2 a#1@7 ~ b1@8 c2@7 ~ c#2@4 d2@2", B: "[~ [a5,a6]@127]/8",
})).s("gm_slap_bass_1").gain(0.61)
// chords · brass section · "Remixed"
const brass_section = note("<~@10 A@2 ~@2 B@2 ~ C ~@16 D E ~@2 F G ~ H ~@38>".pickRestart({
A: "[~@27 g5 ~@3 g5@6 [e5,f5] d5@5 ~@8 c5@2 ~@11, ~@38 d#5 ~@25]/2", // Fmaj7
B: "[~@27 g5 ~@3 g5@5 f5 e5 d5@5 ~@8 c5@2 ~@11, ~@38 d#5 ~@25]/2", C: "~@19 c5@3 ~@10", D: "~@28 g5 ~@3",
E: "g5@6 f5 [d#5,e5] d5@5 ~@8 c5@2 ~@9", F: "~@30 g5 ~", G: "~@2 g5@5 f5 e5 d5@5 ~@8 c5@2 ~@8, ~@9 d#5 ~@22",
H: "~@22 c5@3 ~@7",
})).s("gm_brass_section").gain(0.31).pan(0.4)
// other · alto sax · "Remixed"
const alto_sax = note(`<
~@58
[~@6 g4@6 f#4 ~ g4@2 f#4@2 g4@4 f#4@2 ~@5 d4@2 ~, ~@24 g4@7 ~, ~@27 f#4@2 ~@3, ~@14 e4 ~]
~@21
>`).s("gm_alto_sax").gain(0.4)
// chords · synth brass 1 · "Remixed"
const synth_brass_1 = note("<~@10 A@2 ~@2 B@2 ~ C@5 D E F G ~@8 H I ~@2 J K ~ L M N@2 O M N P Q@2 ~@29>".pickRestart({
A: "[~@27 g4 ~@3 g4@6 [e4,f4] d4@5 ~@8 c4@2 ~@11, ~@38 d#4 ~@25]/2", // Fmaj7
B: "[~@27 g4 ~@3 g4@5 f4 e4 d4@5 ~@8 c4@2 ~@11, ~@38 d#4 ~@25]/2",
C: "[~@19 c5@3 ~@9 [e4,b4]@31 ~ [e4,a4]@31 ~ [e4,a4]@31 ~ [d4,g4]@30 ~@3]/5", D: "[e4,b4]@31 ~", E: "[e4,a4]@31 ~",
F: "[g4,a#4]@5 ~@11 [g4,a#4]@4 ~@12", // Gm
G: "[g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,b4]@3 ~", // Gm G
H: "~@28 g4 ~@3", I: "g4@6 f4 [d#4,e4] d4@5 ~@8 c4@2 ~@9", J: "~@30 g4 ~",
K: "~@2 g4@5 f4 e4 d4@5 ~@8 c4@2 ~@8, ~@9 d#4 ~@22", L: "~@22 c5@3 ~@7", M: "~ [e4,b4]@15", N: "~ [e4,a4]@15",
O: "~ [d4,g4]@15", P: "~@3 [g4,a#4]@5 ~@11 [g4,a#4]@4 ~@9",
Q: "[~@3 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,a#4]@2 ~@2 [g4,b4]@5 ~@28]/2", // Gm G
})).s("gm_synth_brass_1").gain(0.13).pan(0.8)
// chords · acoustic guitar steel · "Remixed"
const acoustic_guitar_steel = note(`<
~ A@4 B@4 C ~@8 D@4 E F G H@2 I J K J I J L ~@8 M N O P Q R S T@2 U V W X Y Z W AA AB AC AD AE AF AC AD AE AF AC AD AG
AH AI AH AJ AH AI AH AK AL
>`.pickRestart({
A: "[~@31 [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@5 [b3,d4,f#4] ~@3 [b3,d4,f#4]@2 [b3,d4,f#4]@2 [b3,d4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,f#4]@4 [b3,d4,f#4] ~ [b3,d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~@2]/4", // G C Gsus4 G Bm G C Gsus4
B: "[~@3 [d4,g4,b4]@2 [d4,g4,b4] ~@5 [d4,f#4,a4]@2 [d4,f#4,a4] ~@3 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,a4] ~ [d4,f#4,a4]@2 [d4,f#4,a4]@2 [d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@5 [a3,d4,f#4] ~@3 [a3,d4,f#4]@2 [a3,d4,f#4] ~ [a3,d4,f#4] ~ [a3,d4,f#4] ~ [c4,e4,g4]@4 [a3,d4,f#4] ~ [a3,d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~@2]/4", // G D D7 D G C Gsus4 G …
C: "~@3 [d4,g4,b4]@2 [d4,g4,b4] ~@5 [d4,f#4,a4]@2 [d4,f#4,a4] ~@3 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,a4] ~ [d4,f#4,a4]@2 [d4,f#4,a4]@2 [d4,f#4] ~@2", // G D D7 D
D: "[~@7 [e4,g4,b4]@6 [e4,g4,b4] ~@3 [e4,g4,b4] ~ [e4,g4,b4]@3 ~ [e4,g4,b4]@4 [e4,g4,b4] ~ [e4,g4,b4] ~ [c#4,e4,a4]@8 [c#4,e4,a4]@6 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~ [c#4,e4,a4]@4 [c#4,e4,a4]@4 [c#4,e4,a4] ~ [c#4,e4,a4] ~ [e4,g4,b4]@7 ~ [e4,g4,a4]@6 [e4,g4,a4] ~@3 [e4,g4,a4] ~ [e4,g4,a4]@3 ~ [e4,a4]@6 ~@2 [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~ [d4,g4,b4]@4 [d4,g4,b4]@2 [a3,f#4,a4] ~@3 [a3,f#4,a4] ~ [a3,f#4,a4] ~@3 [a3,f#4,a4]@4 ~ [a3,f#4,a4]!2 ~@2]/4", // Em A Em A7 A5 G D
E: "~@8 [e4,g4,b4]@6 [e4,g4,b4] ~@3 [e4,g4,b4] ~ [e4,g4,b4]@3 ~ [e4,g4,b4]@4 [e4,g4,b4] ~ [e4,g4,b4] ~", // Em
F: "[c#4,e4,a4]@8 [c#4,e4,a4]@6 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~ [c#4,e4,a4]@4 [c#4,e4,a4]@4 [c#4,e4,a4] ~ [c#4,e4,a4] ~", // A
G: "[d#4,g4,a#4]@4 [d#4,g4,a#4]@2 [d#4,g4,a#4] ~@5 [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4]@4 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~ [d#4,g4,a#4] ~", // D#
H: "[[d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d4,g4,b4]@7 ~ [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~]/2", // D# G C Gsus4
I: "[d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@5 [a3,d4,f#4] ~@3 [a3,d4,f#4]@2 [a3,d4,f#4] ~ [a3,d4,f#4] ~ [a3,d4,f#4] ~ [c4,e4,g4]@4 [a3,d4,f#4] ~ [a3,d4,f#4] ~", // G D C D
J: "[d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~ [g4,c5,d5] ~", // G C Gsus4
K: "~@4 [d4,g4,b4]@2 [d4,g4,b4] ~@5 [d4,f#4,a4]@2 [d4,f#4,a4] ~@3 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,a4] ~ [d4,f#4,a4]@2 [d4,f#4,a4]@2 [d4,f#4] ~", // G D D7 D
L: "~@4 [d4,g4,b4]@2 [d4,g4,b4] ~@5 [d4,f#4,a4]@2 [d4,f#4,a4] ~@3 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,a4]@2 [d4,f#4,a4]@2 [d4,f#4,a4]@2 [d4,f#4] ~", // G D D7 D
M: "~@10 [e4,g4,b4]@6 [e4,g4,b4] ~@3 [e4,g4,b4] ~ [e4,g4,b4]@3 ~ [e4,g4,b4]@4 [e4,g4,b4] ~", // Em
N: "[e4,g4,b4] ~ [c#4,e4,a4]@8 [c#4,e4,a4]@6 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~ [c#4,e4,a4]@4 [c#4,e4,a4]@4 [c#4,e4,a4] ~", // Em A
O: "[c#4,e4,a4] ~ [e4,g4,b4]@7 ~ [e4,g4,a4]@6 [e4,g4,a4] ~@3 [e4,g4,a4] ~ [e4,g4,a4]@3 ~ [e4,a4]@6", // A Em A7 A5
P: "~@2 [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~ [d4,g4,b4]@4 [d4,g4,b4]@2 [a3,f#4,a4] ~@3 [a3,f#4,a4] ~ [a3,f#4,a4] ~@3 [a3,f#4,a4]@4 [a3,f#4,a4] ~", // G D
Q: "[a3,f#4,a4] ~@9 [e4,g4,b4]@6 [e4,g4,b4] ~@3 [e4,g4,b4] ~ [e4,g4,b4]@3 ~ [e4,g4,b4]@4 [e4,g4,b4] ~", // D Em
R: "[e4,g4,b4] ~ [c#4,e4,a4]@8 [c#4,e4,a4]@6 [c#4,e4,a4] ~@4 [c#4,e4,a4] ~ [c#4,e4,a4]@4 [c#4,e4,a4]@4 [c#4,e4,a4]", // Em A
S: "~ [c#4,e4,a4] ~ [d#4,g4,a#4]@4 [d#4,g4,a#4]@2 [d#4,g4,a#4] ~@5 [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4] ~ [d#4,g4,a#4]@4 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]", // A D#
T: "[~ [d#4,g4,a#4] ~ [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4]@2 ~@2 [d4,g4,b4]@8 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5]]/2", // D# G C Gsus4
U: "~ [g4,c5,d5] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@5 [a3,d4,f#4] ~@3 [a3,d4,f#4]@2 [a3,d4,f#4] ~ [a3,d4,f#4] ~ [a3,d4,f#4] ~ [c4,e4,g4]@4 [a3,d4,f#4]", // Gsus4 G D C D
V: "~ [a3,d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]!2 ~@2 [e4,g4,c5]@2 [e4,g4,c5] [g4,c5,e5]@4 [g4,c5,d5] ~", // D G C Gsus4
W: "[g4,c5,d5] ~@5 [d4,g4,b4]@2 [d4,g4,b4] ~@5 [d4,f#4,a4]@2 [d4,f#4,a4] ~@3 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,c5]@2 [d4,f#4,a4] ~ [d4,f#4,a4]@2 [d4,f#4,a4]@2", // Gsus4 G D D7 D
X: "[d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~", // D G C Gsus4
Y: "[g4,c5,d5] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@5 [a3,d4,f#4] ~@3 [a3,d4,f#4]@2 [a3,d4,f#4] ~ [a3,d4,f#4] ~ [a3,d4,f#4] ~ [c4,e4,g4]@4 [a3,d4,f#4] ~", // Gsus4 G D C D
Z: "[a3,d4,f#4] ~ [d4,g4,b4]@4 [d4,g4,b4] ~ [d4,g4,b4] ~@3 [d4,g4,b4]@2 [e4,g4,c5] ~@3 [e4,g4,c5]@2 [e4,g4,c5] ~ [e4,g4,c5]@2 [e4,g4,c5] ~ [g4,c5,e5]@4 [g4,c5,d5] ~", // D G C Gsus4
AA: "[d4,f#4] ~@31", // D
AB: "~@2 [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@3 [e4,a4,c#5]@2 [f#4,a4,d5] ~@3 [f#4,a4,d5]@2 [f#4,a4,d5] ~ [f#4,a4,d5]@2 [f#4,a4,d5] ~ [a4,d5,f#5]@4 [a4,d5,e5] ~", // A D Asus4
AC: "[a4,d5,e5] ~ [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@5 [b3,e4,g#4] ~@3 [b3,e4,g#4]@2 [b3,e4,g#4] ~ [b3,e4,g#4] ~ [b3,e4,g#4] ~ [d4,f#4,a4]@4 [b3,e4,g#4] ~", // Asus4 A E D E
AD: "[b3,e4,g#4] ~ [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@3 [e4,a4,c#5]@2 [f#4,a4,d5] ~@3 [f#4,a4,d5]@2 [f#4,a4,d5] ~ [f#4,a4,d5]@2 [f#4,a4,d5] ~ [a4,d5,f#5]@4 [a4,d5,e5] ~", // E A D Asus4
AE: "[a4,d5,e5] ~@5 [e4,a4,c#5]@2 [e4,a4,c#5] ~@5 [e4,g#4,b4]@2 [e4,g#4,b4] ~@3 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,b4] ~ [e4,g#4,b4]@2 [e4,g#4,b4]@2", // Asus4 A E E7 E
AF: "[e4,g#4] ~ [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@3 [e4,a4,c#5]@2 [f#4,a4,d5] ~@3 [f#4,a4,d5]@2 [f#4,a4,d5] ~ [f#4,a4,d5]@2 [f#4,a4,d5] ~ [a4,d5,f#5]@4 [a4,d5,e5] ~", // E A D Asus4
AG: "[a4,d5,e5] ~@6 c#5 [e4,a4] ~@4 [e4,g#4,b4]@2 [e4,g#4,b4] ~@3 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,b4] ~ [e4,g#4,b4]@2 [e4,g#4,b4]@2 [e4,g#4], ~@3 [e4,a4,c#5] ~@12", // Asus4 A5 E E7 E A
AH: "~ [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@3 [e4,a4,c#5]@2 [f#4,a4,d5] ~@3 [f#4,a4,d5]@2 [f#4,a4,d5] ~ [f#4,a4,d5]@2 [f#4,a4,d5] ~ [a4,d5,f#5]@4 [a4,d5,e5] ~ [a4,d5,e5]", // A D Asus4
AI: "~ [e4,a4,c#5]@4 [e4,a4,c#5] ~ [e4,a4,c#5] ~@5 [b3,e4,g#4] ~@3 [b3,e4,g#4]@2 [b3,e4,g#4] ~ [b3,e4,g#4] ~ [b3,e4,g#4] ~ [d4,f#4,a4]@4 [b3,e4,g#4] ~ [b3,e4,g#4]", // A E D E
AJ: "~@5 [e4,a4,c#5]@2 [e4,a4,c#5] ~@5 [e4,g#4,b4]@2 [e4,g#4,b4] ~@3 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,b4]@2 [e4,g#4,b4]@2 [e4,g#4,b4]@2 [e4,g#4]", // A E E7 E
AK: "~@5 [e4,a4,c#5]@2 [e4,a4,c#5] ~@5 [e4,g#4,b4]@2 [e4,g#4,b4] ~@3 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,d5]@2 [e4,g#4,b4] ~ [e4,g#4,b4]@2 [e4,g#4,b4]@2 [e4,g#4]", // A E E7 E
AL: "~ [e4,a4,c#5]@4 ~@27", // A
})).s("gm_acoustic_guitar_steel").gain(0.22)
// other · lead 2 sawtooth · "Remixed"
const lead_2_sawtooth = note(`<
~@5 A ~@3 B ~@3 C ~@3 B ~@3 B ~@7 B ~@3 B ~@3 D ~@3 E ~@3 E ~@7 E ~@3 E ~@22
>`.pickRestart({
A: "~@7 c6@6 ~@2 c6@6 ~@2 c6@8 ~", B: "~@11 c6@4 ~", C: "~@21 c6@8 ~@3", D: "~@23 c6@8 ~", E: "~@3 c6",
})).s("gm_lead_2_sawtooth").gain(0.01)
// other · recorder · "Remixed"
const recorder = note("<~@59 A B C D E B C D F ~@7 G@4 ~>".pickRestart({
A: "~@2 a6@2 [a6,b6] g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 c#6 ~ d6 ~ f#6@2 d6 ~ g#6@2 d6 ~ e6@2", // Asus2
B: "g#6@2 a6@2 [a6,b6] g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 b5 ~ a5 ~ g#5@2 a5 ~ b5@2 c#6 ~ d6@2", // Asus2
C: "b5@2 a6@2 [a6,b6] g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 c#6 ~ d6 ~ f#6@2 d6 ~ g#6@2 d6 ~ e6@2", // Asus2
D: "g#6@2 a6@2 [a6,b6] g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 f#5 ~ g#5 ~ a5@2 b5 ~ c#6@2 a5 ~ b5@2", // Asus2
E: "e6@2 a6@2 [a6,b6] g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 c#6 ~ d6 ~ f#6@2 d6 ~ g#6@2 d6 ~ e6@2", F: "e6 ~@15",
G: "[~ a6@2 b6 a6 g#6 ~ b6@2 ~ a6@2 e6@2 c#6@2 a5@2 c#6 ~ d6 ~ f#6@2 d6 ~ g#6@2 d6 ~@2 g#6@2 a6@2 b6 a6 g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 b5 ~ a5 ~ g#5@2 a5 ~ b5@2 c#6 ~@2 b5@2 a6@2 b6 a6 g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 c#6 ~ d6 ~ f#6@2 d6 ~ g#6@2 d6 ~@2 g#6@2 a6@2 b6 a6 g#6 a6@2 b6 ~ a6@2 e6@2 c#6@2 a5@2 f#5 ~ g#5 ~ a5@2 b5 ~ c#6@2 a5 ~@3, ~@3 a6 ~@11 e6 ~@15 d6 ~@15 e6 ~@16]/4",
})).s("gm_recorder").gain(0.36).pan(0.9)
// other · fiddle · "Remixed"
const fiddle = note(`<
~ A@8 B@7 C@2 ~@8 D E D E D E D F D G H G I J K L ~@8 M N M J O J K P ~ Q R S T U R S T V ~@7 W@4 ~
>`.pickRestart({
A: "[~@31 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4@2 ~@2 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3 b4@12 c5@3 ~@17 b4]/8",
B: "[~@11 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3 b4@12 c5@3 ~@17 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4@2 ~@2 b4]/7",
C: "[~@11 c5@3 ~@13 e5@2 ~@2 [b4,d5]@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@4]/2", D: "b4@12 c5@3 ~@17",
E: "b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~@3", F: "b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4@2 ~@2",
G: "~ b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4@2 ~", H: "~ b4@12 c5@3 ~@16", I: "~ b4@12 ~ c5@3 ~@15",
J: "~@2 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~", K: "~@2 b4@12 c5@3 ~@13 e5@2",
L: "~@2 [b4,d5]@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4@2", M: "~@3 b4@12 c5@3 ~@14", N: "~@3 b4@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4",
O: "~@2 b4@12 c5@3 ~@15", P: "~@2 [b4,d5]@12 a4@3 ~@5 a4 ~@3 a4 ~@3 a4 ~",
Q: "~@2 a5@2 [a5,b5] g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 c#5 ~ d5 ~ f#5@2 d5 ~ g#5@2 d5 ~ e5@2", // Asus2
R: "g#5@2 a5@2 [a5,b5] g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 b4 ~ a4 ~ g#4@2 a4 ~ b4@2 c#5 ~ d5@2", // Asus2
S: "b4@2 a5@2 [a5,b5] g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 c#5 ~ d5 ~ f#5@2 d5 ~ g#5@2 d5 ~ e5@2", // Asus2
T: "g#5@2 a5@2 [a5,b5] g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 f#4 ~ g#4 ~ a4@2 b4 ~ c#5@2 a4 ~ b4@2", // Asus2
U: "e5@2 a5@2 [a5,b5] g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 c#5 ~ d5 ~ f#5@2 d5 ~ g#5@2 d5 ~ e5@2", V: "e5 ~@15",
W: "[~ a5@2 b5 a5 g#5 ~ b5@2 ~ a5@2 e5@2 c#5@2 a4@2 c#5 ~ d5 ~ f#5@2 d5 ~ g#5@2 d5 ~@2 g#5@2 a5@2 b5 a5 g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 b4 ~ a4 ~ g#4@2 a4 ~ b4@2 c#5 ~@2 b4@2 a5@2 b5 a5 g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 c#5 ~ d5 ~ f#5@2 d5 ~ g#5@2 d5 ~@2 g#5@2 a5@2 b5 a5 g#5 a5@2 b5 ~ a5@2 e5@2 c#5@2 a4@2 f#4 ~ g#4 ~ a4@2 b4 ~ c#5@2 a4 ~@3, ~@3 a5 ~@11 e5 ~@15 d5 ~@15 e5 ~@16]/4",
})).s("gm_fiddle").gain(0.2).pan(0.3)
// chords · piano · "Remixed"
const piano = note(`<
~@5 A@8 B@4 C@5 D E F G@2 H I H I H I H I J K J L M N M O P Q R@2 S@6 M N M N M ~ T U T U T U T V W X W Y Z AA Z AA AB
AC AD AE AF
>`.pickRestart({
A: "[~@31 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1]/8",
B: "[~@11 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1]/4",
C: "[~@11 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 e1@23 ~ e1@6 ~@2 a1@24 a1@7 ~ d3@23 ~ d3@7 ~ g2@15 ~ g2@3 ~ g2@4 f#2@4 e2@4 ~, ~@31 [b3,d4]@30 ~@2 [a3,c#4,e4]@30 ~@2 [c4,e4,g4]@30 ~@2 [b3,d4,g4]@30 ~@3]/5", // Bm A C G
D: "e1@23 ~ e3@6 ~@2, [b3,d4]@15 ~", E: "[a3,c#4,e4]@14 a1 a#1, a2@3 ~",
F: "c2@9 ~@3 c2@2 ~@2 c2@9 ~@3 g1@2 ~@2, [d#4,g4,a#4]@15 ~", // D#
G: "[[c2,d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [c2,d#4,g4,a#4]@2 ~@2 [c2,d#4,g4,a#4]@2 ~@2 [c2,d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 g1@3 ~ g1@4 ~@8 c2@3 ~@13 c2@2 ~@2, ~@4 c2 ~@15 d1@4 e1@4 [d4,g4,b4]@11 ~@25]/2", // Cm7 D# Cm7 D# G
H: "g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2", I: "g1@4 ~@8 c2@3 ~@13 c2@2 ~@2",
J: "~ g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~", K: "~ g1@4 ~@8 c2@3 ~@13 c2@2 ~", L: "~ g1@4 ~@9 c2@3 ~@13 c2@2",
M: "~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2", N: "~@2 g1@4 ~@8 c2@3 ~@13 c2@2",
O: "~@2 e1@23 ~ e1@6, ~ [b3,d4]@15", P: "~ a1@12 a1@3, ~ [a3,c#4,e4]@15", Q: "~@2 d3@23 ~ d3@6, ~ [c4,e4,g4]@15",
R: "[~@2 g2@15 ~ g2@2 ~@2 g2@4 f#2@4 e2@4 e1@23 ~ e3@6, ~ [b3,d4,g4]@15 ~ [b3,d4]@15]/2", // G Bm
S: "[~@2 [a3,c#4,e4]@29 a1@2 a#1@2 c2@9 ~@3 c2@2 ~@2 c2@9 ~@3 g1@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@2 [d#4,g4,a#4]@2 ~@6 g1@4 ~@8 c2@3 ~@13 c2@2 ~@2 g1@3 ~@9 d2@3 ~@5 d2@2 ~@2 d2@2 ~@2 d2@2 ~@2 g1@4 ~@8 c2@3 ~@12 c2@2, ~@2 a2@24 ~@9 [d#4,g4,a#4]@30 ~@30 [d4,g4,b4]@11 ~@86]/6", // A D# G
T: "~@2 [a1,e4,a4]@4 ~@8 [f#4,a4]@6 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 ~@2 [d2,f#4,a4]@2, ~@2 c#4@11 ~ d4@18, ~@14 d2@3 ~@15", // A5 F#m D
U: "~@2 [a1,e4]@4 ~@8 [b3,d4]@7 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@2, ~@2 c#4@11 ~ e2@3 ~@15", // A5 Bm E7
V: "~@2 [a1,e4]@4 ~@8 b3@8 [e2,b3,d4]@3 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@2, ~@2 c#4@11 ~ d4@5 ~@13, ~@14 e2@3 ~@15", // A5 E7
W: "~@2 a1@4 ~@8 d2@3 ~@13 d2@2", X: "~@2 a1@3 ~@9 e2@3 ~@5 e2@2 ~@2 e2@2 ~@2 e2@2",
Y: "~@2 a1@3 ~@9 e2@3 ~@4 e2@2 ~@2 e2@2 ~@2 e2@2 ~", Z: "~ a1@4 ~@8 d2@3 ~@13 d2@2 ~",
AA: "~ a1@3 ~@9 e2@3 ~@5 e2@2 ~@2 e2@2 ~@2 e2@2 ~",
AB: "~ [a1,e4,a4]@5 ~@7 [f#4,a4]@6 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 ~@2 [d2,f#4,a4]@2 ~, ~ c#4@11 ~ d4@18 ~, ~@13 d2@3 ~@16", // A5 F#m D
AC: "~ [a1,e4]@4 ~@8 [b3,d4]@7 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@3, ~ c#4@11 ~ e2@3 ~@16", // A5 Bm E7
AD: "~ [a1,e4,a4]@4 ~@8 [f#4,a4]@6 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 ~@2 [d2,f#4,a4]@2 ~, ~ c#4@11 ~ d4@18 ~, ~@13 d2@3 ~@16", // A5 F#m D
AE: "~ [a1,e4]@4 ~@8 b3@8 [e2,b3,d4]@3 ~ [e2,b3,d4]@3 ~ [e2,b3,d4]@3, ~ c#4@11 ~ d4@5 ~@14, ~@13 e2@3 ~@16", // A5 E7
AF: "~ a1@4 ~@27",
})).s("gm_piano").gain(0.28)
// chords · pad poly · "Remixed"
const pad_poly = note(`<
~@5 A@8 B@4 C@5 D E F G H I H I H I H J H K L K M N O P Q@2 R@2 Q@2 S@2 T@3 N O N O N ~ U V U V U V U V U V U W X Y X
Z X Y X Y AA
>`.pickRestart({
A: "[~@31 [g4,b4]@12 [e4,g4]@3 ~@5 [e4,g4]@2 ~@6 [a4,c5]@2 ~@2 [g4,b4]@11 ~ [f#4,a4]@3 ~@5 [f#4,a4]@2 ~@2 [e4,g4]@3 ~ [f#4,a4]@2 ~@2 [g4,b4]@12 [e4,g4]@3 ~@5 [e4,g4]@2 ~@6 [a4,c5]@2 ~@2 [g4,b4]@11 ~ [f#4,a4]@3 ~@5 [f#4,a4]@2 ~@2 [e4,g4]@3 ~ [f#4,a4]@2 ~@2 [g4,b4]@12 [e4,g4]@3 ~@5 [e4,g4]@2 ~@6 [a4,c5]@2 ~@2 [g4,b4]@11 ~ [f#4,a4]@3 ~@5 [f#4,a4]@2 ~@2 [e4,g4]@3 ~ [f#4,a4]@2 ~@2 [g4,b4]@12 [e4,g4]@3 ~@5 [e4,g4]@2 ~@6 [a4,c5]@2 ~@2 [g4,b4]]/8", // G Em Am G F#m Em F#m G …
// … 92 more lines
More by B*Witched
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.