0:00/0:00
// Belle speranze — Fiorella Mannoia
// 149 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 199 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(149/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
const bass = note(`<
~@8 A@2 B@2 A@2 B@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 E@2 A@2 B@2 C@2 F@2 G@2 H@2 I@2 J@2 A@2 K L M@2 N O P Q R S P T U V W
X Y@2 Z AA AB AC W X AD AE P AF AG AH U AI AJ AK Z AA K AL P AM AN AE P AM AO AP AQ@2 AR AS P AT AD AU AV AW AR AX AY
AZ AD AU BA BB BC@2 BD BE AN BF BD BE U AE W BG AD AE Z T AB BH W X BI@2 Z T AB BJ Z T AB BH W BG AD AE Z T AB BJ Z T
AB AU Z T AB BH W BG AD AE Z T AB BJ Z T AB AU Z T AB BH W BG AD AE Z T AB BJ Z T AB BK Z T AB BJ Z T AB AE BL@3
>`.pickRestart({
A: "f1/2", B: "bb1/2", C: "d2/2", D: "[bb1@20 g1@2 d2@2 c2@7 ~]/2", E: "[bb1@21 ~ g1@2 c2@8]/2",
F: "[bb1@19 ~ bb1@2 g1@2 c2@8]/2", G: "[f1@19 ~ c2@4 f2@8]/2", H: "[eb2@15 c2]/2", I: "[bb1@23 ~ d2@4 f2@4]/2",
J: "[g1@19 ~ d2@4 g2@6 c2@2]/2", K: "bb1", L: "c2@13 ~ c2@2", M: "[f1@2 ~@2 f1@9 ~ f1@4 ~@2 f1@11 ~]/2",
N: "bb1@2 ~@2 bb1@8 ~@2 bb1 ~", O: "~@2 d2 ~ c2@4", P: "f1@2 ~@2 f1@9 ~ f1@2", Q: "~@4 f1@9 ~ f1@2",
R: "bb1@2 ~@2 bb1@9 ~ bb1 ~", S: "~@4 e2@2 f2@2 bb1@2 c2@3 ~ c1@2", T: "~ f1@3", U: "bb1@2 ~@2 bb1@9 ~ bb1@2",
V: "~@2 bb1@2 ~ bb1 c2@2", W: "d2@13 ~ d2@2", X: "~ d2@3", Y: "[bb1@9 ~ bb1 d2 c2@4]/2", Z: "f1@6 ~ f1",
AA: "~@4 f1@11 ~", AB: "bb1@6 ~ bb1", AC: "~@4 bb1@5 ~ c2@2 g2@2 a2@2", AD: "bb1@13 ~ bb1@2", AE: "~ bb1 c2@2",
AF: "~@4 f1@2 c2@2 f2@7 ~", AG: "eb1@2 ~@2 eb1@9 ~ eb1@2", AH: "~@2 eb1@2 eb2@3 ~", AI: "~@2 bb1@5 ~",
AJ: "g1 ~ g1@4 ~ g1", AK: "~@4 g1@7 ~ g1@4", AL: "c2@6 ~ c2", AM: "~@2 f1@4 ~ f1", AN: "bb1 ~ bb1@4 ~ bb1",
AO: "bb1@2 f1 ~ bb1@8 ~@2 bb1@2", AP: "~ bb1 d2 f2 g2 bb2@3", AQ: "ab1/2", AR: "db2@13 ~ db2@2", AS: "~ db2@3",
AT: "~@4 f1@7 ~ f1@4", AU: "~ bb1@3", AV: "ab1@13 ~ ab1@2", AW: "~@2 ab1 eb2 ab2@4", AX: "~@4 db2@4 ab1@5 ~ ab1@2",
AY: "f1@13 ~ f1@2", AZ: "~ f1@2 ab1", BA: "bb1@6 ~ db1", BB: "eb1 ~ eb1@2 ~ eb1@3",
BC: "[ab1@21 ~@3 c2@4 eb2@2 f2@2]/2", BD: "f1 ~ f1@4 ~ f1", BE: "~@2 f1@3 ~ f1@2", BF: "~@2 bb2 ~ bb1@4 c2@7 ~",
BG: "~@4 d2@11 ~", BH: "~ bb1@2 c2", BI: "[bb1@9 ~ bb1@2 c2@4]/2", BJ: "~@2 bb2 ~ bb1@12", BK: "~@2 bb1@4 c2 g1",
BL: "[f1@43 ~@5]/3",
})).s("gm_electric_bass_finger").gain(0.72)
// chords · electric guitar clean
const electric_guitar_clean = note(`<
A@4 B@8 C@4 D@8 E@16 F@8 G@2 H@2 A@4 I@2 J K E@16 F@8 L@2 H@2 A@4 I@2 M@4 N O P@2 Q@2 R@2 S T U@2 V@2 W X Y@2 Z@2 AA@3
AB AC@2 AD AE AF AG@8 AH@5 AI@4 AJ@4 AK@2 AL@2 I@2 AM@2 I@2 AN@6 I@2 AM@2 AK@2 AL@2 I@2 AO@2 AJ@4 AK@2 AM@2 I@2 AM@2
AK@2 AL@2 I@2 AP@5
>`.pickRestart({
A: "[f3@2 ~@2 f4@2 f4 ~@3 e4 ~@2 c4@2 c4 ~ bb3@2 ~@4 e4@2 ~ e4 ~@2 bb3@2 bb3, ~@4 c4@13 ~ c4@7 ~@7 f3@27 ~@5, ~@6 f3@4 ~@4 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@8 ~@6, ~@32 c4@11 ~@21, ~@40 f4@6 ~@8 f4@9 ~]/4",
B: "[f3@4 ~@4 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 f4@2 ~ a4 ~ g4 ~@4 f3@4 ~@4 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 ~@4 bb3@4 bb3@2, ~@4 c4@13 ~ c4@7 ~@7 c4@11 ~@25 c4@13 ~ c4@7 ~@7 c4@11 ~@21, ~@6 f3@4 ~@4 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@12 ~@8 f3@4 ~@22 f3@27 ~@5, ~@40 f4@6 ~@10 g4@2 ~@2 f4@8 ~@10 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@8 ~@6, ~@104 f4@6 ~@8 f4@9 ~]/8",
C: "[f3@4 ~@4 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 f4@2 g4 a4 ~ g4 f4@4, ~@4 c4@13 ~ c4@7 ~@7 c4@11 ~@21, ~@6 f3@4 ~@4 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@12 ~@2, ~@20 f4@3 ~@9]/4",
D: "[bb3@2 ~@6 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 f4@3 ~@3 bb3@2 ~@2 bb3@2 ~@6 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 f4@2 g4 a4 ~ g4 f4@4, f3@9 ~@29 bb3@6 bb3@5 ~ bb3@9 ~@5 f3@9 ~@29 bb3@6 bb3@5 ~ bb3@12 ~@2, ~@2 c4@4 c4@11 ~ c4@7 ~@7 c4@11 ~@23 c4@4 c4@11 ~ c4@7 ~@7 c4@11 ~@21, ~@4 f4@4 ~@6 e4@6 ~@2 f4@15 ~@3 f4@6 ~@12 f4@4 f4@6 a4@4 ~@6 e4@6 ~@2 f4@15 ~@3 f4@6 ~@18]/8",
E: "[~@8 [c4,f4]@9 ~ [c4,f4]@5 ~@17 [c4,f4]@9 ~ [c4,f4]@5 ~ [c4,f4]@6 ~@10 [c4,f4]@9 ~ [c4,f4]@5 ~@17 [c4,f4]@9 ~ [c4,f4]@5 ~@5 c3@3 ~, ~@4 f3@29 ~@3 f3@28 f3@8 ~@16 c4@14 ~@18 [bb3,d4]@7 ~, ~@24 [c4,f4]@14 ~@24 c4@9 ~@17 f4@16 ~@24, ~@62 f4@5 ~ d3@27 ~@5 f3@18 ~@10]/8", // F5 Bb F5
F: "[f3@3 ~@11 f3@4 ~@2 f3@10 ~@2 eb3@3 ~@3 f4@2 ~@6 [eb3,c4]@5 ~@13 d3@2 ~@12 d3@5 ~ f4@6 ~@6 [g3,bb3]@2 ~@22 f4@7 ~, ~@4 [f3,c4]@9 ~ c4@3 ~ c4@10 ~@2 c4@5 ~ [eb3,c4]@10 ~@6 [eb3,c4]@10 c4@4 bb3@11 ~ bb3@11 ~ bb3@6 ~@2 b3@11 ~ b3@6 b3@10 ~@2, ~@8 f4@30 ~@2 f4@20 f4@11 ~ f4@11 ~@9 f4@11 ~ f4@10 f4@5 ~@9, ~@68 d3@9 ~@7 d3@11 ~@5 g3@9 ~ g3@14 ~@4]/8", // Cm Gm F5 Cm
G: "[b3@2 ~@12 c4@3 ~@7 f4@7 ~, f3@8 f4@13 ~@11, ~@2 c4@11 ~@5 c4@13 ~, ~@4 a3@13 ~@3 f3@11 ~]/2",
H: "[a3@2 ~@2 f3@2 ~@18 f4@7 ~, f4@6 f3@9 ~ c3@8 ~@8, ~@2 bb3@14 ~@4 [g3,c4]@11 ~, ~@2 f4@3 ~@3]/2", // C5
I: "[g4@2 ~@2 c4@2 ~@2 a4@4 a4@2 ~@6 g4@2 ~@4 c4@4 a4 ~, f3@5 ~ c4@11 ~ c4@7 ~@7, ~ a4@3 ~@3 g4@3 ~ a4@4 ~]/2",
J: "a4 g4@2 ~@4 g4, bb3@3 bb3@3 bb3@2, ~@4 a4@3 ~", K: "~@4 e4@2 f4@2 g4 a4 ~ g4 f4@4, ~ bb3@7",
L: "[b3@2 ~@12 c4@3 ~@7 f4@7 ~, ~@2 c4@11 ~@5 c4@13 ~, ~@4 a3@13 ~@3 f3@11 ~, ~@8 f4@13 ~@11]/2",
M: "[a4@2 g4@4 ~@8 g4@4 ~@2 e4@2 f4@7 ~@3 ab3@31 ~, bb3@6 bb3@6 bb3@5 ~ bb3@12 ~ [ab2,eb3]@32 ~, ~@4 a4@3 ~@25]/4", // Ab5
N: "db3@2 ~@6 [ab3,db4]@4 db3 ~ db3@2, ~@4 db3@7 ~@5", O: "~@2 ab3 ~ db3@4 [ab3,db4]@7 ~",
P: "[[f2,ab3,eb4]@13 ~ [ab2,eb3]@2]/2", Q: "[f3@4 d4@2 ~ d4 ~@4 bb2@4, bb2@5 ~ d4 ~]/2",
R: "[~@4 eb3@4 ~@18 ab2@5 ~, ab2@25 ~@7, eb4@13 ~@19, ~@4 bb3@3 c4@4 ~ bb3@3 ~, ~@5 eb3@4 ~ eb3@5 ~]/2",
S: "db3 ~ db3@2 [ab3,db4,f4]@3 db3", T: "~@2 [ab3,db4,f4] ~ db3@4 [eb3,ab3]@7 ~",
U: "[f2@12 ~@2 f2@4 [ab3,eb4] ~ f2@4 f2@2 ab2 ~ ab2@2 bb2 ~, [ab3,eb4]@17 ~@7 [ab3,eb4]@7 ~]/2", // Ab5
V: "[~@8 [bb3,d4]@9 ~ bb3@2 ~@8 f4@4, bb2@13 ~@7 f4@7 ~@5, ~@8 f3@13 ~ bb3@4 bb3@5 ~, ~@12 d4@3 ~]/2", // Bb
W: "[ab3,db4,f4]@7 ~", X: "[eb2,bb3,eb4] ~@3 eb2@6 ~@2 eb2@4, ~ [bb3,eb4]@3", Y: "[[ab2,c4]@15 ~, ab3@7 ~]/2",
Z: "[f3@15 ~ f3@2 ~@2 f3@7 ~ f3@2 f3@2, c4@31 ~]/2",
AA: "[f3@5 ~@9 f3@2 ~@4 f3@6 f3 ~ f3@2 f3@2 f3@3 ~@3 f3@7 ~ f3@2, ~@3 f3@4 ~@17, ~@8 c4@17 ~ c4@18 ~@4]/3",
AB: "~@2 [f3,c4]@3 ~ f3@2 ~@2 f3@2 f3@2 f3@2, ~@8 c4@7 ~", // F5
AC: "[f3 ~ f3@3 ~@9 f3@2 ~@4 f3@9 ~@3, ~@6 f3@7 ~@19, ~ c4@2 ~]/2", AD: "~@4 f3@3 ~ f3@6 f3@2, c4@7 ~ c4@8",
AE: "~@2 f3@4 ~ f3, ~ c4@5 ~@2", AF: "~@4 f3 ~@3 bb3@8, ~@6 f3@9 ~",
AG: "[~@2 c4@2 [f3,c4]@2 c4@4 f4@2 f4@2 ~@10 [c4,f4]@9 ~ [c4,f4]@5 ~@17 [c4,f4]@9 ~ [c4,f4]@5 ~ [c4,f4]@6 ~@10 [c4,f4]@9 ~ [c4,f4]@5 ~@17 [c4,f4]@8, ~@6 f3@13 ~ f3@29 ~@3 f3@28 f3@8 ~@16 c4@14 ~@10, ~@14 f4@8 ~@18 [c4,f4]@14 ~@24 c4@9 ~@17 f4@16 ~@8, ~@78 f4@5 ~ d3@27 ~@5 f3@12]/8", // F5
AH: "[~@8 c4@7 ~ f3@4 ~@4 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 ~@4 bb3@4 bb3@2, ~@2 [c4,f4]@5 ~ f4@12 c4@13 ~ c4@7 ~@7 f3@27 ~@5, ~@4 g3@11 ~@7 f3@4 ~@4 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@8 ~@6, ~@48 c4@11 ~@21, ~@56 f4@6 ~@8 f4@9 ~]/5", // F5
AI: "[f3@4 ~@4 f4@4 f4@2 ~@6 e4@2 ~@4 c4@4 c4@2 ~@2 bb3@4 ~@8 e4@4 ~@2 e4@2 f4@4 f4@5 ~, ~@4 c4@13 ~ c4@7 ~@7 c4@11 ~@21, ~@6 f3@4 ~@4 e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@12 ~@2, ~@20 f4@3 ~@9]/4",
AJ: "[[a3,c4] ~@3 f4@2 f4 ~@3 e4 ~@2 c4@2 c4 ~ bb3@2 ~@4 e4@2 ~ e4 ~@2 bb3@2 bb3, ~@2 a4@11 ~ e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@8 ~@6, ~@4 a3@6 ~@22 f3@27 ~@5, ~@6 c4@11 ~ c4@7 ~@7 c4@11 ~@21, ~@40 f4@6 ~@8 f4@9 ~]/4", // Am
AK: "[g4 ~ c4 ~ a4@2 a4 ~@3 g4 ~@2 c4@2 a4, f3@5 ~ c4@11 ~ c4@7 ~@7, ~ a4@3 ~@3 g4@3 ~ a4@4 ~]/2",
AL: "[a4@2 g4@4 ~@8 g4@4 ~@2 e4@2 f4@2 g4 a4 ~ g4 f4@4, bb3@6 bb3@6 bb3@5 ~ bb3@14, ~@4 a4@3 ~@9]/2",
AM: "[a4@2 g4@4 ~@8 g4@4 ~@2 e4@2 f4@2 ~ a4 ~ g4 f4@4, bb3@6 bb3@6 bb3@5 ~ bb3@14, ~@4 a4@3 ~@5 g4 ~@3]/2",
AN: "[a4 g4@2 ~@4 g4@2 ~ e4 ~ e4 ~@3 [a3,c4] ~@3 f4@2 f4 ~@3 e4 ~@2 c4@2 c4 ~ bb3@2 ~@4 e4@2 ~ e4 ~@2 bb3@2 bb3, bb3@6 bb3@6 bb3@5 ~ bb3@14 ~@4 a3@6 ~@22 f3@27 ~@5, ~@8 a4@6 ~@12 f4@8 a4@11 ~ e4@6 ~@2 f4@15 ~ bb3@6 bb3@5 ~ bb3@8 ~@6, ~@38 c4@11 ~ c4@7 ~@7 c4@11 ~@21, ~@72 f4@6 ~@8 f4@9 ~]/6", // Am
AO: "[a4 g4@2 ~@4 g4@2 ~ e4 f4 g4 a4 g4 f4, bb3@6 bb3@6 bb3@5 ~ bb3@14, ~@4 a4@3 ~@9]/2",
AP: "[a4@2 g4@4 ~@8 g4@4 ~@2 e4@2 f4@2 ~ a4 ~ g4 ~@4 c5@46 ~@2, bb3@6 bb3@6 bb3@5 ~ bb3@14 a3@44 ~@4, ~@8 a4@6 ~@10 g4@2 ~@2 f4@49 ~@3]/5",
})).s("gm_electric_guitar_clean").gain(0.48).pan(0.4)
// chords · electric guitar clean · soft notes
const electric_guitar_clean_2 = note(`<
A B ~ C A B D@2 A B ~ C A B D@2 A B E@2 A B D@2 ~@28 A B ~ C A B E@2 ~@28 A B ~ C A B F@2 ~@29 G ~ H ~@8 A B ~ C A B
D@2 I J ~ C A B E@2 A B E@2 A B E@2 I J ~ C A B E@2 A B E@2 A B E@2 I J ~ C A B E@2 A B E@2 A B E@2 A B E@2 ~@3
>`.pickRestart({
A: "~@5 f3@3", B: "f3@2 f3!2", C: "~@12 f3@3 ~", D: "[f3@29 ~@3]/2", E: "[f3@31 ~]/2", F: "[f3@15 ~]/2", G: "c4 ~@15",
H: "~ f3 ~@6", I: "~@5 a3@3", J: "a3@2 a3!2",
})).s("gm_electric_guitar_clean").gain(0.32).pan(0.4)
// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
~@8 A@7 B@6 C@3 D E@2 F@2 G@2 H D E@2 F@2 G@2 H I J@4 K@2 L M N@2 O P@8 D E@2 F@2 G@2 H D E@2 F@2 G@2 H Q R@4 K@2 S T
U@2 V P@8 W X Y Z@2 AA AB AC W AD AE AF AG AH AI AJ AK AL AM AN A@7 AO@5 D E@2 F@2 G@2 H A@7 AP@5 A@7 AQ@8 AR A@7 AS@8
AR A@7 AT@8 AU AV@3
>`.pickRestart({
A: "[f2@3 ~@11 f2@4 ~@10 f2@3 ~ bb2@3 ~@15 [f3,c4]@5 ~@5 bb2@3 ~ f2@3 ~@11 f2@4 ~@10 f2@4 bb2@3 ~@11 bb2@2, ~@4 f2@9 ~@7 f2@7 ~@9 bb2@9 ~ bb2@13 ~@9 f2@9 ~@7 f2@7 ~@9 bb2@9 ~@3, ~@8 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@10 ~@6 c4@14 ~@42, ~@56 f3@12 ~@4 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@8]/7", // F5
B: "[~@12 bb2@3 ~@5 f3@3 ~@7 f2@4 ~@10 f2@3 ~ bb2@3 ~@11 bb2@4 ~@14 d3@3 ~@5 [f3,c4]@6 [f3,c4]@2, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~ c4 ~@3 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@9 ~ [f3,c4]@4 ~@2 [f3,c4]@13 ~@11, ~@4 bb2@7 ~@5 f2@13 ~@7 f2@7 ~@9 bb2@9 ~@7 bb2@11 ~@5 d3@9 ~@3]/6", // F5
C: "[~@2 [f3,c4]@5 ~@5 c3@4 bb2@3 ~@11 bb2@4 [f3,c4]@4 ~@2 [c3,f3,bb3]@7 ~, ~@8 [f3,c4]@14 ~@2 [f3,c4]@9 ~@15, ~@20 bb2@9 ~@19]/3", // F5 Fsus4 F5
D: "[f3,c4]@4 [f3,c4]@3 ~ [f3,c4]@5 ~ [f3,c4]@2", // F5
E: "[~@8 [f3,c4]@4 f2@2 c4@2 ~@8 [f3,c4]@5 ~ [f3,c4]@2, ~ [f3,c4]@2 ~@4 f3@2 ~@7, ~@4 f2@7 ~@5 bb2@15 ~]/2", // F5
F: "[~@8 [f3,c4]@5 ~@3 d2@4 c4@4 [f3,c4]@5 ~ [f3,c4]@2, ~ [f3,c4]@2 ~@4 f3@4 ~@5, ~@2 bb2@5 c4@2 ~ d3@6]/2", // F5
G: "[~@8 [f3,c4]@6 ~@6 [f3,c4]@3 ~ [f3,c4]@5 ~ [f3,c4]@2, ~@2 [f3,c4]@5 ~@7 [f3,c4]@4 ~@14, ~@4 d3@9 ~@3 bb2@9 ~@7]/2", // F5
H: "~ c4 bb2@2 [f3,c4,f4] [c4,f4] f4 [f3,c4,f4], ~ f3@2 ~@2 f3@2 ~", // F5
I: "[c4,f4] ~ f4 ~ f3@2 [c4,f4]@2 [c4,f4]@2 [c4,f4]@2 f4 ~ c4@2, f3@2 ~@2 f4 ~@3 f3@8, ~@14 f4 ~", // F5
J: "[~@2 [f3,c4]@4 f4@2 c4@2 [c4,f4]@2 c4 ~ [c4,f4]@2 [c4,f4]@2 c4@2 ~@2 f4@2 [c4,f4]@2 [c4,f4]@2 f4@2 [c4,f4]@2 ~@2 [c4,f4]@3 ~ [c4,f4]@2 [c4,f4]@2 c4@2 f4@2 c4@2 f4@2 f4 ~ f3@2 [c4,f4] ~ [c4,f4]@2 c4@2 [c4,f4]@2 [c4,f4]@2, ~@2 f4@2 ~@4 f3@6 f3@5 ~ f3@4 f3@10 f3@4 ~@2 f3@5 ~ f3@5 ~@5 f3@8, ~@8 f4 ~@55]/4", // F5
K: "[~@2 [c4,f4]@3 ~ [c4,f4]@2 f4@2 c4@4 ~@2 f4@4 g3@2 f4@2 [b3,f4] ~ [b3,f4] ~ b3@2 [g3,f4]@2, ~@2 f3@4 ~@2 f3@6 g3@5 ~@5 g3@6 b3 ~, ~@8 c4 ~ f4@2 ~@20]/2", // F5 Bdim G7
L: "~@2 g3@4 [b3,f4]@2 [b3,f4] ~ [b3,f4]@2 ~@2 [g3,b3]@2, ~@2 b3@3 ~@3 g3@5 ~@3, ~@2 f4 ~@13", // Bdim G
M: "c4@2 f4 ~ f3@2 [c4,f4]@2 [c4,f4]@2 [c4,f4]@2 f4 ~ c4@2, f3 ~ f3@2, f4 ~@3 f4 ~@9 f4 ~", // F5
N: "[~@2 [f3,c4]@4 f4@2 c4@2 [c4,f4] ~ c4 ~ [c4,f4]@2 [c4,f4]@2 c4@2 ~@2 f4@2 [c4,f4]@2 [c4,f4]@2 f4@2 [c4,f4]@2, ~@2 f4@2 ~@4 f3@6 f3@5 ~ f3@7 ~ f3@4, ~@8 f4 ~@23]/2", // F5
O: "~@2 f4@3 ~ [c4,f4]@2 [c4,f4]@2 c4@2 f4@2 c4@2, g3@7 ~ g3@7 ~", // F5
P: "[f2@3 ~@11 f2@4 ~@10 f2@3 ~ bb2@3 ~@15 [f3,c4]@5 ~@5 bb2@3 ~ f2@3 ~@11 f2@4 ~@10 f2@4 bb2@3 ~@11 bb2@4 ~@10 bb2@3 ~, ~@4 f2@9 ~@7 f2@7 ~@9 bb2@9 ~ bb2@13 ~@9 f2@9 ~@7 f2@7 ~@9 bb2@9 ~@7 bb2@7 ~@5, ~@8 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@10 ~@6 c4@14 ~@58, ~@56 f3@12 ~@4 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@8]/8", // F5
Q: "[c4,f4] ~ f4 ~ f3@2 [c4,f4]@2 [c4,f4]@2 [c4,f4] ~ f4 ~ [c4,f4]@2, f3@2 ~@2 f4 ~@3 f3@8", // F5
R: "[~@2 [f3,c4]@4 f4@2 c4@2 [c4,f4] ~ c4 ~ c4@2 [c4,f4]@2 c4@2 ~@2 f4@2 [c4,f4]@2 [c4,f4]@2 f4@2 [c4,f4]@2 ~@2 [c4,f4]@3 ~ [c4,f4]@2 [c4,f4]@2 [c4,f4]@2 f4@2 c4@2 f4@2 f4 ~ f3@2 [c4,f4] ~ [c4,f4]@2 c4@2 [c4,f4]@2 [c4,f4]@2, ~@2 f4@2 ~@4 f3@6 f3@5 ~ f3@4 f3@10 f3@4 ~@2 f3@5 ~ f3@5 ~@5 f3@8, ~@8 f4 ~@5 f4 ~@49]/4", // F5
S: "~@2 g3@4 b3@2 [b3,f4] ~ [b3,f4]@2 ~@2 [g3,b3]@2, ~@2 b3@3 ~@3 g3@5 ~@3, ~@2 f4 ~@13", // Bdim G
T: "c4@2 f4 ~ f3@2 [c4,f4]@2 [c4,f4]@2 [c4,f4] ~ f4 ~ [c4,f4]@2, f3 ~ f3@2, f4 ~@3 f4 ~@11", // F5
U: "[~@2 [f3,c4]@4 f4@2 c4@2 [c4,f4]@2 c4 ~ c4@2 [c4,f4]@2 c4@2 ~@2 f4@2 [c4,f4]@2 [c4,f4]@2 f4@2 [c4,f4]@2, ~@2 f4@2 ~@4 f3@6 f3@5 ~ f3@7 ~ f3@4, ~@8 f4 ~@5 f4 ~@17]/2", // F5
V: "~@2 [c4,f4]@3 ~ [c4,f4]@2 [c4,f4]@2 c4@2 f4@2 c4@2, g3@7 ~ g3@7 ~", // F5
W: "[ab3,eb4]@2 ~@2 eb4@3 ~ [ab3,eb4]@3 ~@3 [ab3,eb4]@2", X: "~@2 [ab3,eb4]@3 ~@3 [ab3,eb4] ~ eb4 ~@5",
Y: "[ab3,db4]@2 ~@2 db4@2 ~@2 [ab3,db4]@2 ab3 ~@3 [ab3,db4] ~", // Db5
Z: "[~@2 db4@3 ~ ab3 ~ [ab3,db4] ~ [ab3,db4]@2 ~@4 ab3 ~@3 ab3 ~@3 eb4@3 ~@3 [ab3,eb4]@2, ~@2 ab3 ~@11 db4@5 ~@5 ab3 ~@7]/2", // Db5 Ab5
AA: "~@2 [ab3,eb4]@2 ~@2 ab3 ~ [ab3,eb4]@2 [ab3,eb4]@2 ~@2 ab3@2", AB: "bb3 ~ bb3!2 [bb3,f4] bb3 ~ [bb3,f4]",
AC: "~@2 f4@4 bb3 ~ [bb3,f4]@2 [bb3,f4]@2 ~@4, ~ bb3 ~@6", // Bb5
AD: "~@2 eb4@3 ~@3 [ab3,eb4]@2 eb4@2 ~@2 ab3 ~, ~@2 ab3 ~@13", // Ab5
AE: "ab3 ~ ab3@2 ~@2 ab3@2 [ab3,db4]@2 ab3@2 db4@2 db4@2, ~@14 ab3 ~", // Db5
AF: "~@2 [ab3,db4]@3 ~@3 [ab3,db4]@2 [ab3,db4]@2 ~@4", // Db5
AG: "[bb3,eb4]@3 ~ bb3@2 bb3@2 [bb3,eb4]@2 [bb3,eb4]@2 bb3@2 [ab3,eb4]@2", // Eb5 Ab5
AH: "~@2 [ab3,eb4]@3 ~ ab3 ~ [ab3,eb4]@2 [ab3,eb4]@2 eb4@2 ~@2", AI: "bb3 ~@2 bb3 [bb3,f4] bb3 ~ f4, ~@14 bb3 ~",
AJ: "~@2 [bb3,f4]@3 ~@3 [bb3,f4]@2 [bb3,f4]@3 ~ [bb3,f4]@2", // Bb5
AK: "f4@2 bb3@2 ~@2 bb3@2 [bb3,f4] ~ bb3@2 ~@4, bb3 ~@15", AL: "~@4 bb3@2 bb3@2 [bb3,eb4]@2 [bb3,eb4]@2 bb3@2 eb4 ~",
AM: "eb4@3 ~@3 ab3 ~ [ab3,eb4]@2 ab3 ~@3 ab3 ~, ab3 ~@15", AN: "~ ab3 ~ ab3 ~@4",
AO: "[~@12 bb2@3 ~ d3@3 ~@11 d3@5 ~@13 bb2@2 ~@22 [f3,c4]@8, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~ d3@9 ~@7 d3@11 ~@5 bb2@9 ~ bb2@6 bb2@11 ~, ~@4 bb2@7 ~@13 [f3,c4]@9 ~@7 c4@13 ~@27, ~@40 f3@10 ~@6 [f3,c4]@8 ~@2 [f3,c4]@5 ~@9]/5", // F5
AP: "[~@16 d3@3 ~@11 d3@5 f3 ~@12 bb2@2 ~@22 [f3,c4]@8, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~ d3@9 ~@7 d3@11 ~@5 bb2@9 ~ bb2@6 bb2@11 ~, ~@4 bb2@11 ~@9 [f3,c4]@9 ~@7 c4@13 ~@27, ~@40 f3@10 ~@6 [f3,c4]@8 ~@2 [f3,c4]@5 ~@9]/5", // F5
AQ: "[~@16 f2@3 ~@11 f2@4 ~@10 f2@4 bb2@3 ~@11 bb2@4 ~@14 d3@3 ~@11 d3@5 ~@13 bb2@2 ~@12 bb2@2, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~@5 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@11 ~ d3@9 ~@7 d3@11 ~@5 bb2@9 ~@3, ~@4 bb2@11 ~@5 f2@9 ~@7 f2@7 ~@9 bb2@9 ~@7 bb2@11 ~@9 [f3,c4]@9 ~@7 c4@13 ~@11, ~@52 f3@5 ~@3 [f3,c4]@4]/8", // F5
AR: "~ [f3,c4], ~@2 [f3,c4]@5 ~@9, ~@4 bb2@11 ~", // F5
AS: "[~@16 f2@3 ~@11 f2@4 ~@10 f2@4 bb2@3 ~@11 bb2@4 ~@14 d3@3 ~@11 d3@5 f3 ~@12 bb2@2 ~@12 bb2@2, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~@5 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@11 ~ d3@9 ~@7 d3@11 ~@5 bb2@9 ~@3, ~@4 bb2@11 ~@5 f2@9 ~@7 f2@7 ~@9 bb2@9 ~@7 bb2@11 ~@9 [f3,c4]@9 ~@7 c4@13 ~@11, ~@52 f3@5 ~@3 [f3,c4]@4]/8", // F5
AT: "[~@16 f2@3 ~@11 f2@4 ~@10 f2@3 ~ bb2@3 ~@15 [f3,c4]@5 ~@5 bb2@3 ~ f2@3 ~@11 f2@4 ~@10 f2@4 bb2@3 ~@11 bb2@2, ~@2 [f3,c4]@5 ~ [f3,c4]@11 ~@5 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@10 ~@6 c4@14 ~@42, ~@4 bb2@11 ~@5 f2@9 ~@7 f2@7 ~@9 bb2@9 ~ bb2@13 ~@9 f2@9 ~@7 f2@7 ~@9 bb2@9 ~@3, ~@72 f3@12 ~@4 [f3,c4]@9 ~ [f3,c4]@5 ~ [f3,c4]@14 ~@2 [f3,c4]@8]/8", // F5
AU: "~@4 bb2@4 [c3,g3,c4]@7 ~, ~@2 [f3,c4]@5 ~@9", AV: "[[f3,c4,f4]@23 ~]/3",
})).s("gm_acoustic_guitar_steel").gain(0.48).pan(0.6)
// chords · acoustic guitar steel · soft notes
const acoustic_guitar_steel_2 = note(`<
~@21 A ~@4 B C ~@3 D ~@2 B C ~@3 D E F G H I J K L E F G M ~@10 B C ~@3 D ~@2 B C ~@3 D E F G N I J O P E F G Q ~@8 R
S T U V W X Y Z AA AB AC AD AE@2 AF AG AH AI AJ ~@9 AK ~@4 B C ~@3 D ~@9 AL ~@15 AK ~@15 AL ~@21
>`.pickRestart({
A: "~@5 d3@6 ~@5", B: "~@4 [f3,c4]@3 ~@9", C: "bb2 ~@7", D: "~@6 c4 ~", E: "~@2 c4 ~ c4 ~@7 c4 ~@3",
F: "~@6 c4@2 ~@4 f4 ~@3", G: "~ f4!2 c4 ~@2 c4 ~, ~@4 c4 ~@11", H: "[c4,f4]@2 ~@2 f4 ~@5 f4@2 c4@2 f4@2",
I: "c4@2 c4 ~@2 f4 ~@2, ~@4 f4 ~@11", J: "[c4,f4]@2 ~@2 f4 ~@7 f4@3 ~", K: "b3!4 ~@2 f4 ~, ~@4 f4 ~@11",
L: "b3@2 ~@2 f4@2 ~@6 [b3,f4]@3 ~", M: "[c4,f4]@2 c4@2 f4 ~@5 f4@2 c4@2 f4@2", N: "[c4,f4]@2 ~@2 f4 ~@7 c4@2 f4@2",
O: "b3@2 b3@2 [b3,f4] ~ b3@2 ~@4 f4@2 ~@2", P: "b3 ~@3 f4@2 f4@2 ~@4 [b3,f4]@3 ~", Q: "[c4,f4] ~ f4 ~@2 f4 c4 f4",
R: "~@4 ab3@3 ~@5 eb4 ~@3", S: "eb4@2 ~@4 eb4 ~@3 ab3 ~ [ab3,eb4]@2 [ab3,eb4]@2",
T: "~@2 ab3@2 ab3@2 ab3 ~@5 [ab3,db4] ~@3", U: "[ab3,db4] ~@3 ab3 ~ db4 ~@5 [ab3,db4] ~ ab3 ~",
V: "~@2 ab3 ~@3 ab3@2 ~@2 ab3@2 [ab3,eb4] ~@3", W: "[ab3,eb4]@2 ~@2 [ab3,eb4]@2 eb4 ~@5 [ab3,eb4]@2 eb4@2",
X: "eb4@2 eb4@3 ~@7 bb3 ~@3, ~@2 bb3 ~@13", Y: "bb3 ~@3 bb3 ~@7 f4@2 bb3@2",
Z: "~@2 ab3@2 ab3 ~ ab3 ~@3 ab3 ~ [ab3,eb4]@2 ~@2", // Ab5
AA: "[ab3,eb4]@2 ~@2 ab3@2 [ab3,eb4]@2 ~@2 ab3@2 [ab3,eb4]@2 eb4 ~", // Ab5
AB: "db4 ~ db4@2 [ab3,db4]@2 db4@2 ~@2 db4@2 ab3@2 ~@2", // Db5
AC: "ab3@2 ~@2 ab3@2 [ab3,db4]@2 ~@4 [ab3,db4] ~ [ab3,db4]@2", AD: "~@4 eb4@3 ~@5 eb4@2 ~@2",
AE: "[[ab3,eb4] ~@5 eb4 ~@5 ab3@2 ab3 ~@3 bb3@2 bb3 ~@5 f4@2 [bb3,f4]@2 ~@2, ~@7 eb4@3 ~@6]/2", // Ab5 Bb5
AF: "bb3@2 ~@4 bb3@2 ~@4 bb3 ~@3", AG: "~@4 [bb3,f4] ~ f4@2 ~@2 f4@2 [bb3,f4]@2 eb4@2",
AH: "~@2 [bb3,eb4] ~ eb4@2 eb4@2 ~@4 eb4@3 ~", AI: "~@2 ab3@2 eb4@3 ~@5 [ab3,eb4]@2 eb4 ~, ~@4 ab3 ~@11",
AJ: "[ab3,eb4]@2 eb4@2 ~ eb4 ~ eb4@2 ~ eb4@6, ~@2 ab3 ~@5", AK: "~@3 [f3,c4] ~@12", AL: "~@3 c4 ~@12",
})).s("gm_acoustic_guitar_steel").gain(0.24).pan(0.6)
// chords · percussive organ
const percussive_organ = note(`<
~@8 A@6 B@5 C@5 D@8 E@4 F@4 G@8 H@4 I@8 J@8 K@8 G@8 H@4 L@8 M@8 N@8 O P@3 Q@8 R@4 S@8 T@8 U@2 V@2 T@8 W@2 X@2 U@2 V@2
Y@8 Z@4 U@2 V@2 T@8 AA@8 AB@3
>`.pickRestart({
A: "[[a4,c5] ~ [a4,c5], f4@7 f5@5, ~ [bb4,d5] ~]/6", // Am Bb
B: "[~ [f5,f6]@2 [e5,e6]@2 [d5,d6]@2 ~@12 d5, bb4@2 f4@3, d5@5 ~@2 c5@12 ~, ~@7 c6@9 bb4@4]/5", // F E D
C: "[~ bb4@2 ~ c5@8 d5@2 ~@5 f4, ~@3 a4@9 bb4@3 bb4@3 c5@2, ~ f5@4, ~@7 d5@2 ~, ~@17 g4@2 ~]/5",
D: "[~@4 bb4@4 a5@4 bb4@3 [d5,g5], c5, f5@15 ~]/8", E: "[a5 bb4, [c5,f5]]/4",
F: "[~@24 e5@8 d5@8 c5@8 ~@7 c5 d5@8, f5@63 ~, [a4,c5]@31 ~ bb4@15 ~ bb4@16]/4", // Am
G: "[a4 g4 f4 [b5,f6,c7], f5, [c6,c7]@3 ~, ~ d5]/8", H: "[a5@2 bb4 [c5,f5,g5], [c6,c7], [c5,f5]@3 ~]/4",
I: "[[a4,c5]@32 d5@12 [e5,e6]@8 [d5,d6]@8 ~@4 a4@32 c5@31 ~, f6, c6@13 ~@2 c6@17, f5@11 ~@2 f5@18 ~, ~@8 bb4@7 c5@9 bb4@7 ~]/8", // Am E D
J: "[~@4 bb4@4 ~@4 bb4@3 [d5,g5], c5, f5@15 ~, ~@8 a5@7 ~]/8", // G5
K: "[a5@4 bb4@4 ~@3 e5 d5 c5 ~ [d5,g5], c6, [c5,f5]@64 f5@56 c5 ~@7, ~@64 [a4,c5]@31 ~ bb4@15 ~ bb4@16]/8", // G5 F5 Am
L: "[[a4,c5]@16 d5@6 [e5,e6]@4 [d5,d6]@4 ~@2 a4@16 c5@12 ~ f5@3, f6@31 ~, c6@26 ~@4 c6@33 ~, f5@11 ~@2 f5@17 d5@2, ~@8 bb4@7 c5@9 bb4@7 ~]/8", // Am E D
M: "[c5 db5 c5 [c5,d5,f5], ab4, eb5@3 ~, ab5@5 ~@3, ~ bb4]/8", // Dm7
N: "[~@8 c6@2 db6@3 eb6@2 f6 bb5@3 ~@3 f6@2 [bb4,d5,f5,c6]@8, [ab4,bb4,c5,eb5]@4 ab6@7 ~@5, ~@2 ab5@9 ab5@5, ~ [ab4,db5] [eb5,eb6] ~, ~@19 c6@5 ~@8]/8", // Bb Ab Db5 Eb
O: "[db5,f6]", P: "[[bb4,g5,bb5,eb6]@16 [ab4,ab5]@31 ~, eb5@23 ~, ~@16 [bb5,c6]@29 ~@3]/3",
Q: "[[c5,a5]@4 ~@2 e6 d6 c6@6 [bb5,d6] bb5, f5, c6@5 f6@11, ~ [d5,bb5] c5@2]/8", // F Bb Gm
R: "[a5@31 ~@9 d5@16 [f5,c6]@8, c5@5 ~@3, ~@4 bb5@3 ~]/4", S: "[~@4 bb4@4 a5@7 ~, [c5,f5,c6]]/8",
T: "[[a4,c5]@8 ~ f6@2 e6@2 ~@3 [a4,c5]@8 ~@3 d6@2 bb5@3, f4@56 f5@71 ~, c6@9 ~@4 d6@2 c6@12 ~@5, ~ [bb4,d5] ~ [bb4,d5]]/8", // Am Bb
U: "[~ f6 e6 c6, [c5,f5,a5]]/2", V: "[~@2 e6 [f5,d6], [d5,bb5], f5@23 ~@9, ~ f6@3]/2", W: "[a4,c5]/2",
X: "[~@3 d6@2 bb5@3, [bb4,d5]]/2", // Bb
Y: "[[a4,c5]@8 ~ f6@2 e6@2 ~@3 [a4,c5]@8 ~@3 d6@2 bb5@3, f4@7 f5@9, c6@9 ~@4 d6@2 c6@12 ~@5, ~ [bb4,d5] ~ [bb4,d5]]/8", // Am Bb
Z: "[[a4,c5]@8 ~@3 d6@2 bb5@3, f5, c6@11 ~@5, ~ [bb4,d5]]/4", // Am Bb
AA: "[[a4,c5]@8 ~ f6@2 e6@2 ~@3 [a4,c5]@8 ~@3 d6@2 ~ c5@2, f4@7 f5@9, c6@9 ~@4 d6@2 c6@12 ~@2 bb5@3, ~@4 [bb4,d5]@4 ~@4 [bb4,d5]@3 ~]/8", // Am Bb
AB: "[f4,c5,f5,a5]/3", // F
})).s("gm_percussive_organ").gain(0.4).pan(0.6)
// chords · distortion guitar
const distortion_guitar = note(`<
A@2 B@2 C@2 D@4 B@2 E@2 F@2 G@2 H@4 I@6 J@2 K@2 L@2 M@2 N@2 O@6 P@2 Q@2 R@6 S@4 T@6 J@2 K@2 L@2 M@2 N@2 O@6 P@2 Q@2
R@6 U@8 V W X@2 Y Z@3 AA AB AC@2 AD AE@2 AF AG@2 AH@4 AI AJ AK@2 AL AM AN@2 AO@4 J@2 AP@2 AQ@2 AR@2 AS@2 AT@2 AU@2
AV@8 AW@6 AX@2 AV@8 AY@6 AU@2 AZ@3 AJ AK@2 AL BA BB@2 BC AJ AK@2 AL BA BD@5
>`.pickRestart({
A: "[c4@11 ~ c4@8 ~@8 f3@2 c4@2, f3@7 ~]/2",
B: "[c4@2 ~@12 e4@6 e4@2 ~@4 bb3@3 ~@3, f3@7 ~, ~@2 bb3@10 bb3@13 ~@7, ~@4 f4@3 ~@5 f4@3 ~]/2",
C: "[bb3 c4@5 c4@4 ~@4 f3 c4, f3@7 ~]/2",
D: "[c4@2 ~@12 e4@6 e4@2 ~@2 g4 a4 ~ g4 ~@12 f4@4 c4@8 ~@8 f3@2 c4@2, ~@2 bb3@10 bb3@18 ~@2 c4@11 ~@21, ~ f3@6 ~ f3@7 ~, ~@8 f4@6 ~@14 f4@9 ~@27]/4",
E: "[bb3 ~@3 f4@2 ~@2 f4@2 c4@2 ~@2 f3 c4, f3@7 ~, ~ c4@5 c4@4 ~@6]/2",
F: "[c4@2 ~@12 e4@6 e4@2 ~@2 g4 a4 ~ g4 f4@3 ~, ~ bb3@5 bb3@9 ~, ~ f3@6 ~, ~@4 f4@3 ~@9]/2",
// … 128 more lines
More by Fiorella Mannoia
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.