0:00/0:00
// Fire — The Pointer Sisters
// 116 bpm, 4/4, key C# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 111 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(116/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.
// chords · percussive organ
const percussive_organ = note(`<
~@23 A@4 B@4 C@2 D@2 E@2 F@2 G H I@4 J K L M N K O P@3 ~ Q R S R T U V R W U X@5 Y Z@8 AA@7 R@5 AB ~@6 AC@7 Q AD@4
>`.pickRestart({
A: "[[db5,f5]@2 [bb4,eb5] [db5,f5]@3 [bb4,eb5] [db5,f5]@3 [bb4,eb5] [db5,f5]@3 [bb4,eb5] [db5,f5]]/4", // Db Eb5 Db Eb5 Db Eb5 Db Eb5 …
B: "[[db5,f5] ~@7 [bb4,eb5]@4 [db5,f5]@12 [bb4,eb5]@4 gb5@4 f5@8 [bb4,eb5]@4 [db5,f5]@12 [bb4,eb5]@4 [db5,f5]@4, ~@7 db5@3 ~@6]/4", // Db Eb5 Db Eb5 Db Eb5 Db
C: "[[eb5,gb5]@2 [db5,f5] [eb5,gb5]@3 [db5,f5] [eb5,gb5]]/2", // Ebm Db Ebm Db Ebm
D: "[[db5,f5]@2 [bb4,eb5] [db5,f5]@3 [bb4,eb5] [db5,f5]]/2", // Db Eb5 Db Eb5 Db
E: "[[eb5,gb5]@2 [db5,f5] [eb5,gb5]@3 [db5,f5] [eb5,gb5], f5 ~@27 f5 ~@3]/2", // Ebm Db Ebm Db Ebm
F: "[~@16 e5 ~@7 bb5@8, [bb4,db5], ~ f5]/2", G: "[gb4,bb4,db5]", H: "[ab4,c5,eb5]@3 ~, [bb4,db5] ~@15",
I: "[[db5,f5]@8 [bb4,eb5]@4 [db5,f5]@12 [bb4,eb5]@4 [db5,f5]@12 [bb4,eb5]@4 [db5,f5]@12 [bb4,eb5]@4 [db5,f5]@3 ~]/4", // Db Eb5 Db Eb5 Db Eb5 Db Eb5 …
J: "a5 bb5@15, [gb5,db6]", K: "[f5,ab5,db6]@15 ~", L: "[eb5,gb5,c6]",
M: "[f5,ab5,db6]@9 ~ [f5,b5,db6] ~ [f5,ab5,b5,db6] ~ [f5,ab5,b5] ~, g5 ~@9 ab5@2 ~@2 db6@2", // Db Db7 Fdim
N: "[gb5,bb5,db6], a5 ~@15", O: "[db5,g5,bb5]",
P: "[[c5,ab5]@8 [bb4,gb5]@10 [ab4,f5]@4 [g4,e5]@3 [gb4,eb5]@22 ~, g5 ~@47]/3", Q: "~ [db5,f5]",
R: "[bb4,eb5] [db5,f5]@3", S: "[bb4,eb5] gb5 f5@2, ~ db5@3", T: "[bb4,eb5] [db5,f5] [eb5,gb5]@2",
U: "[db5,f5] [eb5,gb5]@3", V: "[db5,f5] [eb5,gb5] [db5,f5]@2", W: "[bb4,eb5] [db5,f5] [eb5,gb5]@2, ~@8 f5 ~@7",
X: "[[db5,f5]@4 [eb5,gb5]@4 ~@16 e5 ~@7 bb5@8 [gb4,bb4,db5]@16 [ab4,c5,eb5]@12 ~@12, ~@4 f5 ~@3 [bb4,db5]@32 ~@16 bb4 ~@23, ~@3 f5@2 ~@5]/5", // Db Ebm Gb Ab Bbm
Y: "~@5 f5 ab5 bb5, ~@10 e5 ~@5",
Z: "[[eb5,e5] ~ db5 ~ db5@2 bb4@2 db5@25 db5 f5@2 e5 [db5,eb5,e5] bb4@2 db5@25 ~ [db5,f5,ab5]!6 [eb5,gb5]@18 e5!2 ~@8 [eb5,e5] db5 bb4@2 db5@24, ~@33 eb5@2 ~@55 f5@9 ~@29, ~@34 e5 ~@37 bb5@28 ~@28]/8", // Emaj7 Dbm Db Ebm Emaj7
AA: "[~@2 [db5,f5,ab5]!3 ~ [db5,f5,ab5] ~ [eb5,gb5]@18 e5 f5@5 e5 f5@3 f5@3 ~ eb5@2 db5 ~ db5@12 bb4@2 db5 ~ db5@4 eb5@2 db5@2 bb4@2 db5@2 [gb4,bb4,db5]@16 [ab4,c5,eb5]@13 ~@3 [db5,f5]@8, ~@8 bb5@59 ~@45, ~@33 e5 ~@2 e5 ~@3 e5 ~@23 d5 ~@7 a4 ~@15 bb4 ~@23]/7", // Db Ebm Gb Ab Db
AB: "[bb4,eb5] [db5,f5] ~@2", // Eb5 Db
AC: "[~@4 [db4,eb4] [f4,gb4,ab4] [gb4,ab4,bb4,c5,db5] [eb5,f5,gb5,ab5] [ab5,bb5,c6,db6,eb6] f6@27 [eb6,e6] db6 bb5@2 db6@26 f6@2 [eb6,e6] [db6,e6] bb5@2 db6@29 ~@11]/7", // Dbsus2 Fm Gb Fm7 Ab Emaj7 Dbm
AD: "[[bb4,eb5]@4 f5@10 ~@2 [gb5,bb5]@15 ~ [f5,ab5]@17 ~@15, ~@4 db5@45 ~@15, ~@32 e5 ~@31]/4", // Eb5 Gb Fm
})).s("gm_percussive_organ").gain(0.36)
// bass · acoustic bass
const bass = note(`<
~ A B A B A B A ~ A B A B C D A B C E F G H I A B A B A B A B C D A B C E J K H I A B A L M N O N M N P Q@3 ~ R S T S
U V W S U V X Y Z AA AB S T S AC S AD V AE S AF V AG AH Z AA AB AI AJ AI AJ S AK R S T S AL AK AM S T S T S AK R AN AO
AP ~
>`.pickRestart({
A: "db3@2 ~@4 db3@2 bb2 ~ bb2@2 db3@2 ~@2", B: "~@2 db3@2 ~@2 db3@2 bb2 ~ bb2@2 db3@2 ~@2",
C: "eb3@2 ~@4 eb3@2 bb2 ~ bb2@2 eb3@2 ~@2", D: "~@2 eb3@2 ~@2 eb3@2 bb2 ~ bb2@2 eb3@2 ~@2",
E: "~@2 eb3@2 ~@2 eb3 ~ bb2 ~ bb2@2 eb3@4", F: "bb2@3 ~@3 bb2@2 f2 ~ f2@2 bb2@2 ~@2",
G: "~@2 bb2@2 ~@2 bb2@2 f2 ~ f2@2 bb2@4", H: "gb2@5 ~ gb2 ~ gb2@7 ~", I: "ab2@5 ~ ab2 ~ ab2@4 ~@4",
J: "bb2@2 ~@4 bb2@2 f2 ~ f2@2 bb2@2 ~@2", K: "~@2 bb2@2 ~@2 bb2@2 f2 ~ f2@2 bb2@2 f2@2",
L: "~@2 db3@2 ~@2 db3 ~ bb2 ~ bb2@2 db3@4", M: "gb2 ~ gb2 ~ gb2 ~ gb2 ~ gb2 ~ gb2 ~ gb2 ~ gb2 ~",
N: "db3 ~ db3 ~ db3 ~ db3 ~ db3 ~ db3 ~ db3 ~ db3 ~", O: "ab2 ~ ab2 ~ ab2 ~ ab2 ~ ab2 ~ ab2 ~ ab2 ~ ab2 ~",
P: "eb3 ~ eb3 ~ eb3 ~ eb3 ~ eb3 ~ eb3 ~ eb3 ~ eb3@2", Q: "[ab2@17 ~@7]/3", R: "~@4 db3 ~@2 db3",
S: "bb2 ~ bb2@2 db3@2 ~@4 db3@2 ~@2 db3@2", T: "bb2 ~ bb2@2 db3@2 ~@2 db3@2 ~@4 db3@2",
U: "bb2 ~ bb2@2 db3@2 ~@2 eb3@2 ~@4 eb3@2", V: "bb2 ~ bb2@2 eb3@2 ~@4 eb3@2 ~@2 eb3@2",
W: "bb2 ~ bb2@2 eb3@2 ~@2 db3@2 ~@4 db3@2", X: "bb2 ~ bb2@2 eb3@2 bb2@5 ~@3 bb2@2",
Y: "f2 ~ f2@2 bb2@2 ~@4 bb2@2 ~@2 bb2 ~", Z: "f2 ~ f2@2 bb2@2 f2 ~ gb2@5 ~ gb2 ~", AA: "gb2@5 ~ gb2 ~ ab2@5 ~ ab2 ~",
AB: "ab2@4 ~@4 db3@3 ~@3 db3@2", AC: "bb2 ~ bb2 ~ db3@2 ~@2 db3@2 ~@4 db3@2",
AD: "bb2 ~ bb2 ~ db3@2 ~@2 eb3@2 ~@4 eb3@2", AE: "bb2 ~ bb2@2 eb3@2 bb2 ~ db3@2 ~@4 db3@2",
AF: "bb2 ~ bb2 ~ db3 ~ db3 ~ eb3@4 ~@2 eb3@2", AG: "bb2 ~ bb2@2 eb3@4 bb2@4 ~@2 bb2@2",
AH: "f2 ~ f2@2 bb2@2 ~@4 bb2@2 ~@2 bb2@2", AI: "bb2 ~ bb2 ~ db3@2 ~@4 db3@2 ~@2 db3@2",
AJ: "bb2 ~ bb2@2 db3@2 ~@2 db3@4 ~@2 db3@2", AK: "bb2 ~ bb2@2 db3@2 ~@10",
AL: "[bb2,db3] ~ bb2@2 db3@2 ~@2 db3@2 ~@4 db3@2", AM: "~@8 db3@3 ~@3 db3@2",
AN: "bb2 ~ bb2@2 db3 ~@5 ab2@2 bb2@2 db3@2", AO: "bb3@2 ab3@2 f3@2 ~ eb3@3 db3@2 ab2@3 ~", AP: "db3",
})).s("gm_acoustic_bass").gain(0.46)
// chords · electric guitar jazz
const electric_guitar_jazz = note(`<
~ A B A C D E@2 ~ A B A F@2 G A H@5 I J K L K L A B A F@2 G A M N O@3 I J K L K L P Q@5 R@5 S T U T V@2 W T X@2 Y Z
AA@2 AB AC AD AE AF AE AG AH AI AE AG AH Y AJ AK@3 AL@4 AE AM S T AN T AO AP AQ AE AF AE AF AE AR S AS AT AU ~
>`.pickRestart({
A: "[db3,ab3,db4]@2 ~@4 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2", // Db5
B: "~@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2", // Db5
C: "~@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ab2 db3", // Db5
D: "[ab3,db4] ~@5 [db3,ab3,db4] ~ bb2 ~ bb2@2 [db3,ab3,db4] ~@3, f4 ~, db3 ~@7", // Db5
E: "[~@2 [db3,ab3,db4] ~@3 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4] ~@3 [db3,ab3,db4] ~@5 db3@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2, ~@15 ab2@2 ~@5 ab3@6 ~@4, ~@16 f4@11 ~@5, ~@22 db4 ~@9]/2", // Db5
F: "[~@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~ bb3 [eb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@2, ~@15 db4@17, ~ [gb4,bb4], ~@16 bb3 ~@15]/2", // Db5 Eb Eb5 Gb
G: "~@2 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@2", // Eb5
H: "[~@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~ bb3 [eb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4] ~@3 [f3,bb3,db4,f4,bb4]@8 [a3,bb3,db4]@2 ab3@2 a3!2 ~@4 ab3 ~@3 ab3@2 [a3,bb3,db4]@2 ab3@2 [bb3,db4]@4, ~@15 db4@24 ~@21 [bb3,db4]@6 ~@14, ~@2 [gb4,bb4]@3 ~@5, ~@16 bb3 ~@30 bb2@8 ~@25]/5", // Db5 Eb Eb5 Bbm A Bbm Gb
I: "[gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~, [bb3,db4,gb4]@15 ~", // Gb5 Gb
J: "[ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3,c4,eb4,ab4]@2 ~@2, [c4,eb4,ab4]@11 ~@5", // Ab5 Ab
K: "[db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2", // Db5 Db Db5
L: "[ab3,db4,f4] ~ [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2", // Db Db5
M: "~@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~ bb3", // Db5
N: "[eb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@2, [db4,gb4,bb4], bb3 ~@15", // Eb Eb5 Gb
O: "[~@2 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4] ~@3 [db4,f4,bb4]@8 [a3,bb3,db4]@2 ab3@2 a3!2 ~@4 ab3 ~@7 [bb3,db4]@2 ab3 ~@3, ~@15 [bb2,f3,bb3]@8 ~@5 [bb3,db4]@6 ~@14]/3", // Eb5 Bbm A Bbm Bb5 Bbm
P: "[gb2,db3,gb3,bb3,db4,gb4]@15 ~", // Gb
Q: "[[db3,ab3,db4,f4]@13 ~@3 [ab3,c4,eb4,ab4]@12 ~@4 [ab3,db4,f4]@7 ~ [ab3,b3,f4]@5 ~@3 [bb3,db4,gb4]@14 ~@2 [ab3,db4,f4]@11 ~@5, ~@15 [ab2,eb3]@13 ~@3 db3@14 ~@2 [gb2,db3,gb3]@14 ~@2 db3@12 ~@5]/5", // Db Ab Db Fdim Gb Db Ab5 Gb5
R: "[eb3@4 [g3,db4,eb4] ~@5 [g3,db4,eb4]@2 ~@4 [gb3,c4,gb4]@59 ~@5, ~@15 eb3@59 ~@6]/5", // Eb7 Gbdim
S: "~@4 [db3,ab3,db4] ~@2 [db3,ab3,db4]", T: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@4 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2",
U: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 ~@4 [db3,ab3,db4]@2", // Db5
V: "[bb2 ~ bb2@2 [db3,ab3,db4]@2 ~ bb3 [eb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2, ~@4 [db4,gb4,bb4]@11 ~, ~@8 bb3 ~@23]/2", // Db5 Eb Eb5 Gb
W: "bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@2 [db3,ab3,db4]@2 ~@4 [db3,ab3,db4]@2", // Eb5 Db5
X: "[bb2 ~ bb2@2 [db3,ab3,db4]@2 ~ bb3 [eb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2, ~@7 db4@20 ~@5, ~@2 [gb4,bb4]@5 ~, ~@8 bb3 ~@23]/2", // Db5 Eb Eb5 Gb
Y: "bb2 ~ bb2@2 [eb3,bb3,eb4] ~@3 [db4,f4,bb4]@8, ~@7 [bb2,f3,bb3]@8 ~", // Eb5 Bbm Bb5
Z: "[a3,bb3,db4]@2 ab3@2 a3!2 ~@4 ab3 ~@3 ab3@2, ~@2 [bb3,db4]@3 ~@3", // A Bbm
AA: "[~@2 ab3@2 [bb3,db4]@3 ~ [gb2,db3,gb3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [ab2,eb3,ab3] ~ [ab2,eb3,ab3] ~ [ab2,eb3,ab3] ~ [ab2,eb3,ab3,c4,eb4,ab4] ~, [a3,db4]@2 ~@6 [bb3,db4,gb4]@15 ~ [c4,eb4,ab4]@5 ~@3, ~ [ab3,bb3]@2 ~@29]/2", // Bbm Gb5 Ab5 Ab A Gb Ab Absus2
AB: "[ab2,eb3,ab3,c4,eb4,ab4] ~ [ab2,eb3,ab3,c4,eb4,ab4] ~ [ab2,eb3,ab3,c4,eb4,ab4]@2 ~@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [ab3,db4]@2, ~@14 db3 ~", // Ab Db5 Db Db5
AC: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,ab3,db4] ~@3 [db3,ab3,db4]@2", // Db5 Db Db5
AD: "bb2!2 [db3,ab3,db4] ~ [db3,ab3,db4] ~ [ab3,db4,f4] [db3,ab3,db4]", // Db5 Db Db5
AE: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4] ~ [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2", // Db5 Db Db5
AF: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,ab3,db4]@2", // Db5 Db Db5
AG: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [eb3,bb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2", // Db5 Eb5
AH: "bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@4 [eb3,bb3,eb4]@2 ~@2 [eb3,bb3,eb4]@2", // Eb5
AI: "bb2 ~ bb2@2 [eb3,bb3,eb4]@2 ~@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,ab3,db4]@2", // Eb5 Db5 Db Db5
AJ: "[a3,bb3,db4]@2 ab3@2 [bb3,db4]@6 ab3 ~@5", // A Bbm
AK: "[~@3 a3 ab3@2 ~@2 [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [gb2,db3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3] ~ [ab2,eb3]@2 ~@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,db4]@2, ~@2 [a3,bb3,db4]@2 ~@4 [bb3,db4,gb4]@15 ~ [c4,eb4,ab4]@14 ~@8 ab3 ~]/3", // Gb5 Ab5 Db5 Db A Gb Ab
AL: "[bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4] ~ [db3,ab3,db4]@2 ~@2 db3@2 bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@2 [db3,ab3,db4]@2 ~@2 [ab3,db4,f4]@2 [db3,ab3,db4]@2, ~@7 [ab3,db4]@2 ~@7]/2", // Db5 Db Db5 Db Db5
AM: "bb2!2 [db3,ab3,db4] ~@5", // Db5
AN: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ab2 [db3,ab3] db4@6 [db3,ab3,db4] ~, ~ f4, ~@4 db3 ~@3, ~@8 ab3 ~@7", // Db5
AO: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ab2 db3 [ab3,db4] ~@5 [db3,ab3,db4] ~, ~ f4, ~@4 db3 ~@3", // Db5
AP: "bb2 ~ bb2@2 [db3,ab3,db4] ~@11", AQ: "~@4 [db3,ab3,db4] ~ [ab3,db4,f4] [db3,ab3,db4]",
AR: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@10", AS: "bb2 ~ bb2@2 [db3,ab3,db4]@2 ~@4 ab2@2 bb2@2 db3@2",
AT: "bb3 ~ ab3@2 f3@2 ~ eb3@3 db3@2 ab2@3 ~, [gb3,gb4], db4@7 ~", AU: "db3 [ab3,db4,f4]@15",
})).s("gm_electric_guitar_jazz").gain(0.22).pan(0.6)
// chords · piano
const piano = note(`<
~@27 A B A C D E A F@2 G@2 H I J K L M L N O P Q R S T U@4 V W X W Y Z AA W AB Z AC@2 AD AE AF AG AH AG AI AG AJ AK AL
AG AM AK AN@2 AO AP AQ AR AS@3 AR AT ~@2 AU ~@2 AV AW AX AY AX AY AZ BA AW AT BB@2 ~
>`.pickRestart({
A: "[db4,ab4,db5,f5]@2 ~@4 [ab4,db5,f5] ~ [gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@2, ~@3 db4 bb3@2 ~@2", // Db Ebm Db
B: "~@2 [db4,ab4,db5,f5]@2 ~@2 [ab4,db5,f5] ~ [bb3,gb4,bb4,eb5]@2 db4@2 [bb4,db5,gb5]@4, ~@3 db4 ~@4", // Db Ebm Gb
C: "~@2 [db4,ab4,db5,f5]@2 ~@2 [ab4,db5,f5] ~ [gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@2, ~@3 db4 bb3@2 ~@2", // Db Ebm Db
D: "[eb4,bb4,db5,gb5]@2 ~@4 [eb4,gb5]@2 [ab4,db5,f5] ~ [ab4,db5] ~ [eb4,bb4,db5,gb5]@2 ~@2, ~@6 [bb4,db5] ~ bb3@4 ~@4, ~@5 f5 ~@2", // Ebm7 Ebm Db Db5 Ebm7 Bbm
E: "~@2 [eb4,bb4,db5,gb5]@2 ~@2 [eb4,gb5]@2 [ab4,db5] ~ [ab4,db5] ~ [eb4,bb4]@2 ~@2, ~@6 [bb4,db5] ~ bb3@4 ~@4, ~@8 f5@2 f5@2 [db5,gb5] ~@3", // Ebm7 Ebm Db5 Eb5 Bbm Gb5
F: "[~@2 [db4,ab4,db5,f5]@2 ~@2 [ab4,db5,f5] ~ [gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@2 [bb4,db5,gb5]@6 [eb4,gb5]@2 [db5,f5] ~ [db5,f5]@2 [eb4,bb4,db5,gb5]@2 ~@2, ~@6 db4@2 bb3@4 ~@3 eb4@7 [bb4,db5] ~ bb3@4 ~@4, ~@24 ab4@2 ab4 ~@5]/2", // Db Ebm Db Gb Ebm Db Ebm7 Bbm
G: "[~@2 [eb4,bb4,db5,gb5]@2 ~@2 [eb4,gb5]@2 [ab4,db5,f5] ~ [ab4,db5,f5] ~ [eb4,bb4,gb5]@2 ~@2 [f4,bb4,db5]@12 ~@4, ~@6 [bb4,db5] ~ bb3@4 [db5,f5] ~@2 bb3@12 ~@5]/2", // Ebm7 Ebm Db Ebm Bbm Db
H: "~@2 [f4,bb4,c5,db5] ~@3 bb3@2 [f4,bb4,c5,db5] ~ [f4,bb4,db5]@2 ~@4, ~@10 c5 ~@5", // Bbm
I: "[db5,gb5,bb5]@2 [db5,gb5] ~ [db5,gb5,bb5] ~ [db5,gb5,bb5] ~ [db5,gb5,ab5,bb5] ~ [gb5,ab5,bb5] ~ [db5,gb5,ab5,bb5] ~ [db5,gb5,ab5,bb5] ~, ab5 ~@9 db5@2 ~@4", // Gb Gb5 Gb
J: "[c5,e5,f5] ~ [c5,f5] ~ [f5,ab5] ~ [c5,f5,ab5] ~ [f5,ab5]@2 ~@2 [eb5,gb5]@2 ~@2, ab5@2 ab5@2 c5@2 ~@2 c5 ~ bb4@4 ~@2, ~@12 f5 ~@3", // Fmaj7 F5 Fm Ebm
K: "[ab3,db4,f4]@2 ~@4 [db4,f4]@2 [bb3,db4,f4] ~ [bb3,db4,f4]@2 [ab3,f4]@2 ~@2, ~@6 ab3 ~@5 db4 ~@3", // Db Bbm Db
L: "~@2 [ab3,db4,f4]@2 ~@2 [ab3,db4,f4] ~ [bb3,db4,f4] ~ [bb3,db4,f4] ~ [ab3,db4,f4]@2 ~@2", // Db Bbm Db
M: "[ab3,db4,f4]@2 ~@4 [ab3,db4,f4] ~ [bb3,db4,f4] ~ [bb3,db4,f4] ~ [ab3,db4,f4]@2 ~@2", // Db Bbm Db
N: "[gb2,gb3] ~ [gb2,gb3] ~ [gb2,gb3] ~ [gb2,gb3,db4,db5] ~ [gb2,gb3,db4,db5] ~ [gb2,gb3,db4,db5] ~ [gb2,gb3,db4,db5] ~ [gb2,gb3,db4,db5] ~", // Gb Gb5
O: "[db2,db3] ~ [db2,db3,db5,db6] ~ [db2,db3,db5,db6] ~ [db2,db3,bb4,bb5] ~ [db2,db3,eb4,e4,f4,eb5,e5,f5] ~ [db2,db3,db4,db5] ~ [db2,db3,bb3,bb4] ~ [db2,db3,ab3,ab4] ~", // Db Gb Db Gb Db5
P: "[ab2,ab3] ~ [ab2,ab3] [bb3,b3] [ab2,ab3,ab4] ~ [ab2,ab3,c4,ab4] ~ [ab2,ab3,c4,ab4] ~ [ab2,ab3,c4,ab4] ~ [ab2,ab3,c4,ab4] ~ [ab2,ab3,c4,ab4] ~, ~@2 c4 ~@5", // Ab Bmaj7 Ab
Q: "[db2,db3] ~ [db2,db3,f4,db5] ~ [db2,db3,db5] ~ [db2,db3,g4,db5] ~ [db2,db3,g4,ab4,db5] ~ [db2,db3,g4,ab4,db5] ~ [db2,db3,gb4,g4] [f4,g4] [db2,db3,gb4,db5] ~, ~@2 gb4 ~@3 db5 ~", // Db Dbdim Db Gb Fsus2 Gb5
R: "[gb2,gb3] ~ [gb2,gb3] ~ [e4,gb4,bb4,db5]@2 [gb2,gb3] ~ [gb2,gb3] ~ [gb2,gb3,e4,gb4,bb4,db5] ~ [gb2,gb3] ~ [gb2,gb3,db4,eb4] e4, ~@4 [gb2,gb3] ~@11", // Gb Gb7 Gb Gb7 Gb Ebm7 Gb
S: "[db2,db3,f4] ~ [db2,db3] ~ [db2,db3,db5] ~ [db2,db3,a4] ~ [db2,db3] ~ [db2,db3] ~ [ab4,db5]@2 [db2,db3] ~, db5@2 f4@2 ~@2 db5@3 ~@7, ~@7 bb4@3 f4@2 [db2,db3] ~@3", // Db Gbm Db Db5 Db
T: "[db4,g4,bb4,eb5]@2 [eb2,eb3] ~ [eb2,eb3] ~ [db4,g4,bb4,eb5]@2 [eb2,eb3] ~ [eb2,eb3] ~ [db4,g4,bb4,eb5]@2 ~@2, [eb2,eb3] ~@5 [eb2,eb3] ~@5 [eb2,eb3] ~@3", // Eb7 Eb Eb7 Eb Eb7 Eb
U: "[[ab2,gb3,ab3,c4,eb4,ab4]@49 ~@15, gb4 ~@63]/4", V: "~@8 [db4,ab4,db5,f5]@2 ~@4 [ab4,db5,f5] ~, ~@7 db4",
W: "[gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@4 [db4,ab4,db5,f5]@2 ~@2 [ab4,db5,f5] ~, bb3@2 ~@5 db4", // Ebm Db
X: "[bb3,gb4,bb4,eb5] db4 [bb4,db5,gb5]@2 [db4,ab4,db5,f5] ~@2 [db4,ab4], ~@14 [db5,f5] ~", // Ebm Gb Db Db5 Db
Y: "[gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@2 [eb4,bb4,db5,gb5]@2 ~@4 [eb4,gb5]@2, bb3@4 ~@10 [bb4,db5] ~", // Ebm Db Ebm7 Ebm Bbm
Z: "[db5,f5] ~ [ab4,db5] ~ [eb4,bb4,db5,gb5]@2 ~@4 [eb4,bb4,db5,gb5]@2 ~@2 [bb4,db5,gb5] ~, bb3@2 ~@5 eb4, ab4 f5 ~@6", // Db Db5 Ebm7 Gb
AA: "[ab4,db5] ~ [ab4,db5] ~ [db5,f5,gb5] ~@3 [db4,ab4,db5,f5]@2 ~@4 [ab4,db5,f5] ~, bb3@2 [eb4,bb4] ~@4 db4, f5!2 ~@6", // Db5 Gbmaj7 Db Eb5
AB: "[gb4,bb4,eb5] ~ [gb4,bb4,eb5] ~ [db4,ab4,db5,f5]@2 ~@2 [bb4,db5,gb5]@6 [eb4,gb5]@2, bb3@4 ~@3 eb4@7 [bb4,db5] ~", // Ebm Db Gb Ebm Bbm
AC: "[[ab4,db5,f5] ~ [ab4,db5,f5] ~ [eb4,bb4,gb5]@2 ~@2 [f4,bb4,db5]@12 ~@6 [f4,bb4,c5,db5] ~@3 bb3@2, bb3@4 [db5,f5] ~@2 bb3@12 ~@13]/2", // Db Ebm Bbm Db
AD: "[f4,bb4,c5,db5] ~ [f4,bb4,db5]@2 ~@4 [db5,gb5,bb5]@2 [db5,gb5] ~ [db5,gb5,bb5] ~ [db5,gb5,bb5] ~, ~@2 c5 ~@5 ab5 ~@7", // Bbm Gb Gb5 Gb
AE: "[db5,gb5,ab5,bb5] ~ [gb5,ab5,bb5] ~ [db5,gb5,ab5,bb5] ~ [db5,gb5,ab5,bb5] ~ [c5,e5,f5] ~ [c5,f5] ~ [f5,ab5] ~ [c5,f5,ab5] ~, ~ db5 ~@2 ab5!2 c5 ~", // Gb Fmaj7 F5 Fm
AF: "[f5,ab5]@2 ~@2 [eb5,gb5]@2 ~@2 [db3,ab3,db4,f4]@2 ~@4 [ab3,db4,f4] ~, c5 ~ bb4@4 ~@8 db3@2, ~@4 f5 ~@11", // Fm Ebm Db
AG: "[gb3,bb3,eb4] ~ [gb3,bb3,eb4] ~ [db3,ab3,db4,f4]@2 ~@4 [db3,ab3,db4,f4]@2 ~@2 [ab3,db4,f4] ~, bb2@2 ~@5 db3", // Ebm Db
AH: "[bb2,gb3,bb3,eb4] db3 [bb3,db4,gb4]@2 [db3,ab3,db4,f4] ~@2 [db3,ab3], ~@14 [db4,f4] ~", // Ebm Gb Db Db5 Db
AI: "[gb3,bb3,eb4] ~ [gb3,bb3,eb4] ~ [db3,ab3,db4,f4]@2 ~@2 [db3,ab3,db4,f4]@2 ~@4 [db3,ab3]@2, bb2@4 ~@10 [db4,f4] ~", // Ebm Db Db5 Db
AJ: "[gb3,bb3,eb4] ~ [gb3,bb3,eb4] ~ [db3,ab3,db4,f4]@2 ~@2 [eb3,bb3,db4,gb4]@2 ~@4 [eb3,gb4]@2, bb2@4 ~@10 [bb3,db4] ~", // Ebm Db Ebm7 Ebm Bbm
AK: "[db4,f4] ~ [ab3,db4] ~ [eb3,bb3,db4,gb4]@2 ~@4 [eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~, bb2@2 ~@5 eb3, ab3 f4 ~@6", // Db Db5 Ebm7 Gb
AL: "[ab3,db4] ~ [ab3,db4] ~ [db4,f4,gb4] ~@3 [db3,ab3,db4,f4]@2 ~@4 [ab3,db4,f4] ~, bb2@2 [eb3,bb3] ~@4 db3, f4!2 ~@6", // Db5 Gbmaj7 Db Eb5
AM: "[gb3,bb3,eb4] ~ [gb3,bb3,eb4] ~ [db3,ab3,db4,f4]@2 ~@2 [bb3,db4,gb4]@6 [eb3,gb4]@2, bb2@4 ~@3 eb3@7 [bb3,db4] ~", // Ebm Db Gb Ebm Bbm
AN: "[[ab3,db4,f4] ~ [ab3,db4,f4] ~ [eb3,bb3,gb4]@2 ~@2 [f3,bb3,db4]@12 ~@6 [f3,bb3,c4,db4] ~@3 bb2@2, bb2@4 [db4,f4] ~@2 bb2@12 ~@13]/2", // Db Ebm Bbm Db
AO: "[f3,bb3,c4,db4] ~ [f3,bb3,db4]@2 ~@4 [gb4,bb4]@2 [db4,gb4] ~ [db4,gb4,bb4] ~ [db4,gb4,bb4] ~, ~@2 c4 ~@5 [db4,ab4] ~@7", // Bbm Gb Gb5 Gb Db5
AP: "[db4,gb4,ab4,bb4] ~ [gb4,ab4,bb4] ~ [db4,gb4,ab4,bb4] ~ [db4,gb4,ab4,bb4] ~ [c4,e4,f4] ~ [c4,f4] ~ [f4,ab4] ~ [c4,f4,ab4] ~, ~ db4 ~@2 ab4!2 c4 ~", // Gb Fmaj7 F5 Fm
AQ: "[f4,ab4] ~ [eb4,gb4] ~ [ab3,db4,f4] ~@3, c4 ~ bb3@4 ~@10, ~@4 f4 ~@11", // Fm Ebm Db
AR: "[bb3,db4,f4] ~ [ab3,db4,f4] ~@2 [ab3,db4,f4] ~@2", AS: "[bb3,db4,f4] ~ [ab3,db4,f4] ~ [ab3,db4,f4] ~@3",
AT: "[bb3,db4,f4] ~ [ab3,db4,f4] ~@5", AU: "[eb4,ab4]@2 db4 ~ [eb4,ab4]@2 db4 ~@9, d4 ~@3 d4 ~@11",
AV: "~@2 [db4,db5] ~@5", AW: "~@4 [ab3,db4,f4] ~@3",
AX: "[bb3,db4,f4]@3 ~ [ab3,db4,f4]@2 ~@4 [ab3,db4,f4]@2 ~@2 [db4,f4]@2, ~@14 ab3 ~", // Bbm Db
AY: "[bb3,db4,f4]@3 ~ [ab3,db4,f4]@2 ~@2 [ab3,db4,f4]@2 ~@6", // Bbm Db
AZ: "[bb3,db4,f4]@2 ~@2 [ab3,db4,f4]@2 ~@4 [ab3,db4,f4]@2 ~@2 [ab3,db4,f4] ~", // Bbm Db
BA: "[bb3,db4,f4]@3 ~ [ab3,db4,f4]@2 ~@10", BB: "[[gb3,bb3,db4,gb4]@15 ~ [ab3,db4,f4]@16, ~@15 db3@17]/2",
})).s("gm_piano").gain(0.5)
// drums · rim
const rim = s("rim").struct("<A ~@22 B@17 C B@3 C ~@11 D B@13 D B@15 D B@5 C ~@6 D B@5 C ~@5>".pickRestart({
A: "x!4", B: "~ x ~ x", C: "~ x ~@2", D: "~@3 x",
})).gain(0.64)
// drums · kick
const kick = s("bd").struct(`<
~@22 A B C B C B C B C B C B C B C B C B C B C B D E F E F E F G H ~@3 I J K J K J K J K J K J K J K J K J K J K J K J
K J K J K J K J K J K J L M J K J K N O J K J K J L I J ~ H@2
>`.pickRestart({
A: "~@10 x!2 ~@4", B: "x ~@3 x!2 ~@2", C: "~ x ~@2 x!2 ~@2", D: "~@2 x ~@5 x ~ x!2 ~@4", E: "x ~@2 x ~@3 x",
F: "x ~@5 x ~@3 x!2 ~@4", G: "x ~@2 x ~ x ~@2", H: "x", I: "~ x", J: "x!2 ~@3 x ~@2", K: "x!2 ~@2 x ~@3",
L: "x!2 ~@6", M: "~@3 x!2 ~@3", N: "x ~ x!2 ~@12", O: "~@2 x!2 ~@4 x ~@7",
})).gain(0.64)
// drums · snare
const snare = s("sd").struct("<~@22 A ~@17 A ~@3 B C@7 ~@4 D ~@13 D ~@15 D ~@6 E ~@4 D@2 ~@6 A C F G ~>".pickRestart({
A: "~@3 x", B: "~@8 x!2 ~@2 x!4", C: "~ x ~ x", D: "~ x ~@2", E: "~ x ~@6", F: "x", G: "~@14 x!2",
})).gain(0.64)
// drums · clap
const clap = s("cp").struct("<~@22 A ~@17 A ~@29 B ~@15 B ~@12 B ~@11>".pickRestart({
A: "~@3 x", B: "~ x ~@2",
})).gain(0.64)
// drums · low tom
const low_tom = s("lt").struct("<~@40 A ~@5 B ~ B ~ B ~@19 C ~@15 C ~@6 C ~@12 D ~ E ~@2>".pickRestart({
A: "~@3 x", B: "~@7 x", C: "~ x ~@2", D: "~@3 x ~@4", E: "~@7 x ~@8",
})).gain(0.64)
// drums · hihat
// … 34 more lines
More by The Pointer Sisters
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.