0:00/0:00
// Sunshine of Your Love — Eric Clapton
// 118 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 7 "tk7" overdriven guitar (copy of ch 5 "tk5" distortion guitar)
// note: Full arrangement: all 151 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(118/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.
// bass · electric bass finger · "tk2"
const bass = note(`<
~@5 A B C D E B E F C B E G H I C F J I K L M N O P C B A Q R S R S T S U V C W E X Y Z E AA AB AC AD AE H AF C G AG
AH AG AI AJ AK AL AM AN AO AN AO AN AP U AQ C AR C AS C AT C AU AV AW AX AY AZ B BA B AN S AN BB AN BB BC BD H BE H BF
C AR C BG H BH H BI AD AC H BJ AG AW AG AH AZ B C BK AN S BL S BM S AN BN BO BP BQ BR BS BT BS BU BV BW BX BY BZ CA CB
BY CC A CD@3 CE
>`.pickRestart({
A: "d2 ~ d2 ~ c2@2 d2 ~@3 a2 ~@3 g#2 ~", B: "~@2 g2 ~@3 d2@2 f2@4 d2@2 ~@2", C: "d2 ~ d2@2 c2@2 d2 ~@3 a2 ~@3 g#2 ~",
D: "~@2 g2 ~@3 d2@2 f2@4 g2@4", E: "d2 ~ d2@2 c2@2 d2@2 ~@2 a2 ~@3 g#2 ~", F: "~@2 g2 ~@3 d2@2 f2@8",
G: "~@2 g2 ~@3 d2@2 f2@7 ~", H: "d2 ~ d2@2 c2@2 d2 ~@3 a1 ~@3 g#1 ~", I: "~ g1 ~ d2 f2@2 d2 ~",
J: "d2 ~ d2@2 c2@2 d2@2 ~@2 a1@2 ~@2 g#1@2", K: "d2 ~ d2@2 c2@2 d2@2 ~@2 a1@2 ~@2 g#1 ~",
L: "~@2 g1@2 ~@2 d1@2 f1@7 ~", M: "g2 ~ g2@2 f2@2 g2 ~@3 d3 ~@3 c#3 ~", N: "~@2 c3 ~@3 g2@2 a#2@4 ~ g2@2 ~",
O: "g2 ~ g2@2 f2@2 g2 ~@3 d2@2 ~@2 c#2 ~", P: "~@2 c2 ~@3 g1@2 a#1@4 c2@4", Q: "~@2 g2 ~@3 d2@2 f2@3 ~ d2@2 ~@2",
R: "a1@3 a1!2 ~@11", S: "c2@8 g1@7 ~", T: "a1@3 a1 a1@2 ~@10", U: "a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~",
V: "a1@2 a1 ~ a1@2 a1 ~ a1 ~ a1@2 c2@2 c#2@2", W: "~@2 g2 ~@3 d2 ~ f2@5 d2@2 ~",
X: "~ f2 g2 a2 c3 d3 f3 g3 f3@4 d3@3 ~", Y: "d2 ~ d2 ~ c2@2 d2 ~@3 a1 ~@3 g#1 ~", Z: "~@2 g1 ~@3 d2@2 f2@4 d2@2 ~@2",
AA: "~@2 g2 ~@3 f2@3 g2 f2 d2 c2 a1 g1 f1", AB: "d1 ~ d1@2 c1@2 d1 ~@3 a1 ~@3 g#1 ~",
AC: "~@2 g1 ~@3 d1@2 f1@4 d1@2 ~@2", AD: "d2 ~ d2@2 c2@2 d2 ~@3 a1@2 ~@2 g#1 ~", AE: "~@2 g1 ~@3 d1@2 f1@8",
AF: "~@2 g1 ~@3 d1@2 f1@4 d1@3 ~", AG: "g1 ~ g1@2 f1@2 g1 ~@3 d2 ~@3 c#2 ~", AH: "~@2 c2 ~@3 g1@2 a#1@4 g1@2 ~@2",
AI: "~@2 c2 ~@3 g1@2 c2@4 a#1@3 ~", AJ: "d2 ~ d2 ~ c2 ~ d2 ~@3 a1@2 ~@2 g#1@2", AK: "~@2 g1 ~@3 d2 ~ f2@4 d2@2 ~@2",
AL: "d2 ~ d2@2 c2@2 d2 ~@3 a1@2 ~@2 g#1@2", AM: "~@2 g1 ~@3 d1 ~ f1@6 g1 g#1", AN: "a1@2 ~ a1!2 ~@11",
AO: "c2@7 ~ g1@7 ~", AP: "c2@4 g1@3 ~", AQ: "a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ c2 ~ c#2 d2",
AR: "~@2 g2 ~@3 d2 ~ f2@4 d2@2 ~@2", AS: "~@2 g2 ~@3 c2 d2 f2 g2 f2@2 d2@4", AT: "~@2 g2 ~@3 d2@2 f2@4 d2@3 ~",
AU: "~@2 g2 ~@3 d2 ~ f2@3 ~ g2@3 ~", AV: "g1 ~ g1 ~ f1@2 g1@2 ~@2 d2 ~@3 c#2 ~", AW: "~@2 c2 ~@3 g1 ~ a#1@4 g1@2 ~@2",
AX: "g1 ~ g1@2 f1 ~ g1 ~@3 d2 ~@3 c#2 ~", AY: "~@2 c2 ~@3 g1 ~ c2@3 ~ a#1@3 ~",
AZ: "d2 ~ d2@2 c2 ~ d2 ~@3 a2 ~@3 g#2 ~", BA: "d2 ~ d2 ~ c2@2 d2@2 ~@2 a2 ~@3 g#2 ~", BB: "c2@7 ~ g1@6 ~@2",
BC: "a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1@2", BD: "a2 ~ a2 ~ a2 ~ a2 ~ a2@2 a1@2 c2 ~ c#2 ~",
BE: "~@2 g1 ~@3 d1 ~ f1@4 d1@2 ~@2", BF: "~@2 g1 ~@3 d1 ~ f1@3 ~ f1@4",
BG: "~@2 g2 a2 c3 d3 f3 g3 g3@3 f3 d3 c3 a2 g2", BH: "~@2 g1 ~@3 d1@2 f1@4 d1 ~@3",
BI: "~@2 g1@2 ~@2 f1 ~ f2@4 d2@2 ~@2", BJ: "~@2 g1 ~@3 d1 ~ f1@4 d1 ~@3", BK: "~@2 g2 ~@3 d2@2 f2@4 d2 ~@3",
BL: "a1@2 ~ a1 a1@2 ~@10", BM: "a1@2 ~ a1!2 ~@9 a1 b1", BN: "c2 g1", BO: "a1@15 ~", BP: "a1@3 g2@3 f#2@4 g2@4 a1@2",
BQ: "a1@3 a1@3 a1@4 a1@4 g1 g#1", BR: "a1 f#1 a1 f#1 a1 f#2 e2 f#2", BS: "a1 c#2 e2 f#2 g2 f#2 e2 c#2",
BT: "a1 f#1 a1 f#1 a1 e2!2 f#2", BU: "a1 g1 a1@2 a1 f#2 e2 f#2", BV: "a1 c#2 e2 f#2 g2 f#2 e2 a1",
BW: "a1@2 f#1@2 a1@2 f#1 a1@2 f#1 f#2@2 e2@2 f#2@2", BX: "a1@2 f#1@2 a1@2 f#1 a1@2 a1 f#2@2 e2@2 f#1@2",
BY: "a1@2 f#1@2 a1@2 f#1 a1@2 a1 f#2@2 e2@2 f#2@2", BZ: "a1@2 f#1@2 a1@2 f#1 a1@2 a1 f#2@2 e2@2 c#2@2",
CA: "a1 f#1 a1 f#1 a1 f#2 e2 f#2, ~@10 a1 ~@5", CB: "a1@2 c#2@2 e2@2 f#2@2 g2@2 f#2@2 e2@2 f#2 e2",
CC: "g2 f#2 e2 a1 e2 c#2 a1 g1 c#2 a1 g1 e1 g1@2 a1@2", CD: "[~@2 g2 ~@3 d2@2 f2@4 g1@36]/3", CE: "d2 ~@7",
})).s("gm_electric_bass_finger").gain(0.39)
// other · piano · "tk3"
const piano = note(`<
~@5 A B C D C E F G C H I J K H L M N E L O P Q R S T H U E ~@8 V E I W I E X Y C Z AA AB AC AD AE AF AG AH AI AJ AK
AL AM AN ~@8 AO E AP AQ AR AS X AT AU AV AW AX AY AZ BA BB ~@8 L E I BC BD BE BF BG U AL C H BH H BI BJ BK BL BM BN BO
BP U H ~@9 BQ BR BS BT BU BV BW BX BY BZ CA CB CC CD CE CF CG CH@3 CI
>`.pickRestart({
A: "d3 ~ [d2,d3]@2 [c2,c3]@2 d2@2 ~@2 [a1,a2,a3] ~@3 [g#2,g#3] ~, ~@6 d3 ~@7 g#1@2", // D C A G#
B: "~@2 [g1,g3] ~@3 d2@2 [f2,f3]@4 d3@2 ~@2, ~@2 g2@2 ~@2 d3 ~@5 d2 ~@3", // G F
C: "d3 ~ [d2,d3]@2 c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 c3 ~@11", // D A G#
D: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@4 g3@4, ~@6 d3 ~@5 g2@2 ~@2", // G F
E: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@4 d3@2 ~@2, ~@6 d3 ~@5 d2 ~@3", // G F
F: "d3 ~ [d2,d3] ~ c2@2 [d2,d3] ~@3 [a2,a3] ~@3 g#2@2, ~@4 c3 ~@9 g#3 ~", // D A
G: "~@2 g2@2 ~@2 d2@2 [f2,f3]@7 ~, ~@2 g3 ~@3 d3 ~@9", H: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@4 [d2,d3]@2 ~@2, ~@6 d3 ~@9",
I: "d3 ~ [d2,d3]@2 [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", J: "~@2 [g2,g3] ~@3 [d2,d3]@2 [f2,f3]@7 ~",
K: "[d3,f3,a3,c4]@2 d2 ~ [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // Dm7 C D A G#
L: "d3 ~ d2@2 [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@2 d3 ~@13", // C D A G#
M: "~@2 [g2,g3] ~@3 [d2,d3]@2 f3@5 f2 [d3,b3]@2, ~@8 f2@3 ~@3 g3 ~", // G D G
N: "[d3,f3] ~ d2@2 [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@2 d3 ~@13", // Dm C D A G#
O: "~@2 [g2,g3] ~@3 [d3,f#3,g3,b3] ~@5 d2 ~ d2@2, ~@5 d2@6 ~@5, ~@8 [c3,f3,a3]@7 ~", // G Gmaj7 F
P: "g3 ~ g3@2 [f2,f3]@2 [g2,g3] ~@3 [d2,d4] ~@3 [c#2,c#4] ~, ~@2 g2 ~@13", // F G D C#
Q: "~@2 [c2,c4] ~@3 [g3,c4,e4] ~ [g2,d4]@2 ~@2 [g2,g3] ~ f2@2, ~@5 g1@2 ~ [g3,a#3] ~@5 f3 ~", // C G5 G Gm
R: "g3 ~ [g2,g3]@2 f2@2 [g2,g3] ~@3 [d2,d3] ~@3 [c#2,c#3] ~, ~@4 f3 ~@11", // G D C#
S: "~@2 [c2,c3] ~@3 g1@2 [a#1,a#2]@4 [c2,c3]@2 ~@2, ~@6 g2 ~@9", // C A# C
T: "d3 ~ [d2,d3] ~ c3@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 c2 ~@11", // D A G#
U: "d3 ~ d2@2 c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@2 d3 ~ c3 ~@11", // D A G#
V: "~@2 [d2,d3]@2 c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 c3 ~@11", // D A G#
W: "~@2 g3 ~@2 d2 [d4,f#4,b4] g4 [c4,f4,a4]@3 a3 d3 ~ c3@2, ~@13 c2@2 ~", // Bm F
X: "[d2,d3] ~ d2@2 [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@2 d3 ~@13", // D C D A G#
Y: "~@2 [g2,g3] ~@3 [d2,d3]@2 [f2,f3]@4 ~@4", // G D F
Z: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@3 ~@3 [d3,f#3] ~, ~@6 d3 ~@6 d2@2 ~, ~@7 b3", // G F D
AA: "[f3,a3]@2 ~@2 [c2,c3] ~ [d2,d3] ~@3 a2 ~@3 [g#2,g#3] ~", // F C D G#
AB: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@4 ~ f2 [d3,f#3] g3, ~@6 d3 ~@7 b3@2", // G F D
AC: "[f3,a3] ~ [d2,d3] ~ [c2,c3]@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // F D C D A G#
AD: "~@2 [g2,g3] ~@3 [d2,d3]@2 [f2,f3]@3 ~@3 [d4,f#4,b4] g4, ~@13 d2@2 ~", // G D F Bm
AE: "[f4,a4] ~@3 c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, c4@2 ~@2 c3 ~@11", // F D A G#
AF: "~@2 [g2,g3] ~@3 d2@2 [f2,f3]@4 f#3@3 ~, ~@6 d3 ~@5 f#2 ~@3", // G F
AG: "g3 ~ [g2,g3]@2 [f2,f3]@2 [g2,g3] ~@3 [d2,d3] ~@3 [c#2,c#3] ~", // G F G D C#
AH: "~@2 [c2,c3] ~@3 g1@2 [a#1,a#2]@4 [g1,g2] ~@3, ~@6 g2 ~@9", // C A# G
AI: "g3 ~ g3@2 [f2,f3]@2 [g2,g3] ~@3 [d3,d4] ~@3 [c#3,c#4] ~, ~@2 g2 ~@13", // F G D C#
AJ: "~@2 [c3,c4] ~@3 g2@2 [c3,g3,c4,e4]@4 [a#2,f3,a#3,d4]@3 ~", // C A#
AK: "d4 ~ [d2,d4]@2 [c2,c4]@2 [d2,d4] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // D C D A G#
AL: "~@2 [g2,g3] ~@3 [d2,d3]@2 [f2,f3]@4 [d2,d3]@2 ~@2", // G D F D
AM: "d3 ~ [d2,d3]@2 c3@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 c2 ~@11", AN: "~@2 [g2,g3] ~@3 [d2,d3]@2 [f2,f3]@8",
AO: "d4 ~ [d3,d4] ~ [c3,c4]@2 [d3,d4] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // D C D A G#
AP: "d3 ~ [d2,d3] ~ [c2,c3] ~ [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // D C D A G#
AQ: "~@2 [g3,g4] ~@3 [c2,c3] [d2,d3] [f2,f3] [g2,g3] [f2,f3]@2 [d2,d3]@4", // G C D F G F D
AR: "d3 ~ [d2,d3]@2 [c2,c3] ~ [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // D C D A G#
AS: "~@2 [g2,g3] ~@3 d2@2 f2@4 [d2,d3] ~@3, ~@6 d3 ~ f3@2 ~@6", // G D
AT: "~@2 [g2,g3] ~@3 d2@2 [f2,f3,a3,c4]@4 [g2,d3,g3,b3]@3 ~", // G F G
AU: "[a3,d4,f4] ~ [g2,a3,d4,f4] ~ [g2,g3,c4,e4] ~ [g2,g3,b3,d4] ~@7 [c#3,c#4] ~", // Dm C G C#
AV: "~@2 [c3,c4] ~@3 [g2,g3]@2 [a#2,a#3]@4 [g2,g3] ~@3", // C G A# G
AW: "[g3,d4,f4] ~ [g2,g3,d4,f4] ~ [g2,c4,e4] ~ [g2,b3,d4] ~@3 [d3,d4] ~@3 [c#3,c#4] ~, ~@2 g3 ~@5", // G7 C G D C#
AX: "~@2 [c3,c4] ~@3 g2@2 [c3,c4]@4 [a#2,a#3] ~@3, ~@6 g3 ~@9", // C A#
AY: "[a3,d4] ~ [d2,a3,d4] ~ c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 d3 ~@11", // D5 D A G#
AZ: "~@2 [g2,g3] ~@3 [d2,d3] ~ [f2,f3]@4 d3@2 ~@2, ~@12 d2 ~@3", // G D F
BA: "[d3,d4] ~ [d3,d4] ~ [c3,g3,c4] ~ [d2,f3,a3,d4] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~ d2 c2 ~@5", // D C5 Dm A G#
BB: "~@2 [g2,g3] ~@3 [d3,b3] ~ [d3,f3,a3]@3 ~ [d3,a3,d4]@2 ~@2, ~@5 d2@2 ~ d2@7 ~", // G Dm D5
BC: "~@2 [g2,g3]@2 ~@2 d2@2 g#4 a4@3 [f2,d4,g4,b4]@4, ~@8 [g2,c5]@3 ~@5", // G G7 C5
BD: "~@2 d2@2 c2@2 [d2,d3] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@4 c3 ~@11", // D A G#
BE: "~@2 [g2,g3] ~@3 [d2,d3]@2 f2@2 [d3,d4] ~ f2 ~ f2@2, ~@13 [d3,g3,b3,d4]@3", // G D G
BF: "[a3,d4] ~ d3 ~ [c2,c3]@2 [d2,d3] ~@3 [a2,d3] ~@2 a3 ~ d3, ~@5 a3 ~@2", // D5 C D D5
BG: "[f4,g#4] [d3,a4] [d4,g4,b4] ~ [c4,f4,a4] ~ [b3,d4,g4] d3 [a3,c4,f4] ~ [g#3,d4] d3 ~ d3 f3 d3, c5 ~@5 [g3,d4] ~", // Fm D5 G F G F G#dim G5
BH: "[d3,d4] ~ [d2,d4]@2 [c2,c4]@2 [d2,d4] ~@3 [a2,a3] ~@3 [g#2,g#3] ~, ~@2 d3 ~ c3 ~ d3@2 ~@8", // D C D A G#
BI: "d3 ~ [d2,d3]@2 [c2,c3]@2 d3@2 ~@2 [a2,a3] ~@3 [g#2,g#3] ~, ~@6 d2 ~@9", // D C A G#
BJ: "~@2 g3@3 d3 ~@2 [a3,c4]@2 g3@2 c4 ~ d3 ~, ~@2 g2 ~@4 d2@4 ~@5, ~@8 [f3,g#3] ~ d4 ~ [a3,d4,f4]@4", // Am Fm Dm
BK: "g3 ~ g3@2 f2@2 [g2,g3] ~@3 [d3,d4] ~@3 [c#3,c#4] ~, ~@2 g2 ~ f3 ~@11", // G D C#
BL: "~@2 [c3,c4] ~@3 [g3,e4] ~ a#3 b3@2 ~ g3@3 ~, ~@6 c4@2 [g3,d4]@3 ~@5", // C G5
BM: "g3 ~ [g2,g3]@2 [f2,f3]@2 [g2,g3] ~@3 [d3,d4] ~@3 [c#3,c#4] ~", // G F G D C#
BN: "~@2 [c3,c4] ~@3 g2@2 [a#2,a#3]@4 g3@2 a2 ~, ~@6 g3 ~@5 g2 ~@3", // C A#
BO: "d4 ~ [d3,d4]@2 [c3,c4]@2 [d3,d4] ~@3 [a2,a3] ~@3 [g#2,g#3] ~", // D C D A G#
BP: "~@2 [g2,g3] ~@2 d2 [d4,f#4,b4] ~ [c4,f4,a4] ~ d4 c4 d4 ~ a2 ~, ~@3 d3 ~@4", // G Bm F
BQ: "[a5,e6,g6,a6]@2 ~ e6@2 ~ [e6,g6,a6]@3 ~ e6@3 ~ [d6,f#6]@2, ~@14 a6 ~", BR: "a6@2 ~@4 a6@6 ~@2 f#6 ~",
BS: "[e6,a6]@2 ~ a6@2 ~ [g6,a6]@3 ~ [e6,a6]@3 ~ d6 ~", BT: "[e6,a6]@2 ~ [e6,a6]@2 ~ [e6,a6]@3 ~@5 [d6,f#6,a6] ~",
BU: "[a5,e6,a6]@3 a5@2 ~ [c#6,e6,a6]@3 ~ [e6,a6]@3 ~@3, ~@3 a6 ~@12", // A5 A A5
BV: "a6@2 ~ [e6,a6]@2 ~ a6@2 ~@2 [a5,e6,g6]@3 ~ [d6,f#6,a6] ~", // A5 A7 D
BW: "[c#6,e6]@2 ~ [c#6,e6,a6]@2 ~ [c#6,e6,a6]@3 ~ [c#6,e6]@3 ~ [d6,f#6]@2, ~@14 a6 ~", // C#m A C#m D
BX: "a6@2 ~ [e6,g6,a6]@2 ~@7 a6 ~ d6@2", // A7
BY: "[c#6,e6]@3 [e6,a6]@2 ~ [c#6,e6,a6]@2 ~ [c#6,e6,a6]@2 ~ [c#6,e6]@2 d6@2, ~@12 a6 ~ a5 ~", // C#m A5 A C#m
BZ: "a6@2 ~ e6@2 ~ [e6,a6]@2 ~ [e6,a6]@2 ~ [e6,a6] ~ [d6,f#6]@2, ~@14 a6 ~", // A5 D
CA: "[a5,c#6,e6,a6]@3 [e6,a6]@2 ~ [c#6,e6,a6]@3 [a5,c#6,e6,a6]@3 ~@2 d6@2", // A A5 A
CB: "[e6,a6]@2 ~ [e6,a6]@2 ~ [e6,a6]@3 [d6,f#6,a6]@3 [c#6,e6]@2 [a5,d6,a6] ~, ~@12 [a5,a6] ~ f#6@2", // A5 D C#m D5 A
CC: "[a5,c#6,e6,a6]@3 ~@3 [a5,a6]@3 ~ [f#6,a6]@2 [c#6,e6]@2 d6 ~, ~@12 a5 ~@3", // A F#m C#m
CD: "[e6,a6]@3 e6@2 ~@4 [a5,e6]@2 ~ e6 ~ [a5,d6] ~", // A5 D5
CE: "[a5,c#6,e6]@2 ~ [a5,e6,a6]@2 ~ [a5,c#6,e6,a6]@3 ~ [f#6,a6]@2 e6 ~@3, ~@10 d6 ~@5", // A A5 A F#m
CF: "[e6,a6]@2 ~ e6@2 ~ [g6,a6]@3 ~ [f#6,a6]@2 [a5,c#6,e6]@3 ~, ~@10 [a5,d6] ~@5", // A5 Gsus2 F#m A D5
CG: "d3 ~ [d2,d3]@2 c2@2 [d2,d3] ~@3 [a1,a2,a3] ~@3 [g#1,g#2,g#3] ~, ~@4 c3 ~@11", // D A G#
CH: "[~@2 [g1,g2,g3] ~@3 [d2,d3] ~ [f1,f3] ~@3 [g2,f3,a3,d4]@33 ~@3, ~@3 d1 ~@20]/3", CI: "[d1,d3,a3,d4] ~@7",
})).s("gm_piano").gain(0.32).pan(0.3)
// other · piano · "tk3" · soft notes
const piano_soft = note(`<
~@44 A ~@6 B ~@28 C ~@7 D ~@12 E ~@10 F ~@5 G ~@11 H I J K L M N O P Q R S T U V W ~@5
>`.pickRestart({
A: "~@12 d2 ~@3", B: "~@2 d3 ~@8 a3 ~@4", C: "~@6 d3 ~@9", D: "~@6 g3 ~@9", E: "~@2 d3 ~@13", F: "~@10 c4 ~@5",
G: "~@7 g4 ~@8", H: "~@3 [a5,g6,a6]@2 ~@5 [g6,a6]@3 ~ a5 ~, ~@3 a5@3 ~@2",
I: "[a5,e6,g6]@2 ~ [a5,e6,g6,a6]@2 ~ a5@3 ~ a5@2 ~@2 [a5,a6] ~, ~@3 [e6,g6]@3 ~ d6", // A7 A Em
J: "[a5,g6]@2 ~ [a5,e6,g6]@2 ~ [a5,e6]@3 ~ [a5,g6]@2 ~@2 [a5,a6] ~, ~@7 f#6", // A7 A5 A7 A
K: "[a5,g6]@2 ~ [a5,g6]@2 ~ [a5,g6]@3 [a5,e6,g6,a6]@4 a5@2 ~", // A7
L: "c#6@2 ~ [c#6,e6]@2 ~ a5@3 ~ [a5,c#6]@3 ~ [d6,f#6]@2, ~@14 [a5,a6] ~", // C#m A D A
M: "[a5,e6,g6]@2 ~ [a5,g6]@2 ~ [a5,e6,g6]@3 ~ a6@2 ~@2 a5 ~", N: "[g5,a6]@2 ~ g5@2 ~ g5@3 ~ [g5,a6]@3 ~ a5@2",
O: "[a5,e6,g6]@2 ~ a5@2 ~ [a5,e6,g6,a6]@2 ~ [a5,e6,g6]@2 ~ [a5,e6,g6] ~ [a5,a6] ~, ~@9 a6 ~@4 f#6@2", // A7 A
P: "[g5,a6]@2 ~ [g5,c#6]@2 ~ g5@2 ~ g5@2 ~ g5 ~ [f#6,a6] ~", // Gsus2 Gdim F#m
Q: "[a5,e6,g6]@2 ~ [a5,g6,a6]@2 ~ [a5,g6]@2 ~ [a5,g6]@2 ~ [a5,g6] ~ g5 ~", // A7
R: "g5@2 ~ [g5,a5,c#6]@2 ~ [g5,a5]@2 ~ g5@2 ~@2 a6 [a5,f#6,a6] ~", S: "[a5,g6]@2 ~ [a5,g6]@2 ~ [a5,g6]@2 ~ a5@2 ~@5",
T: "g5@2 ~ [g5,a5,c#6,e6,a6]@2 ~ [g5,c#6,e6]@4 [a5,d6] ~@3 [a5,f#6,a6] ~", // A7 C#dim D5 D
U: "[a5,g6]@3 [a5,g6,a6]@2 ~ [a5,e6,g6,a6]@2 ~ [g6,a6]@2 ~ [a5,g6,a6] ~ a6@2", // A7 Gsus2 A7
V: "a6@2 ~ c#6@2 ~@5 a5 ~ [a5,c#6] ~ [a5,d6,f#6,a6] ~", W: "[a5,g6]@2 ~ [a5,g6,a6]@2 ~ [a5,e6]@3 ~@3 a6@3 ~",
})).s("gm_piano").gain(0.18).pan(0.3)
// chords · distortion guitar · "tk5"
const distortion_guitar = note(`<
~ A B A C D E A F A G A H A G A I A J A I A E A J K L M N O E A E P Q R Q P Q S T A G A I A G A I A G A I U G U I V L
W X A Y U Z P Q R AA P Q S AB@2 AC AD AE AF AG AH AI AJ AK AL AM AN AO@2 AP AQ@2 AR@2 AS AT AU AV A AW A AX U G A AY A
AW A AY A AZ A E V L BA L A AW A G R Q P Q P Q P Q BB BC BD BE BF BG BH BG BF BE BF BG BF BI BH BG BF D BJ@3 BK
>`.pickRestart({
A: "[d3,a3,d4]@2 [d3,a3,d4]@2 [c3,g3,c4]@2 [d3,a3,d4] ~@3 a3 ~@3 g#3 ~", B: "~@2 g3 ~@3 d3@2 f3@4 d3@2 ~@2",
C: "~@2 g3 ~@3 g4@2 f4@6 ~@2", D: "[d3,a3,d4]@2 [d3,a3,d4]@2 [c3,g3,c4]@2 [d3,g3,a3,d4] ~@3 a3 ~@3 g#3 ~",
E: "~@2 g3 ~@3 d3@2 f3@4 d3@4", F: "~@2 g3 ~@3 g4@2 f4@4 d4@2 ~@2", G: "~@2 g3 ~@3 d3 ~ f3@4 d3@4",
H: "~@2 g3 ~@3 g4@2 f4@8", I: "~@2 g3 ~@3 f4@2 f4@8", J: "~@2 g3 ~@3 [d4,g4]@2 [c4,f4]@4 d4@4",
K: "[g2,d3,g3]@2 [g2,d3,g3]@2 [f2,c3,f3] ~ [g2,d3,g3]@2 ~@2 d4 ~@3 c#4 ~", L: "~@2 c4 ~@3 g3 ~ a#3@4 g3@4",
M: "[g2,d3,g3]!2 [f2,c3,f3] [g2,d3,g3] ~ d3 ~ c#3", N: "~ c3 ~ g2 a#2@2 c3@2",
O: "[d3,a3,d4]@2 [d3,a3,d4]@2 [c3,g3,c4]@2 [d3,a3,d4]@2 ~@2 a3 ~@3 g#3@2", P: "[a2,e3,a3]@3 [a2,e3,a3]!2 ~@11",
Q: "[c3,g3,c4] [g2,d3,g3]", R: "[a2,e3,a3]@3 [a2,e3,a3] [a2,e3,a3]@2 ~@10", S: "[a2,e3,a3]!8",
T: "[a2,e3,a3]!7 [e3,a3]", U: "[d3,a3,d4]@2 [d3,a3,d4]@2 [c3,g3,c4]@2 [d3,a3,d4]@2 ~@2 a3 ~@3 g#3 ~",
V: "[g2,d3,g3]@2 [g2,d3,g3]@2 [f2,c3,f3]@2 [g2,d3,g3] ~@3 d4 ~@3 c#4 ~", // G5 F5 G5
W: "[g2,d3,g3]@2 [g2,d3,g3]@2 [f2,c3,f3]@2 [g2,d3,g3]@2 ~@2 d3 ~@3 c#3 ~", X: "~@2 c3 ~@3 g2@2 c3@4 a#2@4",
Y: "~@2 g3 ~@3 [d4,g4,b4]@2 [c4,f4,a4]@4 d4@4", Z: "~@2 g3 ~@3 [d4,g4,b4]@2 [c4,f4,a4]@8",
AA: "[c3,g3,c4] [d3,g3], ~@4 g2@3 ~", // C5 G5
AB: "[[a2,e3,a3]@2 [a2,e3,a3]@2 [a2,e3,a3]@2 [a2,e3,a3]@2 [a2,e3,a3]@2 [a2,e3,a3]@2 [a2,e3,a3]@2 ~@2 a4@7 ~ a4@8, ~@14 [a2,e3,a3]@5 ~@13]/2", // A5
AC: "~@2 g4@2 a4@6 ~ a4@3 g4@2", AD: "a4@5 ~ a4@8 ~@2", AE: "~@2 f#4@5 ~ f#4@2 e4@2 f#4@2 e4@2", AF: "d4@3 a3@5",
AG: "~@2 a3 b3 d4 e4 f#4 d4 e4@3 d4 b3 d4 b3 a3", AH: "f#3 g3 a3 f#3 e3 [b2,d3] d3@2 d3@8", AI: "~@8 c5@4 c5@3 ~",
AJ: "c5@2 a4 ~ g4 f4 g4@6 f4 d4 f4 g4", AK: "g4@3 f4 d4@6 f4@2 d4@4", AL: "~@2 c5@2 d5 c5 d5@2",
AM: "d5!2 c5@2 d5@2 c5 a4 a4@2 g4@2 f4@2 d4@2", AN: "e4@2 d4@2 g3@2 f#3@9 ~",
AO: "[d5 b4 d5 b4 d5 e5@4 a5 e5@2 d5@3 c5]/2", AP: "a4@2 c5@2 a4 g4@3 f#4@2 d4@2 c4@2 d4@2",
AQ: "[~@2 d4@2 f4@2 g4 ~ a4@3 c5 a4@9 ~ c5@7 c5 ~ a4]/2",
AR: "[g5 ~ e5@2 c5@3 d5@2 a4 d5@2 c5@8 a4@3 c5@2 a4@2 c5 a4@2 c5 ~]/2", AS: "a4@2 c5 a4@2 c5 c#4@9 ~",
AT: "~@4 d5 ~ d5 ~@2 d5@3 d5@3 c5", AU: "g5 e5 d5 c5 e5 d5 c5 a4 d5 a4 c5 a4 g4 e4 d4 c4",
AV: "d4 c4 a3 g3 a3 g3 e3 g3 a3 c4 d4 f4 g4@2 f4 d4", AW: "~@2 g3 ~@3 [c4,f4,a4]@2 [c4,f4,a4]@4 d4@4",
AX: "~@2 g3 ~@3 [c4,f4,a4]@2 [c4,f4,a4]@8", AY: "~@2 g3 ~@3 d3@2 f3@8", AZ: "~@2 g3 ~@3 f4@2 f4@4 d4@4",
BA: "[g2,d3,g3]@2 [g2,d3,g3]@2 [f2,c3,f3]@2 [g2,d3,g3] ~@3 d4@2 ~@2 c#4 ~", BB: "[a2,e3,a3]",
BC: "[a2,e3,a3]@3 [a2,f#3,a3]@2 [a2,e3,a3]@4 [a2,f#3,a3]@3 [a2,e3] ~ [a2,f#3]@2, ~@6 a3 ~", // A5 D A5 D A5 D
BD: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@2 a2@2", // A5 D A5 D A5
BE: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3] ~ [a2,f#3]@2, ~@6 a3 ~", // A5 D A5 D A5 D
BF: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@4", // A5 D A5 D A5
BG: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@2 [a2,f#3,a3]@2", // A5 D A5 D A5 D
BH: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,f#3,a3]@4", // A5 D A5 D F#m7
BI: "[a2,e3,a3]@3 [a2,f#3,a3]@3 [a2,e3,f#3,a3]@3 [a2,f#3,a3]@3 [a2,e3,a3]@2 [a2,f#3,a3]@2", // A5 D F#m7 D A5 D
BJ: "[~@2 g3 ~@3 d3@2 f3@4 [g2,d3]@35 ~]/3", BK: "[d3,a3,d4] ~@7",
})).s("gm_distortion_guitar").gain(0.25).pan(0.6)
// … 110 more lines
More by Eric Clapton
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.