0:00/0:00
// Every Little Thing She Does Is Magic — The Police
// 82 bpm, 4/4, key D major. Source: mcgill + midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 19, 4/4 at bar 20) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 90 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(82/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 · "A.PIANO 3"
const piano = note(`<
A@2 B@7 C@3 D@4 E F@2 G@2 H@2 I@2 J K L M N O@8 P@3 Q@8 R@4 S@4 T@4 U@4 V@4 W@3 X Y Z@3 AA@2 AB@2 AC@2 AD@5 AE@2
>`.pickRestart({
A: "[~@11 e4 ~ a3 ~ a3@2 ~@2 e4 ~@3 a3@2 ~@6 a3, ~@9 g3@3 g3@3 ~@2 g3@3 g3@4 ~ g3@3 g3@3 ~, ~@10 a3@2 ~@2 d4@4 a3@2 ~ a3@2 ~@3 a3@3 a3@2 ~, ~@22 d4@3 ~@2 e4@2 ~ d4@2]/2",
B: "[~@3 a4 g4 f#4 e4 d4 ~@7 a3@2 ~@2 e4 ~@3 a3@2 ~@2 e4 ~@3 a3@2 ~ a3 g4 f#4 e4 d4 c#4 ~@7 a3@2 ~@4 a3 ~ a3@2 ~@4 a3 ~ a3@2 ~ a3 a4 g4 f#4 e4 d4 ~@5 a3 ~ a3@2 g3 ~@3 a3 ~ a3@2 ~ a3 ~@2 a3 ~ a3@2 ~ a3 g4 f#4 e4 d4 c#4 ~@5 a3 ~ a3, ~ g3@3 ~@5 g3@2 e4@2 a3@2 ~@2 g3@2 ~ g3@5 g3@3 g3@4 ~ g3@2 ~@6 g3@3 g3@5 g3@2 e4@2 ~@6 e4@3 d4@4 ~@9 e4@3 d4@4 ~ e4@2 ~ d4@5 e4@3 d4@5 ~@8 e4@3 d4@2, ~@2 a3@2 ~@6 a3@2 g3@2 d4@4 a3@2 ~ a3@2 ~@3 a3@2 ~ a3@2 ~@11 a3@3 a3@2 ~@3 a3@2 g3@3 ~@2 g3@2 ~ g3@5 g3@2 ~@6 g3@3 g3@2 ~@6 g3@5 g3@2 ~ g3@2 ~@3 g3@2 ~@6 g3@3 g3@2 ~@2, ~@22 d4@6 ~@2 d4@5 ~@8 e4@2 ~ d4@7 ~ d4@4 a3@3 ~@13 a3@3 ~@5 a3@3 ~@21 a3@3 ~@3]/7",
C: "[~ g3 ~@5 a3@2 ~@2 e4 ~ a3 ~ a3@2 g3 ~ g4 f#4 e4 d4 c#4 d4 [d4,a4] [a3,d4,f#4,a4] [b3,d4] ~ [a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]@2 ~ [b3,d4,a4]@2 [a3,c#4,e4]@2 [a3,d4,f#4] [a3,d4,f#4,a4]!2 [b3,d4,a4]@2 [a3,c#4,e4]@2 [a3,d4,f#4], ~@2 a3@2 g3@4 ~ g3@2 ~ g3@2 ~@34, ~@3 e4@2 a3@2 ~@3 a3@2 ~@6 a3@2 ~@4 [a3,f#4]@2 ~@22, ~@6 d4@5 ~@3 d4@4 ~@9 a4@2 ~@19]/3", // D5 D Bm A D Bm7 A D …
D: "[~@5 [f#2,a3,c#4,e4]@3 [a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~ [a2,a3,c#4,e4]@3 [a3,f#4]@2 [c#2,c#4,e4]@2 [d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [c#2,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~ [a2,a3,c#4,e4]@3 [c#2,a3,d4,f#4]@2 [c#2,c#4,e4,a4]@3, ~@15 d2@7 ~@5 [c#2,d4] ~ a4 ~ d2@7 ~@9 d2@6 ~@11, ~@31 a3 ~@11 f#3 ~@20]/4", // F#m7 A Dmaj7 A D A D C#m …
E: "[d4,f4]@6 ~ a#3 ~@6 c4@2, [a#2,f3,a#3] [f2,f3], ~@3 [d4,f4] g4 c4@2 ~, ~@9 e4@4 e4@3, ~@11 g4@5", // Dm A#5 F Dm
F: "[~@7 a2@2 ~@6 a3@2 ~ a3 e4 ~@3 a3@2 ~@2 a4 g4 f#4 ~ d4, g1@9 ~@2 e4@2 ~ d4@5 ~@3 d4@6 ~@2 e4@2, ~@2 a2@2 ~ a2@2 ~@3 a3@3 a3@2 ~@6 a3@2 ~@3 a3@2 ~@4, ~@3 e3@3 d3@3 g3@3 g3@4 ~ g3@2 ~ g3@3 ~@2 g3@3 ~@4]/2",
G: "[~@7 a3@2 ~@4 a3 ~ a3@2 ~@4 a3 ~ a3@2 ~ a3 a4 g4 f#4 e4 d4, ~ g3@2 e4@2 a3@2 ~@3 a3@2 g3@3 ~@2 g3@2 ~ g3@5 g3@2 ~@5, ~@2 a3@2 g3@5 g3@2 e4@2 ~@6 e4@3 d4@4 ~@6, ~@6 d4@7 ~ d4@4 a3@3 ~@11]/2",
H: "[~@5 a3 ~ a3@2 g3 ~@3 a3 ~ a3@2 ~ a3 ~@2 a3 ~ a3@2 ~ a3 g4 f#4 e4 d4 c#4, ~ g3@2 e4@3 d4@4 ~ e4@2 ~ d4@5 e4@3 d4@5 ~@5, ~@2 a3@2 g3@2 ~@4 a3@2 g3@5 g3@2 ~ g3@2 ~@3 g3@2 ~@5]/2",
I: "[~@5 a3 ~ a3@2 g3 ~@5 a3@2 ~@2 e4 ~ a3 ~ a3@2 g3 ~ g4 f#4 e4 d4 c#4, ~ g3@2 e4@3 d4@3 ~@2 e4@2 a3@2 ~@3 a3@2 ~@6 a3@2 ~@4, ~@2 a3@2 g3@2 ~@4 a3@2 g3@4 ~ g3@2 ~ g3@2 ~@10, ~@14 d4@5 ~@3 d4@4 ~@6]/2",
J: "d4 [d4,a4] [a3,d4,f#4,a4] [b3,d4] ~ [a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]@2 ~ [b3,d4,a4]@2 [a3,c#4,a4]@2, [a3,f#4]@2 ~ a4@2 ~@11", // D5 D Bm A D Bm7 A D
K: "[a3,d4,f#4] [a3,d4,f#4,a4]!2 [b3,d4,a4]@2 [a3,d4,a4]@2 [a3,d4,a4] ~@5 [f#2,a3,c#4,e4]@3", // D Bm7 D5 F#m7
L: "[a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~, ~@7 d2@7 ~@2", // A Dmaj7 A D
M: "[a2,a3,c#4,e4]@3 [a3,f#4]@2 [c#2,c#4,e4]@2 [d4,f#4]@2 [d5,f#5,a5]!6 ~, ~@3 [c#2,d4] ~ a4 ~ d2@7 ~@2, ~@7 a3 ~@8", // A D C#m D Dmaj7
N: "[a2,a3,c#4,e4]@3 [c#2,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~, ~@3 f#3 ~@3 d2@6 ~@3", // A Dmaj7 A D
O: "[[a2,a3,c#4,e4]@3 [c#2,a3,d4,f#4]@2 [c#2,c#4,e4,a4]@3 ~@3 a4@3 ~@5 g4 ~@3 c4 ~@3 a4@3 ~@4 d4 ~@3 d4 c4 ~@3 d4@2 ~ c4@4 ~ c4 ~@3 f3 ~@6 c4@4 ~@12 c4@4 ~@5 f3 ~@3 d4@2 ~ c4@4 ~@12 d4@3 ~@13 d4@2, ~@8 f4@6 g4@4 d4@2 f4@4 f4@7 ~@5 f4@3 ~@3 a#3@3 a#3@2 ~@5 d4@4 ~@2 a#3@6 ~@2 a3@5 f3 d3 f3@5 ~@10 d3@3 ~@2 g3@5 g3@3 g3@4 f3@2 ~ f3@3 ~@2 g3@3 g3@4 ~ f3@3 f3@4, ~@10 a#3@5 ~@2 c4@3 ~ e4@3 ~@6 g4@5 g4@4 ~@15 c4@2 ~ f3@2 d4@5 ~@3 c4@2 g3@5 a#3@4 ~@5 c4@2 ~ c4@2 ~@2 a#3@4 ~@5 c4@3 c4@4 a#3@2 ~ a#3@5 c4@3 c4@3 ~@2 a#3@2 ~ a#3@3, ~@22 d4@2 ~@2 a#3@5 ~@2 c4@2 ~@2 e4@2 ~@2 f3@2 ~@7 g3@3 g3@3 d3@4 ~ g3@3 ~@4 d4@7 d4@6 ~@3 d4@4 ~@12 d4@7 d4@3 ~@5 d4@2 ~ d4@5 d4@3 ~@2, ~@70 c4@5 ~@2 g3@4 ~ g3@3 g3@3 ~ f3@5 ~@9 f3 d3@3 ~@21]/8", // A Dmaj7 A
P: "[~@37 d4@2 ~ [d2,a3,d4,f#4] ~ [d2,a3,d4,f#4] [g2,b3,d4,g4] ~ [g2,b3,d4,g4] [a2,a3,c#4,e4] [d2,a3,d4,f#4], g3@2 d4@2 c4@3 ~@2 a#3@2 ~ a#3@3 ~@2 c4@2 ~ c4@7 f3@5 ~@16, ~ c4@2 g3@4 ~ f3@3 f3@4 ~ g3@3 g3@9 ~@4 g3@3 g3@4 ~@9, ~@5 d4@5 d4@3 d4@5 d4@3 d4@4 a#3@3 a#3@4 ~ c4@3 c4@3 ~@9, ~@24 f3@2 d4@3 d4@5 d4@3 ~@11]/3", // D G A D
Q: "[~@5 [f#1,a3,c#4,e4]@3 [a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~ [a2,a3,c#4,e4]@3 [a3,f#4]@2 [c#2,c#4,e4]@2 [d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d4,f#4,a4]!6 ~ [a2,a3,c#4,e4]@3 [a3,f#4]@2 [c#2,c#4,e4]@2 [d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [a3,f#4]@2 [c#2,c#4,e4]@2 [d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [c#2,f#3,a3,d4]@2 [c#2,a3,c#4,e4]@2 [a3,d4,f#4]@2 [d5,f#5,a5]!6 ~ [a2,a3,c#4,e4]@3 [c#2,a3,d4,f#4]@2 [c#2,c#4,e4,a4]@3, ~@15 d2@7 ~@5 [c#2,d4] ~ a4 ~ d2@7 ~@9 d2@7 ~@5 [c#2,d4] ~@3 d2@7 ~@9 d2@7 ~@5 [c#2,d4] ~@3 d2@7 ~@9 d2@7 ~@10, ~@31 a3 ~@29 a4 ~ a3 ~@29 a4 ~ a3 ~@32]/8", // F#m7 A Dmaj7 A D A D C#m …
R: "[[a#2,f3,a#3,d4]@7 [f2,g3,c4,e4]@8 [g2,g3,a#3,d4,f4]@7 ~ [a2,g3,a3,c4,e4]@8 [a#2,f3,a#3,d4]@8 [f2,g3,c4,e4]@8 [a4,d5,f#5,a5] ~ [d3,d5,f#5,a5] ~ [d3,d5,f#5] [d2,a4,d5,f#5,a5] [d3,d5,f#5] [a4,d5,f#5] [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5] [a4,d5,f#5] ~ [d3,a4,d5,f#5,a5] [a4,d5,f#5] ~ d3, ~@47 d2@2 ~@6 d2@9, ~@55 d3@2 ~@5 [a4,d5,f#5,a5]@2]/4", // A# C Gm7 Am7 A# C D
S: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] [g4,g6] [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [c5,c7] f6 g6 [d5,d7] [a2,g3,a3,c4,e4]@8 ~@2 [f4,f6] [g4,g6] [d5,d7] [f4,f6] g6 [c5,c7] [f2,g3,c4,e4]@8 [a4,d5,f#5] ~ [d3,a4,d5,f#5] d2 [d3,d5,f#5] [d2,a4,d5,f#5,a5] ~ [d3,d5,f#5] [d3,a4,d5,f#5,a5] ~ [d5,f#5] [a4,d5,f#5,a5] d5!2 [d3,a4,d5,f#5,a5]@2 [d3,a4,d5,f#5], [a#2,f3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 ~@8 [a#2,f3,a#3,d4]@8 ~@8 d2@2 ~@6 d2@9, a#3@2 ~ a#3@4 ~@10 f4@3 f4@3 ~@14 g4@2 ~@19 d3@3 ~@3, ~@21 g4@2 [c5,c7] ~@40]/4", // F G D F G C G C …
T: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] g6 [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [d5,d7] f6 ~ [c5,c7] [a2,g3,a3,c4,e4]@8 ~@2 [f4,f6] [g4,g6] [d5,d7] [f4,f6] g6 [c5,c7] [f2,g3,c4,e4]@8 [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5,a5] d2 [d5,f#5] ~ d3 [d2,d5] [a4,d5,f#5,a5] d5 [d5,f#5] [a4,d5,f#5,a5] ~ [d5,f#5] [d3,a4,d5,f#5,a5] ~ [d3,a4,d5,f#5,a5], [a#2,f3,a#3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 ~@8 [a#2,f3,a#3,d4]@8 ~@8 d2@2 ~@2 d3@2 ~@2 d3@2 ~@7, ~@5 g4@2 ~@10 f4@3 f4@3 ~@29 [d2,a4,d5,f#5,a5]@2 ~@4 d2@6, ~@21 [g4,g6]@2 ~@14 g4@2 ~@25]/4", // F G D F C G D C …
U: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] ~ [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [d5,d7] f6 ~ [c5,c7] [a2,g3,a3,c4,e4]@8 ~@2 [f4,f6] [g4,g6] [d5,d7] [f4,f6] ~ [c5,c7] [f2,g3,c4,e4]@8 [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5,a5] ~ [d3,d5,f#5] [d2,a4,d5,f#5,a5] d3 d5 [a4,d5,f#5,a5] ~ [d5,f#5] [a4,d5,f#5,a5] ~ d5 [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5,a5], [a#2,f3,a#3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 ~@8 [a#2,f3,a#3,d4]@8 ~@8 d2@2 ~@6 d2@9, ~@5 [g4,g6]@2 [g4,g6] ~@9 f4@3 f4@3 ~@32 d3@2 ~ d3@2 ~ d3@2 ~, ~@21 [g4,g6]@2 [g4,g6] ~@13 [g4,g6]@2 [g4,g6] ~@24]/4", // F G D F C G D C …
V: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] ~ [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [d5,d7] f6 g6 [c5,c7] [a2,g3,a3,c4,e4]@8 ~@2 [f4,f6] [g4,g6] [d5,d7] [f4,f6] ~ [c5,c7] [f2,g3,c4,e4]@8 [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5,a5] d2 [d3,d5,f#5] [d2,a4,d5,f#5,a5] d3 [d2,d5,f#5] [d3,a4,d5,f#5,a5] d2 [d3,d5,f#5] [a4,d5,f#5,a5] [d3,d5] [a4,d5] [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5], [a#2,f3,a#3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 ~@8 [a#2,f3,a#3,d4]@8 ~@8 d2@2 ~@9 d2@3 [d2,d3]@2 ~, ~@5 [g4,g6]@2 [g4,g6] ~@9 f4@3 f4@3 ~@41, ~@21 g4@2 [g4,g6] ~@13 [g4,g6]@2 [g4,g6] ~@24]/4", // F G D F C G D C …
W: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] g6 [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [d5,d7] f6 g6 [c5,c7] [g4,g6] ~@5 [b6,c7,d7,e7,f7,g7] [d6,e6,f6,g6,a6] [f5,g5,a5,b5,c6] ~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] [g4,g6] [c5,c7] [f2,g3,c4,e4]@9, [a#2,f3,a#3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 [a2,g3,a3,c4,e4]@8 [a#2,f3,a#3,d4]@7 ~@10, ~@5 g4@2 [g4,g6] ~@9 f4@3 f4@3 ~@25, ~@21 g4@2 ~@16 [g4,g6] ~@8]/3", // F G D F C G D C …
X: "d2 [d3,a4,d5,f#5,a5] ~ d2 [d3,a4,d5,f#5,a5] ~ d2 [a4,d5,f#5,a5] ~ [d3,d5,f#5,a5]@2 [d5,f#5]!4 [d2,d5,f#5], ~@7 d2@8 ~, ~@7 d3@2 ~@2 d3@3 [d3,a4,a5]@2, ~@6 [a4,a5] ~", // D D5 A
Y: "[a4,d5,f#5,a5] d5!2 [d3,a4,d5,f#5,a5] ~ [d3,d5,f#5] [d2,d3,a4,d5,f#5,a5]@2 d5 [a4,d5,f#5,a5] ~ [d3,a4,d5,f#5] d3!2 [d3,a4,d5,f#5,a5]@2, [d2,d3]@3 d2@2 ~@4 [d2,d3]@2 ~ d2@4, ~@6 [a4,d5,f#5,a5] ~", // D
Z: "[~ [f4,f6] [g4,g6] [d5,d7] [f4,f6] ~ [c5,c7] [f2,g3,c4,e4]@8 f4@2 f6 [g4,g6] [d5,d7] f6 ~ [c5,c7] [a2,g3,a3,c4,e4]@8 ~@2 [f4,f6] [g4,g6] [d5,d7] [f4,f6] [g4,g6] [c5,c7] [c3,g3,c4,e4]@8 ~, [a#2,f3,a#3,d4]@7 ~@8 [g2,g3,a#3,d4]@8 ~@8 [a#2,f3,a#3,d4]@8 ~@9, ~@5 [g4,g6]@2 [g4,g6] ~@9 f4@3 f4@3 ~@25, ~@21 [g4,g6]@2 [g4,g6] ~@24]/3", // F G D F C G D C …
AA: "[~@4 g4 ~ d5 a4@2 ~@2 e5 ~@2 d5 a4@2 g4 ~@2 g4 a4 d5 a4@2 g4 ~@2 g4 ~@2 a4, ~ g4@2 e5@2 ~@5 a4@2 ~ a4@2 ~@3 a4@3 ~@5 a4@3 a4@2 ~, ~@2 a4@3 a4@2 ~@2 g4@3 g4@3 ~@4 e5@2 ~@6 e5@2 ~ d5@2]/2",
AB: "[~@3 e5 ~@2 d5 a4@2 g4 a4 ~@2 a4 ~ a4@2 g4 ~@2 g4 a4 ~ a4 ~ g4 ~ e5 g4 ~@2 a4, ~ g4@2 ~ g4@3 ~@5 g4@2 ~@4 a4@3 ~@5 a4@2 ~ a4@2 ~, ~@2 a4@2 ~ a4@2 ~@4 e5@3 d5@3 ~@2 e5@2 ~ d5@2 ~@6 d5@2]/2",
AC: "[~@3 e5 g4 ~ d5 a4@2 g4 a4 ~ g4 a4 ~ a4@2 g4 a4 ~ g4 a4 ~ a4 ~ g4 ~ e5 g4 a4 ~ a4, ~ g4@3 ~@22 a4@2 ~@4, ~@2 a4@2 ~ a4@2 ~@4 e5@2 ~ d5@3 ~@2 e5@2 ~ d5@3 ~@5 d5@2]/2",
AD: "[~ g4 ~@2 g4 a4 d5 a4@2 g4 ~@2 g4 a4 d5 a4@2 g4 a4 e5 g4 a4 d5 a4@2 g4 a4 ~@2 a4 d5 a4@2 g4 a4 ~@2 a4 d5 a4@2 g4 a4 e5 ~ a4 d5 a4@2 g4 a4 e5 ~ a4 d5 a4 ~@2 a4 e5 ~@2 d5 a4@2 ~ a4 ~@3 d5 a4 ~@2 a4 e5 ~@2 d5 a4, ~@2 a4@3 ~@5 a4@3 ~@15 g4@2 ~@6 g4@2 ~@6 g4@2 ~@6 g4@2 ~@3 g4@2 ~ g4@3 ~@2 g4@2 ~ g4@3 ~@2 g4@2 ~ g4@3 ~, ~@3 e5@2 ~@6 e5@2 ~@14 e5@3 ~@5 e5@3 ~@23 a4@2 ~@4 e5@4 ~@9, ~@69 a4@2 ~@6 a4@2 ~]/5",
AE: "[~@2 a4 e5 ~@2 d5 a4 ~@2 a4 e5 ~@4 g4@15 ~, ~ g4@2 ~ g4@3 ~@2 g4@2 ~ g4@2 d5@17 ~, ~@5 a4@2 ~@6 a4@2 a4@16 ~]/2",
})).s("gm_piano").gain(0.33).pan(0.3)
// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
A B C D C D C D C D E@3 F G H I J K J K J K J K L M N O N P Q@2 R@2 S T U@2 V W X G Y Z@2 G AA G AB AC@3 AD AE@4 AF@3
AG AH@3 AI AJ@2 AK AL AM@2 AN@3 AO AP AQ AR AS AT AU AV AW AX J K AY AZ BA
>`.pickRestart({
A: "~ g1", B: "a1@7 ~ b1@8", C: "c#2 g1", D: "a1 b1",
E: "[c#2@8 d1@3 d2 g1 a1 e1 d1@2 d2@2 d1 g1 a1 e1@2 d1@2 ~ d2 g1 a1 e1 d1@6 ~@3 a1@3 c#2 ~@4]/3",
F: "~ d2!2 f#2 f#2@2 a2@2 a1@3 c#2 ~@4", G: "~ d2!2 f#2 e2@2 d2@2 a1@3 c#2 ~@4", H: "~ d2!3 f#2@2 a2@2 a1@3 c#2 ~@4",
I: "a#1 f2", J: "g1 a1", K: "b1 c#2", L: "d1@3 d2 g1 a1 e1 d1@2 d2@2 d1 g1 a1 e1@2", M: "d1@2 a1 d1 g1 a1 e1 d1 ~@8",
N: "a1@3 c#2 ~@5 d2!2 f#2 e2!2 d2 ~", O: "a1@3 c#2 ~@5 d2!2 f#2 e2@2 d2@2", P: "a1@3 c#2 ~@4 a#1@8", Q: "f2 a#1",
R: "a1 g1", S: "a1@8 a#1@5 ~@3", T: "a1@5 ~@3 a#1@8", U: "c2 a#1", V: "c2@2 a#1!2",
W: "c2@4 c2@4 d1@2 d2 g1@2 a1 e1 d1", X: "~@8 a1@3 c#2 ~@4", Y: "d2!2 ~ d2 b1@2 e2@2 a1@3 c#2 ~@4",
Z: "~ d2!2 f#2 e2!2 d2@2 a1@3 c#2 ~@4", AA: "~ d2!3 b1@2 e2@2 a1@3 c#2@2 ~@3", AB: "a#1@2 a#1@5 f2 f2@6 ~ f2",
AC: "[g2@6 ~ g2 a2@7 a#1@8 f2@4 c2@4 d2@2 ~ d2!2 b1 a1@2 d2@2 d2 e2 g2 e2@2 d2@2]/3", AD: "a#1@6 ~ f2@7 ~ f2",
AE: "[g2@7 g2 a2@7 a#1@8 f2@4 c2@4 d2@2 d2!2 b1@2 a1 e2 d2@2 d2!2 a2@2 d3 a2 a#1@7 ~ f2@7 ~ f2]/4",
AF: "[g2@6 ~ g2 a2@7 a#1@8 f2@4 c2@4 d2@5 g2 a2 e2 d2@2 d3@2 g2@2 a2 d2@2]/3", AG: "a#1@7 f2@8 f2",
AH: "[g2@7 g2 a2@7 a#1@8 f2@4 c2@4 d2@4 d3 g2 a2 e2 d2@2 d2@2 d3 g2 a2 d2@2]/3", AI: "a#1@5 f2 a#2 f2@4 c3 c3@3 f2",
AJ: "[g2@5 d2 a2@6 ~ c2 d2 a#1@6 f2 a#2 f2@4 c2@5]/2", AK: "d2!3 d3 g2 a2 e2 d2@2 d2!3 d3@2 a2@2",
AL: "a#1 ~ a#1!5 f2@4 f2@5", AM: "[g2@6 ~ a2@8 a#1@5 f2 a#1!2 f2@2 c2 c2@5 d2]/2",
AN: "[d2@3 b1 a1@2 e2@2 d2@3 b1 a1 b1 e2 d2@4 b1 a1@2 e2@2 d2@3 a2 d3!2 ~ a#1@8 f2@7 ~ f2]/3",
AO: "g2@6 g2@2 a2@4 ~ c3 g2 c2", AP: "a#1@4 a#2@2 ~ a#2 c3@2 c3@2 c3@3 ~", AQ: "d2@3 a2@4 d2 d2@3 a2 a2@3 d2",
AR: "d2@3 a2 a2@3 d2 d2@3 a2 a2@3 d2", AS: "d2@3 a2 a2@3 d2 d2@3 a2@3 ~ d2", AT: "d2@3 a2 a2@3 d2 d2@3 a2@3 c#3 d3",
AU: "d2@3 a2@3 c#3 d3 d2@3 a2@2 a2 c#3 d3", AV: "d2@3 a2@2 a2 c#3 d3 d2@3 a2@2 c#3 d3 a2",
AW: "d2@3 a2@2 c#3 d3 a2 d2@3 a2@2 c#3 d3 a2", AX: "d2@3 a2@2 c#3 d3 a2 d2@3 a2@2 c#3 d3 ~", AY: "d2 e2", AZ: "f#2",
BA: "g2@15 ~",
})).s("gm_acoustic_bass").gain(0.38)
// other · shamisen
const shamisen = note(`<
A B C B D B C B D E F ~@6 A G B G B H I H ~@5 J@2 K L M N O P Q R S ~@36 T U V U V W V U V U V U X
>`.pickRestart({
A: "~@9 g3 a3 e4 g3 a3 d4 a3", B: "~ g3 a3 e4 g3 a3 d4 a3 ~ g3 a3 e4 g3 a3 d4 a3",
C: "~ g3 a3 a4 g4 f#4 e4 d4 ~ g3 a3 e4 g3 a3 d4 a3", D: "~ g3 a3 g4 f#4 e4 d4 c#4 ~ g3 a3 e4 g3 a3 d4 a3",
E: "~ g3 a3 e4 ~ a3 d4 a3 ~ g3 a3 e4 g3 a3 d4 a3", F: "~ g3 a3 g4 f#4 e4 d4 c#4 ~@8",
G: "~ g3 a3 e4 g3 a3 d4 a3 ~ g3 a3 a4 g4 f#4 e4 d4", H: "~ g3 a3 e4 g3 a3 d4 a3 ~ g3 a3 g4 f#4 e4 d4 c#4",
I: "~ g3 a3 e4 g3 a3 d4 a3 ~ g3 a3 e4 ~ a3 d4 a3", J: "[~@15 d4@2 ~@2 a4 ~ a4!2 a4@2 d4 ~ d4 ~@2 d4@2]/2",
K: "~ d4 ~ d4 ~@5 f3 ~ d4 ~ a#3 c4 ~, ~@5 a#3 ~@2", L: "~@3 c4 d4 g3 c4 ~@2 f3 a#3 d4 ~ g3 ~@2",
M: "~@3 c4 d4 g3 c4 f3@2 f3 a#3 d4 ~ g3 c4 ~", N: "~@3 c4 d4 g3 c4 ~ d3 f3 ~ d4 ~@4",
O: "~@3 c4 d4 g3 c4 f3 ~@3 d4@2 ~@3", P: "~@2 c4 d4@2 c4 ~@7 a#3 d4@2, ~ g3@2 ~@8 d4@2 ~@3, ~@6 f3 ~",
Q: "~ c4 ~@2 c4 d4@3 ~ a#3 ~@2 a#3@2 ~@2, g3 d4 ~@3 d4 ~@2, ~@3 g3@2 ~@3 f3@2 ~ f3@3 ~@2",
R: "~@4 c4 d4@3 ~ a#3 ~@3 d4@3, ~@2 d4@2 ~@6 d4@2 a#3@3 ~, ~@3 g3@4 ~ f3@2 ~ f3@4 ~",
S: "~ c4 ~@3 d4@2 ~@9, g3@2 d4@2 c4@3 ~@9, ~@3 g3@4 ~@9", T: "~@6 d5 ~@4 e5 ~@2 d5 ~",
U: "~@3 e5 ~@2 d5 ~@4 d5 f#5 e5 d5 c#5", V: "d5 ~@2 e5 ~@2 d5 ~@4 e5 ~@2 d5 ~", W: "~@6 d5 ~@4 d5 f#5 e5 d5 c#5",
X: "d5 ~@15",
})).s("gm_shamisen").gain(0.22).pan(0.7)
// other · shamisen · soft notes
const shamisen_soft = note("<~@9 A ~@13 B ~@6 C D E F G H I@2 J K ~@37 L ~@12>".pickRestart({
A: "~@4 g3 ~@11", B: "~@12 g3 ~@3", C: "~@11 d4 ~ d4 ~@2", D: "~@2 a4 ~@13", E: "~@5 d4 ~@10",
F: "~@2 g3 ~@4 f3 d3 ~@5 c4 ~", G: "~@2 a3 ~@5 d3 ~@7", H: "~@2 g3 ~@4 f3 ~@2 a#3 ~@2 g3 c4 ~",
I: "[~@2 g3 ~@5 d3 ~ a#3 ~@3 d4@4 ~@4 d4@3 ~ a#3 ~@5, ~@9 f3@2 ~ f3@3 ~@5 g3@4 ~ f3@2 ~@5, ~@13 a#3@2 ~@17]/2",
J: "~@13 d4@3", K: "~ c4 ~@14, g3 ~@7", L: "~@3 e5 ~@12",
})).s("gm_shamisen").gain(0.11).pan(0.7)
// chords · epiano1 · "E.PIANO 1"
const epiano1 = note(`<
~@12 A@2 B@3 C ~@8 D E F G H@2 ~@4 I@2 J@2 K L@2 M@4 N@2 O@2 ~@10 P Q@2 R S T U V ~@2 W@4 X Y Z@2 ~@11
>`.pickRestart({
A: "[~@4 a4!4 e4@2 d4 e4@2 d4@2 f#4@2 a3@2 ~ a4!4 e4 d4@2 e4@2 d4 f#4@2]/2",
B: "[~@4 a4!4 e4 d4@2 e4@2 d4@2 f#4@2 a3 ~@2 a4!4 e4 d4@2 e4@2 d4@2 [a#3,d4,f4]@9 [g3,c4,e4]@8]/3", // A# C
C: "[g3,a#3,d4]@7 ~@9", D: "~@12 a4!4", E: "e4@2 d4 e4@2 d4@2 f#4@2 a3 ~@2 [d4,f#4,a4]!4",
F: "e4 d4@2 e4@2 d4 f#4@2 ~@4 [d4,f#4,a4]!4", G: "e4 d4@2 e4@2 d4@2 f#4@2 a3@2 ~ [d4,f#4,a4]!4",
H: "[e4 d4@2 e4@2 d4@2 f4@9 ~@8 c4@6 ~@2, ~@7 [a#3,d4]@17 ~@8, ~@8 e4@7 ~]/2", // A#
I: "[~@8 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4] [a#3,f4]@2 [a#3,f4]@3 ~ [a#3,f4]!2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4] [a#3,f4]@2]/2", // A#5
J: "[~@5 [a#3,f4]!2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 [a#3,f4]@2 ~@2 [a#3,f4] ~ [a#3,f4] [a#3,f4]@4 [a#3,f4]@4]/2", // A#5
K: "[c4,f4]!2 [d4,f#4]@2", L: "[~@4 a4!4 e4@2 d4 e4@2 d4@2 f#4@2 a3 ~@2 [d4,f#4,a4]!4 e4 d4@2 e4@2 d4 f#4@2]/2",
M: "[~@4 [d4,f#4,a4]!4 e4 d4@2 e4@2 d4@2 f#4@2 a3@2 ~ [d4,f#4,a4]!4 e4 d4@2 e4@2 d4@2 d4@2 ~@3 [d4,f#4,a4]!4 e4@2 d4 e4@2 d4@2 f#4@2 a3@2 ~ [d4,f#4,a4]!4 e4 d4@2 e4@2 d4 f#4@2]/4", // D
N: "[~@4 [d4,f#4,a4]!4 e4 d4@2 e4@2 d4@2 f#4@2 a3@2 ~ [d4,f#4,a4]!4 e4 d4@2 e4@2 d4@3]/2", // D
O: "[[d4,f4]@7 [c4,e4]@8 [a#3,d4]@8 [c4,d4]@5 ~@4]/2", P: "~@3 a4 g4@2 f4@2 ~@3 a4 g4@2 f4@2",
Q: "~@3 a4 g4@2 e4 ~@4 a4 g4@2 e4 ~", R: "~@3 a4 g4@2 f#4@2 ~@3 a4 g4@2 f#4@2",
S: "~@3 a4 g4@2 e4@2 ~@3 a4 g4@2 e4 ~", T: "~@3 a4 g4@2 e4@2 ~@3 a4 g4@2 e4@2", U: "~@3 a4 g4@2 e4 ~@4 a4 g4@2 e4@2",
V: "~@3 a4 g4@2 f#4 ~@4 a4 g4@2 f#4 ~",
W: "[~@15 f#4@3 a3@2 f#4@2 a3@2 f#4@3 a3@2 ~@2 f#4@3 a3@2 f#4@2 a3@2 f#4@3 a3@2 ~@2 f4@8 d4@5 ~@4]/4",
X: "f4@7 d4@4 ~@4 a4", Y: "g4 e4 c4 e4", Z: "[f#4@5 ~@3]/2",
})).s("gm_epiano1").gain(0.3)
// chords · lead 3 calliope · "CALLIOPE"
const lead_3_calliope = note("<~@12 A@4 ~@11 B C D E ~@10 F@8 ~@41>".pickRestart({
A: "[~@8 [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 ~@2 c#6@2 d6@2 f#5 ~ d6@2 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 [a5,d6]@2 [f#5,d6]@2 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 ~, ~@15 a5@6 ~@6 a5@9 ~@11 a5 ~@3 a5 ~@12, ~@19 f#5@2 ~@6 f#5@4 f#5 ~@3 f#5 ~@28]/4", // C#m D Em F#m Em D C#m F#m …
B: "[c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5], ~@7 a5@6 ~@3, ~@11 f#5@2 ~@3", // C#m D Em F#m Em D
C: "[c#5,e5]@3 ~@2 c#6@2 d6@2 f#5 ~ d6@2 [f#5,a5] [e5,g5] [d5,f#5], ~@3 a5@9 ~@4, ~@3 f#5@4 f#5 ~@3 f#5 ~@4", // C#m F#m Em D
D: "[c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 [a5,d6]@2 [f#5,d6]@2 [f#5,a5] [e5,g5] [d5,f#5], ~@7 a5 ~@3 a5 ~@4", // C#m D Em D5 D F#m Em D
E: "[c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 ~@9", // C#m D Em
F: "[~@8 [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 ~@2 c#6@2 d6@2 f#5 ~ d6@2 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 ~@2 c#6@2 d6@2 f#5 ~ d6@2 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 ~@2 c#6@2 d6@2 f#5 ~ d6@2 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 f#5@2 d6@2 ~ d6 [f#5,a5] [e5,g5] [d5,f#5] [c#5,e5]@3 [d5,f#5]@2 [e5,g5]@2 ~, ~@15 a5@6 ~@6 a5@9 ~@11 a5@6 ~@6 a5@9 ~@11 a5@6 ~@6 a5@9 ~@11 a5@6 ~@11, ~@19 f#5@2 ~@6 f#5@4 f#5 ~@3 f#5 ~@15 f#5@2 ~@6 f#5@4 f#5 ~@3 f#5 ~@15 f#5@2 ~@6 f#5@4 f#5 ~@3 f#5 ~@15 f#5@2 ~@11]/8", // C#m D Em F#m Em D C#m F#m …
})).s("gm_lead_3_calliope").gain(0.22).pan(0.6)
// other · synth strings 2 · "SYN STR 2"
const synth_strings_2 = note(`<
A B C D E B C D E B F@2 ~@4 G H I H I J K H I L@2 ~@3 M N O ~@44 P Q R S R S T U V W X Y Z
>`.pickRestart({
A: "~ g2", B: "a2 b2", C: "c#3 d3", D: "e3 f#3", E: "g3 g2", F: "[c#3@8 d3@23 ~]/2", G: "a#2 f2", H: "g2 a2",
I: "b2 c#3", J: "d3 e3", K: "f#3 g3", L: "[d3@23 ~@9]/2", M: "~ [a#3,d4]", N: "[c4,e4] [a#3,d4]", O: "[c4,e4] ~",
P: "[g2,g3]@5 ~@3 [a2,a3]@5 ~@3", Q: "[b2,b3]@5 ~@3 [c#3,c#4]@5 ~@3", R: "[g2,g3]@4 ~@4 [a2,a3]@5 ~@3",
S: "[b2,b3]@5 ~@3 [c#3,c#4]@4 ~@4", T: "[g2,g3]@5 ~@3 [a2,a3]@4 ~@4", U: "[b2,b3]@4 ~@4 [c#3,c#4]@5 ~@3",
V: "[g2,g3] [a2,a3]", W: "[b2,b3] [c#3,c#4]", X: "[d3,d4] [e3,e4]", Y: "[f#3,f#4]", Z: "[g3,g4]",
})).s("gm_synth_strings_2").gain(0.22).pan(0.2)
// other · whistle
const whistle = note("<~@30 A@2 B@8 ~@50>".pickRestart({
A: "[~ d6@3]/2", B: "[~@8 d6@119 ~]/8",
})).s("gm_whistle").gain(0.24).pan(0.1)
// chords · drawbar organ · "ORGAN 1" · Em Am Dm G C G7 Dm7 G …
const drawbar_organ = note(`<
~@40
[[e1,f1,g1] [a1,b1,c2] [d2,e2,f2] [g2,a2,b2] [c3,d3,e3] [f3,g3,a3,b3] [c4,d4,e4,f4] [g4,a4,b4,c5,d5] [a5,d6,f#6]@8, ~@8 [e5,f5] ~@7]
~@49
>`).s("gm_drawbar_organ").gain(0.44).pan(0.2)
// other · pad poly · "POLYSYNTH"
const pad_poly = note(`<
~@49 A B C D A B C D A B C D A B C D A B C D A B C D@2 A B C E F G H I H I H I H I J K
>`.pickRestart({
A: "~ f3 a#3 d4 a#3 d3 f3 a#3 ~ a#2 c3 g3 c4 g3 d3 g3", B: "~ a#2 d3 f3 g3 d3 g2 d3 ~ g2 a2 e3 a3 e3 a2 f3",
C: "a#1 a#2 d3 f3 a#3 d4 a#3 f3 c3 e3 g3 c4 a3 g3 e3 c3", D: "d3!3 a2 d3!2 a2 d3!2 a2 d3!2 a2 d3!2 a2",
E: "~ a3 d4 a3 d3 a3 d4 a3 d3 a3 d4 a3 d3 a3 d4 a3", F: "d3 a3 d4 a3 d3 a3 d4 a3 d3 a3 d4 a3 d3 a3 d4 a3",
G: "d3 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2", H: "d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2",
I: "~ a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2", J: "d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d3 a2 d2 a2 d2 a1",
K: "g1@15 ~",
})).s("gm_pad_poly").gain(0.44).pan(0.7)
// chords · guitar harmonics · "GTHARMONIC"
const guitar_harmonics = note(`<
~ A B C D ~ E F ~ G H I J K@3 L M N ~ O P Q ~ R S T U@3 V ~@10 W X@6 Y ~@41
>`.pickRestart({
A: "~ a4!7 ~@8", B: "~@2 a4!7 ~@7", C: "~@3 a4!4 ~ a4!2 ~@6", D: "~@3 a4!5 ~@8", E: "~@6 a4!6 ~@4", F: "~@7 a4!9",
G: "~@13 a4 ~ a4", H: "a4!5 ~@5 d4!2 ~ e4 ~ d4", I: "~ d4 ~ d4 ~ d4 e4 ~ d4!4 ~ e4 ~ d4",
J: "~@10 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~", K: "~@2 [d4,f#4,a4] ~@3 [d4,f#4,a4] ~@3 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~",
L: "~@2 [d4,f4,a#4] ~@3 [d4,f4,a#4] ~@3 [e4,g4,c5] ~@3 [e4,g4,c5] ~", M: "~@2 [b3,d4,g4] ~@3 [b3,d4,g4] ~@5 a4!4",
N: "a4!7 ~@9", O: "~@14 a4!2", P: "a4!4 ~@11 a4", Q: "a4!8 ~@8", R: "~@5 a4 ~ a4!6 ~@3",
S: "~@2 d4!2 ~ e4 ~ d4 ~ d4 ~ d4 ~ d4!2 ~", T: "d4!4 ~ d4 ~ d4 ~@8",
U: "~@2 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~@3 [d4,f#4,a4] ~@3 [d4,f#4,a4] ~", V: "~@2 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~@9",
W: "~@10 [c#4,e4,a4]!2 ~@2 [c#4,e4,a4]!2", // A
X: "~@2 [d4,f#4,a4]!2 ~@2 [d4,f#4,a4]!2 ~@2 [c#4,e4,a4]!2 ~@2 [c#4,e4,a4]!2", // D A
Y: "~@2 [d4,f#4,a4]!2 ~@2 [d4,f#4,a4]!2 ~@2 [c#4,e4,a4]!2 ~@4", // D A
})).s("gm_guitar_harmonics").gain(0.22).pan(0.8)
// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
~@37
[~ c5 a#4@2, ~@3 g4@5 ~@8]
[~@4 c5@4 a#4@7 ~, ~@3 g4@5 ~@8]
[~ c5 a#4@2, ~@3 g4@5 ~@8]
~@50
>`).s("gm_electric_guitar_clean").gain(0.27).pan(0.7)
// drums · kick
const kick = s("bd").struct(`<
A B C@2 D B@6 E F G@2 H I@2 J@2 K J L J M N O P@2 Q R I S C@3 T U@3 V F W X H Y Z AA AB I@3 AC U@3 AD AE Q AF AG Q AH
AI@2 Q AH AJ Q AH@2 AK AL AM AN Q AO U@12 AP
>`.pickRestart({
// … 116 more lines
More by The Police
Every Breath You TakeA major · 115 bpmSpirits In The Material World1982 · A minor · 140 bpmRoxanneG minor · 133 bpmWrapped Around Your FingerA minor · 125 bpmDon't Stand So CloseD major · 139 bpmMessage in a BottleC♯ minor · 150 bpmCan't Stand Losing YouF major · 140 bpmWalking on The MoonD minor · 144 bpm
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.