0:00/0:00
// Bomba o non bomba — Antonello Venditti
// 134 bpm, 4/4, key D# minor. 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 164 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(134/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 · "BOMBAONON"
const bass = note(`<
~@8 A B C D E F G H I J C K L M N O P Q R S E B C T E F G U I M C V L M W X P Y Z S AA B C AB A AC AD H I AE C AF AG
AH AI AJ AK Y AL AM A B C AN E F G H I J C K L M N O P Q R S E B C T E F G U I M C V L M W X P Y AL S AA B C AB A AC
AD H I AO C AF AG AH AI AJ AK Y AL AM A B C AN E F G H I AP C AQ L M N O P Q AR S E B C T E F G AS AA B C AB A AC AD
AT
>`.pickRestart({
A: "b1@9 ~ b1@2 gb1@5 ~ b1@3 ~@3", B: "gb2@9 ~ gb2@2 db2@6 gb2@3 ~@3", C: "eb2@8 ~@2 eb3@2 ~@4 bb1@2 db2@4 bb1 ~",
D: "eb2@12 ~@4 bb1@2 eb2@3 ~ db2 ~", E: "b1@9 ~ b1@2 gb1@5 ~ b1@4 ~@2", F: "gb2@9 ~ gb2@2 db2@5 ~ gb2@4 ~@2",
G: "eb2@9 ~ eb3@3 ~@3 bb1@2 db2@3 ~ bb1 ~", H: "eb2@8 ~@2 eb2@5 ~ bb1 ~ eb2@3 ~ d2@2", I: "c2@9 ~ c2@2 g1@5 ~ c2@5 ~",
J: "ab1@8 ~@2 ab1 ~ bb1@5 ~ bb1@5 ~", K: "eb2@8 ~@2 eb2@4 ~@2 bb1@2 eb2@3 ~ d2 ~", L: "c2@8 ~@2 c2@2 g1@5 ~ c2@4 ~@2",
M: "ab1@8 ~@2 ab1 ~ bb1@9 ~ bb1 ~", N: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 db2@3 ~ bb1@2", O: "eb2@15 ~ bb1 ~ eb2@2 ~@4",
P: "c2@17 ~ c2@4 ~@2", Q: "b1@16 ~@2 b1@3 ~@3", R: "ab1@2 ~ ab1@2 ~ ab1@2 ~ ab1@2 ~", S: "bb1@3 ~@3 bb1@2 ~@16",
T: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 eb2@3 ~ db2 ~", U: "eb2@8 ~@2 eb2@5 ~ bb1@2 eb2@3 ~ d2@2",
V: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 eb2@3 ~ d2 ~", W: "eb2@8 ~@2 eb2@3 ~@3 bb1 ~ db2@3 ~ bb1 ~",
X: "eb2@15 ~ bb1 ~ eb2@3 ~@3", Y: "b1@16 ~@2 b1@5 ~", Z: "ab1@4 ~@2 ab1@4 ~@2 ab1@3 ~ ab1 ~ ab2@4 ~@2",
AA: "b1@9 ~ b1 ~ gb1@6 b1@3 ~@3", AB: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 eb2@4 db2 ~", AC: "gb2@9 ~ gb2@2 db2@6 gb2@4 ~@2",
AD: "eb2@9 ~ eb3@2 ~@4 bb1@2 db2@4 bb1 ~", AE: "ab1@9 ~ ab1 ~ bb1@9 ~ bb1 ~",
AF: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 eb2@4 d2 ~", AG: "c2@8 ~@2 c2 ~ g1@6 c2@4 ~@2", AH: "ab1@9 ~ ab1@2 bb1@9 ~ bb1 ~",
AI: "eb2@8 ~@2 eb2@3 ~@3 bb1@2 db2@4 bb1 ~", AJ: "eb2@15 ~ bb1@2 eb2@4 ~@2", AK: "c2@17 ~ c2@5 ~",
AL: "ab1@4 ~@2 ab1@4 ~@2 ab1@3 ~ ab1 ~ ab1@4 ~@2", AM: "bb1 ~ bb1 ~@5", AN: "eb2@8 ~@2 eb2@4 ~@2 bb1@2 eb2@3 ~ db2 ~",
AO: "ab1@9 ~ ab1 ~ bb1@5 ~ d2@4 ~@2", AP: "ab1@8 ~@2 ab1 ~ bb1@9 ~ bb1@2",
AQ: "eb2@8 ~@2 eb3@2 ~@4 bb1@2 eb2@3 ~ d2 ~", AR: "ab1@4 ~@2 ab1@4 ~@2 ab1@3 ~ ab1 ~ ab2@3 ~@3",
AS: "eb2@8 ~@2 eb2@5 ~ bb1@2 eb2@3 ~ db2@2", AT: "eb2@23 ~",
})).s("gm_electric_bass_finger").gain(0.6)
// chords · piano
const piano = note(`<
A@8 B@8 C@8 D@3 E F@8 G@8 D@3 E B@8 C@8 D@3 E F@8 G@8 D@3 E B@8 C@8 D@3 E F@8 G@8 D@3 E B@8 C@8 D@3 E H@8 I@7 J
>`.pickRestart({
A: "[~@6 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 [bb3,eb4,gb4]@2, b2@12 ~@4 b2@6 ~@2 gb2@12 ~@4 gb2@6 ~@2 eb3@23 ~ eb3@22 ~@50 eb3@23 ~ eb3@23 ~, ~@5 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@3, ~@64 bb2@8 ~@16 bb2@7 ~ b2@12 ~@4 b2@7 ~ gb2@12 ~@4 gb2@6 ~@18 bb2@8 ~@16 bb2@8]/8", // B Gb Ebm B Gb Ebm B Gb …
B: "[~@6 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@3 ~ [c4,eb4,g4]@2, b2@12 ~@4 b2@8 gb2@12 ~@4 gb2@8 eb3@23 ~ eb3@22 ~@50 eb3@23 ~ eb3@21 ~@3, ~@5 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@3, ~@64 bb2@8 ~@16 bb2@7 ~ b2@12 ~@4 b2@7 ~ gb2@12 ~@4 gb2@8 ~@16 bb2@8 ~@16 bb2@8]/8", // B Gb Ebm B Gb Ebm Cm B …
C: "[~@6 [c4,eb4,g4]@4 ~@2 c3@4 ~@2 [c4,eb4,g4]@4 ~@8 [ab3,c4,eb4]@3 ~@3 bb2@4 ~@2 [bb3,d4,f4]@3 ~@9 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 ~@8 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 ~@8 [c4,eb4,g4]@4 ~@2 c3@4 ~@2 [c4,eb4,g4]@4 ~@8 [ab3,c4,eb4]@3 ~@3 bb2@4 ~@2 [bb3,d4,f4]@3 ~@9 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 ~@8 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 [c4,eb4,g4]@2, c3@12 ~@4 c3@6 ~@2 ab2@10 ~@6 bb2@6 ~@2 eb3@12 ~@4 eb3@7 ~ eb3@12 ~@4 eb3@6 ~@2 c3@12 ~@4 c3@6 ~@2 ab2@10 ~@6 bb2@6 ~@2 eb3@12 ~@4 eb3@7 ~ eb3@12 ~@4 eb3@6 ~@2, ~@5 [c4,eb4,g4]@4 ~@2 [ab3,c4,eb4]@4 ~@2 [bb3,d4,f4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [c4,eb4,g4]@4 ~@2 [c4,eb4,g4]@4 ~@2 [ab3,c4,eb4]@4 ~@2 [bb3,d4,f4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@3]/8", // Cm Ab Bb Eb Cm Ab Bb Eb …
D: "[~@6 [c4,eb4,g4]@4 ~@2 c3@4 ~@2 [c4,eb4,g4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@3 ~@3 ab2@6 [ab2,ab3,c4,eb4]@6 [ab2,ab3,c4,eb4]@6 [ab2,ab3,c4,eb4]@5 ~, c3@6 ~@2 c3@3 ~ b2@6 ~@2 b2@3 ~@13, ~@5 [c4,eb4,g4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [ab3,c4,eb4]@4 ~@9]/3", // Cm B Ab Cm B Ab
E: "[bb2,bb3,d4,f4] ~@2 [bb2,bb3,d4,f4]@7 ~@2", // Bb
F: "[~@6 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 [c4,eb4,g4]@2, b2@12 ~@4 b2@6 ~@2 gb2@12 ~@4 gb2@6 ~@2 eb3@23 ~ eb3@22 ~@50 eb3@23 ~ eb3@22 ~@2, ~@5 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@3, ~@64 bb2@8 ~@16 bb2@7 ~ b2@12 ~@4 b2@7 ~ gb2@12 ~@4 gb2@6 ~@18 bb2@8 ~@16 bb2@8]/8", // B Gb Ebm B Gb Ebm Cm B …
G: "[~@6 [c4,eb4,g4]@4 ~@2 c3@4 ~@2 [c4,eb4,g4]@3 ~@9 [ab3,c4,eb4]@3 ~@3 bb2@4 ~@2 [bb3,d4,f4]@3 ~@9 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 ~@8 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@3 ~@9 [c4,eb4,g4]@4 ~@2 c3@4 ~@2 [c4,eb4,g4]@4 ~@8 [ab3,c4,eb4]@3 ~@3 bb2@4 ~@2 [bb3,d4,f4]@3 ~@9 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@4 ~@8 [bb3,eb4,g4]@4 ~@2 eb3@4 ~@2 [bb3,eb4,g4]@3 ~ [c4,eb4,g4]@2, c3@12 ~@4 c3@7 ~ ab2@11 ~@5 bb2@7 ~ eb3@12 ~@4 eb3@7 ~ eb3@12 ~@4 eb3@6 ~@2 c3@12 ~@4 c3@6 ~@2 ab2@10 ~@6 bb2@6 ~@2 eb3@12 ~@4 eb3@7 ~ eb3@12 ~@4 eb3@6 ~@2, ~@5 [c4,eb4,g4]@4 ~@2 [ab3,c4,eb4]@4 ~@2 [bb3,d4,f4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [c4,eb4,g4]@4 ~@2 [c4,eb4,g4]@4 ~@2 [ab3,c4,eb4]@4 ~@2 [bb3,d4,f4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@2 [bb3,eb4,g4]@4 ~@3]/8", // Cm Ab Bb Eb Cm Ab Bb Eb …
H: "[~@6 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 [b3,eb4,gb4]@2, b2@12 ~@4 b2@6 ~@2 gb2@12 ~@4 gb2@6 ~@2 eb3@23 ~ eb3@22 ~@50 eb3@23 ~ eb3@22 ~@2, ~@5 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@3, ~@64 bb2@8 ~@16 bb2@7 ~ b2@12 ~@4 b2@7 ~ gb2@12 ~@4 gb2@6 ~@18 bb2@8 ~@16 bb2@8]/8", // B Gb Ebm B Gb Ebm B Gb …
I: "[~@6 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@4 ~@8 [b3,eb4,gb4]@4 ~@2 b2@4 ~@2 [b3,eb4,gb4]@4 ~@8 [bb3,db4,gb4]@4 ~@2 gb2@4 ~@2 [bb3,db4,gb4]@3 ~@9 [bb3,eb4,gb4]@4 ~@2 bb2@4 ~@2 [bb3,eb4,gb4]@5 ~, b2@12 ~@4 b2@8 gb2@12 ~@4 gb2@8 eb3@23 ~ eb3@22 ~@50 eb3@23 ~, ~@5 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [b3,eb4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,db4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@2 [bb3,eb4,gb4]@4 ~@3, ~@64 bb2@8 ~@16 bb2@7 ~ b2@12 ~@4 b2@7 ~ gb2@12 ~@4 gb2@8 ~@16 bb2@8]/7", // B Gb Ebm B Gb Ebm B Gb …
J: "[eb3,bb3,eb4,gb4]@3 ~", // Ebm
})).s("gm_piano").gain(0.24).pan(0.3)
// chords · acoustic guitar steel · "AC.GUITAR"
const acoustic_guitar_steel = note(`<
~@8 A B C D E F G H I J K L M N O P Q R S T A B C D E F G U I J K L M N O P Q R S T A B C D E F G H I J K L M N O P Q
R S T A B C D E F G H I J K L M N O P Q R S T A B C D E F G U I J K L M N O P Q R S T A B C D E F G H I J K L M N O P
Q R S T A B C D E F G H I J K L M N O P Q R S T A B C D E F G U A B C D E F G V
>`.pickRestart({
A: "[gb2,b2,gb3,b3,eb4,gb4]@6 [gb2,b2,gb3,b3,eb4,gb4]@4 gb4@2 gb4@3 ~ [gb2,b2,gb3,b3,eb4,gb4]@2 [gb2,b2,gb3,b3,eb4,gb4]@4 [gb2,b2,gb3,b3,eb4,gb4]@2, ~@5 [gb2,b2,gb3,b3,eb4]@3 ~@4", // B
B: "[gb2,db3,gb3,bb3,db4,gb4]@3 [gb2,db3,gb3,bb3,db4,gb4]@2 [gb2,db3,gb3,bb3,db4,gb4]@3 [db3,gb3,bb3,db4,gb4] [db3,gb3,bb3,db4,gb4]@2 [gb2,db3,gb3,bb3,db4,gb4], ~@8 gb2@3 ~", // Gb
C: "[bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4] [eb3,bb3,eb4,gb4]@2 [eb3,bb3,eb4,gb4] [db3,f3,ab3,db4,f4]@2 [eb4,gb4] [eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4], ~@3 bb2@3 ~@2 [bb2,eb3,bb3]@3 ~", // Ebm Db Ebm Eb5
D: "[bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4] ~ [bb2,eb3,bb3,eb4,gb4]@2 [ab2,db3,f3,ab3,db4,f4]@4 [bb2,eb3,bb3,eb4,gb4]@6 [bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4]@4 [bb2,eb3,bb3,eb4,gb4]@2", // Ebm Db Ebm
E: "[gb2,b2,gb3,b3,eb4,gb4]@3 [gb2,b2,gb3,b3,eb4,gb4]@2 [gb2,b2,gb3,b3,eb4,gb4]@3 [b2,gb3,b3,eb4,gb4] [gb2,b2,gb3,b3,eb4,gb4]@2 [gb2,b2,gb3,b3,eb4,gb4]", // B
F: "[gb2,db3,gb3,bb3,db4,gb4]@6 [gb2,db3,gb3,bb3,db4,gb4]@3 ~ [gb3,bb3,db4]@6 [gb3,bb3,db4,gb4]@2 [gb2,db3,gb3,bb3,db4,gb4]@4 [gb2,db3,gb3,bb3,db4,gb4]@2, ~@3 gb4@2 ~@3, ~@5 [gb2,db3]@4 ~@3", // Gb Gb5
G: "[bb2,eb3,bb3,eb4,gb4]@3 [eb4,gb4]@2 [eb4,gb4] [ab2,db3,f3,ab3,db4,f4]@2 [eb4,gb4] [eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4], ~@3 [bb2,eb3,bb3]@3 ~@2 [bb2,eb3,bb3]@3 ~", // Ebm Db Ebm Eb5
H: "[bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4] ~ [bb2,eb3,bb3,eb4,gb4]@2 [ab2,db3,f3,ab3,db4,f4]@4 [eb3,bb3,eb4,gb4]@6 [eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4]@3 ~ [bb2,eb3]@2, ~@10 bb2@8 ~@3 [bb3,eb4,gb4]@2 ~", // Ebm Db Ebm Eb5 Ebm
I: "[g2,c3,eb3,g3,eb4,g4]@3 [g2,c3,eb3,g3,eb4,g4]@2 [g2,c3,eb3,g3,eb4,g4]@3 [c3,eb3,g3,eb4,g4] [g2,c3,eb3,g3,eb4,g4]@2 [g2,c3,eb3,g3,eb4,g4]", // Cm
J: "[ab2,c3,eb3,ab3,c4,ab4]@3 [c3,eb3,ab3,c4,ab4]@2 [c3,eb3,ab3,c4,ab4] [bb2,f3,bb3,d4,f4]@3 [bb2,f3,bb3,d4,f4]@2 [bb2,f3,bb3,d4,f4], ~ ab2 f2@2", // Ab Bb
K: "[eb3,g3,eb4]@2 [eb3,g3,eb4] [bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4] [f2,bb2,f3,bb3,d4,f4]@2 [bb2,eb3,g3,eb4,g4] [bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4], [bb2,g4] ~@3", // Eb Bb Eb
L: "[bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4] ~ [bb2,eb3,g3,eb4,g4]@2 [f2,bb2,f3,bb3,d4,f4]@4 [eb3,g3,eb4,g4]@6 [eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4]@4 [bb2,eb3,g3,eb4,g4]@2, ~@5 bb2@4 ~@3", // Eb Bb Eb
M: "[c3,eb3,g3,eb4,g4]@6 [g2,c3,eb3,g3,eb4,g4]@4 g4@2 g4@3 ~ [g2,c3,eb3,g3,eb4,g4]@2 [g2,c3,eb3,g3,eb4,g4]@4 [g2,c3,eb3,g3,eb4,g4]@2, ~@5 [g2,c3,eb3,g3,eb4]@3 ~@4", // Cm
N: "[c3,eb3,ab3,c4,ab4]@6 [ab2,c3,eb3,ab3,c4,ab4]@4 ~ ab2 ~ [d4,f4]@5 ~ [d4,f4]@3 [f3,bb3,d4,f4]@2, ~@5 [c3,eb3,ab3,c4,ab4] [f2,bb2,f3,bb3]@3 [f2,bb2]@3, ~@9 [f3,bb3]@2 ~", // Ab Dm Bb Ab Bb5
O: "~ [eb4,g4]@3 [eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4]@4 ~ bb2 ~ f4@3 [eb3,g3,eb4,g4]@2 [eb3,g3,eb4,g4]@4 [bb2,eb3,g3,eb4,g4]@2, bb2@3 ~@3 [f2,bb2,f3,bb3,d4]@2 bb2@3 ~, [eb3,g3]@2 ~@3 [eb3,g3,eb4,g4] ~@6", // Eb Bb Eb
P: "[bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4]@2 [f2,bb2,f3,bb3,d4,f4]@3 ~ [eb3,g3,eb4,g4]@6 [bb2,eb3,g3,eb4,g4]@2 [bb2,eb3,g3,eb4,g4]@4 [bb2,eb3,g3,eb4,g4]@2, ~@9 bb2@7 ~@8", // Eb Bb Eb
Q: "[g2,c3,eb3,g3,eb4,g4]@6 [g2,c3,eb3,g3,eb4,g4]@4 g4@3 g4@3 [g2,c3,eb3,g3,eb4,g4]@2 [g2,c3,eb3,g3,eb4,g4]@4 [g2,c3,eb3,g3,eb4,g4]@2, ~@5 [g2,c3,eb3,g3,eb4]@3 ~@4", // Cm
R: "~ gb4@5 ~ gb4@3 gb4@3 gb4@3 [gb2,b2,gb3,b3,eb4,gb4]@2 [gb2,b2,gb3,b3,eb4,gb4]@3 ~ [gb2,b2,gb3,b3,eb4]@2, [gb2,b2,gb3,b3,eb4]@6 [gb2,b2,gb3,b3,eb4]@4 [gb2,b2,gb3,b3,eb4]@6 ~@5 gb4@3", // B
S: "[ab2,c3,eb3,ab3,c4,ab4]@3 [ab2,c3,eb3,ab3,c4,ab4]@2 [c3,ab3,c4,ab4] [ab2,c3,ab3,c4,ab4]@2 [ab2,c3,eb3,ab3,c4,ab4] [ab2,c3,eb3,ab3,c4,ab4]@2 [ab2,c3,eb3,ab3,c4,ab4], ~@5 eb3@3 ~@4, ~@10 ab2 ~@13", // Ab Fm Ab
T: "[f2,bb2,f3,bb3,d4,f4]!2 ~@2", // Bb
U: "[bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4]@2 [ab2,db3,f3,ab3,db4,f4]@4 [eb3,bb3,eb4,gb4]@6 [eb3,bb3,eb4,gb4]@2 [bb2,eb3,bb3,eb4,gb4]@3 ~ [bb2,eb3]@2, ~@10 bb2@8 ~@3 [bb3,eb4,gb4]@2 ~", // Ebm Db Ebm Eb5 Ebm
V: "[bb2,eb3,bb3,eb4,gb4]@23 ~", // Ebm
})).s("gm_acoustic_guitar_steel").gain(0.19).pan(0.6)
// other · alto sax · "SAX"
const alto_sax = note(`<
~@50 A@2 ~@2 B C ~@2 D E ~@2 F ~ G H I ~ J@4 ~@2 K L ~@2 M N ~@2 O P G H I ~ Q@4 R@3 ~@3 S@2 ~@2 T@2 G U I ~ V@4 W@4
~@2 X@2 ~@2 Y@2 G H I ~ Z@3 ~ AA@4 ~@2 AB AC ~@2 AD AE G H I ~ AF@2 AG AH AI@2 AJ AK AL@2 AM AN AO@4
>`.pickRestart({
A: "[~@6 ab5@3 bb5@6 ~ gb5@6 eb5@7 ~ ab4@4 bb4@6 eb4@8]/2", B: "~@4 bb5 ~ ab5@6 eb5@6 ~@3 gb5 ab5 gb5",
C: "eb5@5 ~ db5@4 bb4@6 ab4@2 gb4@5 ~", D: "~@6 bb5@2 g5 ~@2 g5@2 ~ g5@2 bb5@2 g5@2 ~ g5@2 ~",
E: "g5 ~ g5@2 f5@2 eb5@2 f5@2 eb5@8 ~@6", F: "~@4 bb5@2 ~@2 bb5@2 c6 ~ c6@2 ~@2 c6 ~ g5@3 ~ g5@2, ~@12 b5 ~@11",
G: "c5", H: "b4@23 ~", I: "ab4@23 ~",
J: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@8 ab5@2 ~@4 ab5@4 gb5@24 eb5@3 db5@3 ~ eb5@16 ~@3]/4",
K: "~@6 eb5@9 ~@3 ab5@4 gb5@2", L: "ab5@4 gb5@4 ~@2 gb5@13 ~", M: "~@7 bb5 g5@2 eb5 ~ f5@9 g5 ~@2, ~@3 g5 ~@8",
N: "eb5@23 ~", O: "~@8 bb5 ~ bb5 ~ c6@2 ~@2 g5@6 eb5 ~", P: "f5@4 eb5@19 ~",
Q: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@8 ab5@3 ~@3 ab5@4 gb5@49 ~]/4",
R: "[~@12 eb5 ~@5 eb5@4 db5@5 ~ bb4@7 ~ ab5@3 ~@3 ab5@2 gb5@2 eb5@26]/3",
S: "[~@4 bb5@5 g5 f5 eb5 f5@4 eb5@4 ~@2 eb5@14 ~@12]/2", T: "[~@6 eb5@4 d5@8 bb4 ~@3 bb4@20 ~@6]/2", U: "b4",
V: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@4 ab5@3 ~ ab5@39 ~@11]/4",
W: "[~@12 eb5 ~@5 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@4 ab5@2 gb5 ~ eb5@28 ~@22]/4",
X: "[~@3 eb5 ~ eb5 f5@3 eb5@2 f5@2 eb5@2 f5 eb5 f5 eb5 f5 eb5 f5 eb5@15 ~@11]/2",
Y: "[~@6 g5 eb5@2 g5@6 ~ g5 ~ g5 eb5@2 g5@6 ~ g5 ~ g5 eb5@2 g5@9 ~@6]/2",
Z: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@4 ab5@4 gb5@21 ~@5]/3",
AA: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@4 ab5@2 gb5 ~ eb5@36 ~@14]/4",
AB: "~@9 c6@2 bb5 g5@2 ~ bb5@2 g5 f5@2 ~@2 f5@2", AC: "eb5@11 ~@13", AD: "~@14 bb4@4 g4 f4 eb4@4",
AE: "f4@9 eb4@13 ~@2", AF: "[~@12 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@2 ab5@6 gb5 ~]/2",
AG: "ab5@4 gb5@4 ~@2 gb5@11 eb5@2 gb5", AH: "eb5@9 db5 eb5 ~ db5@12",
AI: "[~@10 gb4@2 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@2 ab5@6 gb5 ~]/2", AJ: "ab5@4 gb5@3 ~@3 gb5@11 eb5 gb5@2",
AK: "eb5@9 db5 ~ eb5 db5@11 ~", AL: "[~@10 gb4@2 eb5@2 ~@4 eb5@4 db5@5 ~ bb4@7 ~ ab5 ~@3 ab5@6 gb5 ~]/2",
AM: "ab5@4 ~ gb5@3 ~@2 gb5@11 eb5 gb5@2", AN: "eb5@9 ~ eb5 ~ db5@11 ~, ~@9 db5@2 ~@13",
AO: "[~@10 gb4@2 eb5 ~@5 eb5@4 db5@5 ~ bb4@7 ~ ab5@2 ~@4 ab5@4 gb5@30 ~@20]/4",
})).s("gm_alto_sax").gain(0.32).pan(0.2)
// other · harmonica
const harmonica = note(`<
~@70 A B@2 ~ C@3 ~ D E ~@2 F G H I J K ~@36 H I J K L@2 M@2 ~@2 N@2 ~@8 H I J K ~ O@2 P ~ Q@2 R ~ S@2 ~@2 M@2 ~
>`.pickRestart({
A: "~@4 bb4@6 db5@3 a4 bb4@5 ~ bb4@4, ~@20 a4 ~@3", B: "[ab4@4 gb4@4 eb4@4 ~ db4@7 eb4@16 ~@12, ~@6 c4 ~@17]/2",
C: "[~@3 bb4 db5@14 bb4@18]/3", D: "~@3 g4@2 bb4 f4@2 eb4@3 bb3, ~@6 gb4 ~@17", E: "eb4@6 d4@3 ~ eb4@5 ~ eb4@8",
F: "~@5 f4 gb4@2 g4@2 bb4@2 gb4@2 g4@2 bb4@2 gb4@2 g4@2 bb4@2", G: "gb4 g4 bb4 gb4 g4 bb4 gb4 g4 bb4 gb4 g4 bb4",
H: "g4@23 ~", I: "gb4", J: "eb4@23 ~", K: "f4@4 ~@2 f4@7 ~@11", L: "[~@12 bb4@4 a4@2 ab4@4 gb4@11 ~@15]/2",
M: "[~@12 bb4@4 a4@2 ab4@3 ~ gb4@26]/2", N: "[~@12 bb4@4 a4@2 ab4@3 ~ gb4@22 ~@4]/2",
O: "[~@12 bb4@5 ~ bb4@4 ~ bb4@5 f4 e4 eb4@11 ~@7]/2", P: "[eb4,bb4]@4 f4 e4 eb4@5 ~ [eb4,bb4]@5 [e4,f4] eb4@6",
Q: "[~@12 bb4@5 ~ bb4@3 ~ bb4@6 [e4,f4] ~ eb4@9 ~@9]/2", // Fmaj7
R: "[eb4,bb4]@4 f4 ~ eb4@5 ~ [eb4,bb4]@4 f4 e4 eb4@5 ~, ~@5 e4@2 ~@17", S: "[~@12 bb4@4 a4 ~ ab4@3 ~ gb4@16 ~@10]/2",
})).s("gm_harmonica").gain(0.28).pan(0.8)
// chords · string ensemble 2 · "STRINGS"
const string_ensemble_2 = note(`<
~@36 A@8 ~@12 A@8 ~@12 A@8 B C D ~@9 E@8 F@3 ~@9 E@8 F@3 ~@9 E@8 F@3 ~@17
>`.pickRestart({
A: "[g3@2 ab3 [f3,d4] [g3,eb4]@4, [eb3,c4]@3 bb3@5]/4", B: "[eb3,g3,c4]", C: "[gb3,b3,eb4]", D: "[eb3,ab3,c4]",
E: "[g3@2 ab3 [f3,d4,f4] [g3,eb4,g4]@4, [eb3,c4,eb4]@3 bb3@5]/4", F: "[[eb3,g3,c4] [gb3,b3,gb4] [ab3,c4,ab4], eb4]/3",
})).s("gm_string_ensemble_2").gain(0.19)
// drums · kick
const kick = s("bd").struct(`<
~@8 A@18 B ~ A@7 C A@10 D ~ A@18 B ~ A@7 C A@10 D ~ A@18 B ~ A@7 C A@10 D ~ A@18 B ~ A@7 C A@7 C
>`.pickRestart({
A: "x ~@4 x!2 ~@5", B: "x ~@2 x!2 ~", C: "x", D: "x ~@5 x ~ x ~@2 x",
})).gain(0.48)
// drums · snare
const snare = s("sd").struct(`<
~@7 A B@3 C B@3 D B@3 E B@3 F B@3 G B@3 E B@3 H B@3 I B@3 D B@3 G B@3 C B@3 D B@3 E B@3 F B@3 G B@3 E B@3 H B@3 I B@3
D B@3 G B@3 C B@3 D B@3 E B@3 F B@3 G B@3 E B@3 H B@3 I B@3 D B@3 G B@3 C B@3 D B@3 E B@3 F B@3 G B@3 E B@3 H B@3 I
B@3 ~
>`.pickRestart({
A: "x ~@5 x ~@4 x", B: "~ x ~ x", C: "~@3 x ~@5 x ~ x", D: "~@3 x ~@4 x ~@3", E: "~@3 x ~@4 x!4",
F: "~@3 x ~@4 x!2 ~@2", G: "x!2 ~@2", H: "~@3 x ~@2 x ~ x ~@3", I: "~@3 x ~@4 x!2 ~ x",
})).gain(0.54)
// drums · snare · soft notes
const snare_soft = s("sd").struct(`<
~@7 A ~@2 B ~@7 B ~@8 C D ~@6 E ~@3 F ~@3 F ~@3 G ~@2 B ~@7 B ~@8 C D ~@6 E ~@3 F ~@3 F ~@3 G ~@2 B ~@7 B ~@8 C D ~@6
E ~@3 F ~@3 F ~@3 G ~@2 B ~@7 B ~@8 C D ~@6 E ~@3 F ~@4
>`.pickRestart({
A: "~@8 x!4 ~@6 x!4 ~@2", B: "~@11 x", C: "~@8 x ~@13 x!2", D: "x", E: "~@10 x!2 ~@12", F: "~@11 x ~@12",
G: "~@22 x!2",
})).gain(0.18)
// drums · hihat
const hihat = s("hh").struct(`<
~@8 A B@3 A B@2 C A B@2 C A B@2 C A B@2 D A B@2 C A B@2 E A B@2 E A B@2 C A B@2 D A B@3 A B@2 C A B@2 C A B@2 C A B@2
D A B@2 C A B@2 E A B@2 E A B@2 C A B@2 D A B@3 A B@2 C A B@2 C A B@2 C A B@2 D A B@2 C A B@2 E A B@2 E A B@2 C A B@2
D A B@3 A B@2 C A B@2 C A B@2 C A B@2 D A B@2 C A B@2 E A B@2 E A B@2 ~
>`.pickRestart({
A: "~ x!3", B: "x!4", C: "x!3 ~", D: "~@3 x ~@4", E: "x!2 ~@2",
})).gain(0.54)
// drums · mid tom
const mid_tom = s("mt").struct(`<
~@7 A ~@7 B ~@7 C ~@11 B ~@7 D ~@11 B ~@7 C ~@11 B ~@7 D ~@11 B ~@7 C ~@11 B ~@7 D ~@11 B ~@7 C ~@11 B ~@8
>`.pickRestart({
A: "~ x ~@2 x ~", B: "~@9 x ~ x", C: "~@10 x!2", D: "~@9 x!3",
})).gain(0.48)
// drums · open hat
const open_hat = s("oh").struct(`<
~@27 A ~@11 B ~@7 A ~@19 A ~@11 B ~@7 A ~@19 A ~@11 B ~@7 A ~@19 A ~@11 B ~@4
>`.pickRestart({
A: "x!2 ~@2", B: "~ x",
})).gain(0.54)
// drums · crash
const crash = s("cr").struct(`<
~@8 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3
A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A
~@2 A
>`.pickRestart({
A: "x",
})).gain(0.48)
stack(
bass, piano, acoustic_guitar_steel, alto_sax, harmonica, string_ensemble_2, kick, snare, snare_soft, hihat, mid_tom,
open_hat, crash
)
More by Antonello Venditti
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.