0:00/0:00
// Poor Twisted Me — Metallica
// 120 bpm, 4/4, key G# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 122 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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, A@4 for four bars: edit a riff to change every repeat.
// chords · overdriven guitar · "James Hetfield"
const overdriven_guitar = note(`<
A B A C A D A E F G H I F J K@2 F L H I F J K@2 M ~ M ~ N O P Q R@2 M ~ M S T U V W X Y H I F J Z@2 M ~ M ~ N O AA AB
AC@2 M ~ M AD T U V W F AE AF AG AH@3 AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI
BJ BK BL BM BN BO BP BM BQ AO X BC BR BS X BT BU@2 M ~
>`.pickRestart({
A: "g#2@4 g#3 ~@19", B: "~@18 [f#3,b3,d#4]@4 a#3 ~", C: "~@2 [c#4,f4]@5 ~", D: "~@10 [f#3,b3,d#4] ~@7 a#3@4 ~@2",
E: "~@3 [f#3,b3,d#4]@8 ~ g#3@2 f#3@2 d#3@2 c#3@4 ~@2", F: "g#2@4 g#3@2 g#2@4 g#3 ~@7 g#2 ~@3 g#3 ~",
G: "~@6 g#2 ~@3 [f#3,b3,d#4]@2 ~@4 [b3,d#4] ~ [f#3,a#3]@3 ~@3", H: "g#2@4 g#3 ~ g#2@3 ~ g#3 ~@7 g#2 ~@3 g#3 ~",
I: "~@6 g#2 ~@3 [f#3,c#4]@8 b3@2 g#3 ~ f#3 ~", J: "~@6 g#2 ~@3 [g#3,c#4] ~@7 b3@4 g#3 ~, ~@9 f#3 ~@2",
K: "[g#2@3 ~ g#3 ~ g#2@3 ~ g#3 ~@5 g#2 ~ [b3,c#4]@2 ~ [g#3,b3,c#4]@6 ~ [b3,c#4] ~ [f#3,b3] ~@3 [f#3,b3]@8 g#3@4 ~@2]/2", // Bsus2 C#7 Bsus2 B5
L: "~@6 g#2 ~@2 [g#3,c#4]@9 b3@4 g#3 ~", M: "g#2@4 g#3@2 g#2@4 g#3 ~@13", N: "g#2@3 ~ g#3@2 g#2@3 ~ g#3@2 ~@12",
O: "~@18 [g#2,g#3]@5 ~", P: "f#2@2 f#3 f#2@2 f#3 ~@6", Q: "~@4 [g#3,b3] ~ [g#3,b3] ~@3 [g#3,c#4]@6 b3@6 g#3 ~",
R: "[f#2@4 f#3@2 f#2@3 ~ f#3@2 ~@4 b3 ~ [f#3,b3] ~@3 [f#3,b3]@6 c#4 ~ [g#3,c#4]@2 ~@2 [g#3,c#4]@6 b3@5 ~@3]/2", // B5 C#5
S: "~@18 c#5 ~@5", T: "[g#3,c#4]@4 ~@2 [g#3,c#4]@5 ~ [g#3,c#4]@5 ~ [g#3,c#4]@6, c#3@11 ~ c#3@12",
U: "[b2,f#3,b3]@4 ~@2 [b2,f#3,b3]@5 ~ [b2,f#3,b3]@5 ~ [b2,f#3,b3]@5 ~", // B5
V: "[f#2,c#3,f#3]@4 ~@2 [f#2,c#3,f#3]@5 ~ [f#2,c#3,f#3]@4 ~@2 [f#2,c#3,f#3]@4 ~@2", // F#5
W: "[d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~ [d#3,a#3,d#4] ~", // D#5
X: "g#2@4 g#3@2 g#2@4 g#3 ~@7 g#2@4 g#3@2", Y: "~@6 g#2@4 [g#3,c#4]@8 b3@4 g#3 ~",
Z: "[g#2@3 ~ g#3 ~ g#2@3 ~ g#3 ~@5 g#2 ~ [b3,c#4]@2 ~ [g#3,b3,c#4]@6 ~ [b3,c#4] ~ [f#3,a#3] ~@3 [f#3,b3]@8 g#3@4 ~@2]/2", // Bsus2 C#7 Bsus2 F# B5
AA: "f#2@4 f#3@2 f#2@4 f#3@3 ~@2 f#3 ~@8", AB: "~@4 [g#3,b3] ~ [g#3,b3] ~@3 [g#3,c#4]@5 b3@6 g#3 ~@2",
AC: "[f#2@4 f#3@2 f#2@3 ~ f#3@2 ~@4 b3 ~ [f#3,b3] ~@3 [f#3,b3]@6 c#4 ~ [g#3,c#4]@2 ~@2 [g#3,c#4]@5 b3@5 ~@4]/2", // B5 C#5
AD: "~@18 g#3 ~@5", AE: "~@6 g#2 ~@3 g#3 ~@5 g#3@2 f#3@2 ~@2 g#2 ~",
AF: "g#2 ~@3 g#3 ~ g#2@4 g#3@2 ~@4 g#3 ~ g#3@2 f#3@2 d#3@2",
AG: "g#3@2 f#3@2 d#3@2 g#3@2 f#3@2 d#3@2 g#3@2 f#3@2 d#3 ~ g#3 ~@5",
AH: "[f#2,c#3] ~@3 [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~@3 [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~", // F#5
AI: "[f#2,c#3]@2 ~@2 [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3] ~ [f#2,c#3]@2 ~@2 [f2,c3]@2 ~@2 [e2,b2]@2 ~@2", // F#5 F5 E5
AJ: "[d#2,a#2]@3 ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2]@2 ~@2 [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~", // D#5
AK: "[d#2,a#2]@2 ~@2 [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2] ~ [d#2,a#2]@4 ~@2 [d#2,a#2]@6", // D#5
AL: "[g#2,c#3]@5 ~ [g#2,c#3]@5 ~ [d#2,g#2,c#3]@5 ~ [d#2,g#2,c#3]@3 ~@3", // C#5 C#sus2
AM: "[f#2,b2]@5 ~ b2 b2@4 ~ b2 b2@5 [f#2,b2]@5 ~, ~@3 f#2@2 ~ f#2@2 ~@4", // B5
AN: "[f#2,c#3,f#3]@5 ~ [f#2,f#3]@5 ~ f#2 f#2@3 ~@2 [f#2,c#3,f#3]@4 ~@2, ~@2 c#3 ~ [c#3,f#3] ~@3", // F#5 F# F#5
AO: "[d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~", // D#5
AP: "[b3,d#4]@15 ~@3 g#3@4 f#3@2", AQ: "g#3@3 ~ b3@2 ~@18", AR: "[b3,d#4]@9 g#3@2 f#3", AS: "g#3@3 ~ f#3@2 ~@18",
AT: "c#4@2 d#4 ~ d#4 ~ d#4@6 c#4@2 d#4 ~ d#4 ~ d#4@5 ~", AU: "f#4@2 g#4 ~ g#4 ~ g#4@6 f#4@2 g#4 ~ g#4 ~ g#4@5 ~",
AV: "c#4@2 d#4 ~ d#4 ~ d#4 ~ d#4 ~ d#4 ~ c#4@2 d#4 ~ d#4 ~ d#4 ~ d#4 ~ d#4 ~",
AW: "f#4@2 g#4 ~ g#4 ~ g#4 ~ g#4 ~ g#4 ~ c#4@2 d#4 ~ d#4 ~ d#4@5 ~",
AX: "b2@4 b3@2 b2@4 b3@3 ~@3 [b3,d4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,e4,f#4] ~ [b3,d4,e4,f#4] ~", // Bm
AY: "[b3,d4,e4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,f#4] ~ [b3,d4,e4,f#4] ~ [b3,d4,e4,f#4] ~ [b3,d4,e4,f#4] ~ [b3,d4] ~ d4@5 ~, ~@6 b3 ~", // Bm
AZ: "b2@3 b3@2 ~ b2@4 b3@2 ~@12", BA: "~@6 d#3 ~", BB: "g#2@4 g#3@2 g#2@4 g#3@2 ~@6 g#2@4 g#3 ~",
BC: "~@6 g#2@3 ~ [g#3,b3]@2 ~@4 b3@2 g#3@5 ~", BD: "g#2@4 g#3@2 g#2@3 ~ g#3 ~@7 g#2@3 ~ g#3 ~",
BE: "~@2 [g#3,b3]@7 ~@3", // G#m
BF: "[f#2,c#3,f#3]@3 ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~@3 [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~", // F#5
BG: "[f#2,c#3,f#3] ~@3 [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~@3 [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~", // F#5
BH: "[f#2,c#3,f#3] ~@3 [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3]@3 ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~", // F#5
BI: "[f#2,c#3,f#3]@3 ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~ [f#2,c#3,f#3] ~@3 [f2,c3,f3]@2 ~@2 [e2,b2,e3]@2 ~@2", // F#5 F5 E5
BJ: "[a#2,d#3]@3 ~ [a#2,d#3] ~ [a#2,d#3] ~ [a#2,d#3] ~ [a#2,d#3] ~ [d#2,a#2,d#3]@3 ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~", // D#5
BK: "[d#2,a#2,d#3]@3 ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3]@3 ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~ [d#2,a#2,d#3] ~", // D#5
BL: "[g#2,c#3]@4 ~@2 [g#2,c#3]@5 ~ [g#2,c#3]@5 ~ [g#2,c#3]@4 ~@2", // C#5
BM: "[f#2,b2]@5 ~ [f#2,b2]@5 ~ [f#2,b2]@5 ~ [f#2,b2]@5 ~", // B5
BN: "[f#2,c#3]@5 ~ [f#2,c#3]@5 ~ [f#2,c#3]@5 ~ [f#2,c#3]@4 ~@2", // F#5
BO: "[g#2,d#3,g#3] ~ [d#3,g#3] ~ [g#2,d#3,g#3] ~ [g#2,d#3,g#3] ~ [g#2,d#3,g#3] ~ [g#2,d#3,g#3] ~, ~@3 g#2@2 ~@19", // G#5
BP: "[g#2,c#3]@5 ~ [g#2,c#3]@5 ~ [g#2,c#3]@5 ~ [g#2,c#3]@4 c3 ~", // C#5
BQ: "[f#2,c#3]@5 ~ [f#2,c#3]@5 ~ [f#2,c#3]@3 ~ c#3 ~ [f#2,c#3]@4 c#3 ~", // F#5
BR: "g#2@2 g#3 g#2@2 g#3 ~@3 g#2@2 [g#3,c#4]", BS: "~@4 [g#3,c#4]@2 b3@4 g#3@2 ~@4 b3@2 g#3@4 f#3 ~",
BT: "~@6 g#2@3 ~ [g#3,b3]@2 ~@6 g#3@5 ~", // G#m
BU: "[g#2@4 g#3@2 g#2@4 g#3@2 ~@6 [g#3,c#4]@10 ~@2 [g#3,c#4]@9 ~ b3@2 g#3@4 f#3@2]/2", // C#5
})).s("gm_overdriven_guitar").gain(0.64)
// bass · electric bass pick · "Jason Newstead"
const bass = note(`<
~@16 A B A C D E F@2 G ~ H ~ I J K@4 L@2 A M N O P Q A R A C S@2 T@2 U ~ H ~ I J V@2 W@2 X@2 A M N O Y Z AA AB AC AD
AE AF AG AH AI AJ N AK AL AM AN AO AP AQ AR AS AT@2 AU@2 AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BJ BN
BO BP BQ BR BS BT BU@2 H ~
>`.pickRestart({
A: "g#2@4 ~@2 g#2@4 f#2 ~ g#2@4 ~@2 g#2@3 ~ f#2@2, g#1@10 ~@2 g#1@9 ~@3", B: "~@3 b2@2 ~@19, [g#1,g#2]@5 ~@19",
C: "g#2 f#2 ~@6, g#1@7 ~@17", D: "g#2@3 ~@3 g#2@4 f#2 ~ [g#1,g#2]@6 [g#1,g#2]@3 f#2@2 ~, g#1@3 ~@5",
E: "~@4 b2@3 ~@14 d3 ~@2, [g#1,g#2] ~@3", // G#
F: "[g#2@3 ~@3 g#2@3 ~ f#2@2 [g#1,g#2]@2 ~ g#2 g#1 ~ b2@2 ~@2 b2@5 ~ b2@2 g#2@2 ~ g#2@6 f#2@6 ~@3, g#1@5 ~@19]/2", // G#
G: "g#2@5 ~ g#2@4 ~@14", H: "g#1@2 g#2 g#1@2 g#2 ~@6", I: "g#1@3 ~ g#2@2 g#1@4 g#2 ~@13", J: "~@18 g#1@4 g#2 ~",
K: "[f#1@3 f#1 ~ f#1 ~@6 f#1@4 f#1 ~ f#1 ~@3 f#1@4 ~@2 f#1 ~ f#1 ~@3 f#1@5 ~ f#2@2 f#1@3 ~ f#1 f#1@3 ~@2 f#2 ~ f#1@2 ~ f#2@4 ~@5 f#1@3 ~ [f#1,f#2]@6 ~@2 [f#1,g#2] ~@4 [f#1,f#2]@5 g#2@5 f#2 ~@2, ~@66 f#2 ~@29]/4", // F# F#sus2 F#
L: "[g#1@4 g#2@2 g#1@4 g#2@2 ~@6 g#2@3 ~ f#2@2 g#2@3 b2@2 ~@19, ~@9 g#1@5 ~@10]/2", M: "[g#1,g#2]@4 f#2 ~@19",
N: "c#2@4 ~@2 c#2@5 ~ c#2@5 ~ c#2@4 c2 ~", O: "b1@5 ~ b1@5 ~ b1@5 ~ b1 ~@3 b1 ~",
P: "f#1@3 ~@3 f#1@4 ~@2 f#1@4 ~@2 f#1@2 ~@2 f#1@2",
Q: "d#2 ~@3 [d#1,d#2] ~ d#2 ~@3 d#1@2 d#2 ~ d#2 ~ d#2@2 d#1@2 ~@2 [d#1,d#2] ~, ~@10 d#2 ~@5 d#1 ~ d#2 ~@5", // D#
R: "~@2 b2 ~@9, [g#1,g#2] ~@3", // G#
S: "[g#2@3 ~@3 g#2@3 f#2 ~@2 [g#1,g#2]@6 [g#1,g#2]@3 f#2@2 ~ g#2@4 b2@3 ~@15 d3 ~, g#1@11 ~@12 g#1@6 ~@19]/2", // G#
T: "[g#2@3 ~@3 g#2@3 ~ f#2@2 [g#1,g#2]@3 g#2 g#1 ~ b2@2 ~@2 b2@5 ~ b2@2 g#2@2 ~@2 g#2@6 f#2@6 ~@2, g#1@5 ~@19]/2", // G#
U: "g#2@5 ~ g#2@4 ~@14, g#1@11 ~@13",
V: "[f#1@3 ~ f#1 ~ f#1 ~@3 f#1@4 ~@2 f#1 ~ f#1 ~@3 f#1@4 ~@2 f#1 ~ f#1 ~@3 f#1@5 ~ f#2@2 f#1@3 ~ f#1 ~]/2",
W: "[f#1@3 ~ f#2 ~ f#1@2 ~@2 f#2@4 ~@4 f#1@3 ~ [f#1,f#2]@6 ~@2 [g#1,g#2] ~@3 [f#1,f#2]@5 ~ g#2@5 ~ f#2 ~, ~@18 f#2 ~@29]/2", // F# G# F#
X: "[g#1@4 g#2@2 g#1@4 g#2@2 ~@6 g#2@3 ~ f#2@2 g#2@4 b2@2 ~@18, ~@9 g#1@5 ~@10]/2",
Y: "f#1@3 ~@3 f#1@4 ~@2 f#1@4 ~@2 f#1@2 ~@2 f#1@2, ~@18 d#1 ~@5",
Z: "d#2 ~ d#2 ~ [d#1,d#2] ~ d#2 ~ d#2 ~ [d#1,d#2] d#1 d#2@2 d#2 ~ [d#1,d#2] ~ d#1@2 d#2 ~ [d#1,d#2] ~, ~@18 d#2 ~@5", // D#
AA: "g#1@4 g#2@2 g#1@4 g#2@2 ~@4 g#2@2 g#1@4 g#2 ~", AB: "~@4 g#2@2 g#1@4 g#2 ~@5 g#2@2 g#1@3 ~@3",
AC: "g#1@3 ~ g#2@2 g#1@4 g#2 ~@5 g#1 ~ g#2 ~ g#1 ~ g#2 ~",
AD: "g#2 ~ g#1 ~ g#2 ~ g#2@2 g#1 ~ g#2@2 g#1 ~ g#2 g#1 ~ g#2 ~@6",
AE: "f#1@2 ~@2 f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~@3 f#1 ~ f#1 ~ f#1 ~ f#1 ~",
AF: "f#1@3 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~ f#1@2 ~@2 f#1 ~ f#1 ~ f#1 ~ f#1 ~",
AG: "f#1@6 f#1 ~@3 f#2@5 ~ f#1 ~ f#2@4 ~@2, ~@18 f#1 ~@5",
AH: "[f#1,f#2]@4 ~@2 [f#1,f#2]@2 ~@4 [f#1,f#2]@3 ~ [f1,f2]@2 ~@2 [e1,e2]@2 ~@2", // F# F E
AI: "[d#1,d#2]@3 ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2]@4 d#2 ~ d#2@2 d#1 ~ d#2@2", // D#
AJ: "d#1@3 ~ d#2 ~ d#1 ~ d#2 ~ d#1@2 d#2@2 ~@2 d#1 ~ d#2@2 d#1 ~ d#2 d#1", AK: "b1@3 b1@3 b2@2 b1@2 ~ a2",
AL: "f#1@2 ~@4 f#1@6 f#2 ~@3 f#2@2 f#1@2 ~@4",
AM: "d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~",
AN: "[g#1,g#2]@4 ~@2 g#2@3 ~ [f#2,g#2] ~ g#2@4 ~@2 g#2@4 f#2 ~, ~@2 g#2 ~@9, ~@5 g#1@6 ~ g#1@10 ~@2", // G# F#sus2
AO: "[g#1,g#2]@2 b2 ~@6 g#2 ~@2", AP: "[g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~ [g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~",
AQ: "[g#1,g#2]@2 [f#1,f#2] ~@9", // G# F#
AR: "[g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~ [g#1,g#2] ~ [g#1,g#2] ~ g#2 ~ [g#1,g#2]@4 f#2 ~", AS: "[g#1,g#2]@2 b2 ~@9",
AT: "[[g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~ [g#1,g#2]@3 ~ g#2 ~ g#1@2 ~ g#1 g#1@5 b2 ~@2 b2 ~@2 b2@9 g#2@3 ~@3, ~@18 b2 ~@2 b2@6 ~@21]/2", // G#
AU: "[b1@4 b2@2 b1@3 ~ b2@3 ~@3 b1@2 b2 ~@2 b2@5 ~@2 b1@2 b2 ~@3 b2@5 b1@3 b2@4 ~@2]/2",
AV: "b1@3 ~ b2@2 b1@3 ~ b2@2 ~@12", AW: "~@10 b1@11 ~@3",
AX: "g#2@4 ~@2 g#2@4 f#2 ~ [g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~, g#1@11 ~@13", AY: "[g#1,g#2]@2 [b1,b2] ~@9",
AZ: "[g#1,g#2]@5 ~ [g#1,g#2]@3 ~@3 [g#1,g#2]@4 ~@2 [g#1,g#2]@3 f#2 ~@2", // G#
BA: "[g#1,g#2] ~@5 g#1@2 ~@3 g#1@2 ~@2 [g#1,g#2] ~ [g#1,g#2]@3 ~@4, ~@6 g#2 ~@4 g#2 ~@12", // G#
BB: "[f#1,f#2]@3 ~ f#1 ~ f#1 ~ f#1 ~ f#1 ~ [f#1,f#2]@3 f#1 f#2 ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~, ~@3 f#2@2 ~@7", // F#
BC: "f#1@2 ~@2 [f#1,f#2] ~ [f#1,f#2] ~ f#1 ~ f#1 ~ f#1@2 ~@2 f#1 ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~, f#2 ~@23", // F#
BD: "[f#1,f#2] ~@3 [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~@3 [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~", // F#
BE: "[f#1,f#2] ~@3 [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~ [f#1,f#2] ~@3 [f1,f2] ~@3 [e1,e2] ~@3", // F# F E
BF: "[d#1,d#2]@3 ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2]@2 d#1 ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~", // D#
BG: "d#2@2 ~@2 [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2]@3 ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~ [d#1,d#2] ~, d#1 ~@23", // D#
BH: "[c#1,c#2]@5 ~ [c#1,c#2]@4 ~@2 [c#1,c#2]@4 ~@2 c#2@4 c2 ~, ~@9 c#1 ~@2", BI: "b1@5 ~ b1@5 ~ b1@5 ~ b1@3 ~ b1 ~",
BJ: "f#1@4 ~@2 f#1@5 ~ f#1@5 ~ f#1@4 ~@2",
BK: "[g#1,g#2]@2 ~@2 [g#1,g#2]@2 ~@2 [g#1,g#2]@3 ~ [g#1,g#2]@3 ~ [g#1,g#2]@2 ~@2 [g#1,g#2]@2 ~@2", // G#
BL: "~@6 f#2@2 ~@4 c#2@4 c#2@2 c#2@4 c2 ~, ~@6 d#1 ~@17", BM: "~@12 c#1@6 b1 ~@5, b1@2 ~",
BN: "[d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~ [d#1,a#1] ~", // D#5
BO: "[g#1,g#2]@5 ~ g#2@3 ~ f#2@2 g#2@3 ~@3 [g#1,g#2]@4 f#2@2, ~@6 g#1@11 ~@7, ~@9 g#2@2 ~@13", // G#
BP: "g#2 g#2@3 b2@2 ~@18, g#1 ~@5", BQ: "[g#1,g#2]@4 ~@2 [g#1,g#2]@4 f#2 ~ [g#1,g#2]@4 ~@2 [g#1,g#2]@4 f#2@2",
BR: "[g#1,g#2]@3 ~ g#1@2 g#2@2 ~@2 [g#1,g#2]@2 ~@4 g#2@2 [g#1,f#2]@3 ~ g#2 ~", // G# G#7
BS: "[g#1,g#2]@3 ~@3 [g#1,g#2]@4 f#2 ~ [g#1,g#2]@5 ~ [g#1,g#2]@4 f#2 ~", BT: "[g#1,g#2]@4 b2@2 ~@9 b2@6 g#2@2 ~",
BU: "[g#1@5 ~ [g#1,g#2]@4 f#2 ~ [g#1,g#2]@3 ~ g#2 ~ b2@2 ~@2 [g#1,b2]@6 ~@2 g#1@3 ~@2 g#1 ~@6 g#2@5 ~, ~@17 g#1@3 ~@10 b2@12 ~@6]/2", // G# G#m
})).s("gm_electric_bass_pick").gain(0.72)
// other · distortion guitar · "Echo Repeats"
const distortion_guitar = note(`<
A B C B D ~ E F G H I J E K G L ~@8 D ~ M N O ~@5 P Q R ~@13 D ~ S ~ T ~@16 U ~@10 V W V X Y Z ~@6 V Z AA AB ~@14 AC B
AC B AD AE ~@2 AF ~
>`.pickRestart({
A: "~@3 g#2@2 g#3 ~@2 g#3 ~@3", B: "g#2@3 ~ g#3@2 ~@18", C: "~@6 g#2@4 g#3@2 g#2@3 ~ g#3@2 g#2@4 g#3@2",
D: "~@3 g#2@2 g#3 g#2@2 g#3 ~@3", E: "~@3 g#2@2 g#3 g#2@2 g#3 ~@2 g#3", F: "~@6 g#2@4 g#3@2 g#2@3 ~ g#3@2 g#2@3 ~@3",
G: "~@6 g#2@2 g#3 g#2@2 g#3", H: "g#2@4 g#3@3 ~@5 g#2@4 g#3@2 g#2@3 ~@3",
I: "~@6 g#2@4 g#3@2 ~@4 g#3@2 g#2@3 ~ g#3@2", J: "g#2@2 g#3 ~@2 g#3 g#2@2 g#3 ~@3",
K: "~@4 g#3@2 g#2@5 ~@5 g#3@2 g#2@3 ~@3", L: "g#2@3 ~ g#3 ~ g#2@4 g#3@2 g#2@4 g#3 ~@7",
M: "~@3 g#2@2 g#3 g#2@2 ~ g#2@2 g#3", N: "g#2 ~@5", O: "~@6 g#2@2 g#3 ~@3", P: "~@16 g#3 ~@5 g#3@2", Q: "g#2 ~@7",
R: "~@6 g#2@4 g#3 ~ g#2@3 ~@9", S: "~@6 g#2@4 g#3@2 g#2@5 ~ g#2@5 ~", T: "~@12 g#2@4 g#3@2 g#2@5 ~",
U: "~@17 [g#4,c#5]@6 ~", V: "g#3@4 ~@2 g#3@3 ~ f#3 ~ g#3@4 ~@2 g#3@3 ~ f#3 ~, g#2@11 ~ g#2@11 ~",
W: "[g#2,g#3]@4 b3 ~@19", X: "g#3@2 f#3 ~@9, g#2 ~@3", Y: "~@6 [g#2,g#3]@4 f#3 ~ g#3@4 ~@2 g#3@4 f#3@2, ~@6 g#2@5 ~",
Z: "[g#2,g#3]@2 b3 ~@9", AA: "g#3@5 ~ g#3@4 f#3 ~ [g#2,g#3]@5 ~ [g#2,g#3]@4 f#3 ~, g#2@11 ~@13", AB: "[g#2,g#3]@3 ~",
AC: "~@6 g#2@3 ~ g#3@2 g#2@3 ~ g#3@2 g#2@4 g#3@2", AD: "~@6 g#2@3 ~ g#3@2 g#2@4 g#3@2 g#2@3 ~ g#3@2",
AE: "~@2 g#3 ~@9", AF: "~@3 g#2 ~@2",
})).s("gm_distortion_guitar").gain(0.2)
// other · distortion guitar · "Echo Repeats" · soft notes
const distortion_guitar_soft = note(`<
A B ~ C D E F G ~ B H I F J ~@10 D K L M D E ~@4 N M O P ~@12 D Q R S T U ~@61 V ~@2 W ~
>`.pickRestart({
A: "~@6 g#2@2 ~ g#2@2 g#3", B: "~@3 g#2@2 g#3 ~@6", C: "~@10 g#3 ~@13", D: "~@9 g#2@2 g#3",
E: "g#2@3 ~ g#3@2 g#2@3 ~ g#3@2 ~@12", F: "~@9 g#2@2 ~", G: "g#2@3 ~ g#3 ~@19", H: "~@4 g#2 ~@3", I: "~@3 g#2@2 ~@7",
J: "g#2@4 ~@6 g#3@2 g#2@5 ~@7", K: "g#2@2 g#3 ~@9", L: "~@8 g#3 ~@3", M: "~@2 g#3 ~@2 g#3 ~@6",
N: "~@6 g#2@2 ~ g#2@2 ~", O: "~@8 g#3 g#2@2 g#3", P: "g#2@4 g#3@3 ~@3 g#3 ~@13", Q: "g#2 g#3 ~@4",
R: "~@8 g#3 ~@2 g#3", S: "~@2 g#3 ~@9", T: "~@11 g#3", U: "g#2@4 g#3@2 g#2@4 g#3@3 ~@11",
V: "g#2@4 ~@2 g#2@3 ~ g#3@2 ~@12", W: "~@6 g#2@3 ~ g#3@2 ~@4 g#3@4 ~@4",
})).s("gm_distortion_guitar").gain(0.1)
// bass · fretless bass
const bass_2 = note("<~@24 A@2 B@2 A@2 ~@20 A@2 C@2 D@2 ~@64 E ~>".pickRestart({
A: "[~@11 g#1@30 ~@7]/2", B: "[~@14 g#1@29 ~@5]/2", C: "[~@10 g#1@29 ~@9]/2", D: "[~@11 g#1@32 ~@5]/2",
E: "~@5 g#1@7",
})).s("gm_fretless_bass").gain(0.72)
// drums · kick
const kick = s("bd").struct(`<
~@16 A B C D C E F ~ A G C H I D H ~ J D K L I K M N O ~ A P C D C E H ~ M G C H I L H ~ J D C D I K M N H ~ C L N Q R
S@3 R S C T D N C D J U C H V W K D K ~ C H K H X@2 Y Z X R C K@2 AA C T H K C D AB N C G N AC N ~
>`.pickRestart({
A: "x ~@2 x ~ x ~@5 x", B: "x ~@5 x ~@3 x ~@4 x ~@6 x ~", C: "x ~@10 x", D: "x ~@2 x ~ x ~@2 x ~@3",
E: "x ~@2 x ~ x ~@2 x!2 ~@2", F: "x ~ x!2 ~@2 x ~", G: "x ~@2 x ~@4 x ~@3", H: "x ~@2 x ~ x ~@3 x ~@2",
I: "x ~@4 x ~@5 x", J: "x ~@6 x", K: "x", L: "x ~@5 x ~@3 x ~@4 x ~@8", M: "x ~@2 x ~@7 x", N: "x!2 ~@2",
O: "x ~@5 x ~@3 x ~@6 x ~@6", P: "x ~@2 x ~ x ~@2 x ~@2 x", Q: "~@11 x", R: "x ~@2 x!2 ~", S: "x!2 ~ x!2 ~",
T: "x ~@2 x ~@4 x ~@2 x", U: "~ x ~ x ~@4", V: "x ~@2 x", W: "~ x ~@2", X: "x!2", Y: "x!2 ~ x ~@2", Z: "x ~@3 x!2",
AA: "x!3 ~@3", AB: "x ~@4 x ~@3 x ~@2", AC: "x ~ x",
})).gain(0.5)
// drums · snare
const snare = s("sd").struct(`<
~@14 A B C@7 D C@7 D C@5 E C@3 F C@7 G C@6 H D C@5 E C@3 I C@2 J K L@3 M L@2 C@3 E C@3 J C@3 N C@2 H O C@3 J L@3 P L@2
C@3 Q C@3 R C@3 S C@3 T U ~
>`.pickRestart({
A: "x!6 ~ x!5", B: "~ x!4 ~ x!4 ~@2", C: "~ x", D: "x ~ x ~ x ~ x ~@4 x!2 ~ x ~ x ~ x ~ x ~ x ~",
E: "~@3 x ~@2 x ~@2 x!3", F: "x!4 ~@2 x!6", G: "x!3 ~ x!2 ~@5 x", H: "~@12 x ~@10 x", I: "x!3 ~ x ~ x ~ x ~@2 x",
J: "~@2 x!2", K: "~ x!10 ~", L: "~ x ~ x", M: "~@3 x ~@4 x ~ x ~", N: "x ~@5 x ~@2 x!3",
O: "x ~ x ~ x ~ x ~@4 x!2 ~ x ~ x ~ x ~@5", P: "~@3 x ~@2 x ~ x ~ x ~", Q: "x!6", R: "~@3 x ~@2 x!6",
S: "~@6 x ~@2 x!3", T: "~@3 x ~ x ~@3 x ~ x", U: "~@2 x ~@2 x ~@6",
})).gain(0.56)
// drums · low tom
const low_tom = s("lt").struct("<~@40 A ~@8 B ~@31 A ~@15 C ~@11 A D ~@11>".pickRestart({
A: "~@11 x", B: "~@5 x", C: "~@10 x!2", D: "x ~@10 x",
})).gain(0.44)
// … 39 more lines
More by Metallica
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.