0:00/0:00
// Io voglio vivere — Nomadi
// 125 bpm, 4/4, key A 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 154 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(125/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.
// bass · electric bass finger
const bass = note(`<
~ A B C D A B E@2 F@3 G H I G J H I K G H I L M@2 L H N@2 O@3 P Q@2 A R S T U V W T A B C X A B Y@3 Z H I G AA H AB@2
AC@2 AD@2 AE@2 L H N@2 Q@2 AF AG AH@2 A B C AI A AJ C T A AK C T A AL W AM AN AO@2 AP AQ AA AR@2 A AS C T AT AL C T A
AK AU T AV AL AW AX A AY C T AZ AL W T A B C BA@2 AL C T AZ AK BB BC AZ AL C BD BE AL C BF A BG BH@6 ~
>`.pickRestart({
A: "d2@2 ~ d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2@2 ~",
B: "a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1@2 ~",
C: "e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2@3",
D: "f#1 ~@2 f#1 ~@2 f#1 ~@2 f#1 ~@2 f#1 ~@2 f#1 ~@2 f#1 ~@2 f#1@2 ~",
E: "[e2@2 ~ e2@2 ~ e2@2 ~ e2 ~@2 e2 ~@2 e2 ~@2 e2@2 ~ d2@25 ~@2]/2", F: "[d2@71 ~]/3",
G: "f#2@7 ~@2 f#2 ~@2 f#2@11 ~", H: "e2@7 ~@2 e2 ~@2 e2@11 ~", I: "b1@7 ~@2 b1 ~@2 b1@12", J: "a1@8 ~ a1 ~@2 a1@11 ~",
K: "f#2@3 e2@5", L: "d2@7 ~@2 d2 ~@2 d2@12", M: "[a1@12 e2@9 b1@12 f#2@14 ~]/2", N: "[d2@21 a1@26 ~]/2",
O: "[e2@21 f#2@26 d2@24 ~]/3", P: "a1", Q: "[e2@21 f#2@26 ~]/2",
R: "a1@2 ~ a1@2 ~ a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1@3",
S: "e2@2 ~ e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2@2 ~ e2@3",
T: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2@3",
U: "d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2",
V: "a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2 ~@2 a2@3, d2 ~@23",
W: "e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2@2 ~ f#2@2 ~",
X: "f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2@2 ~",
Y: "[e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 d2@26 ~ d3@24, ~@47 a2@2 ~@23]/3",
Z: "f#2@6 ~@3 f#2 ~@2 f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2@2 ~", AA: "a2@7 ~@2 a2 ~@2 a2@11 ~",
AB: "[b1@8 ~ b1 ~@2 b1@9 f#2@11 ~ e2@14 ~]/2", AC: "[a1@11 ~ a1@10 ~ e2@9 ~ e2 ~@2 e2@12]/2",
AD: "[b1@7 ~@2 b1 ~@2 b1@9 d2@9 ~@3 d2 ~@2 d2@11 ~]/2", AE: "[a1@4 e2@3 b1@4 f#2@4 ~]/2", AF: "d2", AG: "a2",
AH: "[e2@21 f#2@22 ~@5]/2", AI: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2@2 ~",
AJ: "a2@2 ~ a2@2 ~ a2@2 ~ a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2 a2@2 ~",
AK: "a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1 ~@2 a1@3",
AL: "a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2@2 ~ a2 ~@2 a2@3",
AM: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~ f#2@3 ~", AN: "d2@8 a2@3 d2@9 ~ d2@3",
AO: "[a2@8 ~ a2 ~@2 a2@2 b2 a2@6 ~@3 e2@7 ~@2 e2 ~@2 e2@9 a2@2 ~, ~@23 a2@3 ~@22]/2",
AP: "f#2@7 ~@2 f#2@3 f#3@2 f#2@10", AQ: "d2@7 ~@2 d2 ~@2 d2@8 ~ d2@3",
AR: "[e2@4 ~@2 e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e3@2 ~ e3@2 ~ e3@2 ~ e3@2 ~ e3@2 ~ e3@2 ~ e3@2 ~ e3@3, ~@23 b2@2 ~@23]/2",
AS: "a1@2 ~ a1@2 ~ a1@2 ~ a1@2 ~ a1@2 ~ a1 ~@2 a1@2 ~ a1@3",
AT: "[c2,d2] ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2@2 g2", // Csus2
AU: "e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@2 ~ e2@3",
AV: "d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~ d2 ~@2 d2 ~@2 d2@3, d#2 ~@23",
AW: "e2@2 ~ e2 ~@2 e2 ~@2 e2@2 ~ e2 ~@2 e2 ~@2 e2 ~@2 e2@2 ~",
AX: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2@2 ~ f#2 ~@2 f#2@3, e2 ~@23",
AY: "[g1,a1] ~@2 a1 ~@2 a1@2 ~ a1@2 ~ a1@2 ~ a1@2 ~ a1@2 ~ a1@3", // Gsus2
AZ: "d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2@3",
BA: "[f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~@4 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2 ~@2 d2@3, ~@21 f#2@5 ~@22]/2",
BB: "e2@2 ~ e2 ~@2 e2@2 ~ e2@2 ~ [c#2,e2] ~@2 e2 ~@2 e2 ~@2 e2@3", // C#m
BC: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@3 g#2@3",
BD: "f#2@2 ~ f#2@2 ~ f#2 ~@2 f#2@3 f#3@3 f#2@3 ~@3 f#2@3, ~@3 f#3",
BE: "d2 ~@2 d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~ d2@3",
BF: "f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@2 ~ f#2@3 a2@3",
BG: "a2@2 ~ a2@2 ~ a2@2 ~ a2 ~@2 a2@2 ~ a2 ~@2 a2 ~@2 a2@3, g2 ~@23",
BH: "[e2 ~@2 e2 ~@2 e2 ~@2 e2 ~@2 e2@2 ~ e2 ~@2 e2 ~@2 d2@22 ~@2 d2@2 ~ d3@85 ~@11, ~@47 a2@2 ~@95, ~@48 c3 ~@95]/6",
})).s("gm_electric_bass_finger").gain(0.48)
// chords · synth strings 1
const synth_strings_1 = note("<~@12 A@3 B@3 C D@5 E@2 ~@128>".pickRestart({
A: "[[f#2,f#3,c#4,f#4]@23 ~ e4@23 [b2,b3,d4,f#4]@24 ~, ~@23 [g#3,b3]@24 ~@25]/3", // F#5 Bm G#m
B: "[[f#2,f#3,a3,c#4,f#4]@23 ~ [a3,c#4,e4]@23 ~ [e2,e3,b3,e4]@24, ~@23 a2@24 g#3@24 ~]/3", // F#m A E5
C: "[b2,b3,d4,f#4]@23 ~, d#4 ~@23", // Bm
D: "[[f#2,f#3,a3,c#4,f#4]@8 ~ g#3@14 ~@25 [e2,e3,b3,e4]@23 ~ b3@23 [d2,d3,f#3,a3,d4]@25, ~@8 [b3,e4]@15 [c#4,e4]@24 g#3@24 ~@49, ~@24 [a2,a3]@25 ~@22 [b2,d4,f#4]@23 ~@26]/5", // F#m E5 D E5 C#m A Bm
E: "[[a2,e4]@4 ~@8 e4@3 ~@6 [b3,d4]@8 ~@3 a3@15 ~, c#4@2 ~@5 f#4@8 ~, a3 ~@15 c#4@4 ~@4]/2", // A5 Bm
})).s("gm_synth_strings_1").gain(0.27).pan(0.6)
// chords · synth strings 1 · soft notes · E
const synth_strings_1_soft = note("<~@12 a3 [[e2,e3]] ~@10 [~@12 g#3 ~@11, ~@11 b3@4 ~@9] ~@129>")
.s("gm_synth_strings_1").gain(0.14).pan(0.6)
// other · fiddle
const fiddle = note(`<
~ A@6 B@4 ~@33 C@2 D@2 E@2 F@2 G ~@8 H@4 I@4 ~@9 J@2 K ~@4 L@2 M@2 N ~ O@2 ~@11 P ~@5 Q@2 R@2 ~@4 S@2 ~@6 T U@3 ~@2 V
W@4 X@4 E@2 Y@2 Z@2 AA@2 AB@2 ~@3
>`.pickRestart({
A: "[~@9 a5@3 g#5@3 e5@5 ~ e5@10 ~ e5@4 d5@5 c#5@6 b4@16 a4@3 g#4@2 ~ g#4@5 a4@12 b4@3 c#5@6 d5@10 ~@3 g#5@3 ~@5 d#5 ~@12 e5@3 d5@6 c#5@6, ~@105 a5@5 ~ e5@18 ~@15]/6",
B: "[~@14 a4@3 g#4@3 a4@24 ~ a4@2 f#4@47 ~@2, b4@16 ~@28 g#4@5 ~@47]/4",
C: "[~@9 a5@3 g#5@3 ~@5 d#5 ~@10 d5 ~ e5@3 d5@5 ~ c#5@6, ~@15 e5@17 ~@16]/2",
D: "[b4@15 a4@3 g#4@2 ~ g#4@5 a4@13 b4@2 c#5@6 ~]/2",
E: "[d5@9 a5@3 g#5@3 ~@5 d#5 ~@11 e5@4 d5@5 c#5@6 ~, ~@15 e5@17 ~@16]/2",
F: "[~@14 a4@3 g#4@3 a4@24 f#4@4, b4 ~@2]/2", G: "g#4@3 a4@5 ~@6 g#4@3 f#4@6 ~, ~@9 a4@7 ~@8",
H: "[a5@23 g#5@18 e5@6 d5@24 f#5@25]/4", I: "[c#5@12 b4@9 d5@17 c#5@9 a4@24 g#4@23 ~@2]/4",
J: "[~@2 d5@5 c#5@7 b4@3 a4@11 ~@20]/2", K: "~@3 e5@3 d5@8 c#5@3 ~ b4@3 ~@3",
L: "[~@23 d5@3 c#5@5 ~@7 b4@3 a4@4 ~@3, ~@32 c#5@9 ~@7]/2", M: "[~@23 e5@4 d5@3 c#5@5 d5@2 c#5@4 b4@3 c#5@4]/2",
N: "a4", O: "[~@20 a4@19 b4@3 c#5@5 ~]/2", P: "~@2 e5@3 ~@9 c#5@3 b4@3 ~@4",
Q: "[d5@4 c#5@4 ~ c#5@5 b4@3 a4@3 b4@3 a4@14 ~@11]/2", R: "[d5@2 e5@4 d5@2 ~ d5@5 c#5@3 ~ b4@2 c#5@3 a4@25]/2",
S: "[~@3 c#5@4 ~@2 c#5@6 ~@2 a4@3 b4@3 a4@10 ~@15, d5@5 ~@43]/2", T: "d5@2 c#5@4 b4@2 ~@6 b4@3 a4@5 ~@2, ~@3 c#5@4 ~",
U: "[~@23 d5@3 e5@3 d5@3 c#5@4 d5@3 c#5@3 b4@2 c#5@3 a4@18 ~@7]/3", V: "~@9 c#5@3 d5@3 e5@3 f#5@2 g#5@4",
W: "[a5@8 ~@3 g#5@3 ~ e5@5 e5@11 ~@2 e5@3 d5@5 c#5@6 b4@15 a4@3 g#4@2 ~@2 g#4@5 a4@13 b4@2 c#5@6 ~, ~@9 a5@4 ~@83]/4",
X: "[d5@9 a5@3 g#5@3 ~@5 d#5 ~@11 e5@4 d5@5 c#5@6 b4@16 a4@3 g#4@2 ~@19 b4@2 c#5@7, ~@15 e5@17 ~@36 a4@21 ~@7]/4",
Y: "[b4@15 a4@3 g#4@2 ~ g#4@5 a4@12 b4@3 c#5@6 ~]/2", Z: "[d5@8 a5@3 g#5@3 ~ e5@5 ~ e5@11 ~ e5@3 d5@6 c#5@6]/2",
AA: "[b4@15 a4@3 g#4@3 ~@22 g#4@2 ~ g#4@2, ~@21 a4@24 a4@2 ~]/2", AB: "[f#4@2 ~]/2",
})).s("gm_fiddle").gain(0.24)
// other · fiddle · soft notes
const fiddle_soft = note("<~@52 A ~@27 B@2 ~@4 C@2 ~@2 D@2 ~@12 E F ~@7 G@2 ~@3 H ~@7 I@2 ~@5 J ~@20>".pickRestart({
A: "~@7 g#4@2 ~@15", B: "[d5@3 ~@6 c#5 ~@10 c#5@3 a4@24 ~]/2", C: "[~@20 b4@3 a4@9 ~@14 d5@2]/2",
D: "[b4@7 ~ c#5@15 b4@21 ~@4]/2", E: "~@6 d5@9 ~@5 c#5@3 ~", F: "a4@2 ~", G: "[~@23 b4@9 ~@16]/2",
H: "~@6 b4@3 ~@5 b4@4 ~@6", I: "[~@23 a4@5 ~@20]/2", J: "~@8 g5 ~@15",
})).s("gm_fiddle").gain(0.16)
// chords · string ensemble 2
const string_ensemble_2 = note(`<
~ A@6 B@5 ~@23 C@2 D@4 E@8 F@6 G@5 H@8 I@7 J K L M N@3 O@8 P@4 Q@8 R@4 S@5 T@3 U@8 V@8 W@2 X Y@8 Z@4 AA@7 ~@2
>`.pickRestart({
A: "[[d3,d4,f#5,a5,d6]@23 [a3,e5,a5,c#6]@24 [e3,e4,e5,g#5,b5]@24 [f#3,f#4,c#5,f#5,a5]@24 [d3,d4,f#5,a5,d6]@24 [a3,e5,a5,c#6]@24 [e3,b4,e5,g#5]]/6", // D A E F#m D A E
B: "[~@20 [d3,f#4,a4,d5]@99 ~]/5", C: "[~@23 [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4]]/2",
D: "[~@23 [e2,e3,g#3,e4]@23 [f#2,f#3,c#4]@25 [d2,d3,a3]@24 [a2,c#4,e4], ~@22 b3@24 [a3,f#4]@24 ~ [d4,f#4]@22 ~@3]/4", // E F#5 D5 A D
E: "[~@23 [e2,e3,g#3,b3,e4]@24 [f#2,f#3,a3,c#4,f#4]@23 ~ [d2,d3,d5,f#5,a5]@23 ~ [a2,a3,c#5,e5,a5]@24 [e2,e3,b4,e5,g#5]@24 [f#2,f#3,a4,c#5,f#5]@23 ~ [d2,d3,f#5,a5,d6]@24 [a2,e5,a5,c#6]]/8", // E F#m D A E F#m D A
F: "[~@23 [e2,e3,b4,e5,g#5]@21 ~ [d2,d3,f#4,a4,d5]@48 ~@2 [f#2,f#3,c#4,f#4]@24 [g#3,b3,e4]@24 [d4,f#4]]/6", // E D F#5 E D
G: "[~@23 [f#2,f#3,c#4,f#4]@22 e3@2 [a2,a3,c#4,e4]@22 ~@2 [e2,g#3,b3,e4]@24 [b2,b3,d4,f#4]@22 ~@2 [f#2,c#4,f#4]]/5", // F#5 A E Bm F#5
H: "[~@8 [g#3,b3,e4]@14 ~ [a2,c#4,e4]@23 ~ [e2,e3,g#3,b3,e4]@24 b2@24 [d2,d3,a3]@24 [a2,a3,c#4,e4]@11 ~ [e2,g#3,b3,e4]@10 [b3,d4,f#4]@11 ~ [f#2,a3,c#4,f#4]@13 ~ d2@19 ~@6, ~@71 [d4,f#4]@47 ~@23 a2@2 ~@49]/8", // E A E D5 A E Bm F#m …
I: "[~@23 [d4,f#4]@21 [a2,c#4,e4]@26 ~ [g#3,b3,e4]@20 ~ [f#2,c#4,f#4]@26 ~ [d4,f#4]@24 [a2,c#4,e4]@23 ~ [b3,e4], ~@23 a3@47 ~@49 d2@3 ~@46]/7", // D A E F#5 D A E5
J: "~@7 c#4, ~@5 f#2", K: "~@23 [d2,f#3,d4]", L: "[d3,a3]@7 [a2,a3,c#4,e4]", M: "~@11 [e2,g#3,b3,e4]",
N: "[~@20 [f#2,a3,c#4,f#4]@27 [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4]]/3", // F#m D A
O: "[~@23 [e2,e3,g#3,b3,e4]@24 [f#2,f#3,a3,c#4,f#4]@21 ~@25 e4@26 [e2,e3,g#3,b3,e4]@21 [f#2,f#3,a3,c#4,f#4]@26 ~ [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4], ~@70 f#4@22 [a2,c#4]@27 ~@73, ~@71 a3@48 ~@73, ~@71 [d2,d3,d4]@22 a#3 ~@98]/8", // E F#m E F#m D A D
P: "[~@23 [e2,g#3,b3,e4]@24 [f#2,f#3,a3,c#4,f#4]@23 ~ [d2,d3,f#3,d4]@24 [a2,a3,c#4]]/4", // E F#m D A
Q: "[~@24 e2@23 [f#2,f#3,a3,c#4]@23 ~ [d2,f#3]@24 [a2,e3,a3,c#4]@23 ~ [e2,g#3,b3]@47 ~ [d2,f#3,a3,d4]@24 [a2,c#4], ~@23 [e3,g#3,b3]@24 ~@24 [d3,d4]@23 ~@98]/8", // F#m D A E D A E D
R: "[~@20 b2@2 ~ [e2,e3,g#3,b3,e4]@20 ~ [a3,c#4,f#4]@26 ~ [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4], ~@12 a3@11 ~@21 [f#2,f#3]@20 ~@32, ~@15 c#4@8 ~@73]/4", // E F#m D A F#
S: "[~@23 [e2,e3,g#3,b3,e4]@23 ~@14 f#3@11 [d3,d4,f#4]@21 [a2,c#4,e4]@26 ~ [e2,g#3,b3,e4], ~@46 f#2@25 a3@47 ~@2, ~@47 [a3,c#4,f#4]@24 d2@36 ~@13]/5", // E D A E F#m
T: "[~@20 [f#2,f#3,a3,c#4,f#4]@26 ~ [d2,d3,a3,d4,f#4]@22 e3@2 [a2,a3,c#4,e4]]/3", // F#m D A
U: "[~@23 [e2,e3,g#3,b3,e4]@22 [f#2,a3,c#4,f#4]@25 ~ [d4,f#4]@18 ~ e3@2 [a2,c#4,e4]@27 [e2,e3,g#3,b3,e4]@21 [f#2,f#3,a3,c#4,f#4]@26 ~ [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4], ~@71 a3@48 ~@73, ~@71 d3@15 ~@106, ~@71 d2@13 ~@108]/8", // E F#m D A E F#m D A
V: "[~@44 [f#2,f#3,a3,c#4,f#4]@26 ~@20 e3@2 [a2,a3,c#4,e4]@26 ~ [e2,e3,g#3,b3,e4]@21 [f#2,f#3,a3,c#4,f#4]@26 ~ [d2,d3,a3,d4,f#4]@23 ~ [a2,a3,c#4,e4], ~@23 [e2,e3,g#3,b3,e4]@23 ~@25 [d2,d3,a3,d4,f#4]@22 ~@99]/8", // F#m A E F#m D A E D
W: "[~@23 [e2,e3,g#3,b3,e4]@21 [f#2,f#3,a3,c#4,f#4]@4]/2", X: "~@23 [d2,d3,f#5,a5,d6]",
Y: "[~@23 [a2,a3,e5,a5,c#6]@24 [e2,e3,e5,g#5,b5]@21 ~ [f#2,c#5,f#5,a5]@26 [d2,d3,f#5,a5,d6]@24 [a2,a3,e5,a5,c#6]@24 [e2,e3,e5,g#5,b5]@21 [f#2,f#3,c#5,f#5,a5]@26 ~ [f#5,a5], ~@34 f#3@13 ~@49]/8", // A E F#m D A E F#m
Z: "[[d2,d3,d6]@23 [a2,e5,a5,c#6]@23 ~ [e2,e3,e5,g#5,b5]@21 ~ [f#2,a5]@27, ~@68 [c#5,f#5]@27 ~, ~@69 f#3@19 ~@8]/4", // D A E F#m F#5
AA: "[[d2,d3,d5,f#5,a5]@23 [a2,a3,c#5,e5,a5]@24 [e2,e3,b4,e5,g#5]@24 [d2,d3]@96 ~, ~@71 d4@68 ~@29, ~@71 f#3@60 ~@37, ~@71 a3@45 ~@52]/7", // D A E D
})).s("gm_string_ensemble_2").gain(0.3).pan(0.4)
// chords · string ensemble 2 · soft notes
const string_ensemble_2_soft = note(`<
~@52 A@5 B@2 C@3 D@2 ~ E F G@2 H I@7 ~ J ~@11 K@2 L@3 ~ M@2 N O@2 P@2 ~@17 Q R ~@7 R ~@24
>`.pickRestart({
A: "[~@23 a3@24 [e2,e3]@24 [b2,b3]@23 ~ a3@23 ~@2]/5", B: "[~@23 e3@23 f#3 ~]/2",
C: "[~@23 a3@9 ~ e3@13 ~ a3@22 ~@3, ~@32 e2@13 ~@27]/3", D: "[~@23 b3@24 ~]/2", E: "~@9 b2@2 ~@13", F: "~@2 b2 ~@21",
G: "[~@19 d3@23 ~@6]/2", H: "~ d2@9 ~@2",
I: "[~@24 e3@19 ~ [f#3,a3]@26 ~ [d3,a3]@24 a3@24 [e2,e3,g#3]@21 ~ [f#3,a3,f#4]@24 ~@3, ~@23 e2@20 ~@125]/7", // F#m D5 E F#m
J: "~@10 b2 ~", K: "[~@23 e3@24 ~]/2", L: "[~@23 a3@24 ~@2 g#2 ~@20 b2@2, ~@47 e3@24 ~, ~@53 a2@19]/3",
M: "[~@23 a3@24 ~]/2", N: "~@22 b2 ~", O: "[e3@34 e3@13 ~]/2",
P: "[~@36 c#4@3 ~@4 e3@4 ~, ~@23 [a3,e4]@12 ~ e4@11 ~, ~@33 a2@14 ~, ~@42 b3@5 ~]/2", Q: "~@21 a2@2 ~",
R: "~@21 e3@2 ~",
})).s("gm_string_ensemble_2").gain(0.15).pan(0.4)
// other · electric guitar muted
const electric_guitar_muted = note("<~@12 A B C D E F G H I J C K L ~@28 A M C D E M C N E M C O P ~@88>".pickRestart({
A: "[f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3]@2 ~", // F#
B: "[e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 e3 ~@2 [e2,e3] ~@2 [e2,e3]@2 ~ [e2,e3]@2 ~", // E
C: "[b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2 [b2,b3] ~@2", // B
D: "[f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3] ~@2", // F#
E: "[a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2", // A
F: "[e2,d3,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3]@2 ~", // E7 E
G: "b2 ~@2 b2 ~@2 b2 ~@2 b2 ~@2 b2 ~@2 b2 ~@2 b2 ~@2 b2@2 ~",
H: "f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3@2 ~ e3 ~@2 e3 ~@2 e3 ~@2 e3 ~@2",
I: "a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2 a2 ~@2",
J: "[d2,e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2", // Dsus2 E
K: "[c2,d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 d3@3, ~@21 d2 ~@2", // Csus2 D
L: "d2 ~@23", M: "[e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3]@2 ~",
N: "[f#2,f#3] ~@2 [f#2,f#3] ~@2 [f#2,f#3]@2 ~ [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@2 [e2,d3,e3] ~@2", // F# E E7
O: "[d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3] ~@2 [d2,d3]@2 ~", // D
P: "[a2,a3] ~@2 [a2,a3] ~@2 [a2,a3] ~@2 [a2,a3]@2 ~ [e2,e3] ~@2 [e2,e3] ~@2 [e2,e3] ~@5", // A E
})).s("gm_electric_guitar_muted").gain(0.36).pan(0.7)
// other · distortion guitar
const distortion_guitar = note(`<
~ A B C@2 A D@6 ~@12 E@2 ~@9 F@3 G@8 H I J@2 K@3 ~@12 L@2 ~@10 M@7 N@6 O@3 P Q@2 R S T U@2 V@2 W@4 X@6 Y@3 Z@7 AA AB@7
AC@2 AD@2 AE@2 AF AG@3 AH AI AJ@4 AK@4 ~@3
>`.pickRestart({
A: "[d2,d3]", B: "a1", C: "[~@24 f#2@10 ~@5 a2@3 c#3@6, e2@26 ~@10 f#2@7 ~@5]/2",
D: "[[a1,a2]@23 ~ e3@21 d2@98 ~, ~@23 e2@22 ~@99]/6", E: "[[a1,a2]@11 [e2,e3]@9 b1@12 ~ [f#1,f#2]@15, ~@5 b2 ~@6]/2",
F: "[~@23 d2@22 a1@27]/3",
G: "[[e2,e3]@21 [f#2,f#3]@27 d3@7 ~@8 d3@6 a2@26 e2@21 ~ f#2@26 [d2,d3]@24 a1@25, ~@48 d2@22 ~@46 f#1@27 ~@49]/8", // E F# D
H: "e2", I: "f#2@4 ~ a2 c#3@2, ~@12 f#2@11 ~", J: "[~ a2, [d2,d3]@25 ~@23, ~@23 a1@24 ~]/2", K: "[e2@21 d2@50 ~]/3",
L: "[[a1,a2]@11 [e2,e3]@9 ~ [b1,b2]@12 [f#1,f#2]@12 ~@3]/2", // A E B F#
M: "[d2@21 a2@26 e2@22 f#2@26 d2@24 a2@24 e2@22 f#2@3]/7",
N: "[~@5 e2@3 f#2@7 ~@3 f#2@5 d2@21 ~ a1@26 e2@22 f#2@26 d2@24 ~]/6", O: "[a2@23 e2@22 f#2@27]/3",
P: "d2@3 a2@3 ~@3 f#3@2 a3@4 f#3@9, ~@6 d3@5 ~@13",
Q: "[a1@2 e2@3 ~@3 c#3@4 e3@3 c#3@8 ~@3 b2@3 ~@4 g#3@3 b3@3 g#3@3 ~ f#3@2 c#3@2 ~, ~@6 a2@4 ~@13 e2@16 ~@9, ~@10 e3@3 ~@3]/2",
R: "~@3 c#3@3 ~@3 c#4@14 ~, f#2@17 ~@7, ~@2 f#3@3 ~@3", S: "~ a2 d3 f#3 a3 f#3@3, d2@7 ~@17",
T: "~@3 e2@3 a2@3 c#3@3 e3@3 c#3@8 ~, a1@5 ~@7",
U: "[~@3 b2@2 ~@3 g#3@3 ~@12 [b2,e4]@21 ~@4, e2@11 ~, ~@6 e3@12 ~@3 e3@23 ~@4, ~@4 b3@11 ~]/2", V: "[~@7 a1@9]/2",
W: "[e2@21 f#2@24 a2@2 d2@24 a2@24 ~]/4", X: "[e2@20 f#2@27 d2@22 a2@26 e2@22 f#2@27]/6",
Y: "[d2@23 a2@24 e2@22 f#2@3]/3", Z: "[~@20 a2@3 d2@22 a2@26 e2@22 f#2@26 d2@24 a2@24 ~]/7", AA: "e2@7 f#2",
AB: "[~@18 a2@2 d3 ~@2 d2@22 a2@26 e2@22 f#2@26 d2@24 a2@24 e2]/7", AC: "[~@45 a2@2 ~, ~@20 f#2@27 ~]/2",
AD: "[~@23 a1@24 ~, [d2,d3]@25 ~@23]/2", AE: "[e2@21 f#2@7 ~@4 a2@4 c#3@3 a2@3 f#2@3 a2@3, ~@29 f#2@7 ~@12]/2",
AF: "e2@2 ~@10 d3@9 a2 ~@2, d2@11 ~",
AG: "[[a1,a2]@23 [e2,e3]@22 ~@6 a2@3 c#3@3 ~@6 a2@3 ~@2 f#3@3 ~, ~@45 f#2@9 ~@3 f#3@7 ~@2 c#3@4 ~@2, ~@60 f#2@11 ~]/3", // A E
AH: "[d2,d3], c3 ~@23", AI: "[a1,a2]",
AJ: "[e2@26 ~@4 a2@3 c#3@3 ~@6 a2@2 ~@4 d3@23 [a1,a2]@24 ~, ~@27 f#2@20 d2@25 ~@24, ~@9 f#3@2 ~@13]/4", // A
AK: "[e3@15 ~@3 [a2,d3]@2 ~ d3@54 ~@21, e2@21 a2@2 ~@73, ~@15 e3@5 d2@59 ~@17]/4", // D5
})).s("gm_distortion_guitar").gain(0.4).pan(0.4)
// other · distortion guitar · soft notes
const distortion_guitar_soft = note(`<
~@26 A ~@8 B ~@3 C D ~@2 C ~@6 E ~@13 F ~ G ~@17 H ~@7 I J ~@2 C J K L M ~@27 C ~@8 N ~@3 O ~@2 P ~@9
>`.pickRestart({
// … 207 more lines
More by Nomadi
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.