0:00/0:00
// Quaderno di donna — Pooh
// 70 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 77 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(70/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 · piano · "Pianoforte"
const piano = note(`<
A@4 B@5 C D C D C D C D C D C D E F E G H I J K L D C D M N M O P@8 Q@6 R@3 S@8 T U@5 ~@9
>`.pickRestart({
A: "[~@37 d2@20 ~@2 d2@2 f2@4 e2@4 d2@4 a2@12 bb1@24 db2@4 c2@4 bb1@4 f2@12 d2@2 f2@2 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@12 bb1@2 db2@2 bb1@7]/4",
B: "[~@11 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@4 db2@4 [d2,d3]@2 [f2,f3]@2 [d2,d3]@16 ~@2 [d2,d3]@2 [f2,f3]@4 [e2,e3]@4 [d2,d3]@4 [a2,a3]@4 [g2,g3]@4 [f2,f3]@4 [bb1,bb2]@2 [db2,db3]@2 [bb1,bb2]@16 ~@2 [bb1,bb2]@2 [db2,db3]@4 [c2,c3]@4 [bb1,bb2]@4 [f2,f3]@4 [eb2,eb3]@4 [db2,db3]@4 [d2,d3]@2 [f2,f3]@2 [d2,d3]@16 ~@2 [d2,d3]@2 [f2,f3]@4 [e2,e3]@4 [d2,d3]@4 [a2,a3]@4 [g2,g3]@4 [f2,f3]@4 [bb1,bb2]@2 [db2,db3]@2 [bb1,bb2]@16 ~@2 [bb1,bb2]@2 [db2,db3]@4 [c2,c3]@4 [bb1,bb2]@5 ~ [f2,f3]@6 [eb2,eb3]@7 [db2,db3]@8]/5", // D F D F E D A G …
C: "a3@2 ~@3 c3 ~@5 a3, f2@5 ~ [f2,f4]@6, ~@2 a3@3 a3@3 a3@3 ~, ~ c4@2 c4", // F
D: "bb3@2 ~@3 f2 ~@5 bb3, bb2@5 ~ [bb2,f4]@6, ~@2 bb3@3 bb3@3 bb3@3 ~, ~ db4@2 db4", // Bb5
E: "d4@2 ~@3 a2 ~@5 d4, d3@5 ~ [d3,a4]@6, ~@2 d4@3 d4@3 d4@3 ~, ~ f4@2 f4", // D5
F: "db4@2 ~@3 e2 ~@5 db4, db3@5 ~ [a2,a4]@6, ~@2 db4@3 db4@3 db4@3 ~, ~ e4@2 e4", // A
G: "c4@2 ~@3 c3 ~@5 c4, c3@5 ~ bb2@6, ~@2 c4@3 c4@3 c4@3 ~, ~ e4 f4 g4",
H: "~@5 [a2,g3] ~@5 a3, g4 ~, a2@5 ~ [d3,f4]@6, ~@2 g3@3 ~@3 a3@3 ~, ~ c4 ~ c4", // A7 Dm
I: "a3@2 ~@3 e2 ~@5 a3, a2@5 ~ [a2,e4]@6, ~@2 a3@3 a3@3 a3@3 ~, ~ db4@2 db4", // A5
J: "bb3@2 ~@3 bb2 ~@5 bb3, bb2@5 ~ bb2@6, ~@2 bb3@3 bb3@3 bb3@3 ~, ~ d4 e4 f4",
K: "c4@2 ~@3 bb2 ~@5 c4, bb2@5 ~ [bb2,g4]@6, ~@2 c4@3 c4@3 c4@3 ~, ~ e4@2 e4", // Eb
L: "~@5 [bb2,c4] ~@5 a3, g4 ~, bb2@5 ~ [d3,f4]@6, ~@2 c4@3 ~@3 a3@3 ~, ~ e4 ~ c4", // Bbsus2 Dm
M: "[d2,d3] [f2,f3] [d2,d3]@8 ~ [d2,d3] [f2,f3]@2 [e2,e3]@2 [d2,d3]@2 [a2,a3]@2 [g2,g3]@2 [f2,f3]@2", // D F D F E D A G …
N: "[bb1,bb2] [db2,db3] [bb1,bb2]@8 ~ [bb1,bb2] [db2,db3]@2 [c2,c3]@2 [bb1,bb2]@2 [f2,f3]@2 [eb2,eb3]@2 [db2,db3]@2", // Bb Db Bb Db C Bb F Eb …
O: "[bb1,bb2]@2 [db2,db3]@2 [bb1,bb2]@16 ~@2 [bb1,bb2]@2 [db2,db3]@4 [c2,c3]@5 [bb1,bb2]@5 [f2,f3]@6 [eb2,eb3]@4", // Bb Db Bb Db C Bb F Eb
P: "[~@3 [db2,db3]@8 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@8 bb3@4 db4, ~@11 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@24 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@24 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@24 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@13, ~@19 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@12 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@12 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@12 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 ~@5, ~@23 c4@24 c4@12 ~@12 db4@24 db4@12 ~@12 c4@24 c4@12 ~@12 db4@24 db4@12 ~@12 c4@24 c4@12 ~@12 db4@24 db4@12 ~@12 c4@24 c4@12 ~@12 db4@24 ~]/8", // Db F Bb5 F Bb5 F Bb5 F …
Q: "[~@7 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 d4@8 ~@12 a2@4 ~@20 d4@4 db4@8 ~@12 e2@4 ~@20 db4@4 d4@8 ~@12 a2@4 ~@20 d4@4 c4@8 ~@12 c3@4 ~@8 c4@4 g4, ~@11 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@24 d3@20 ~@4 [d3,a4]@24 db3@20 ~@4 [a2,a4]@24 d3@20 ~@4 [d3,a4]@24 c3@20 ~@4 [bb2,f4]@13, ~@19 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@16 f4@24 f4@12 ~@12 e4@24 e4@12 ~@12 f4@24 f4@12 ~@12 e4@12 ~@13, ~@23 c4@24 c4@12 ~@12 db4@24 db4@12 ~@8 d4@12 d4@12 d4@12 ~@12 db4@12 db4@12 db4@12 ~@12 d4@12 d4@12 d4@12 ~@12 c4@12 c4@12 ~@5]/6", // F Bb5 D5 A D5 Bb5
R: "[~@7 c4@4 ~@20 [a2,g3]@4 ~@20 a3@4 a3@8 ~@12 e2@4 ~@20 a3@4 bb3@8 ~@12 bb2@4 ~@8 bb3@4 f4, ~@11 g4@24 ~@109, ~@11 a2@20 ~@4 [d3,f4]@24 a2@20 ~@4 [a2,e4]@24 bb2@20 ~@4 [bb2,e4]@13, ~@19 g3@12 ~@12 a3@12 ~@12 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 ~@5, ~@23 c4@12 ~@12 c4@12 ~@12 db4@24 db4@12 ~@12 d4@12 ~@13]/3", // A7 Dm A5 Bbdim
S: "[~@7 bb3@4 c4@8 ~@12 bb2@4 ~@20 c4@4 ~@20 [bb2,c4]@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 [d2,d3]@2 [f2,f3]@2 [d2,d3]@16 ~@2 [d2,d3]@2 [f2,f3]@4 [e2,e3]@4 [d2,d3]@4 [a2,a3]@4 [g2,g3]@4 [f2,f3]@4 [bb1,bb2]@2 [db2,db3]@2 [bb1,bb2]@16 ~@2 [bb1,bb2]@2 [db2,db3]@4 [c2,c3]@4 [bb1,bb2]@4 [f2,f3]@4 [eb2,eb3]@4 [db2,db3]@4 [d2,d3]@2 [f2,f3]@2 [d2,d3]@16 ~@2 [d2,d3]@2 [f2,f3]@4 [e2,e3]@4 [d2,d3]@4 [a2,a3], ~@11 bb2@20 ~@4 [bb2,g4]@24 bb2@20 ~@4 [d3,f4]@24 bb2@20 ~@4 [bb2,f4]@24 f2@20 ~@4 [f2,f4]@24 bb2@20 ~@4 [bb2,f4]@24 ~@133, ~@19 c4@12 c4@12 c4@12 ~@12 c4@12 ~@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@12 a3@12 a3@12 a3@12 ~@12 bb3@12 bb3@12 bb3@12 ~@137, ~@23 e4@24 e4@12 g4@24 ~@301, ~@71 e4@12 ~@12 c4@12 ~@12 db4@24 db4@12 ~@12 c4@24 c4@12 ~@12 db4@24 db4@12 ~@133]/8", // Bbsus2 D F D F E D A …
T: "~@3 [g2,g3]@4 [f2,f3]@4 [bb1,bb2]@2 [db2,db3]@2 [bb1,bb2]@16 ~@2 [bb1,bb2]@2 [db2,db3]@4 [c2,c3]@5 [bb1,bb2]@4", // G F Bb Db Bb Db C Bb
U: "[~ [f2,f3]@6 [eb2,eb3]@7 [db2,db3]@8 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 a3@8 ~@12 c3@4 ~@20 a3@4 bb3@8 ~@12 f2@4 ~@20 bb3@4 ~@26, ~@11 f2@10 ~@2 [f2,f4]@12 bb2@10 ~@2 [bb2,f4]@12 f2@10 ~@2 [f2,f4]@12 bb2@10 ~@2 [bb2,f4]@12 ~@13, ~@5 a3@2 a3@2 a3@2 ~@2 bb3@2 bb3@2 bb3@2 ~@2 a3@2 a3@2 a3@2 ~@2 bb3@2 bb3@2 bb3@2 ~@5, ~@17 c4@12 c4@6 ~@6 db4@12 db4@6 ~@6 c4@12 c4@6 ~@6 db4@12 db4@6 ~@13]/5", // F Eb Db F Bb5 F Bb5
})).s("gm_piano").gain(0.42).pan(0.6)
// chords · piano · "Pianoforte" · soft notes
const piano_soft = note("<~@9 A@12 B@3 C D E A C F A@3 ~@4 G H@9 I J@2 K L M N O P H@3 Q ~@3 R S@3 T ~@9>".pickRestart({
A: "~ f3@3 f3@3 f3@3 f3@2", B: "~ a3@3 a3@3 a3@3 a3@2", C: "~ g3@3 g3@3 g3@3 g3@2", D: "~ e3@3 e3@2 ~ f3@3 f3@2",
E: "~ e3@3 e3@3 e3@3 e3@2", F: "~ g3@3 g3@2 ~ f3@3 f3@2", G: "~@5 f3@4 f3@4 f3@3", H: "~@3 f3@8 ~@4 f3@12 f3@12 f3@9",
I: "~@3 f3@8 ~@4 a3@12 a3@12 a3@9", J: "~@3 a3@8 ~@4 a3@12 a3@12 a3@9", K: "~@3 a3@8 ~@4 g3@12 g3@12 g3@9",
L: "~@3 g3@8 ~@4 e3@12 e3@8 ~@4 f3@9", M: "~@3 f3@8 ~@4 e3@12 e3@12 e3@9", N: "~@3 e3@8 ~@4 f3@12 f3@12 f3@9",
O: "~@3 f3@8 ~@4 g3@12 g3@12 g3@9", P: "~@3 g3@8 ~@4 g3@12 g3@8 ~@4 f3@9", Q: "~@3 f3@8 ~@37", R: "~@13 f3@6 f3@5",
S: "~ f3@6 f3@4 ~@2 f3@6 f3@5", T: "~ f3@6 f3@4 ~@13",
})).s("gm_piano").gain(0.18).pan(0.6)
// bass · electric bass finger · "Basso Elettrico"
const bass = note(`<
A B C@7 D E F G H I J K L M N@2 O@2 P Q@2 R S@2 T U V W X Y Z AA@3 AB AC AD@3 AE@2 AF@2 AG AH AI@6 AJ@3 AK@4 AL@2 AM@7
AN@5
>`.pickRestart({
A: "~@37 d2@11", B: "~@13 f2@4 e2@4 d2@4 a2@12 bb1@11",
C: "[~@13 db2@4 c2@4 bb1@4 f2@12 d2@2 f2@2 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@12 bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@4 db2@4 d2@2 f2@2 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@2 d2@2 g2@2 d2@2 f2@2 d2@2 bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@4 bb1@4 f2@2 bb1@2 eb2@2 bb1@2 db2@2 bb1@2 d2@2 f2@2 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@2 d2@2 g2@2 d2@2 f2@2 d2@2 bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@4 bb1@5 ~ f2@6 eb2@7 db2@8]/7",
D: "f1@15 ~ f1@4 c2@3 ~ f2@8 f1@4 c2@8 f1@4", E: "bb1@12 ~@4 c2@4 db2@4 eb2@3 ~ f2@2 ~ ab2@4 ~ c3 db3@7 f2@4",
F: "f1@24 f2@16 f1@4 c2@3 ~", G: "bb1@16 c2@3 ~ db2@3 ~ eb2@9 ~@3 c3 db3@11", H: "f1@11 ~",
I: "f1@26 ~@2 bb1@3 ~ c2@4 db2@4 ~@3 bb1@2 ~@3, ~@40 c2@5 ~@3", J: "f1@18 f2@2 c2@2 f1 ~",
K: "f1@26 ~@2 bb1@3 ~ c2@4 db2@3 ~ c2@3 bb1@2 ~@3", L: "f1@24 f2@7 ~ c2@7 ~ f1@3 ~ c2@4",
M: "bb1@27 ~ c2@3 ~ db2@2 ~@2 eb2@3 ~ db2@3 ~ c2@3 ~",
N: "[f1@24 f2@7 ~ c2@6 ~@2 f1@3 ~ c2@3 bb1@29 c2@3 ~ db2@3 ~ eb2@3 ~ db2@3 c2@4 ~]/2",
O: "[d2@36 bb2@3 ~ a2 ~@2 d2@2 ~@2 db2@20 ~ a1@2 ~@2 db2@7 ~ d2@6 ~@2 e2@3 ~ a2@4, ~@36 a2 ~@59]/2",
P: "d2@24 d3 ~@3 d3@2 ~@2 a2 ~@3 d2@11 ~, ~@25 f3@5 ~@18",
Q: "[c2@22 ~@2 bb1@20 ~@3 a1@17 e2 ~@3 a2 ~@2 a2 c3@2 ~@6 f3 ~@2 f3 g3@7 f3 ~@4]/2",
R: "e3@3 a2@2 ~@2 e2 ~@3 a1@32 ~ a1 ~@3", S: "[bb1@22 ~@3 bb1@16 ~@2 bb1 ~@3 bb1@24 ~ bb2@22 ~@2, ~@72 a2 ~@23]/2",
T: "a1@22 ~@2 a2@7 c3 ~@3 e3 f3@6 ~ e3@2 ~@3", U: "bb1@19 ~ f2 ~@4 bb1@17 ~@2 bb1 ~@3",
V: "f1@19 ~ f2@2 ~@2 c3@5 ~@3 e3 ~@2 e3 f3@7 c3 ~@4", W: "bb1@17 ~@3 f2@2 ~@3 bb2@15 f2 ~@2 f2 ~@4",
X: "f2@2 d2@8 ~ d2 f2@2 e2@2 d2@2 a2 d2 g2 d2 f2 d2",
Y: "bb1 db2 bb1@8 ~ bb1 db2@2 c2@2 bb1@2 f2 bb1 eb2 bb1 db2 bb1",
Z: "d2 f2 d2@8 ~ d2 f2@2 e2@2 d2@2 a2 d2 g2 d2 f2 d2",
AA: "[bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@5 bb1@5 f2@6 eb2@7 db2@8 f1@15 ~ f1@4 c2@3 ~ f2@8 f1@4 c2@8 f1@4 bb1@12 ~@4 c2@3 ~ db2@4 eb2@3 ~ f2@2 ~@2 ab2@4 c3]/3",
AB: "db3@7 f2@4 ~ f1@23 f2@13", AC: "~@4 f1@3 c2@3 ~ bb1@16 c2@3 ~ db2@3 ~ eb2@9 ~@3 c3",
AD: "[db3@11 f1@36 f2@4 c2@4 f1@2 ~@2 f1@26 ~@2 bb1@3 ~ c2@4 db2@3 ~ c2@3 ~ bb1@2 ~@2 f1@24 ~ f2@7 c2@5]/3",
AE: "[~@3 f1@3 ~ c2@4 bb1@27 ~@2 c2@3 ~ db2@2 ~ eb2@2 ~@3 db2@3 c2@3 ~ f1@24 ~ f2@7 c2@5]/2",
AF: "[~@3 f1@3 ~ c2@4 bb1@29 c2@3 ~ db2@3 eb2@3 ~ db2@3 ~ c2@4 d2@36 a2]/2",
AG: "bb2@3 a2 ~@2 d2@2 ~@2 db2@20 ~ a1@2 ~@2 db2@7 ~ d2@5",
AH: "~@3 e2@3 ~ a2@4 d2@24 ~ f3@4 d3@2 ~@2 a2 ~@3, ~@36 d3 ~@11",
AI: "[d2@11 c2@22 ~@2 bb1@20 ~@3 a1@17 e2 ~@3 a2 ~@2 a2 c3@2 ~@6 f3 ~@3 g3@7 f3 ~@4 e3@4 a2@2 ~@2 e2 ~@3 a1@32 a1 ~@4 bb1@22 ~@2 bb1@16 ~@3 bb1 ~@3 bb1@24 a2 bb2@22 ~ a1@22 ~@2 a2@7 ~ c3 ~@3 e3, ~@95 f3 ~@192]/6",
AJ: "[f3@6 e3@2 ~@3 bb1@19 ~@2 f2 ~@3 bb1@17 ~@2 bb1 ~@3 f1@19 ~ f2@2 ~@2 c3@5 ~@3 e3 ~@2 e3 f3@8 c3 ~@3 bb1@17 ~@4 f2@2 ~@2 bb2@12]/3",
AK: "[~@3 f2 ~@3 f2 ~@3 f2@4 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@2 d2@2 g2@2 d2@2 f2@2 d2@2 bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@4 bb1@4 f2@2 bb1@2 eb2@2 bb1@2 db2@2 bb1@2 d2@2 f2@2 d2@16 ~@2 d2@2 f2@4 e2@4 d2@4 a2@2 d2@2 g2@2 d2@2 f2@2 d2@2 bb1@2 db2@2 bb1@16 ~@2 bb1@2 db2@4 c2@5 bb1@4]/4",
AL: "[~ f2@6 eb2@7 db2@8 ~ f1@15 f1@4 c2@3 ~ f2@8 f1@4 ~ c2@7 f1@4 bb1@12 ~@5 c2@3 db2@4 eb2@2]/2",
AM: "[~@2 f2@2 ~@2 ab2@4 c3 db3@7 ~ f2@4 f1@23 f2@16 ~ f1@4 c2@3 bb1@16 c2@3 ~ db2@3 ~ eb2@9 ~@3 c3 db3@11 ~ f2@2 c3@2 f2@4 ~@16 f2@2 c3@2 f2@3 ~ f2@2 c3@2 f2@4 ~@8 bb1@2 f2@2 bb1@4 ~@14 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@4 c2@4 f2@2 c3@2 f2@4 ~@16 f2@2 c3@2 f2@3 ~ f2@2 c3@2 f2@4 ~@8 bb1@2 f2@2 bb1@4 ~@14 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@4 c2@4 f2@2 c3@2 f2@4 ~@16 f2]/7",
AN: "[~ c3@2 f2@3 ~ f2@2 c3@2 f2@4 ~@8 bb1@2 f2@2 bb1@4 ~@14 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@4 c2@4 f2@2 c3@2 f2@4 ~@16 f2@2 c3@2 f2@3 ~ f2@2 c3@2 f2@4 ~@8 bb1@2 f2@2 bb1@4 ~@14 bb1@2 db2@4 c2@4 bb1@4 f2@4 eb2@6 c2@7 f1@60 ~@8]/5",
})).s("gm_electric_bass_finger").gain(0.48).pan(0.4)
// other · vibraphone
const vibraphone = note(`<
A B ~@14 C D E F G@2 H I J@2 K L M N O@2 P@2 Q R S@2 ~@5 T@7 U@3 V@8 W@2 X Y Z AA ~@10
>`.pickRestart({
A: "~@37 c-1@2 ~@9", B: "~@39 c-1@2 ~@7", C: "~@11 c4", D: "~@3 c5@40 ~ a4@4", E: "~ bb4@11 a4@11 ~ f4@5 ~ g4@15 ~@3",
F: "c5@2 bb4@2 c5@38 ~ a4@4 ~", G: "[bb4@11 a4@11 ~@2 f4@5 ~ g4@16 ~ f5@7 ~ f5@35 ~@2 d5@3 ~]/2",
H: "~ e5@6 ~ e5@10 ~@2 e5@4 a5@18 ~ g5@3 ~@2", I: "f5@4 d5@37 ~@3 d5@4",
J: "[e5@7 ~ e5@10 ~ e5@4 ~ f5@11 ~ g5@10 ~ g5@23 ~@2 f5@18 ~@2 a4@3 ~, ~@72 g5 ~@23]/2",
K: "~ bb4@5 ~ a4@22 ~ db5@9 e5@7 ~@2", L: "e5@24 d5@18 ~ db5@4 ~", M: "c5@7 bb4@13 ~@3 a4@7 g4@16 ~@2",
N: "c5@24 f4@17 ~@2 a4@3 ~@2", O: "[bb4@12 a4@12 f4@4 ~ db4@18 c5@44 ~ a4@4]/2",
P: "[bb4@7 a4@11 ~ a4@5 f4@5 ~ db4@16 ~@2 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4, ~@47 d5@48 ~]/2",
Q: "f4 db4 eb4 f4 eb4 db4 f4 db4 eb4 f4 eb4 db4", R: "f4 d4 e4 f4 e4 d4 f4 d4 e4 f4 e4 d4",
S: "[f4@4 db4@4 eb4@4 f4@4 eb4@4 db4@4 f4@4 db4@5 eb4@5 f4@6 eb4@7 db4@8 f4@24 ~@13]/2",
T: "[~@7 c4@8 c5@39 ~ a4@4 ~ bb4@11 a4@12 ~ f4@4 g4@16 ~@2 c5@2 bb4@2 ~ c5@37 ~@3 a4@4 ~ bb4@10 a4@12 ~ f4@7 g4@16 ~ f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 d4@4 e4@4 f4@4 e4@4 d5@3 ~@2 e5@6 ~ e5@16 a5@19 ~ g5@2 ~@2 f5@2 e5@2 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 d4@4 e4@4 f4, ~@203 f5@43 ~@53 f4@4 d5@32 ~]/7",
U: "[~@3 e4@4 d5@3 ~@2 e5@18 e5@4 ~ f5@12 g5@11 ~ g5@23 ~@2 f5@18 ~ a4@3 ~@2 bb4@6 a4@22 ~@2 db5@6]/3",
V: "[~@3 e5@7 ~ e5@24 d5@19 ~ db5@4 ~ c5@7 bb4@14 ~@2 a4@7 ~ g4@14 ~@2 c5@24 ~ f4@17 ~@2 a4@3 ~@2 bb4@7 a4@16 f4@7 db4@16 ~ c5@43 ~@2 a4@2 ~@2 bb4@7 a4@10 ~ a4@4 ~@2 f4@5 ~ db4@15 ~@2 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 db4@4 eb4@4 f4@4 eb4@4 db4@4 f4@4 db4@4 eb4@4 f4]/8",
W: "[~@3 eb4@4 db4@4 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 d4@4 e4@4 f4@4 e4@4 d4@4 f4@4 db4@4 eb4@4 f4@4 eb4@4 db4@4 f4@4 db4@5 eb4@4]/2",
X: "~ f4@6 eb4@7 ~ db4@8 f4@24 ~", Y: "~@7 c-1@2 ~@39", Z: "~@9 c-1@2 ~@37", AA: "~@3 c-1@2 ~@43",
})).s("gm_vibraphone").gain(0.42)
// chords · string ensemble 1 · "Strings"
const string_ensemble_1 = note("<~@9 A B A B ~@24 C@5 ~@21 D@8 E@6>".pickRestart({
A: "[f4,a4,c5]", B: "[f4,bb4,db5]", C: "[~@11 [f4,a4,c5]@48 [f4,bb4,db5]@48 [f4,a4,c5]@48 [f4,bb4,db5]@48 ~@37]/5",
D: "[~@23 [f4,a4,c5]@48 [f4,bb4,db5]@48 [f4,a4,c5]@48 [f4,bb4,db5]@48 [f4,a4,c5]@48 [f4,bb4,db5]@48 [f4,a4,c5]@48 [f4,bb4,db5]@25]/8", // F Bbm F Bbm F Bbm F Bbm
E: "[~@23 [f4,a4,c5]@48 [f4,bb4,db5]@48 [f4,a4,c5]@48 [f4,bb4,db5]@53 [f4,a4,c5]@60 ~@8]/6", // F Bbm F Bbm F
})).s("gm_string_ensemble_1").gain(0.32).pan(0.7)
// chords · lead 2 sawtooth · "Synth"
const lead_2_sawtooth = note("<A B C B C B C B D ~@24 E F E G H ~@21 I@4 J ~@3 K@8 L@2>".pickRestart({
A: "~@37 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~", // Dm
B: "~ [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~", // Dm Bbm
C: "~ [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~", // Bbm Dm
D: "~ [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@3 ~@3 [f5,bb5,db6]@3 ~@3 [f5,bb5,db6]@3 ~@4 [f5,bb5,db6]@4 ~@4", // Bbm
E: "[f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~ [f5,a5,d6] ~", // Dm
F: "[f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~ [f5,bb5,db6] ~", // Bbm
G: "[f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@3 [f5,bb5,db6]@3 ~@2 [f5,bb5,db6]@3 ~@3 [f5,bb5,db6]@3 ~", // Bbm
H: "~@3 [f5,bb5,db6]@4 ~@41", // Bbm
I: "[~@11 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,a5,d6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@3 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@3 ~]/4", // Dm Bbm Dm Bbm
J: "~ [f5,bb5,db6]@3 ~@4 [f5,bb5,db6]@3 ~@4 [f5,bb5,db6]@4 ~@29", // Bbm
K: "[~@23 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,a5,c6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]]/8", // F Bbm F Bbm F Bbm F Bbm
L: "[~@3 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@2 ~@2 [f5,bb5,db6]@3 ~@3 [f5,bb5,db6]@4 ~@3 [f5,a5,c6]@60 ~@8]/2", // Bbm F
})).s("gm_lead_2_sawtooth").gain(0.12)
// other · distortion guitar · "Chitarra Distorta"
const distortion_guitar = note(`<
A@8 B C D C D ~@8 E F E F G ~@3 H I H J K L ~@2 M@6 ~@4 N O@2 P@3 ~@2 Q@5 R S ~ T@4 U@7 V@3
>`.pickRestart({
A: "[~@41 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~@5 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~@5 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~@5 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~@5 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~@5 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~@5 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~@5 f4 eb4 db4 ~ f4@3]/8",
B: "~@5 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 ~ eb4 db4 ~@2 f4 eb4 ~ db4@2 ~ f4@2 ~ db4@2 ~@2 f4@2 eb4@2 db4@2 ~@2, ~@35 eb4@2 ~@11",
C: "c5@6 bb4@2 a4 g4@2 f4", D: "db4@6 eb4@2 f4@2 eb4 db4",
E: "~@4 f3 e3 d3 ~ f3@5 ~@3 f3 e3 d3 ~ f3@5 ~@3 f3 e3 d3 ~ f3 e3 d3 ~ f3 e3 d3 ~ f3 e3 d3 ~ f3 e3 d3 ~",
F: "e3@23 ~ f3@11 ~ g3@11 ~", G: "e3@23 ~ d3@23 ~", H: "f4@6 g4@2 f4@2 e4 d4", I: "bb3@47 ~", J: "bb3",
K: "~@4 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~",
L: "~@4 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~",
M: "[~@11 c5@24 bb4@8 a4@4 g4@8 f4@4 db4@24 eb4@8 f4@8 eb4@4 db4@4 c5@24 bb4@8 a4@4 g4@8 f4@4 db4@24 eb4@8 f4@8 eb4@4 db4@4 c5@48 ~@37]/6",
N: "~@15 f3 e3 d3 ~ f3@5 ~@3 f3 e3 d3 ~ f3@5 g3 ~@2 f3 e3 d3 ~ f3 e3 d3 ~ f3",
O: "[e3 d3 ~ f3 e3 d3 ~ f3 e3 d3 ~ e3@23 ~ f3@11 ~ g3@11 ~@5 f3 e3 d3 ~ f3@5 ~@3 f3 e3 d3 ~ f3@5 g3 ~@2 f3 e3 d3 ~ f3 e3 d3 ~ f3]/2",
P: "[e3 d3 ~ f3 e3 d3 ~ f3 e3 d3 ~ e3@23 ~ f3@11 ~ g3@11 ~ g3@23 ~ f3@23 ~@38]/3",
Q: "[~@11 f4@24 g4@8 f4@8 e4@4 d4@4 bb3@47 ~ f4@24 g4@8 f4@8 e4@4 d4@4 bb3@48 ~@4 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4@5 ~@3 f4 e4 d4 ~ f4 e4 d4 ~ f4]/5",
R: "e4 d4 ~ f4 e4 d4 ~ f4 e4 d4 ~@5 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4@5 ~@3 f4 eb4 db4 ~ f4 eb4 db4 ~ f4",
S: "eb4 db4 ~ f4 eb4 db4 ~ f4 eb4 db4 ~@38",
T: "[~@23 c5@23 bb4@8 a4@4 g4@8 f4@4 db4@24 eb4@8 f4@8 eb4@4 db4@4 c5@24 bb4@8 a4@4 g4@8 f4@4 db4@24 eb4@2]/4",
U: "[~@6 f4@8 eb4@4 db4@4 ~ c5@48 db5@48 c5@48 db5@48 c6@24 bb5@6 a5@6 g5@6 f5@6 db5@24 eb5@8 f5@8 eb5@8 ~@4 a4 g4 f4 ~ a4@5 ~@3 a4 g4 f4 ~ a4@4 bb5, ~@311 c6@24 ~]/7",
V: "[~@3 a4 g4 f4 ~ a4 g4 f4 ~ a4 g4 f4 ~ a4 g4 f4 ~ a4 g4 f4 ~@5 bb4 a4 g4 ~ bb4@5 ~@3 bb4 a4 g4 ~ bb4@4 ~@4 bb4 a4 g4 ~ bb4 a4 g4 ~ bb4 a4 g4 ~ bb4 a4 ~ g4 ~@2 bb4@2 a4@2 g4@2 ~ [a4,c5]@60 ~@8, ~@5 a5@6 g5@6 f5@6 db5@24 eb5@8 f5@6 eb5@12 ~@71]/3", // Am
})).s("gm_distortion_guitar").gain(0.22).pan(0.9)
// drums · kick
const kick = s("bd").struct(`<
A B@7 C D E@2 F E@4 G E@15 H@3 I J K@2 L M K@2 N K@14 O@3 P Q R@3 S O@7 T ~
>`.pickRestart({
A: "~@37 x ~@3 x ~@3 x ~@2", B: "~ x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@2",
C: "~ x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@5 x ~@5 x ~@6 x ~@7", D: "x!3 ~@2 x!2 ~@3 x!2", E: "x ~@5 x ~@3 x!2",
F: "x ~@2 x!3", G: "x ~@5 x ~@4 x", H: "x!12", I: "x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@4 x ~@4 x ~@5 x ~@3",
J: "~@3 x ~@7 x ~@3 x ~@3 x ~@11 x ~@3 x ~@12", K: "~@3 x ~@3 x ~@3 x ~@23 x ~@12",
L: "~@3 x ~@3 x ~@3 x ~@23 x ~@7 x ~@4", M: "~@3 x ~@7 x ~@23 x ~@12", N: "~@7 x ~@3 x ~@23 x ~@12",
O: "~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x",
P: "~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@4 x ~@3 x ~@3",
Q: "~ x ~@6 x ~@6 x ~@7 x ~@3 x ~@3 x ~@11 x ~@3 x", R: "~@15 x ~@3 x ~@3 x ~@23 x",
S: "~@7 x ~@7 x ~@7 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x", T: "~@3 x ~@3 x ~@3 x ~@3 x ~@5 x ~@6 x ~@19",
})).gain(0.64)
// drums · snare
const snare = s("sd").struct(`<
~@5 A@3 B C@3 D C@3 E C@3 E C@11 E C@3 F G@3 H I G J G@3 J G@11 J G@2 K L M@3 N ~@3 L M@3 O ~
>`.pickRestart({
A: "~ x ~@23 x ~@22", B: "~ x ~@46", C: "~ x ~ x", D: "~@6 x ~@7 x ~@3 x ~@2 x!2 ~", E: "~@6 x ~@11 x ~@2 x!2 ~",
F: "~ x ~@2", G: "~@23 x ~@23 x", H: "~@23 x ~@15 x!2 ~@6 x", I: "x ~@4 x ~ x ~@15 x ~@23 x",
J: "~@5 x ~ x ~@15 x ~@23 x", K: "~@23 x ~@24", L: "~@35 x ~@12", M: "~@11 x ~@23 x ~@12",
N: "~@3 x ~@7 x ~@5 x ~ x ~@28", O: "~@7 x ~@4",
})).gain(0.64)
// drums · snare · soft notes
const snare_soft = s("sd").struct(`<
~@67
[~@23 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x]
[~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@3 x]!3
[~@3 x ~@3 x ~@3 x ~@3 x ~@3 x ~@28]
~@5
>`).gain(0.24)
// drums · hihat
const hihat = s("hh").struct("<~@13 A@7 B A@12 ~@8 C D@5 E D@11 F ~@17>".pickRestart({
A: "x!2 ~ x!2 ~ x!2 ~@2 x ~", B: "x ~ x ~@3 x ~ x ~@3 x ~ x ~@6 x ~@2", C: "~@11 x ~@3 x ~@7 x ~@3 x ~@7 x ~@3 x ~@8",
D: "~@3 x ~@7 x ~@3 x ~@7 x ~@3 x ~@7 x ~@3 x ~@8", E: "~@5 x ~@5 x ~@3 x ~@7 x ~@3 x ~@7 x ~@3 x ~@8", F: "~ x ~@14",
})).gain(0.4)
// drums · hihat · soft notes
const hihat_soft = s("hh").struct("<~@13 A@3 B A@3 B A@11 B ~@8 C D C D@3 C D@11 ~@18>".pickRestart({
A: "~@2 x ~@2 x ~@2 x ~@2 x", B: "~@2 x ~@2 x ~@2 x ~@3", C: "~@19 x ~@11 x ~@11 x ~@4",
D: "~@7 x ~@11 x ~@11 x ~@11 x ~@4",
})).gain(0.24)
// drums · mid tom
const mid_tom = s("mt").struct("<~@8 A ~@27 B C ~@25 D ~@11 E ~>".pickRestart({
A: "~@33 x ~@2 x ~@3 x ~@3 x ~@3", B: "~@11 x", C: "x ~@2 x ~@4 x ~@39", D: "~@8 x ~@2 x ~@3 x ~@3 x ~@28",
E: "~@15 x ~@2 x ~@2 x ~@3 x ~@22",
// … 32 more lines
More by Pooh
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.