0:00/0:00
// Everybody Loves a Clown — Lewis
// 136 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 82 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(136/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 1"
const piano = note(`<
A B C B D E F G H B I J K L M N O P Q R S T U V W B C B I X Y Z AA AB AC P AD AE AF V AG AH AI AJ AK AL AM AN AO AP AQ
AR AS AR AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BO BP BS
>`.pickRestart({
A: "~@10 [a2,a3] ~ [b2,b3] ~ [c#3,c#4] ~", // A B C#
B: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~, d3@2 ~ d3 ~@4", // D F#m
C: "~@2 [b3,f#4,a4]@3 ~ [b3,f#4,a4] ~ a2@2 [a3,f#4,a4] ~ a2@2 [a3,f#4,a4] ~, d3@5 ~ d3@2 ~@8", // B7 D
D: "~@2 [b3,f#4,a4]@3 ~ [b3,f#4,a4] ~ a2@2 [d4,f#4,a4] ~ a2@2 [d4,f#4,a4] ~, d3@5 ~ d3@2 ~@8", // B7 D
E: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4] ~ a2@2 [d4,f#4,a4] ~ a2@2 [d4,f#4,a4] ~, d3@5 ~ d3@2 ~@8", // D
F: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4] ~ a2@2 [d4,f#4] ~ a2@2 [d4,f#4] ~, d3@2 ~ d3 ~@4", // D
G: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4] ~ a2@2 [d4,f#4,a4] ~ a2@2 [d4,f#4] ~, d3@2 ~ d3 ~@4", // D
H: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4] ~ a2@2 [d4,f#4,a4] ~ a2@2 [d4,f#4,a4] ~, d3@2 ~ d3 ~@4", // D
I: "~@2 [b3,f#4,a4]@3 ~ [b3,f#4,a4] ~@3 [a3,f#4,a4] ~ d3@2 [a3,f#4,a4] ~, d3@5 ~ d3@2 a2@4 ~@4", // B7 D
J: "~@2 [e4,g4,b4]@3 ~ [e4,g4,b4] ~ b2@2 [d#4,g4,b4] ~ e3@2 [d#4,g4,b4] ~, e3@2 ~ e3 ~@4", // Em D#aug
K: "~@2 [d4,g4,b4]@3 ~ [d4,g4,b4] ~@3 [c#4,g4] ~ a2@2 [c#4,g4,b4] ~, a2@2 ~ a2 e3@2 ~@2, ~@5 b4 ~@2", // G C#dim C#m7b5
L: "~@6 g2@2 d3@4 [b3,d4,g4] ~@3, g2@5 ~@7 g2@3 ~, ~@2 [b3,d4,g4]@9 ~@5", // G
M: "f#2@4 ~@2 f#2@2 c#3@4 [a3,c#4,f#4] ~@3, [a3,c#4,f#4]@11 ~ f#2@3 ~", // F#m
N: "g2@4 ~@2 g2@2 d3@4 [b3,d4,g4] ~@3, [b3,d4,g4]@5 ~ g2 ~", O: "[a2,a3,c#4,e4,a4]@7 ~ [a2,a3,c#4,e4,a4]@7 ~",
P: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~, d3@5 ~ d3@2 ~@8", // D F#m
Q: "~@2 [b3,f#4,a4]@3 ~ [b3,f#4,a4] ~ a2@2 [a3,a4]@2 a2@2 [a3,f#4,a4] ~, d3@5 ~ d3@2 ~@2 f#4 ~@5", // B7 A D
R: "~@2 [d4,f#4,a4]@3 ~ [d4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~@3 [c#4,f#4,a4] ~, d3@5 ~ d3@2 ~@4 d3@4", // D F#m
S: "[g2,b3,d4,g4]@5 ~ [b3,d4,g4] ~ a2@3 ~ a2@3 ~, ~@3 g2 [c#4,e4,a4]@3 ~", // G A
T: "[d3,d4,f#4,a4]@5 ~ [d4,f#4,a4] ~@3 [c#4,f#4,a4] ~@3 [c#4,f#4,a4] ~, ~@3 d3 a2@2 d3@2", // D F#m
U: "[g2,b3,d4,g4]@5 ~ [d4,g4] ~ [a2,c#4,e4,a4]@3 ~ [a2,c#4,e4,a4]@3 ~, ~@3 g2 ~@4", // G G5 A
V: "[d3,d4,f#4,a4]@5 ~ [d4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~, ~@3 d3 ~@4", // D F#m
W: "~@2 [b3,f#4,a4]@4 [b3,f#4,a4] ~ a2@2 [a3,f#4,a4] ~ a2@2 [a3,f#4,a4] ~, d3@5 ~ d3@2 ~@8", // B7 D
X: "~@2 [e4,g4,b4]@3 ~ [e4,g4,b4] ~@3 [d#4,g4,b4] ~@3 [d#4,g4,b4] ~, e3@5 ~ e3@2 b2@4 e3@4", // Em D#aug
Y: "~@2 [d4,g4,b4]@3 ~ [d4,g4,b4] ~@3 [c#4,g4,b4] ~ a2@2 [c#4,g4,b4] ~, a2@5 ~ a2@2 e3@4 ~@4", // G C#m7b5
Z: "g2@5 ~ g2@2 d3@4 [g2,b3,d4,g4]@3 ~, [b3,d4,g4]@11 ~@5", // G
AA: "f#2@5 ~ f#2@2 c#3@4 [f#2,f#4]@3 ~, [a3,c#4,f#4]@11 ~ [a3,c#4] ~@3", // F# F#m A
AB: "g2@5 ~ g2 ~ g2@3 ~ [b3,d4,g4] ~@3, [b3,d4,g4]@11 ~ g2@3 ~", AC: "[a2,a3,c#4,e4,a4]@7 ~ [a2,a3,c#4,e4,a4]@6 ~@2",
AD: "~@2 [b3,f#4,a4]@4 [b3,f#4,a4] ~ a2@2 [a3,f#4] ~ a2@2 [a3,f#4,a4] ~, d3@2 ~ d3 ~ a4 ~@2", // B7 D
AE: "~@2 [d4,f#4,a4]@4 [d4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~ a2@2 [c#4,f#4,a4] ~, d3@2 ~ d3 ~@4", // D F#m
AF: "[b3,d4,g4]@5 ~ [b3,d4,g4] ~ [c#4,e4,a4]@5 ~ [c#4,e4] ~, g2@3 ~ a2@3 ~", // G A C#m
AG: "[d3,a3,c4,e4,g4]@7 ~ [d3,a3,c4,d4,f#4]@6 ~@2", // Am7 D7
AH: "[g3,g4,b4]@3 [d3,g4,b4,d5,e5]@3 [g3,d5]@2, [d5,f#5]@2 ~@4 [g4,b4] ~", // G Em7 G5 D G
AI: "[c3,g4,a#4,d5,f#5]@3 [g3,g4,a#4,d5,e5]@3 [g4,a#4,d5] ~, ~@3 c3", // Gm Em7b5 Gm
AJ: "[d3,d4,f#4,a4]@6 [a3,d4,f#4,a4,b4]@5 ~ [a3,d4,a4]@3 ~, c#5@4 ~@8 f#4 ~@3", // D Bm7 D5
AK: "[a2,e4,g4]@3 [d3,d4,f#4]@3 d3 ~, [a4,c5]@13 ~@3", // A7 D Am
AL: "[g3,g4,b4,d5]@3 [d3,g4,b4,e5]@3 [g3,g4,d5]@2, f#5@2 ~ d5@2 ~ b4 ~", // G Em7 G5
AM: "[c3,g4,d5,f#5]@3 [g3,g4,d5,e5]@3 [c3,g4,a#4,d5] ~, a#4@11 ~@5", // Csus2 Em7 Gm
AN: "[a2,e4,g4,a4,d5]@6 a2@5 ~ a2@3 ~, ~@3 [e4,g4,a4,c#5]@4 ~", // Asus4 A7
AO: "[a#2,f4,g#4,a#4,d#5]@5 ~ a#2@5 ~ a#2@2 ~@2, ~@3 [f4,g#4,a#4,d5]@4 ~", // A#sus4 A#7
AP: "~@2 [g4,a#4]@3 ~ [g4,a#4] ~ a#2@2 [d4,g4,a#4] ~ a#2@2 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 ~@8, ~ d#4@2 ~@5", // Gm
AQ: "~@2 [c4,g4,a#4]@3 ~ [c4,g4,a#4] ~ a#2@2 [a#3,g4,a#4]@2 a#2@3 ~, d#3@5 ~ d#3@2 ~@8", // C7 D#
AR: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~ a#2@2 [d4,g4,a#4] ~ a#2@2 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 ~@8", // D# Gm
AS: "~@2 [c4,g4,a#4]@3 ~ [c4,g4,a#4] ~ a#2@2 [a#3,g4] ~ a#2@2 [a#3,g4,a#4] ~, d#3@5 ~ d#3@2 ~@2 a#4@2 ~@4", // C7 D#
AT: "~@2 [c4,g4,a#4]@3 ~ [c4,g4,a#4] ~@3 [a#3,g4,a#4] ~@3 [a#3,a#4] ~, d#3@5 ~ d#3@2 a#2@4 d#3@4", // C7 D# A#
AU: "~@2 [f4,g#4,c5]@3 ~ [f4,g#4,c5] ~@3 [e4,g#4,c5] ~@3 [e4,g#4,c5] ~, f3@5 ~ f3@2 c3@4 f3@4", // Fm Eaug
AV: "~@2 [f4,g#4,a#4]@3 ~ [f4,g#4,a#4] ~@3 [f4,g#4,a#4] ~ a#2@2 [f4,g#4,a#4] ~, a#2@5 ~ a#2@2 f3@4 ~@4", // A#7
AW: "g#2@5 ~ g#2@2 d#3@4 [g#2,d#4,g#4,c5]@3 ~, [d#4,g#4,c5]@11 ~@5", // G#
AX: "g2@5 ~ g2@2 d3@4 [d4,g4,a#4]@2 ~@2, [d4,g4,a#4]@11 ~ g2@4", // Gm
AY: "g#2@4 ~@2 g#2@2 d#3@4 [g#2,d#4,g#4,c5]@3 ~, [d#4,g#4,c5]@11 ~@5", // G#
AZ: "[a#2,f4,g#4,c5]@7 ~ [a#2,f4]@7 ~, ~@8 [g#4,a#4]@5 ~@3", // Fm A#5 G#sus2
BA: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~ a#2@2 [d4,g4,a#4] ~@3 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 ~@4 a#2@4", // D# Gm
BB: "~@2 [c4,g4,a#4]@3 ~ [c4,g4,a#4] ~ a#2@2 [a#3,g4,a#4] ~ a#2@2 [a#3,a#4] ~, d#3@5 ~ d#3@2 ~@8", // C7 D# A#
BC: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~@3 [d4,g4,a#4] ~@3 [d4,g4,a#4] ~, d#3@2 ~ d#3 a#2@2 d#3@2", // D# Gm
BD: "[g#2,c5]@7 ~ [a#2,d5]@6 ~@2, [d#4,g#4]@5 ~@3 [f4,a#4]@4 ~@4", BE: "[c3,e4,g4,c5]@13 ~@3",
BF: "[c3,c4] ~ [b2,b3] ~ a#2 ~ [a2,a3] ~, ~@8 a#3 ~@7", // C B A
BG: "g#2@5 ~ g#2@2 d#3@4 [d#4,g#4,c5] ~@3, [d#4,g#4,c5]@11 ~ g#2@4", BH: "a#2@2 ~ a#2 f3@2 a#2@2, [f4,a#4,d5]@3 ~",
BI: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~@3 [d4,g4,a#4] ~@3 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 a#2@4 d#3@4", // D# Gm
BJ: "~@2 [c4,g4,a#4]@4 [c4,g4,a#4] ~@3 [a#3,g4,a#4] ~@3 [a#3,g4,a#4] ~, g2@2 ~ g2 d3@2 g2@2", // C7 D#
BK: "g#2@4 ~@2 g#2@2 d#3@4 [d#4,g#4,c5] ~@3, [d#4,g#4,c5]@11 ~ g#2@4", // G#
BL: "a#2@4 ~@2 a#2@2 f3@4 a#2@3 ~, [f4,a#4,d5]@3 ~", // A#
BM: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~ a#2@2 [d4,g4,a#4] ~@3 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 ~@4 d#3@4", // D# Gm
BN: "~@2 [d4,g4,a#4]@3 ~ [d4,g4,a#4] ~@3 [a#3,g4,a#4] ~ g2@2 [a#3,g4,a#4] ~, g2@4 ~@2 g2@2 d3@5 ~@3", // Gm D#
BO: "g#2@4 ~@2 g#2@2 d#3@4 [d#4,g#4] ~@3, [d#4,g#4,c5]@11 ~ g#2@4, ~@6 c5 ~", // G#5 G#
BP: "a#2@4 ~@2 a#2@2 f3@4 [f4,a#4,d5] ~@3, [f4,a#4,d5]@11 ~ a#2@4", // A#
BQ: "~@2 [d#4,g4,a#4]@3 ~ [d#4,g4,a#4] ~@3 [g4,a#4] ~@3 [d4,g4,a#4] ~, d#3@5 ~ d#3@2 a#2@4 d#3@4, ~@5 d4 ~@2", // D# Gm
BR: "~@2 [d4,g4,a#4]@3 ~ [d4,g4,a#4] ~@3 [d4,g4,a#4] ~@3 [d4,g4,a#4] ~, g2@2 ~ g2 d3@2 g2@2", // Gm
BS: "[d#3,g3,a#3,d#4]@3 ~@13", // D#
})).s("gm_piano").gain(0.38).pan(0.3)
// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
~ A B C A@2 D@2 C D E F G H I J K B A L M L N B@4 D L F O J I H K B A L N D P Q R S T Q R U V W@5 X Y Z AA H AB AC W
AD AE AF AG AH AI Z AE J AB AJ AK AL AB AM AK AL AB AM AN
>`.pickRestart({
A: "d2@5 ~ d2@2 a1@3 ~ a1@3 ~", B: "d2@5 ~ d2@2 a1@3 ~ a1@4", C: "d2@4 ~@2 d2@2 a1@3 ~ a1@4",
D: "d2@4 ~@2 d2@2 a1@3 ~ a1@3 ~", E: "d2@4 ~@2 d2@2 a1@4 d2@3 ~", F: "e2@5 ~ e2@2 b1@4 e2@4",
G: "a1@2 ~ a1 e2@2 a1@2", H: "g1@5 ~ g1@2 d2@4 g1@4", I: "f#1@2 ~ f#1 c#2@2 f#1@2", J: "g1@2 ~ g1 d2@2 g1@2",
K: "a1@7 ~ a1@7 ~", L: "d2@5 ~ d2@2 a1@4 d2@4", M: "g1@4 ~@2 g1@2 a1@3 ~ a1@4", N: "g1@4 ~@2 g1@2 a1@3 ~ a1@3 ~",
O: "a1@5 ~ a1@2 e2@4 a1@4", P: "d2@7 ~ d2@7 ~", Q: "g2@3 d2@3 g2@2", R: "c2@3 g2@3 c2@2", S: "d2@3 a2@3 a2@2",
T: "a1@6 d2@5 ~ d2@4", U: "a1@3 e2@3 a1@2", V: "a#1@3 ~ a#1@4 f2@4 a#1@4", W: "d#2@5 ~ d#2@2 a#1@3 ~ a#1@4",
X: "d#2@5 ~ d#2@2 a#1@4 d#2@4", Y: "f2@5 ~ f2@2 c2@4 f2@4", Z: "a#1@2 ~ a#1 f2@2 a#1@2",
AA: "g#1@4 ~@2 g#1@2 d#2@4 g#1@3 ~", AB: "g#1@2 ~ g#1 d#2@2 g#1@2", AC: "a#1@3 ~ a#1@3 ~",
AD: "d#2@4 ~@2 d#2@2 a#1@3 ~ a#1@4", AE: "d#2@2 ~ d#2 a#1@2 d#2@2", AF: "g#1@4 ~@2 g#1@2 a#1@3 ~ a#1@4",
AG: "c2@15 ~", AH: "c2 b1 a#1 a1", AI: "g#1@5 ~ g#1@2 d#2@4 g#1@4", AJ: "a#1@2 ~ a#1 f2@2 a#1 d2",
AK: "d#2@4 ~@2 d#2@2 a#1@4 g#1@3 ~", AL: "g1@5 ~ g1@2 d2@4 g2@4", AM: "a#1@4 ~@2 a#1@2 f2@4 a#1@3 ~",
AN: "d#2@2 a#1@2 ~@2 a#1@2 d#2 ~@7",
})).s("gm_acoustic_bass").gain(0.33)
// chords · harpsichord · "HARPSICHRD"
const harpsichord = note(`<
~ A@2 B@3 C D@3 E F@5 G H@2 I@2 J K@2 C D@3 E F@5 G H@2 I@2 L@2 M N O P M Q@4 R S@3 T U@5 V W@2 X@6 Y@4 Z@8 ~
>`.pickRestart({
A: "[d4 [f#4,a4] d4 c#4@2 [f#4,a4] c#4 b3@2 [f#4,a4] b3 a3@2 [f#4,a4] a3@2]/2", // F#m
B: "[d4 [f#4,a4] d4 c#4@2 [f#4,a4] c#4 b3@2 [f#4,a4] b3 a3@2 b3 a3 ~ f#4@4 c#4@4, ~@15 f#3@5 ~@4, ~@31 d4@9 ~@8]/3", // F#m
C: "~@4 a3@3 ~, b3@11 ~@5",
D: "[d4 [f#4,a4] d4 c#4@2 [f#4,a4] c#4 b3@2 [f#4,a4] b3 a3@2 [f#4,a4] a3 ~ f#4@4 c#4@4, ~@15 f#3@5 ~@4, ~@31 d4@7 ~@10]/3", // F#m
E: "b3@8 a3@5 ~@3",
F: "[e4@2 [g4,b4]@2 e4@2 d#4@4 [g4,b4]@2 d#4@2 d4@4 [g4,b4]@2 d4@2 c#4@4 [g4,a4]@2 c#4@3 ~ g4@13 ~@3 f#4@12 ~@4 g4@12 ~@4, ~@31 [b3,d4]@14 ~@2 [a3,c#4]@14 ~@2 [b3,d4]@14 ~@3]/5", // G Gsus2 Bm A Bm
G: "[c#4,e4,a4]@6 ~@2 [c#4,e4,a4]@7 ~", H: "[[a3,d4]@4 c#4@4 b3@4 a3@3 ~, f#4@3 ~]/2",
I: "[d4@2 [f#4,a4]@2 d4@2 c#4@4 [f#4,a4]@2 c#4@3 ~ g4@6 ~@2 [c#4,e4,a4]@7 ~, ~@15 [b3,d4]@7 ~@10]/2", // F#m A Bm
J: "d4@2 [f#4,a4]@2 d4@2 c#4@4 [f#4,a4]@2 c#4@3 ~", // F#m
K: "[[g5,b5] d6 [g5,b5] d6 [a5,c#6]@2 [g5,b5] ~ f#4@4 c#4@4, ~@7 f#3@5 ~@4, ~@15 [a3,d4]@10 ~@7]/2", // G A G D5
L: "[d4@2 [f#4,a4]@2 d4@2 c#4@4 [f#4,a4]@2 c#4@3 ~ e4@6 ~@2 [d4,f#4]@6 ~@2, ~@15 [a3,c4]@7 ~ a3@6 ~@3]/2", // F#m D Am
M: "f#4@3 e4@3 d4@2", N: "f#4@6 e4@6 d4@3 e4", O: "c#4@3 b3@3 a3@2", P: "c4@13 ~@3",
Q: "[f#4@6 e4@6 d4@2 ~@2 d4@6 c#4@7 ~@3 d#4@6 d4@7 ~@3 g4@8 d4@8, ~@14 e3@14 ~@3 [f3,a#3]@14 ~ g3@10 ~@8, ~@15 a3@13 ~@19 [a#3,d#4]@10 ~@7]/4", // A#5 D#5
R: "~@4 a#3@3 ~, c4@11 ~@5",
S: "[d#4 [g4,a#4] d#4 d4@2 [g4,a#4] d4 c4@2 [g4,a#4] c4 a#3@2 [g4,a#4] a#3 ~ g4@4 d4@4, ~@15 [g3,a#3]@5 ~@4, ~@31 d#4@7 ~@10]/3", // Gm
T: "c4@8 a#3@5 ~@3",
U: "[f4@2 [g#4,c5]@2 f4@2 e4@4 [g#4,c5]@2 e4@2 d#4@4 [g#4,c5]@2 d#4@2 d4@4 [g#4,a#4]@2 d4@3 ~ g#4@13 ~@3 g4@12 ~@4 g#4@12 ~@4, ~@31 [c4,d#4]@14 ~@2 [a#3,d4]@14 ~@2 [c4,d#4]@14 ~@3]/5", // G# G#sus2 Cm A# Cm
V: "[d4,f4,a#4]@6 ~@2 [d4,f4,a#4]@7 ~", W: "[[a#3,d#4]@4 d4@4 c4@4 a#3@3 ~, g4@3 ~]/2",
X: "[d#4@2 [g4,a#4]@2 d#4@2 d4@4 [g4,a#4]@2 d4@3 ~ g#4@6 ~@2 [d4,f4,a#4]@7 ~ g4@16 c4@4 b3@4 a#3@4 a3 ~@4 g#4@11 ~@4 a#4@12 ~@4, ~@15 [c4,d#4]@7 ~@9 [g3,c4,e4]@18 ~@14 c4@13 ~@3 [a#3,d4,f4]@14 ~@3, ~@32 g#3@7 ~@9, ~@16 d#4@3 ~@5]/6", // Gm A# Cm C A#
Y: "[d#4@2 [g4,a#4]@2 d#4@2 d4@4 [g4,a#4]@2 d4@2 c4@4 [g4,a#4]@2 c4@2 a#3@4 [g4,a#4]@2 a#3@3 ~ [d#4,g#4]@12 ~@4 g4@7 ~ [a#3,f4]@6 ~@2, ~@31 [g#3,c4]@13 ~@3 d4@15 ~@2, ~@47 a#3@8 ~@9]/4", // Gm G#5 A#5 G#
Z: "[d#4@2 [g4,a#4]@2 d#4@2 d4@4 [g4,a#4]@2 d4@2 c4@4 [g4,a#4]@2 c4@2 a#3@4 [g4,a#4]@2 a#3@2 ~ [d#4,g#4]@13 ~@4 g4@7 ~ [a#3,f4]@7 ~, ~@30 [g#3,c4]@14 ~@3 d4@16 ~, ~@47 a#3@8 ~@9]/4", // Gm G#5 A#5 G#
})).s("gm_harpsichord").gain(0.38).pan(0.4)
// chords · celesta
const celesta = note("<~@41 A@2 B C A D E F ~@22 G H I ~ J K L ~ M N O>".pickRestart({
A: "f#6@3 e6@3 d6@2", B: "c#6@3 b5@3 a5@2", C: "c6@3 ~", D: "f#6@3 e6@3 d6 ~", E: "d6@3 c#6@4 ~", F: "d#6@6 d6@9 ~",
G: "~@4 c6@4 d#6@4 [c6,g#6]@3 ~", H: "[d#6,c7]@4 [d6,a#6]@3 ~ [a#5,g6]@4 [g#5,f6]@4", I: "[g5,d#6]@7 ~@9",
J: "~ c6 d#6 [c6,g#6]", K: "[d#6,c7] [d6,a#6] [a#5,g6] [g#5,f6]", L: "[g5,d#6] ~", M: "~@2 c6@2 d#6@2 [c6,g#6] ~",
N: "[d#6,c7]@4 [d6,a#6]@4 [a#5,g6]@4 [g#5,f6]@3 ~", O: "[g5,d#6]@3 ~@5",
})).s("gm_celesta").gain(0.33).pan(0.6)
// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
~ A B C A D E F G H@2 I J K L M N E O P Q R S T U T V G W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AJ AK AN AO AP
AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BO BP BQ BR
>`.pickRestart({
A: "~@2 [d4,f#4]!2 [d4,f#4]@2 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~ a3@2 ~@5", // D
B: "~@2 [d4,f#4]!2 [d4,f#4]@2 [d4,f#4] ~@3 [d4,f#4] ~@3 [a3,d4,f#4] ~, ~ a3@2 ~@5", // D
C: "~@2 [a3,d4,f#4] [d4,f#4] [a3,d4,f#4]@2 [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
D: "~@2 [a3,d4,f#4] [d4,f#4]!2 ~ [d4,f#4] ~@3 [d4,f#4] ~@3 [a3,d4,f#4] ~", // D
E: "~@2 [a3,d4,f#4] [d4,f#4] d4 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
F: "~@3 [d4,f#4]!2 ~ [d4,f#4] ~@3 [a3,d4] ~@3 [a3,d4,f#4] ~, ~ [f#3,a3,d4,f#4] ~@6", // D D5 D
G: "~@3 [d4,f#4]!2 ~ [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~ [a3,d4,f#4] ~@6", // D
H: "~@2 [a3,d4,f#4]!3 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
I: "~@3 [e4,g4] b3 ~ [e4,g4] ~@3 [b3,e4,g4] ~@3 [b3,e4,g4] ~, ~ [g3,b3,e4,g4] ~@6", // Em
J: "~@3 [e4,a4] ~@2 [e4,a4] ~@3 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~, ~ [d4,e4,a4] ~@6", // A5 A Dsus2
K: "~@3 g4 [b3,d4,g4] ~ [d4,g4] ~@3 [b3,d4,g4] ~@3 [b3,d4,g4] ~, ~ [b3,d4,g4] ~@6", // G G5 G
L: "~@3 [c#4,f#4]!2 ~ [c#4,f#4] ~@3 [a3,c#4,f#4] ~@3 [a3,c#4,f#4] ~, ~ [f#3,a3,c#4,f#4] ~@6", // F#5 F#m
M: "~@2 [d4,g4]!2 d4 ~ [b3,d4,g4] ~@3 [b3,d4,g4] ~@3 [b3,d4,g4] ~, ~@2 b3@3 ~@11", // G5 G
N: "[a3,c#4,e4,a4]@8 [a3,c#4,e4,a4]@7 ~", // A
O: "~@2 [a3,f#4] f#4 [d4,f#4] ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~@2 [f#3,d4]@3 ~@11", // D
P: "~@3 [d4,f#4]!2 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~ [a3,d4,f#4] ~@6", // D
Q: "~@2 [b3,d4,g4] [d4,g4] ~@2 [d4,g4] ~@3 [c#4,e4,a4]!2 c#4 ~ [c#4,e4,a4] ~", // G G5 A
R: "~@2 [a3,d4,f#4]!2 d4 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [d4,f#4] ~", // D
S: "~@2 [g3,b3,d4,g4] [b3,d4,g4] ~@2 [b3,d4,g4] ~@3 [a3,c#4,e4,a4] [c#4,e4,a4] c#4 ~ [c#4,e4,a4] ~", // G A
T: "~@2 [a3,d4,f#4] [d4,f#4]!2 ~ [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
U: "~@2 [f#3,a3,d4,f#4] [d4,f#4]!2 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [f#3,a3,d4,f#4] ~", // D
V: "~@2 [a3,d4,f#4]!2 [d4,f#4] ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
W: "~@2 [a3,d4,f#4]!3 ~ [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
X: "~@2 [b3,e4,g4]!2 ~@2 [e4,g4] ~@3 [b3,e4,g4] ~@3 [b3,e4,g4] ~", // Em
Y: "~@3 [e4,a4] d4 ~ [e4,a4] ~@3 [c#4,e4,a4] ~@3 [c#4,e4,a4] ~, ~ [a3,d4,e4,a4] ~@6", // A5 A Asus4
Z: "~@2 [b3,d4,g4] [d4,g4] ~@2 [d4,g4] ~@3 [b3,d4,g4] ~@3 [b3,d4,g4] ~", // G G5 G
AA: "~@2 [a3,c#4,f#4] [c#4,f#4]!2 ~ [c#4,f#4] ~@3 [a3,c#4,f#4] ~@3 [a3,c#4,f#4] ~", // F#m F#5 F#m
AB: "~@2 [b3,d4,g4] [d4,g4] ~@2 [d4,g4] ~@3 [b3,d4,g4] ~@3 [d4,g4] ~", AC: "[a3,c#4,a4]@4 [c#4,e4,a4]@3 ~",
AD: "~@2 [a3,d4,f#4] [d4,f#4]!2 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~", // D
AE: "~@2 [d4,f#4]!3 ~ [a3,d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~ a3 ~@6", // D
AF: "~@2 [d4,f#4]!2 d4 ~ [d4,f#4] ~@3 [a3,d4,f#4] ~@3 [a3,d4,f#4] ~, ~ a3 ~@6", // D
AG: "~@2 [b3,d4,g4] [d4,g4] ~@2 [d4,g4] ~@3 [c#4,e4,a4] [e4,a4] ~@2 [e4,a4] ~", // G G5 A A5
AH: "~@2 [a3,d4,f#4]!2 ~@2 [d4,f#4] ~@3 [d4,f#4] ~@3 [d4,f#4] ~", AI: "[a3,c4,e4,a4]@2 ~@2 [a3,d4]@3 ~",
AJ: "~ [d4,f#4]@2 f#4 [d4,f#4]@2 [b3,d4,f#4]@4 [b3,d4,f#4]@2 [b3,d4,f#4] ~@3, b3@3 ~@5", // D Bm
AK: "[d4,f#4]@2 d4@2 [a#3,d4]@2 [d4,f#4]@4 [d4,f#4]@2 [a#3,d4,f#4] ~@3, a#3@2 ~ a#3@3 ~@2, ~ f#4@2 ~@5", // D A# D A#aug
AL: "f#4@2 f#4@4 [a3,c#4,f#4]@4 [a3,c#4,f#4]@2 [c#4,f#4] ~@3, c#4@3 ~@5, a3@4 ~@2 f#3@7 ~@3", // F#m F#5
AM: "[e4,a4] a4 ~ a4 ~@2 [d4,f#4]@4 [d4,f#4]@2 [d4,f#4]@2 ~@2, a3@2 ~ f#3@4 ~, c4 [e4,a4] ~@3 a3@2 ~", // A5 D A5
AN: "a4@2 a4@3 ~ [c#4,e4,a4]@4 [c#4,e4,a4]@2 [a3,c#4,e4] ~@3, e4@3 ~@5, d4@2 ~ a3@3 ~@2", // A
AO: "[f4,a#4]@2 [f4,a#4]@2 [d#4,f4]@2 [d4,f4,a#4]@4 [d4,f4,a#4]@2 [d4,f4] ~@3, a#3@6 a#3@7 ~@3, d#4 ~@15", // A#5 D#sus2 A# Dm
AP: "[d#4,g4]@2 [d#4,g4]!2 ~@2 [d#4,g4] ~@3 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, a#3 ~@3", // D#
AQ: "d#4@2 d#4 d#4@3 [a#3,d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~ a#3@2 ~@5, ~@3 g4 ~@12", // D#
AR: "~@2 [a#3,d#4,g4] [d#4,g4] [d#4,g4]@2 [d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~ g3@3 ~@4", // D#
AS: "~@2 [d#4,g4]!2 d#4@2 [a#3,d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~ g3@3 ~@4, ~ a#3 ~@6", // D#
AT: "~@2 [d#4,g4]!2 [d#4,g4]@2 [d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~ a#3 ~@6", // D#
AU: "~@2 [d#4,g4] [d#4,g4]@3 [a#3,d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~@2 g3@7 ~@7, ~ a#3@2 ~@5", // D#
AV: "~@2 [f4,g#4]!2 [f4,g#4]@2 [f4,g#4] ~@3 [g#3,c4,f4,g#4] ~@3 [g#3,c4,f4,g#4] ~, ~ [g#3,c4]@2 ~@5", // Fm G#
AW: "~@2 [f4,g#4] [f4,g#4]@3 [d4,f4,g#4] ~@3 [d4,f4,g#4] ~@3 [d4,f4,g#4] ~, ~@2 [a#3,d4]@5 ~@9", // Fm Ddim A#
AX: "~@2 [c4,d#4,g#4] [d#4,g#4] [d#4,g#4]@2 [d#4,g#4] ~@3 [c4,d#4] ~@3 [c4,d#4,g#4] ~, ~@2 g#3@5 ~@9", // G# G#5 Cm G#
AY: "~@2 [a#3,d4,g4]!2 [d4,g4]@2 [a#3,d4,g4] ~@3 [a#3,d4,g4] ~@3 [a#3,d4,g4] ~", // Gm G5 Gm
AZ: "~@3 [d#4,g#4] d#4@2 [d#4,g#4] ~@3 [c4,d#4,g#4] ~@3 [c4,d#4] ~, ~ [c4,d#4,g#4] ~@6", // G#5 G# Cm G#
BA: "[g#3,c4,f4]@5 ~@3 [d4,f4,a#4]@6 ~@2", // Fm A#
BB: "~@2 [d#4,g4]!2 [d#4,g4]@2 [a#3,d#4,g4]@2 ~@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~", // D#
BC: "~@2 [a#3,d#4,g4] d#4 d#4@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~@3 [a#3,d#4,g4] ~, ~@3 g4@3 ~@10", // D#
BD: "~@2 [a#3,d#4,g4] [d#4,g4] [d#4,g4]@2 [a#3,d#4,g4] ~@3 [a#3,d#4,g4]@2 ~@2 [a#3,d#4,g4] ~", // D#
BE: "[g#3,c4,d#4,g#4]@5 ~@3 [d4,f4,a#4]@5 ~@3", BF: "[e4,g4,c5]@3 ~", BG: "c4@4 b3@3 ~ a#3@3 ~ a3@2 ~@2",
BH: "[c4,d#4]@2 [c4,d#4] [c4,d#4,g#4] [d#4,g#4]@2 [c4,d#4,g#4] ~@3 [c4,d#4] ~@3 [c4,d#4] ~", // Cm G# G#5 G# Cm
BI: "~@2 f4!2 [f4,a#4]@2 [d4,f4,a#4] ~@3 [d4,f4] ~@3 [d4,f4] ~, ~ d4 ~@6", // A#5 A# Dm
// … 116 more lines
More by Lewis
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.