0:00/0:00
// Malafemmena — Renzo Arbore
// 111.2 bpm, 4/4, key G 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: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 97 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(111.2/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 · epiano2
const epiano2 = note(`<
~ A@4 B C@2 D E F@5 G H I@4 J@2 K@6 L@2 M@2 N@2 O@2 P@2 Q R@2 S@3 T U V@2 W@4 X@6 Y@2 Z@2 AA AB AC AD@3 AE@4 AF@2 AG@2
AH@2 AI AJ AK@2 AL@2 AM@2 AN AO AP AQ@5 ~@2
>`.pickRestart({
A: "[~@10 d4@2 [d4,b4]@2 ~@6 f#3@2 [f#3,b3]@2 ~@4 b2@2 ~@4 b3@2 b3@2 ~@4 [g3,b3,d4]@2 a2 ~@5 a3@2 [a3,d4,f4]@2 [d3,a3,d4,f4,a4]@2 ~@2 d3@2 ~@2 g#4@2, g1@10 a4@4 ~@4 d3@8 [d4,a4]@4 e4@6 d4@2 b3@2 e3@5 ~ a3@4 ~@14, [d4,g4,b4]@6 g4@8 [d4,f#4]@8 [f#4,b4]@8 ~@4 e3@4 e4@7 ~ [d4,f4]@6 ~@12, ~@4 g2@10 [b1,d5]@16 [e2,g4]@15 ~ d2@10 [g2,b3,d4,f4,g4]@4 [g#2,g#3,b3,d4,f4]@4, ~@6 [d4,b4]@2 g3@6 ~@2 b2@6 [b2,d4]@2 [f#3,b3]@6 ~@2 b2@13 ~@3 d3@6 ~@10]/4", // G B5 G Dm D5 G D B5 …
B: "~@6 c4 ~@5 [e3,g3,c4]@3 a#2, c2@7 c4 a3@2 c3@5 ~, [a3,e4]@6 c3 e4@9, [c4,g4]@6 g4@9 ~, ~ g2@3", // C A5 C5
C: "[~@6 d#4@4 ~@2 d3@2 ~@8 d4 ~@3 g3@2 [g3,a3,d4]@2 e3 ~, d#2@14 g3@2 g2@10 d3@5 ~, [d#3,g3,a3]@10 [d#3,g3,a3,d#4]@4 a3@9 d4 b3@7 ~, d#4@6 [g4,a4]@8 b3@6 g3@2 g4@9 ~, ~@4 a#2@10 d4@4 d3@5 e4@9]/2", // Gsus2 Am7b5 Gsus2
D: "[g3,b3]@3 g3!2 [g3,b3] [g3,b3,c#4] [g3,b3,c#4,e4], c#4@5 c#3@3, a2@3 [c#3,b3] a2@4, ~@3 a1@5, ~@3 e3@3 e3@2", // G C#m7b5 C#7
E: "g3@2 g3@2 g3@2 g3@2 g3@2 ~@2 c3@2 c3 ~, [c2,e3], c4@2 c3@2 e4 [g3,c4,g4]@3, ~@2 g2@13 ~, ~@4 c4@2 d4@9 ~", // C C5
F: "[[g3,c4]@2 [g3,c4,g4]@2 [c4,e4] ~@3 f#3@2 f#3@2 [f#3,d4]@2 d3!2 ~@18 g4@3 ~@29 g3@2 ~ g3@2 ~@7 d3@2, [d2,e4]@5 ~ [d2,f#4]@9 ~ g2@21 g4@2 g3 a4@14 b3@4 d3@4 g1@4 b3@2 d3 a3@2 d3 [g3,b3]@2 d3@2 [g3,d4]@4, ~@3 d4@3 ~@2 [a3,b3,d4]@3 a3@11 [e4,g4]@10 g2@8, ~@6 a3@4 a3@5 g3@7 [b3,d4]@10 d3@2 e4@3 b4@17 d4@12 f#3@14, ~@8 d3@6 ~@6 d3@10 g3@4 [b3,d4]@6 f#4@2 g3@5 [d3,b3] [g2,d4,f#4]@4 d3@2 f#4@26]/5", // C5 C D Dsus2 D G G5 Bm7 …
G: "e3@3 ~@3 e3@2, g2, [g3,b3,d4]!2, ~@3 e3@3 ~@2", // G
H: "~@6 [g#3,b3]@2 ~ [g#3,b3]@2 ~@3 e2@2, e2@3 [g#3,b3,d4], e3@8 e3 f4@7, [g#3,b3]@6 d4@5 e3@5, ~ b2@3", // G#m G#dim G#m
I: "[~@10 e3@4 ~@14 [c4,g4]@3 a2 ~@12 a2@2 ~@4 [a3,d4]@2 ~ a3@2 ~@7 e2@2, a1@23 a3 [e4,a4]@2 e3@5 f#3@15 a2@10 a3@2 d3@2 [a3,d4,a4]@4, a3@6 e4@8 e3@2 a2@2 g4@2 a3 [f#4,b4]@11 [a3,d4]@6 f#4@14 d3 d4@2 d3 f#4@8, [g3,c4,e4]@3 g3@13 d2@5 d3@4 f#3@7, ~@2 a2 c4@6 c5@7 ~@2 d3 [a3,d4]@5 d2@8]/4", // C5 D5 A5 D5 B5 D5 C D5
J: "[~@14 e3@2 ~@2 [g3,c4]@2 ~ [g3,c4]@2 ~ [g3,c4]@2 ~ g3@3 ~ a2, a1, e4@16 e3@4 e3 g4@5 e3@6, [g3,c4]@6 [g3,c4]@12 e4@5 e3 e4@3 [c4,g4]@5, ~@2 a2 e3@2 a2@3 a2@7 [g3,e4]]/2", // C5 C
K: "[~@8 [f#3,a3,d4]@2 [d3,f3,g#3,c#4] ~ g2 ~@9 g3@2 g3@2 g3@2 ~@10 g3@2 g3@2 [g3,b3]@2 g2 ~ g3@4 ~@3 c4@2 ~@5 [c4,g4]@3 d3 ~@6 b3@4 b3@4 g4@4 ~@12 d3@2, d2@11 ~@3 [c2,e3]@10 d4@2 e4@2 [g3,g4]@2 d2@2 [g1,a3]@13 ~ c2@10 c4@2 c3@5 ~ [b3,d4]@4 d3@10 [b3,d4,e4]@4 [g4,b4]@2 d4@2 b3@2 [f#4,a4]@2 d4@2 [e4,g4]@4, [f#3,a3,d4]@8 ~@6 [g3,c4]@8 c4@9 g3@5 g2@8 ~@6 e4@3 g4@2 c3 [e4,c5]@7 a3@7 a3@26, ~@6 d3@4 ~@8 g2@14 b3@6 b3@4 ~@4 c4@6 g2@11 ~ g2@32, ~@20 c3@12 d4@8 [d3,d4]@5 ~@5 g3@13 g3@7 d4@4 g3@22]/6", // D C# G C5 C G Gsus2 Bm …
L: "[~@18 [f#3,b3]@2 ~ f#3@2 ~@5 [f#3,g3,d4]@2 d3 ~, g2@10 g1@13 b2 [f#3,a3]@2 d3@4 ~@2, [b3,d4,f#4]@6 f#4@25 ~, ~@4 d3@8 g2@19 ~, ~@6 [b3,d4]@8 d3@2 b2@2 [g3,d4]@2 d3 b3@10 ~]/2", // B5 Gmaj7 F#m Bm G5
M: "[e3@6 ~@2 [g3,b3]@5 ~@5 b2@2 ~ [d3,g#3]@3 ~@4 [g#3,b3,d4,f4]@3 e2, g2@13 ~ e2@10 [g#3,d4]@2 [e2,e3]@6, [g3,b3]@4 ~@3 d4@5 d3@4, ~@6 e3@7 ~ [g#3,b3]@6 b2@12, ~@21 b3@7 ~@4]/2", // G Ddim G#dim E G G#m
N: "[~@10 [g3,c4,e4]@2 b2 ~ [g#3,b3,d4]@4 [g#3,b3,d4,f4]@2 b2 ~@7 [g#3,b3,d4]@2 g2 ~, [a1,a3]@13 ~@13 e3@5 ~, [g3,c4,e4]@9 e3@4 ~@9 [g#3,b3]@6 ~@4, ~@6 a2@7 ~ e2@7 ~ [e2,e4]@9 ~]/2", // C G#dim A C G#m E
O: "[[e3,g3,a3,c4]@6 c3 ~@3 c2@2 c3 [d#2,a#2] ~@4 d#2 ~@5 d#3 [g3,a3,d#4] ~ d#3 [d#3,g3,a3,d#4]@2 d3 ~, c2@4 [e3,g3,a3,c4]@2 ~ [g3,a3,d#4]@5 ~@4, ~@7 d#3@4 ~@5, ~@5 d#2@2 ~]/2", // Am7 D#5 Am7b5 Am7 Am7b5
P: "[[g3,a3,b3,d4]@7 ~ [g3,a3,b3,d4]@2 f#2 ~ g#2 ~ [g#3,b3,d4,f4]@4 [g#3,b3,d4,f4]@2 b2 ~ [e2,g#3,b3,e4]@4 b2 ~ [b3,d4] ~ e2 ~, g2@5 ~@3 g2 ~@5 e2@6 ~@8 g#3@2 ~@2]/2", // G G#dim E Bm
Q: "~@5 [g3,b3,c#4,e4]@3, [a1,c#3], [g3,b3]@5 ~@3, e3!2, ~@4 a2@11 ~", // C#m7b5 A G
R: "[c2@6 c3 ~@5 [f#3,a3,c4]@3 d3 ~@14 f#2@2, g3@15 g3@7 [b3,g4]@6 [a3,d4]@4, [a3,c4]@6 ~@2 a3@3 d4@2 g3@3, e3@8 d2@7 ~ g2@16, ~@10 d3@5 ~ [b3,d4]@4 d3@12]/2", // F#dim Em D5 Am Bm
S: "[~@12 [a3,d4,f#4]@2 b2 ~@11 [e4,g4,b4]@2 a2 ~@7 [a3,d4,f4]@2 [d4,f4]@2 ~@2 d3@2 [g#3,b3]@2 [g#3,b3,g#4]@2, [b1,b3]@15 ~ e2@13 ~ d2@14 ~@4, f#3@6 [a3,d4]@6 ~@3 [b3,d4]@5 e3@2 [g3,b3,d4]@7 ~ g4@10 [g2,b3,d4,f4,g4]@4 [g#2,d4,f4]@4, d4@6 a4@9 ~ [e4,g4]@8 e3@5 ~ a4@8 d3@4 ~@6, ~@4 b2@6 [b2,f#3]@5 ~@3 b2@11 ~ [a3,d4,f4]@4 d3@4 [a3,a4]@6 ~@4]/3", // D Em Dm G#m B D5 Bm G …
T: "~@3 [g3,c4,e4], [c2,g4]@5 c3@3, e4@6 e3 a3@9, [a3,c4]@2 c3 [g3,c4] e3@4, ~ g2@7", // C C5 Am C5
U: "d#3@4 ~@2 [g3,a3]@4 [d#3,g3,a3]@4 a2 ~, d#2@15 ~, [g3,a3]@6 d#4@9 ~, ~@2 d#3@3 ~@3", // Gsus2 Am7b5 Gsus2
V: "[~@16 d5@4 [d5,d6]@11 ~, d2@8 g4@7 [d4,a4] [d2,d3]@15 ~, d3@6 [d3,d4]@4 a4@2 a2@19 ~, ~@2 g3@29 ~, ~@4 a3@27 ~]/2", // D D5 D
W: "[d3 ~@17 [g3,d4]@2 ~ [b3,d4]@2 ~@3 g3@2 [g3,a3,b3,d4]@2 e2 ~@15 a3@2 ~@8 e4@2 ~@2 e3@2 ~ a2, g2@24 [b3,d4]@4 ~@3 g3@19 c5@2 a3 [a4,e5]@5 e3 [a3,e4]@3 [a3,c4,g4]@2, a3@6 d4@8 b3@4 a3@5 g3 g4@7 ~ [a3,c4]@4 a2@2 [c4,g4]@10 a3@2 g5@14, g3@6 g4@14 g3 e4@10 ~ e4@6 a3@4 e3@6 a2@7 a3 c5@8, [b3,d4]@4 d3@2 b3@4 g3@4 a3@2 d3@15 ~ a1@32]/4", // G5 Bm G Bm A5 Am7 Am C5 …
X: "[~@8 [a3,f#4]@2 [g#3,f4] ~ g2 ~ g3@4 g3@2 g3@2 ~@6 [g3,e4]@3 [d2,a3] ~@4 g3@2 g3@2 g3@2 [d3,g3,g4]@2 g2 ~@18 d3 ~@8 [b3,d4]@2 [f#2,f#3] ~ b2 ~@15 [g#3,b3,d4]@2 e2 ~, d2@11 ~@3 [c2,e3]@8 g3@4 c3@5 g3@3 g2@10 ~@6 g2@12 c3@2 [g2,a3]@11 ~@3 [e2,f4]@17 ~, [a3,f#4]@8 ~@6 c4@6 c4@12 b3@6 b3@7 ~ e4@8 c4@4 c3@2 [c4,e4,c5]@3 g3@7 g3@5 ~@3 [g#3,b3]@6 e3@2 e4@9 ~, ~@4 a2@7 ~@7 g2@14 g1@13 ~ [c2,g3]@18 ~@4 d3@7 ~@7 b2@13 ~, ~@6 d3@5 ~@11 d4@10 d4@6 d3@2 [b2,d4]@5 ~ c4@6 c3@2 g4@10 [b3,d4]@8 ~@6 d4@8 [g#3,b3]@4 e3@5 ~]/6", // D C# C D5 G5 Bm F# G#dim …
Y: "[~@8 g3@2 [g3,d4]@2 a#2 ~@15 [d#3,g3,a3]@2 d3 ~, [a1,a3,e4]@13 ~ d#2@17 ~, c4@7 e3@6 ~ d#4@6 d#3@6 a#2@5 ~, g3@3 g3 ~@3 [g3,a3]@7 ~@2, ~@4 a2@4 [a2,c4]@5 ~ d#3@4 a#2@4 [d#4,g4,a4]@9 ~]/2", // G5 Am7b5 A5 Gsus2 Am Am7b5
Z: "[[g2,g3,a3,b3]@8 g3@2 [g3,d4]@2 e2 ~ g3@4 ~@2 b3@2 c#3@4 ~@2 [g3,c#4,e4]@2 g2 ~, d4@10 ~@4 e3@8 [g3,c#4,e4]@4 [c#3,e3]@5 ~, ~@8 [g2,d3,a3,b3]@5 ~ a1@17 ~, ~@14 c#3@4 g3@4 b3@9 ~, ~@14 b3@4 a2@13 ~]/2", // G G5 C#dim C#m G
AA: "g3@2 g3@2 g3@2 g3@2 g3@2 g3@2 [g3,c4]@2 [g3,d4] a#2, [c2,e3]@15 ~, c4@4 c4@4 e4@7 ~, ~@2 g2@13 ~, ~@4 c3@2 d4@4 c3@5 ~", // C5 G5 C
AB: "~@4 g3@2 ~@4 a#3@2 [a#3,d#4,g4]@2 f2 ~, d#2@15 ~, [a#3,d#4]@6 g3@9 ~, g3@4 d#3@2 [a#3,d#4]@2 d#3@7 ~, ~@2 a#2@13 ~", // D# D#5
AC: "~@7 [f3,a#3], [a#1,f4,a#4], [a#3,d4]@3 d4@5, ~@2 a#2@3 a#2@3, ~@3 [f3,a#3]@4 ~", // A#5 A# A#5
AD: "[f3@2 [d4,f4,a#4] ~@2 [a#3,d4]@2 ~@5 [a#3,d4,f4]@2 ~@12 a#2@4 [a#2,f3]@3 [a3,d4,f4,a4] ~ [a#2,f3] [a3,d4]@2 ~ a3@2 ~ a3@2 ~@2 a#2@2, a#2@14 f2@2 [a#1,f4,a4]@18 ~@5 a4@9, ~@4 f3@3 f3@8 a3@7 [d3,a3,d4]@12 ~@4 f3 d4@3 f4@6, ~@5 f4@3 [a#3,d4]@2 [f2,f#2]@5 ~@5 a#2@6 ~@12 a#2@6 [a#1,a3,d4]@4, ~@8 a#4@7 ~ d4@6 f3@8 ~@6 f4@5 f3@7]/3", // A# A#5 Dm A#5 D5 A#maj7 D5 A# …
AE: "[~@10 [f3,g#3,d4]@2 d#3 ~ [g#3,b3]@4 [g#3,b3,f4]@2 d#3 ~ b3@4 b3@2 [b3,d4,f4,g4]@2 ~@6 g3@2 [g3,c4]@4 c4@2 [c4,d#4]@2 ~@14 [c4,d#4,g4]@2 a#2 ~, f2@13 ~ [g#2,d4]@7 ~ [g2,g3]@8 c4@8 d#4@4 g3@8 c3@2 g3@2 [c3,g5,c6]@4 g3@5 ~, d4@8 c3@5 ~@17 d#3@26 c5@7 ~, [f3,g#3]@6 c4@7 ~@9 [d4,f4]@6 ~@2 c2@16 c2@17 ~, ~@4 c3@2 [f3,g#3]@4 ~@16 f3@4 g3@4 c3@4 c3@8 [c4,d#4,g4]@9 d#5@8 ~]/4", // Ddim G#m Fdim G7 C5 Cm G#dim G …
AF: "[d#3@6 [a#2,d#3]@2 [d#3,g3,d#4] ~ [f2,f3,f4] ~ f2 ~@15 [f#3,a#3,d#4]@2 f2@2, [d#2,g3,a#3,d#4]@8 [d#2,a#3]@2 ~@4 g#2@12 g#2@5 ~, ~@14 [f#3,a#3,c#4,d#4]@8 c#4@9 ~, ~@20 g#1@11 ~, ~@11 [f#3,a#3,d#4]@3 ~@2]/2", // D#5 D# F D#m D# D#5 D#m7 D#m
AG: "[[a#1,a#2,f3,a#3,d4]@6 a#3 ~ [a#2,a#3,d4,f4,a#4]@2 [a2,a3,d4,f4,a4] ~@3 [b3,g#4]@4 [g#3,b3] ~ [g#3,b3,d4,g#4] ~@9 g2@2, ~@14 [g#2,d#3,d4]@7 ~ g2@8 ~@2, ~@7 g#3 ~@3 f3@5, ~@11 [g3,b3,d4,f4]@3 [g3,b3,d4,f4]@2, ~@13 d3@3]/2", // A# Dm E G#m G#dim G# G7
AH: "[[c2,c3,g3,c4] ~ [c2,c3,g3,a#3,c4]@2 [d2,d3,c4] ~ [g3,a#3,c4]@2 [c#2,d#2,d#3,c4] ~ [d#3,g3,a#3]@2 [g3,a#3,c4]@2 [f2,f3,g3,a#3,c4]@4 f2@4 f2@2 ~@4 f2@2 f2@2, a#3@2 ~@2 [g3,a#3]@2 [d2,d3] ~ [g3,a#3]@2 [d#2,c4] ~ [e2,e3] ~@5 f3@14, ~@9 [g3,a#3,c4]@4 [g3,a#3,c4]@3, ~@6 f2 ~]/2", // C5 C7 D7 C7 Cm D# C7 Fsus4 …
AI: "~@6 a#3 ~@7 f2@2, [a#1,d#3]@5 f2 [g#3,a#3]@2, [g#3,c4]@7 c4@9, ~@4 f2@3 a#3 g#3@2 a#2@6, ~@3 d#4@5", // D#5 G#sus2 G#
AJ: "[a#1,a#2,a#3] ~ [a#1,a#3]@2 [c3,c4] ~ [c3,c4] ~ [c#2,c#3] ~ [c#2,c#3,c#4]@2 [d2,d3,d4]@2 [d2,d3,d4] ~, ~@2 a#2 ~ c2@2 c2@2 c#4@2 ~@6", // A# C C# D
AK: "[d#2@4 d#2@2 [a#2,d#3] ~@3 [f2,f3,f4]@2 f2 ~@15 [f#3,a#3,c#4,d#4]@2 a#2 ~, [d#3,d#4]@7 ~ [d#2,d#3,g3,a#3,d#4]@4 ~@2 g#2@12 a#2@4 ~@2, ~@14 [f#3,a#3,c#4,d#4]@9 [a#4,c#5]@8 ~, ~@18 a#1@13 ~, ~@22 d#5@9 ~]/2", // D#5 F D#m7 D# D#m7 A#m
AL: "[[a#2,f3]@4 [a#2,f3]@2 [a#2,f3,a#3] ~ [a#2,f3,a#3,d4,f4,a#4]@2 [a2,a3,d4,f4,a4] ~@3 g#3@4 g#3@2 [g#3,b3,d4,g#4] ~@7 [f3,g3,b3]@2 g2 ~, [a#3,d4]@7 ~@7 [g#2,d#3,b3,d4,g#4]@7 ~ [g2,d4,f4]@9 ~, ~@11 [g3,b3]@3 ~@2, ~@26 d3@5 ~]/2", // A#5 A# Dm G#dim G7 A# G#m G7 …
AM: "[[c2,c3,g3,c4] ~ [c2,c3,g3,a#3,c4]@2 [d3,g3,a#3,c4]@2 [d2,d3,c4] ~ [d#3,g3,a#3,c4]@2 [g3,a#3,c4]@2 [g3,a#3,c4]@2 [f2,f3,g3,a#3,c4]@4 f2@4 ~@4 [g3,a#3,c4]@4 f2 ~, a#3@2 ~@2 d2 ~ [g3,a#3]@2 [c#2,d#2,f3] ~ [d#2,d#3] ~ [e2,e3] ~@5 f3@13 ~, ~@9 [g3,a#3,c4]@4 ~@3, ~@11 f2@4 ~]/2", // C5 C7 Gm D7 Cm7 C7 Fsus4 C7 …
AN: "a#3@4 ~@8 [g#4,c5]@2 f3 ~, [a#2,d#4]@15 ~, c5@10 a#3@5 ~, g#4@6 [a#4,d#5]@9 ~, ~@2 a#3 g#4@3 ~@2", // G# D#5
AO: "~@10 a#3@4 f3 ~, a#3@2 a#3@3 ~@3, ~ [a#2,c6]@6 ~, ~ d#5@3 d#5@3 ~, ~@5 [c5,g#5]@9 ~@2", // A#sus2 Fm
AP: "a#3@2 ~@3 a#3 ~ f3, [a#1,g4], d#4@3 [g3,d#4]@5, ~@2 a#3@3 ~ [d#3,a#3]@2", // D# Cm D#5
AQ: "[~@15 [d#4,a#4]@4 ~@3 c4 ~@17 f5@32 ~@8, a#2@6 a#4@3 a#3 [g4,d#5]@10 ~@3 [a#3,f4]@32 ~@25, ~@3 a#5@17 ~@17 c5@32 ~@11, ~@3 d#5@3 g5@6 a#3@7 ~@3 [f3,d4]@32 ~@26, ~@5 f3@15 ~ a#2@18 d5@32 ~@9]/5", // D#5 Cm A#5 Dm
})).s("gm_epiano2").gain(0.36).pan(0.4)
// other · overdriven guitar
const overdriven_guitar = note(`<
~ A@5 B@4 C D ~@23 E@2 F@2 G@2 A@5 H@3 ~@24 I@2 J@2 K@2 ~@2 I@2 J@2 K@2 ~@10
>`.pickRestart({
A: "[b4@9 ~ b4@4 d5@11 ~ b4@2 a4@2 g4@12 [g#4,a4]@2 g4@2 a#4@4 [g#4,a4] ~ g4@2 a4@2 g4@3 ~ e4@6 g4@14]/5", // Amaj7
B: "[[a#4,d5]!3 [a4,c5] ~ [g4,a#4] ~ [d4,b4]@6 b3 d4 f4@4 e4@3 d4 c4@2 b4@7]/4", // A# Am Gm G
C: "b4@2 c5@2 c#5@2 d5@3 ~ a4@2 b4@3 ~", D: "g4@15 ~", E: "[e5@4 e5 d#5 e5 g5@6 d5@3]/2",
F: "[d5@7 ~ d5@2 c#5@2 d5 ~ f5@8 e5@10, ~@14 e5 ~@17]/2", G: "[b5@2 a5@2 e5@2 g5@5 ~ [a5,a#5,b5] ~ a5@18]/2",
H: "[a#4!3 a4 ~ g4 ~ d4@6 [c4,e4]@2 [c5,e5]@9]/3", I: "[g5@4 g5 f#5 g5 a#5@6 f5@3]/2",
J: "[f5@7 ~ f5@2 e5@2 f5 ~ g#5@8 g5@10, ~@14 g5 ~@17]/2", K: "[d6@2 c6@2 g5@2 a#5@5 ~ [c6,c#6,d6] ~ c6@18]/2",
})).s("gm_overdriven_guitar").gain(0.39).pan(0.6)
// bass · electric bass finger
const bass = note(`<
~ A B C D E F G H I J K L K M N O P Q R S P T U@2 K V N W N W N O X@2 Y Z AA@2 AB AC AD AE AF AG AH AI AJ AK AL@2 AM@2
AN@2 AO@2 AP@2 AQ@2 AR@2 AS AT AU AV AW AX AY AZ BA@2 BB@2 BC@2 BD@2 BE BF BG@2 BH@2 BI@2 BJ BK BL@8
>`.pickRestart({
A: "g2@5 ~ g2 ~ g2@2 g1@2 a1@2 a#1@2", B: "b1@5 ~ b1 ~ b1@5 ~ b1@2", C: "e2@5 ~ e2 ~ e2@5 ~ d#2@2",
D: "d2@5 ~ d2 ~ g2@4 a#1@2 b1@2", E: "c2@5 ~ c2 ~ c2@5 ~ c2@2", F: "f2@5 ~ f2@4 f2@4 f2 ~",
G: "g1@5 ~ g1@2 g1 ~ d1@2 ~@2 d1@2", H: "e1@2 g1 b1 g2 g#2 e2 b1", I: "a1@5 ~ a1 ~ a1@5 ~ e1 ~",
J: "d1@5 ~ d1@3 ~ d1 ~ f#1@3 ~", K: "g1@5 ~ g1 ~ g1@8", L: "~@2 g1 ~@2 g1 ~@2 g1@5 ~ d1 e1",
M: "~@2 g1 ~@2 g1 ~@2 g1@6 d1 e1", N: "g1@5 ~ g1 ~ g1@7 ~", O: "g#1 ~ g#1 ~@2 g#1 ~@2 g#1@5 ~ g#1 ~",
P: "a1@5 ~ a1 ~ a1@8", Q: "~@2 a1 ~@2 a1 ~@2 a1@5 ~ [d#2,e2] a1", R: "d1@5 ~ d1 ~ d1@8",
S: "~@2 d1 ~@2 d1 ~@2 d1@5 ~ d1 g#1", T: "~@2 a1 ~@2 a1 ~@2 a1@5 ~ a1 e1",
U: "[d1@5 ~ d1@2 ~@2 d2@3 ~ [d1,d2]@8 d1@3 ~ d1@2 d2@2 d1 ~, ~@4 d1@3 ~@9]/2", // D
V: "d1 ~@2 d2@2 d1 f#1 ~, ~@2 d1@7 ~@7", W: "g1 ~ g1 ~@2 g1 ~@2 g1@6 d1 e1",
X: "[a1@5 ~ a1 ~ a1@6 ~@4 e2@4 e1@3 ~ e1@2 b1@2 e1@2, ~@7 e1@4 ~@5]/2", Y: "c2@5 ~ c2 ~ c2@6 f1@2",
Z: "~@2 f1@4 f1@2 f1@6 c2 ~", AA: "[g1@5 ~ g1 ~ g1@2 d1@2 ~@6 e2@4 e1@3 ~ e1@2 b1@2 e1@2, ~@7 e1@4 ~@5]/2",
AB: "a1@5 ~ a1 ~ a1@6 a1@2", AC: "d1@5 ~ d1 ~ d1@5 ~ d1@2", AD: "g1@5 ~ g1 ~ g1@2 g1@2 a1@2 a#1@2",
AE: "b1@6 b1 ~ b1@5 ~ b1@2", AF: "e2@5 ~ e2 ~ e2@6 d#2@2", AG: "d2@5 ~ d2 ~ g2@4 d2@2 c#2@2",
AH: "c2@4 ~@2 c2 ~ c2@5 ~ c2@2", AI: "f1@5 ~ f1 ~ f1@5 ~ f1@2", AJ: "d1@5 ~ d1 ~ d1@6 a1@2",
AK: "~@4 d1@11 ~, d2@15 ~", AL: "[g1@5 ~ g1 ~ g1@4 ~@2 g1@7 ~ g1 ~ g1@8]/2",
AM: "[a1@5 ~ a1 ~ a1@5 ~ a1@7 ~ a1 ~ a1@4 d2@4]/2", AN: "[d1@5 ~ d1 ~@7 d2@8 d1 ~ d1@4 d1@4, ~@8 d1@13 ~@11]/2",
AO: "[g1@5 ~ g1 ~ g1@6 d1@4 d1@8 ~@2 d2@2 d1@2, ~@13 d1@2 ~]/2",
AP: "[g1@5 ~ g1 ~ g1@6 e1@8 e1@3 ~@3 e2@2 e1@2, ~@13 e1@2 ~]/2", AQ: "[a1@5 ~ a1 ~ a1@6 c2@7 ~ c2@4 c2@2 c2@4]/2",
AR: "[g1@5 ~ g1 ~ g1@6 a1@4 a1@4 a1@3 ~ a1@2 a1@2 a1@2]/2", AS: "d2 ~ d2 ~ d2@2 d2 ~ d2@2 d2 ~ d2@2 d2@2",
AT: "f2@2 f2@2 f2 ~ f2 ~ f2@2 c2@2 f2 ~ c2@2, ~@10 a#1 ~@5", AU: "a#1@4 ~@2 a#1 ~ a#1@6 ~@2",
AV: "a#1 ~ a#1 ~@2 a#1 ~@2 a#1@5 ~ f1 g1", AW: "a#1@4 ~@2 a#1 ~ a#1@8", AX: "~@2 a#1 ~@2 a#1 ~@2 a#1@4 ~@2 a#1 ~",
AY: "f2@5 ~ f2 ~ f2@5 ~ f2@2", AZ: "d2@5 ~ d2 ~ g1@4 d2@2 c#2@2",
BA: "[c2@5 ~ c2 ~ c2@5 ~ c2@7 ~ c2 ~ c2@3 ~ c2@2 d2@2]/2",
BB: "[d#2@5 ~ d#2 ~ d#2@5 ~ g#1@4 g#1@3 ~ g#1 ~ g#1@3 ~ g#1@4]/2",
BC: "[a#1@5 ~ a#1 ~ a#1@4 f1@2 g1@4 c2@2 d2@2 f2@2 f#2@2 g2@2 d2@2 c#2 ~]/2",
BD: "[c2@4 d2@2 d2@2 d#2@2 d#2@2 e2@2 f2@8 f2@2 f2@3 ~ f2@3 ~]/2", BE: "a#1@5 ~ a#1 ~ a#1@5 ~ a#1@2, ~@13 f2@2 ~",
BF: "a#1@2 a#1 ~ c2@2 c2 ~ c#2@2 c#2 ~ d2@2 d2 ~", BG: "[d#2@5 ~ d#2 ~ d#2@4 d#2@2 g#1@7 ~ g#1 ~ g#1@3 f1 g#1@4]/2",
BH: "[a#1@5 ~ a#1@2 a#1@2 g#1 ~@3 g1@10 f2@2 f#2@2 g2@2 d2 ~]/2", BI: "[c2@2 d1!2 d#1!2 e1 f1@4 f1 f1@2 f1@2]/2",
BJ: "a#1@5 ~ a#1 ~ a#1@8", BK: "~@2 a#1 ~@2 a#1 ~@2 a#1@8",
BL: "[a#1@5 ~ a#1 ~ a#1@10 ~ a#1 ~@2 a#1 ~@3 a#1@10 ~ a#1@80 ~@11]/8",
})).s("gm_electric_bass_finger").gain(0.4)
// chords · synth strings 1
const synth_strings_1 = note(`<
~ A@2 B@2 C D E F G H I@6 J@2 K@2 J@2 L@2 M@2 N@4 O@2 P@2 Q@2 R@2 S@2 E T U V C D W X Y@2 J@2 L@2 Z@2 AA@2 Q@2 AB@2 AC
AD AE@2 AF@2 AG@4 AH@2 AI@2 AJ@2 AK@2 AL@2 AM@2 AN@2 AO@2 AP@7 ~
>`.pickRestart({
A: "[[d4,g4,b4]@13 ~ [d4,f#4,b4]@18]/2", // G Bm
B: "[[e4,g4,b4]@13 ~ [f4,a4]@9 ~ g4@3 ~ [f4,g#4]@3 ~, ~@14 d4@17 ~, ~@24 b4@7 ~]/2", C: "[c4,e4,g4,b4]@15 ~",
D: "[d#4,g4,a4]@15 ~", E: "[d4,g4,b4]@15 ~", F: "~@3 c#5@4 ~, [e4,a4]@15 ~", G: "[e4,g4,a4]@15 ~",
H: "g4@4 f#4@3 ~, [d4,a4]@7 ~", I: "[[d4,g4]@32 [d4,f#4]@31 ~ [e4,g4]@13 ~ [e4,g#4,b4]@17 ~, b4@77 ~@19]/6",
J: "[[e4,g4,a4,c5]@31 ~]/2", K: "[[d4,f#4,a4]@31 ~]/2", L: "[[d4,f#4,a4]@13 ~ [c4,e4,g4]@17 ~]/2",
M: "[[d4,g4,b4]@13 ~@9 c5@9 ~, ~@14 [c4,e4,g4]@17 ~]/2", N: "[g4@31 ~ f#4@31 ~, [d4,b4]@63 ~]/4",
O: "[[e4,g4,b4]@13 ~ [e4,g#4,b4]@17 ~]/2", P: "[[e4,g4,a4,c5]@6 ~ b4@4 e4@4 ~, ~@7 g#4@8 ~, ~@11 b4@3 ~@2]/2",
Q: "[[e4,g4,a4,c5]@12 ~@2 [d#4,g4,a4,c5]@17 ~]/2", R: "[[d4,g4,b4]@13 ~ b4@7 ~ [e4,b4]@8 ~@2, ~@7 g#4@8 ~]/2",
S: "[[g4,a4,c#5]@13 ~ g4@9 ~ f#4@7 ~, ~@14 [d4,a4]@17 ~]/2", T: "[d4,f#4,b4]", U: "[e4,b4], g4@7 ~",
V: "[f4,a4]@7 ~ g4@3 ~ [f4,g#4]@3 ~, d4@15 ~, ~@8 b4@7 ~", W: "[d4,g4,a4]@15 ~", X: "[d4,f#4,a4] ~",
Y: "[[d4,g4,b4]@31 ~]/2", Z: "[[d4,g4,b4]@13 ~ [c4,e4,g4]@16 ~@2]/2",
AA: "[[g4,b4]@13 ~ [e4,g#4,b4]@17 ~, d4@11 ~@21]/2", AB: "[[d4,g4,b4]@6 ~ a4@8 ~, ~@7 c#5@7 ~@2]/2",
AC: "[e4,g4,a4,c5]@7 ~", AD: "[d#4,g4,a#4]@7 ~", AE: "[[f4,a#4,c5,d5]@31 ~]/2", AF: "[[f4,d5]@15 ~, a4@7 ~]/2",
AG: "[[f4,g#4,c5,d5]@13 ~ [g#4,b4,d5]@7 ~ [g4,b4,d5]@6 ~@10 c5@24 ~@2, ~@30 [c4,d#4,g4]@31 ~@3]/4", // Dm7b5 G#dim G Cm
AH: "[[d#4,g4,a#4]@12 ~@2 [f#4,a#4,c#5,d#5]@17 ~]/2", AI: "[[f4,a#4,d5]@6 ~ [g#4,b4,d5]@4 [g4,b4,d5]@3 ~@2]/2",
AJ: "[[e4,g4,a#4,c5]@13 ~ [d#4,g4,a#4]@17 ~]/2", AK: "[[d#4,g#4,c5]@23 ~ [f4,a#4,d5]@6 ~@2]/2",
AL: "[[d#4,g4,a#4]@11 ~@3 [f#4,a#4,c#5,d#5]@17 ~]/2", AM: "[[f4,a#4,d5]@11 ~@3 [g#4,b4,d5]@8 [g4,b4,d5,f5]@7 ~@3]/2",
AN: "[[e4,g4,a#4,d5]@13 ~ [d#4,g4,a#4]@17 ~]/2", AO: "[[d#4,g#4,c5]@31 ~]/2",
AP: "[[d#4,g4,a#4]@36 ~ [f4,a#4,d5]@74 ~]/7", // D# A#
})).s("gm_synth_strings_1").gain(0.15).pan(0.6)
// chords · brass section
const brass_section = note("<~@35 A@2 B@2 C D ~@22 E F ~@8 G@2 H@2 I@2 J@2 G@2 K@2 L@2 M@2 ~@8>".pickRestart({
A: "[[e4,a4,c5]@13 ~ [d#4,a4,c5]@17 ~, g4@31 ~]/2", // Am Adim
B: "[[d4,g4,b4]@12 ~@2 [d4,f4]@7 ~ e4@8 ~@2, ~@14 [g#4,b4]@17 ~]/2", C: "[c#4,e4,g4]@15 ~",
D: "[c4,e4,g4]@8 [d4,f#4]@7 ~, a4@15 ~", E: "[g4,a4,c5]@15 ~", F: "[a#4,c5,d#5]@15 ~",
G: "[[g4,c5,d#5]@13 ~ [f#4,c5,d#5]@17 ~, a#4@31 ~]/2", // Cm Cdim
H: "[[f4,a#4,d5]@12 ~@2 [f4,g#4]@7 ~ g4@9 ~, ~@14 [b4,d5]@17 ~]/2", // A# Fm Bm
I: "[[g4,a#4]@13 ~ [d#4,g4,a#4]@8 [f4,a4]@8 ~@2, e4@7 c5@8 ~]/2", J: "[[g#4,a#4,c5,d#5]@13 ~ [g#4,a#4,d#5]@17 ~]/2",
K: "[[f4,a#4,d5]@10 ~@4 [f4,g#4]@8 g4@9 ~, ~@14 [b4,d5]@17 ~]/2", // A# Fm Bm
L: "[[e4,g4,a#4]@13 ~@9 [f4,a4]@8 ~@2, ~@14 c5@17 ~, ~@7 [d#4,g4,a#4]@5 ~@4]/2", M: "[[g#4,a#4,c5,d#5]@31 ~]/2",
})).s("gm_brass_section").gain(0.35)
// chords · pad choir
const pad_choir = note("<~@63 A B C@2 D@2 E@4 ~@24>".pickRestart({
A: "[e4,g4,a4,c5]@15 ~", B: "[g4,a#4,c5,d#5]@15 ~", C: "[[f4,a#4,d5]@31 ~]/2", D: "[[a4,d5,f5]@31 ~]/2",
E: "[[f4,g#4,c5,d5]@13 ~ [g#4,b4,d5,f5]@8 [g4,b4,d5,f5]@7 ~ [d#4,g4]@7 ~ [g4,c5]@7 ~ [g4,a#4,c5,d#5]@7 ~ [c5,d#5,g5]@9 ~, ~@30 a#4@15 ~@19]/4", // Dm7b5 G#dim G7 D# C5 Cm7 Cm
})).s("gm_pad_choir").gain(0.15).pan(0.4)
// chords · string ensemble 1
const string_ensemble_1 = note("<~@87 A@4 B@6>".pickRestart({
A: "[~ a#5@63]/4", B: "[~@5 [a#2,d4,f4,a#4,a#5]@83 ~@8]/6",
})).s("gm_string_ensemble_1").gain(0.24)
// drums · kick
const kick = s("bd").struct(`<
~ A@9 B C D C D C D C D C D C D A E C D C D C D C D A E A F A E A C@8 G A H A H A H A H A H A H A H I J C D C D C D K
L A F A@3 M@2 I M F M N A N C D C O P ~@5
>`.pickRestart({
A: "x ~@2 x!2 ~@2 x", B: "x ~@5 x ~ x ~@2 x ~@2 x ~", C: "x ~@2 x!2 ~@3", D: "x ~ x ~@2 x ~@2 x ~@7",
E: "~ x ~ x ~ x ~ x", F: "~ x ~ x!2 ~@2 x", G: "x", H: "~@3 x!2 ~@3", I: "x!8", J: "x!5 ~@3", K: "x ~@2 x ~@3 x",
L: "~@3 x ~@3 x", M: "x ~@2 x!3 ~ x", N: "~ x ~ x!2 ~@3", O: "~@3 x ~@2 x ~@3 x ~@5", P: "~@5 x ~@10",
})).gain(0.72)
// drums · snare
const snare = s("sd").struct("<A B@39 C B@7 D B E B E B E B E B E B E B E ~ F B@15 ~ B@2 D G B@5 H ~@6>".pickRestart({
A: "~@12 x ~ x!2", B: "~ x ~ x", C: "~@4 x ~@7 x!2 ~@2", D: "~ x ~@2", E: "~@3 x", F: "~@10 x ~ x!3 ~",
G: "~@4 x ~@7 x!3 ~", H: "~@5 x ~@10",
})).gain(0.56)
// drums · hihat
const hihat = s("hh").struct("<~ A B@8 C B@12 D B@2 E B@13 D B@7 F B@13 G B@10 A B D B@14 H ~@6>".pickRestart({
A: "~ x!7", B: "x!8", C: "x!5 ~@3", D: "x!7 ~", E: "x!5 ~ x ~", F: "x!2 ~@6", G: "x!6 ~ x",
H: "~ x ~ x ~ x ~ x ~@2 x ~ x!3 ~",
})).gain(0.48)
// drums · low tom
const low_tom = s("lt").struct("<~@10 [~@5 x ~@2] ~@52 [x!8] [x!5 ~@3] ~@15 [~ x!7] ~@16>").gain(0.56)
// drums · open hat
const open_hat = s("oh").struct("<A ~@9 A ~@15 B ~@13 A ~@7 C ~@41 D E F G ~@3>".pickRestart({
A: "~@7 x", B: "~@5 x ~ x", C: "~@3 x", D: "~@15 x", E: "~@8 x!2 ~ x!5", F: "x ~ x!4 ~ x!2 ~ x!6", G: "~ x!5 ~ x ~@8",
})).gain(0.32)
// drums · open hat · soft notes
const open_hat_soft = s("oh").struct("<~@91 [~@5 x ~ x ~@8] ~ [~@8 x!3 ~@5] ~@3>").gain(0.16)
// drums · mid tom
const mid_tom = s("mt").struct("<[~@5 x ~@2] ~@9 [~ x] ~@29 [~@7 x] ~@56>").gain(0.64)
// drums · crash
const crash = s("cr").struct(`<
~ A ~@21 B ~@9 B ~ C ~ B ~ A ~ A ~@6 D ~@13 E ~@2 A ~@4 B F G C ~ B H A ~@3 C ~ B H C H ~@10
>`.pickRestart({
// … 26 more lines
More by Renzo Arbore
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.