0:00/0:00
// The Figurehead — The Cure
// 200 bpm, 4/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 359 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(200/4)
// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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.
// other · melodic tom
const melodic_tom = note(`<
A B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C
B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B
C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D
B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B
D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C
B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D B C B D E ~@9
>`.pickRestart({
A: "~@8 d2 ~ d2 ~ d2 ~ d2 ~", B: "d2@3 ~ d2@3 ~ d2@3 ~ [d2,c3]@3 ~", C: "d2@3 ~ d2@3 ~ d2@3 ~ d2@3 ~",
D: "d2@3 ~ d2@3 ~ d2 ~ d2 ~ d2 ~ d2 ~", E: "d2@3 ~@13",
})).s("gm_melodic_tom").gain(0.51)
// bass · electric bass pick
const bass = note(`<
~@5 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2
A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A E F G A@2 G@2 A@2
G@2 A@2 G@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2
C@2 D@2 A@2 B@2 C@2 D@2 A@2 G@2 A@2 G@2 A@2 G@2 A@2 G@2 H@2 G@2 H@2 G@2 H@2 G@2 H@2 G@2 I@16 A@2 B@2 C@2 D@2 A@2 B@2
C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2
D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 ~@18
>`.pickRestart({
A: "c2@3 ~ c2@3 ~ c2@3 ~ c2@3 ~", B: "bb1@3 ~ bb1@3 ~ bb1@3 ~ bb1@3 ~", C: "f1@3 ~ f1@3 ~ f1@3 ~ f1@3 ~",
D: "ab1@3 ~ ab1@3 ~ ab1@3 ~ ab1@3 ~", E: "c2@3 ~ c2@3 ~ c2 ~@3 c2 ~@3", F: "gb2@4 gb2@3 ~ gb2@3 ~ gb2@3 ~",
G: "gb2@3 ~ gb2@3 ~ gb2@3 ~ gb2@3 ~", H: "eb2@3 ~ eb2@3 ~ eb2@3 ~ eb2@3 ~", I: "f2@3 ~ f2@3 ~ f2@3 ~ f2@3 ~",
})).s("gm_electric_bass_pick").gain(0.41)
// other · clarinet
const clarinet = note(`<
~@29 A B C B D C ~ E F E G H I@2 J K E L F M N O P Q R S N T U V W X@2 ~@14 Y Z AA AB AC G ~@2 E F E AD@2 AE AF AG K R
AH U ~ AI AJ ~ AK AF ~@2 AL AM ~@50 AN AO AP AQ AN AR ~@2 E AS AT AP AT ~@2 J AU AV AW AX AY AZ G BA BB BC BD Y BE BF
~ BG BH@2 ~@38 BI BJ BE BJ BE BJ BK BL BM@2 ~@31 BN L BO ~ O M ~@2 BN L F AN ~@3 BP BQ BR BS BT@2 BU BV BW ~ BX ~ BX
BY BU BV BW ~ BX ~ BX BY BU BV BW ~ BZ ~ CA AY BI CB CC@2 ~@4 BI CB CC@2 ~@4 BU BV BW ~@5 BU BV BW ~@16 CD ~
>`.pickRestart({
A: "eb4@5 ~@3 eb4@3 ~ eb4@4", B: "~@4 d4@5 ~@3 eb4@4", C: "~@4 d4@3 ~ c4@3 ~ c4@4", D: "~@4 eb4@5 ~@3 eb4@4",
E: "~@4 eb4@3 ~ eb4@3 ~ eb4@4", F: "~@4 d4@3 ~ d4@3 ~ d4@4", G: "~@4 d4@3 ~@5 d4@4", H: "~@4 c4@5 ~@3 d4@3 ~",
I: "[eb4@11 ~ c4@11 ~@9]/2", J: "~@8 eb4@5 ~@3", K: "eb4@3 ~ eb4@3 ~@5 f4@4", L: "~@4 d4@3 ~@5 eb4@4",
M: "~@4 c4@3 ~@9", N: "~@12 d4@3 ~", O: "d4@3 ~ d4@3 ~ d4@3 ~ d4@4", P: "~@4 c4@3 ~ c4@3 ~ c4@3 ~",
Q: "~@4 d4@3 ~ d4@3 ~ eb4@4", R: "~@8 eb4@3 ~ eb4@3 ~", S: "eb4@3 ~ d4@3 ~ c4@3 ~ eb4@4",
T: "eb4@3 ~ f4@3 ~ d4@3 ~ eb4@4", U: "~@4 d4@5 ~@7", V: "~@8 c4@3 ~ d4@3 ~", W: "eb4@5 ~@3 d4@5 ~@3",
X: "[d4@3 ~@5 c4@3 ~ c4@11 ~@9]/2", Y: "~@12 eb4@3 ~", Z: "f4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~",
AA: "eb4@3 ~ d4@3 ~@5 eb4@4", AB: "~@4 d4@5 ~@3 d4@4", AC: "~@8 eb4@3 ~ eb4@4", AD: "[~@4 d4@3 ~ d4@11 ~@9 c4@3 ~]/2",
AE: "d4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~", AF: "d4@3 ~ c4@5 ~@7", AG: "~@8 eb4@3 ~@5", AH: "eb4@3 ~ eb4@3 ~ d4@3 ~ eb4@4",
AI: "c4@4 c4@3 ~ c4@3 ~@5", AJ: "c4@5 ~@11", AK: "~@4 d4@3 ~ d4@5 ~@3", AL: "~@4 bb3@3 ~ bb3@5 ~@3",
AM: "bb3@3 ~ c4@5 ~@7", AN: "~@4 eb4@3 ~ eb4@5 ~@3", AO: "f4@4 ~@4 eb4@3 ~ eb4@4", AP: "~@8 d4@5 ~@3",
AQ: "eb4@3 ~ d4@3 ~@5 d4@3 ~", AR: "eb4@3 ~ d4@3 ~ c4@3 ~ c4@4", AS: "~@8 d4@3 ~ d4@3 ~",
AT: "d4@3 ~ eb4@5 ~@3 eb4@4", AU: "eb4@3 ~ d4@3 ~ c4@3 ~ c4@3 ~", AV: "~@8 f4@3 ~ f4@3 ~",
AW: "f4@5 ~@3 eb4@3 ~ f4@4", AX: "~@4 eb4@5 ~@3 f4@4", AY: "~@4 eb4@5 ~@7", AZ: "eb4@3 ~ eb4@3 ~@5 eb4@4",
BA: "~@4 c4@3 ~@5 c4@4", BB: "~@12 c4@3 ~", BC: "c4@3 ~ c4@3 ~ c4@3 ~@5", BD: "d4@3 ~ d4@3 ~@5 eb4@4",
BE: "eb4@3 ~ eb4@3 ~ eb4@3 ~@5", BF: "f4@3 ~ eb4@5 ~@7", BG: "eb4@3 ~@5 d4@3 ~ d4@4", BH: "[~@8 c4@11 ~@13]/2",
BI: "~@4 eb4@3 ~ eb4@3 ~@5", BJ: "f4@3 ~ eb4@3 ~ eb4@3 ~@5", BK: "eb4@3 ~@5 eb4@3 ~@5",
BL: "f4@3 ~ eb4@3 ~@5 eb4@3 ~", BM: "[~@4 eb4@3 ~@5 eb4@11 ~ c4@5 ~@3]/2", BN: "eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~",
BO: "~@4 d4@3 ~ d4@3 ~ d4@3 ~", BP: "~@4 eb4@3 ~ eb4@3 ~ f4@4", BQ: "~@4 eb4@3 ~ eb4@3 ~ eb4@3 ~",
BR: "~@4 d4@5 ~@3 d4@3 ~", BS: "eb4@3 ~ d4@3 ~@5 d4@4", BT: "[~@4 eb4@3 ~@5 c4@11 ~@9]/2", BU: "~@4 c4@3 ~ c4@5 ~@3",
BV: "d4@3 ~ c4@3 ~ c4@3 ~ c4@4", BW: "~@4 bb3@3 ~ c4@5 ~@3", BX: "c4@3 ~ c4@3 ~@5 c4@3 ~", BY: "~@4 bb3@5 ~@7",
BZ: "eb4@3 ~ eb4@3 ~@5 eb4@3 ~", CA: "d4@3 ~ d4@3 ~@5 d4@3 ~", CB: "f4@3 ~ eb4@3 ~@5 eb4@4",
CC: "[~@4 d4@3 ~@5 eb4@11 ~@9]/2", CD: "c4 ~@15",
})).s("gm_clarinet").gain(0.41)
// other · distortion guitar
const distortion_guitar = note(`<
~@61 A@4 B ~@3 A@4 B ~@35 A@2 C@2 A@2 C@2 A@2 C@2 A@2 C@2 A@4 B ~@3 A@4 D@2 E@2 A@2 E@2 F@2 E@2 A@4 G ~@35 A@2 C@2 A@2
C@2 A@2 C@2 A@2 C@2 H@2 C@2 H@2 C@2 H@2 C@2 I@2 C@2 J K J K J K J K J K J K J K J K A@2 L@2 M ~@3 A@2 L@2 M ~@3 A@2
E@2 A@2 E@2 A@2 L@2 N@2 O@2 P ~@89
>`.pickRestart({
A: "[c4@11 ~ d4@11 ~ eb4@5 ~@3]/2", B: "ab3@11 ~@5", C: "[gb4@11 ~ g4@11 ~ gb4@5 ~@3]/2", D: "[ab3@11 ~ g4@11 ~@9]/2",
E: "[f4@11 ~ eb4@11 ~ d4@5 ~@3]/2", F: "[c4@8 ~@4 d4@11 ~ eb4@5 ~@3]/2", G: "ab3",
H: "[eb5@11 ~ b4@11 ~ eb5@4 ~@4]/2", I: "[eb5@11 ~ b4@11 ~ bb4@5 ~@3]/2", J: "f4@11 ~ ab4@4", K: "~@4 g4@11 ~",
L: "[f4@11 ~ g4@11 ~ bb4@5 ~@3]/2", M: "ab4@11 ~@5", N: "[ab4@11 ~ g4@11 ~ f4@5 ~@3]/2",
O: "[eb4@11 ~ d4@11 ~ bb3@5 ~@3]/2", P: "c4@11 ~@5",
})).s("gm_distortion_guitar").gain(0.41).pan(0.7)
// other · clarinet
const clarinet_2 = note(`<
~@29 A@2 B@2 C D@2 E@4 F G@2 H@2 I@2 J@2 ~ K@6 L@2 M@4 ~@15 N@2 O P@2 Q ~ R@5 S@2 T@2 U@3 ~ V@2 ~ W@2 ~@2 X@2 ~@50 Y@4
Z@3 ~ AA@3 AB@2 AC ~ AD@5 AE AF AG AH AI AJ@2 AC AK@2 ~ AL@3 ~@38 AM@8 AN AO@2 ~@30 AP@2 AQ@2 AR@2 ~@2 AP@2 AS@3 ~@2
AT@3 AU AV AW AX@4 AY AZ AY BA AX@4 AY AZ AY BA AX@4 AF BB BC BD BE@2 AG BF ~@4 BE@2 AG BF ~@4 AX@4 ~@4 AX@4 ~@15 BG ~
>`.pickRestart({
A: "[~@7 eb4@5 ~@3 eb4@3 ~ eb4@5 ~@3 d4@5]/2", B: "[~@3 eb4@5 ~@3 d4@3 ~ c4@3 ~ c4@5 ~@3 d4@5]/2",
C: "~@3 eb4@5 ~@3 eb4@5", D: "[~@3 eb4@5 ~@3 d4@3 ~ c4@3 ~ c4@5 ~@8]/2",
E: "[~@11 eb4@3 ~ eb4@3 ~ eb4@5 ~@3 d4@3 ~ d4@3 ~ d4@5 ~@3 eb4@3 ~ eb4@3 ~ eb4@5 ~@3 d4@3 ~@2]/4",
F: "~@3 d4@5 ~@3 c4@5", G: "[~@3 d4@3 ~ eb4@11 ~ c4@11 ~@2]/2", H: "[~@15 eb4@5 ~@3 eb4@3 ~ eb4@3 ~@2]/2",
I: "[~@3 f4@5 ~@3 eb4@3 ~ eb4@3 ~ eb4@5 ~@3 d4@3 ~@2]/2", J: "[~@3 eb4@5 ~@3 d4@3 ~ d4@3 ~ d4@5 ~@3 c4@3 ~@2]/2",
K: "[~@3 d4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~ d4@5 ~@3 c4@3 ~ c4@3 ~ c4@3 ~@5 d4@3 ~ d4@3 ~ eb4@5 ~@7 eb4@3 ~ eb4@3 ~ eb4@3 ~ d4@3 ~ c4@3 ~ eb4@5 ~@8]/6",
L: "[~@3 d4@3 ~ eb4@3 ~ f4@3 ~ d4@3 ~ eb4@5 ~@3 d4@5]/2",
M: "[~@15 c4@3 ~ d4@3 ~ eb4@5 ~@3 d4@5 ~@3 d4@3 ~@5 c4@3 ~ c4@11 ~@2]/4",
N: "[~@3 eb4@3 ~ f4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~ d4@3 ~@2]/2", O: "~@3 eb4@5 ~@3 d4@5",
P: "[~@3 d4@5 ~@7 eb4@3 ~ eb4@5 ~@3 d4@3 ~@2]/2", Q: "~@3 d4@5 ~@8",
R: "[~@11 eb4@3 ~ eb4@3 ~ eb4@5 ~@3 d4@3 ~ d4@3 ~ d4@5 ~@3 eb4@3 ~ eb4@3 ~ eb4@5 ~@3 d4@3 ~ d4@11 ~@6]/5",
S: "[~@3 c4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~ c4@5]/2", T: "[~@15 eb4@3 ~@5 eb4@3 ~ eb4@3 ~@2]/2",
U: "[~@3 f4@5 ~@7 eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~ d4@3 ~ eb4@5 ~@3 d4@5]/3",
V: "[~@7 c4@4 c4@3 ~ c4@3 ~@5 c4@5 ~@4]/2", W: "[~@11 d4@3 ~ d4@5 ~@3 d4@3 ~ c4@5]/2",
X: "[~@11 bb3@3 ~ bb3@5 ~@3 bb3@3 ~ c4@5]/2",
Y: "[~@11 eb4@3 ~ eb4@5 ~@3 f4@4 ~@4 eb4@3 ~ eb4@5 ~@7 d4@5 ~@3 eb4@3 ~ d4@3 ~@2]/4",
Z: "[~@3 d4@3 ~@5 eb4@3 ~ eb4@5 ~@3 eb4@3 ~ d4@3 ~ c4@3 ~ c4@5 ~@8]/3",
AA: "[~@11 eb4@3 ~ eb4@3 ~ eb4@5 ~@7 d4@3 ~ d4@3 ~ d4@3 ~ eb4@5]/3", AB: "[~@3 eb4@5 ~@7 d4@5 ~@3 d4@3 ~ eb4@5]/2",
AC: "~@3 eb4@5 ~@8",
AD: "[~@15 eb4@5 ~@3 eb4@3 ~ d4@3 ~ c4@3 ~ c4@3 ~@9 f4@3 ~ f4@3 ~ f4@5 ~@3 eb4@3 ~ f4@5 ~@3 eb4@5]/5",
AE: "~@3 f4@5 ~@3 eb4@5", AF: "~@7 eb4@3 ~ eb4@3 ~@2", AG: "~@3 eb4@5 ~@3 d4@3 ~@2", AH: "~@3 d4@5 ~@3 c4@3 ~@2",
AI: "~@3 c4@5 ~@8", AJ: "[~@3 c4@3 ~ c4@3 ~ c4@3 ~ c4@3 ~@5 d4@3 ~ d4@3 ~@2]/2",
AK: "[~@3 eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~@5 f4@3 ~ eb4@5]/2", AL: "[~@7 eb4@3 ~@5 d4@3 ~ d4@5 ~@7 c4@11 ~@6]/3",
AM: "[~@11 eb4@3 ~ eb4@3 ~@5 f4@3 ~ eb4@3 ~ eb4@3 ~@5 eb4@3 ~ eb4@3 ~ eb4@3 ~@5 f4@3 ~ eb4@3 ~ eb4@3 ~@5 eb4@3 ~ eb4@3 ~ eb4@3 ~@5 f4@3 ~ eb4@3 ~ eb4@3 ~@5 eb4@3 ~@5 eb4@3 ~@5 f4@3 ~ eb4@3 ~@2]/8",
AN: "~@3 eb4@3 ~@5 eb4@3 ~@2", AO: "[~@3 eb4@11 ~ c4@5 ~@12]/2",
AP: "[~@7 eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~@5 d4@3 ~@2]/2", AQ: "[~@3 eb4@5 ~@3 d4@3 ~ d4@3 ~ d4@3 ~@10]/2",
AR: "[~@7 d4@3 ~ d4@3 ~ d4@3 ~ d4@5 ~@3 c4@3 ~@2]/2",
AS: "[~@3 eb4@5 ~@3 d4@3 ~ d4@3 ~ d4@5 ~@3 eb4@3 ~ eb4@5 ~@12]/3",
AT: "[~@11 eb4@3 ~ eb4@3 ~ f4@5 ~@3 eb4@3 ~ eb4@3 ~ eb4@3 ~@5 d4@5]/3", AU: "~@3 d4@3 ~ eb4@3 ~ d4@3 ~@2",
AV: "~@3 d4@5 ~@3 eb4@3 ~@2", AW: "~@3 c4@11 ~@2",
AX: "[~@11 c4@3 ~ c4@5 ~@3 d4@3 ~ c4@3 ~ c4@3 ~ c4@5 ~@3 bb3@3 ~ c4@5 ~@12]/4", AY: "~@7 c4@3 ~ c4@3 ~@2",
AZ: "~@3 c4@3 ~@10", BA: "~@3 c4@3 ~@5 bb3@5", BB: "~@3 eb4@3 ~@10", BC: "~@7 d4@3 ~ d4@3 ~@2",
BD: "~@3 d4@3 ~@5 eb4@5", BE: "[~@11 eb4@3 ~ eb4@3 ~@5 f4@3 ~ eb4@3 ~@2]/2", BF: "~@3 eb4@11 ~@2", BG: "~@7 c4 ~@8",
})).s("gm_clarinet").gain(0.31).pan(0.7)
// other · clarinet
const clarinet_3 = note(`<
~@30 A B C B D C ~ E F E G H I@2 J K E L F M N O P Q R S N T U V W X@2 ~@14 Y Z AA AB AC G ~@2 E F E AD@2 AE AF AG K R
AH U ~ AI AJ ~ AK AF ~@2 AL AM ~@50 AN AO AP AQ AN AR ~@2 E AS AT AP AT ~@2 J AU AV AW AX AY AZ G BA BB BC BD Y BE BF
~ BG BH@2 ~@38 BI BJ BE BJ BE BJ BK BL BM@2 ~@31 BN L BO ~ O M ~@2 BN L F AN ~@3 BP BQ BR BS BT@2 BU BV BW ~ BX ~ BX
BY BU BV BW ~ BX ~ BX BY BU BV BW ~ BZ ~ CA AY BI CB CC@2 ~@4 BI CB CC@2 ~@4 BU BV BW ~@5 BU BV BW ~@16 CD
>`.pickRestart({
A: "eb4@5 ~@3 eb4@3 ~ eb4@4", B: "~@4 d4@5 ~@3 eb4@4", C: "~@4 d4@3 ~ c4@3 ~ c4@4", D: "~@4 eb4@5 ~@3 eb4@4",
E: "~@4 eb4@3 ~ eb4@3 ~ eb4@4", F: "~@4 d4@3 ~ d4@3 ~ d4@4", G: "~@4 d4@3 ~@5 d4@4", H: "~@4 c4@5 ~@3 d4@3 ~",
I: "[eb4@11 ~ c4@11 ~@9]/2", J: "~@8 eb4@5 ~@3", K: "eb4@3 ~ eb4@3 ~@5 f4@4", L: "~@4 d4@3 ~@5 eb4@4",
M: "~@4 c4@3 ~@9", N: "~@12 d4@3 ~", O: "d4@3 ~ d4@3 ~ d4@3 ~ d4@4", P: "~@4 c4@3 ~ c4@3 ~ c4@3 ~",
Q: "~@4 d4@3 ~ d4@3 ~ eb4@4", R: "~@8 eb4@3 ~ eb4@3 ~", S: "eb4@3 ~ d4@3 ~ c4@3 ~ eb4@4",
T: "eb4@3 ~ f4@3 ~ d4@3 ~ eb4@4", U: "~@4 d4@5 ~@7", V: "~@8 c4@3 ~ d4@3 ~", W: "eb4@5 ~@3 d4@5 ~@3",
X: "[d4@3 ~@5 c4@3 ~ c4@11 ~@9]/2", Y: "~@12 eb4@3 ~", Z: "f4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~",
AA: "eb4@3 ~ d4@3 ~@5 eb4@4", AB: "~@4 d4@5 ~@3 d4@4", AC: "~@8 eb4@3 ~ eb4@4", AD: "[~@4 d4@3 ~ d4@11 ~@9 c4@3 ~]/2",
AE: "d4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~", AF: "d4@3 ~ c4@5 ~@7", AG: "~@8 eb4@3 ~@5", AH: "eb4@3 ~ eb4@3 ~ d4@3 ~ eb4@4",
AI: "c4@4 c4@3 ~ c4@3 ~@5", AJ: "c4@5 ~@11", AK: "~@4 d4@3 ~ d4@5 ~@3", AL: "~@4 bb3@3 ~ bb3@5 ~@3",
AM: "bb3@3 ~ c4@5 ~@7", AN: "~@4 eb4@3 ~ eb4@5 ~@3", AO: "f4@4 ~@4 eb4@3 ~ eb4@4", AP: "~@8 d4@5 ~@3",
AQ: "eb4@3 ~ d4@3 ~@5 d4@3 ~", AR: "eb4@3 ~ d4@3 ~ c4@3 ~ c4@4", AS: "~@8 d4@3 ~ d4@3 ~",
AT: "d4@3 ~ eb4@5 ~@3 eb4@4", AU: "eb4@3 ~ d4@3 ~ c4@3 ~ c4@3 ~", AV: "~@8 f4@3 ~ f4@3 ~",
AW: "f4@5 ~@3 eb4@3 ~ f4@4", AX: "~@4 eb4@5 ~@3 f4@4", AY: "~@4 eb4@5 ~@7", AZ: "eb4@3 ~ eb4@3 ~@5 eb4@4",
BA: "~@4 c4@3 ~@5 c4@4", BB: "~@12 c4@3 ~", BC: "c4@3 ~ c4@3 ~ c4@3 ~@5", BD: "d4@3 ~ d4@3 ~@5 eb4@4",
BE: "eb4@3 ~ eb4@3 ~ eb4@3 ~@5", BF: "f4@3 ~ eb4@5 ~@7", BG: "eb4@3 ~@5 d4@3 ~ d4@4", BH: "[~@8 c4@11 ~@13]/2",
BI: "~@4 eb4@3 ~ eb4@3 ~@5", BJ: "f4@3 ~ eb4@3 ~ eb4@3 ~@5", BK: "eb4@3 ~@5 eb4@3 ~@5",
BL: "f4@3 ~ eb4@3 ~@5 eb4@3 ~", BM: "[~@4 eb4@3 ~@5 eb4@11 ~ c4@5 ~@3]/2", BN: "eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~",
BO: "~@4 d4@3 ~ d4@3 ~ d4@3 ~", BP: "~@4 eb4@3 ~ eb4@3 ~ f4@4", BQ: "~@4 eb4@3 ~ eb4@3 ~ eb4@3 ~",
BR: "~@4 d4@5 ~@3 d4@3 ~", BS: "eb4@3 ~ d4@3 ~@5 d4@4", BT: "[~@4 eb4@3 ~@5 c4@11 ~@9]/2", BU: "~@4 c4@3 ~ c4@5 ~@3",
BV: "d4@3 ~ c4@3 ~ c4@3 ~ c4@4", BW: "~@4 bb3@3 ~ c4@5 ~@3", BX: "c4@3 ~ c4@3 ~@5 c4@3 ~", BY: "~@4 bb3@5 ~@7",
BZ: "eb4@3 ~ eb4@3 ~@5 eb4@3 ~", CA: "d4@3 ~ d4@3 ~@5 d4@3 ~", CB: "f4@3 ~ eb4@3 ~@5 eb4@4",
CC: "[~@4 d4@3 ~@5 eb4@11 ~@9]/2", CD: "c4 ~@15",
})).s("gm_clarinet").gain(0.2).pan(0.8)
// other · clarinet
const clarinet_4 = note(`<
~@30 A B C D E C F G H I H J K@2 ~ L M H C N ~ O N P Q R S T U ~ V W X ~@15 Y R Z AA H AA ~ G H I H AB AC AD ~ AE AF
AG U ~ AH AI ~ AJ AK ~@2 AL AM ~@50 G AN AO AP AQ AR F ~ G AO AS AT AU AT ~@2 AR AV AW AX AY AZ C BA BB BC BD AT BE BF
~ BG BH BI ~@38 G BJ AE BJ AE BJ BK BJ BL BM BN ~@30 AZ BO C BP BQ N ~@2 AZ BO C I BR ~@2 G BS BT BU BV BW BX BY BZ BN
CA CB CA CC BX BY BZ BN CA CB CA CC BX BY BZ BN AZ CD BQ CE G BJ C BM ~@4 G BJ C BM ~@4 BX BY BZ BN ~@4 BX BY BZ BN
~@15 CF
>`.pickRestart({
A: "~@8 eb4@5 ~@3", B: "eb4@3 ~ eb4@5 ~@3 d4@4", C: "~@4 eb4@5 ~@3 d4@3 ~", D: "c4@3 ~ c4@5 ~@3 d4@4",
E: "~@4 eb4@5 ~@3 eb4@4", F: "c4@3 ~ c4@5 ~@7", G: "~@12 eb4@3 ~", H: "eb4@3 ~ eb4@5 ~@3 d4@3 ~",
I: "d4@3 ~ d4@5 ~@3 eb4@3 ~", J: "~@4 d4@5 ~@3 c4@4", K: "[~@4 d4@3 ~ eb4@11 ~ c4@11 ~]/2",
L: "eb4@5 ~@3 eb4@3 ~ eb4@3 ~", M: "~@4 f4@5 ~@3 eb4@3 ~", N: "d4@3 ~ d4@5 ~@3 c4@3 ~", O: "~@4 d4@3 ~ d4@3 ~ d4@3 ~",
P: "c4@3 ~ c4@3 ~@5 d4@3 ~", Q: "d4@3 ~ eb4@5 ~@7", R: "eb4@3 ~ eb4@3 ~ eb4@3 ~ d4@3 ~", S: "c4@3 ~ eb4@5 ~@7",
T: "~@4 d4@3 ~ eb4@3 ~ f4@3 ~", U: "d4@3 ~ eb4@5 ~@3 d4@4", V: "c4@3 ~ d4@3 ~ eb4@5 ~@3", W: "d4@5 ~@3 d4@3 ~@5",
X: "c4@3 ~ c4@11 ~", Y: "~@4 eb4@3 ~ f4@3 ~ eb4@3 ~", Z: "~@4 eb4@5 ~@3 d4@4", AA: "~@4 d4@5 ~@7", AB: "d4@11 ~@5",
AC: "~@4 c4@3 ~ d4@3 ~ d4@3 ~", AD: "d4@3 ~ d4@3 ~ d4@3 ~ c4@4", AE: "eb4@3 ~@5 eb4@3 ~ eb4@3 ~", AF: "~@4 f4@5 ~@7",
AG: "eb4@3 ~ eb4@3 ~ eb4@3 ~ eb4@3 ~", AH: "~@8 c4@4 c4@3 ~", AI: "c4@3 ~@5 c4@5 ~@3", AJ: "~@12 d4@3 ~",
AK: "d4@5 ~@3 d4@3 ~ c4@4", AL: "~@12 bb3@3 ~", AM: "bb3@5 ~@3 bb3@3 ~ c4@4", AN: "eb4@5 ~@3 f4@4 ~@4",
AO: "eb4@3 ~ eb4@5 ~@7", AP: "d4@5 ~@3 eb4@3 ~ d4@3 ~", AQ: "~@4 d4@3 ~@5 eb4@3 ~", AR: "eb4@5 ~@3 eb4@3 ~ d4@3 ~",
AS: "d4@3 ~ d4@3 ~ d4@3 ~ eb4@4", AT: "~@4 eb4@5 ~@7", AU: "d4@5 ~@3 d4@3 ~ eb4@4", AV: "c4@3 ~ c4@3 ~@9",
AW: "f4@3 ~ f4@3 ~ f4@5 ~@3", AX: "eb4@3 ~ f4@5 ~@3 eb4@4", AY: "~@4 f4@5 ~@3 eb4@4", AZ: "~@8 eb4@3 ~ eb4@3 ~",
BA: "~@4 d4@5 ~@3 c4@3 ~", BB: "~@4 c4@5 ~@7", BC: "~@4 c4@3 ~ c4@3 ~ c4@3 ~", BD: "c4@3 ~@5 d4@3 ~ d4@3 ~",
BE: "~@4 eb4@3 ~ eb4@3 ~ eb4@3 ~", BF: "eb4@3 ~@5 f4@3 ~ eb4@4", BG: "~@8 eb4@3 ~@5", BH: "d4@3 ~ d4@5 ~@7",
BI: "c4@11 ~@5", BJ: "eb4@3 ~@5 f4@3 ~ eb4@3 ~", BK: "eb4@3 ~@5 eb4@3 ~@5", BL: "~@4 eb4@3 ~@5 eb4@3 ~",
BM: "~@4 eb4@11 ~", BN: "c4@5 ~@11", BO: "eb4@3 ~ eb4@3 ~@5 d4@3 ~", BP: "d4@3 ~ d4@3 ~@9", BQ: "~@8 d4@3 ~ d4@3 ~",
BR: "eb4@5 ~@11", BS: "eb4@3 ~ f4@5 ~@3 eb4@3 ~", BT: "eb4@3 ~ eb4@3 ~@5 d4@4", BU: "~@4 d4@3 ~ eb4@3 ~ d4@3 ~",
BV: "~@4 d4@5 ~@3 eb4@3 ~", BW: "~@4 c4@11 ~", BX: "~@12 c4@3 ~", BY: "c4@5 ~@3 d4@3 ~ c4@3 ~",
BZ: "c4@3 ~ c4@5 ~@3 bb3@3 ~", CA: "~@8 c4@3 ~ c4@3 ~", CB: "~@4 c4@3 ~@9", CC: "~@4 c4@3 ~@5 bb3@4",
CD: "~@4 eb4@3 ~@9", CE: "~@4 d4@3 ~@5 eb4@4", CF: "~@8 c4 ~@7",
})).s("gm_clarinet").gain(0.15).pan(1)
// other · distortion guitar
const distortion_guitar_2 = note(`<
~@61 A@2 B@2 C@2 ~@2 A@2 B@2 C@2 ~@34 A@2 D@2 E@2 D@2 E@2 D@2 E@2 D@2 E@2 B@2 C@2 ~@2 A@2 B@2 F@2 G@2 H@2 I@2 J K I@2
H@2 B@2 L@2 ~@34 A@2 D@2 E@2 D@2 E@2 D@2 E@2 D@2 M@2 N@2 M@2 N@2 M@2 N@2 M@2 O@2 P@7 Q@8 R@3 S@2 T@2 ~@2 A@2 S@2 T@2
~@2 A@2 I@2 H@2 I@2 H@2 S@2 U@2 V@2 W@2 ~@88
>`.pickRestart({
A: "[~@8 c4@11 ~ d4@11 ~]/2", B: "[eb4@5 ~@3 c4@11 ~ d4@11 ~]/2", C: "[eb4@5 ~@3 ab3@11 ~@13]/2",
D: "[eb4@5 ~@3 gb4@11 ~ g4@11 ~]/2", E: "[gb4@5 ~@3 c4@11 ~ d4@11 ~]/2", F: "[eb4@5 ~@3 ab3@11 ~ g4@11 ~]/2",
G: "[~@8 f4@11 ~ eb4@11 ~]/2", H: "[d4@5 ~@3 c4@11 ~ d4@11 ~]/2", I: "[eb4@5 ~@3 f4@11 ~ eb4@11 ~]/2",
J: "d4@5 ~@3 c4@8", K: "~@4 d4@11 ~", L: "[eb4@5 ~@3 ab3@16 ~@8]/2", M: "[gb4@5 ~@3 eb5@11 ~ b4@11 ~]/2",
N: "[eb5@4 ~@4 gb4@11 ~ g4@11 ~]/2", O: "[bb4@5 ~@3 gb4@11 ~ g4@11 ~]/2",
P: "[gb4@5 ~@3 f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@8]/7",
Q: "[~@4 ab4@5 ~@3 g4@11 ~ f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@11 ~ ab4@5 ~@3 g4@11 ~ f4@8]/8",
R: "[~@4 ab4@5 ~@3 g4@11 ~ c4@11 ~ d4@11 ~]/3", S: "[eb4@5 ~@3 f4@11 ~ g4@11 ~]/2", T: "[bb4@5 ~@3 ab4@11 ~@13]/2",
U: "[bb4@5 ~@3 ab4@11 ~ g4@11 ~]/2", V: "[f4@5 ~@3 eb4@11 ~ d4@11 ~]/2", W: "[bb3@5 ~@3 c4@11 ~@13]/2",
// … 3 more lines
More by The Cure
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.