0:00/0:00
// Don't Get Around Much Anymore — Duke Ellington
// 104 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 146 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(104/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 · acoustic bass
const bass = note(`<
~@2 A@5 B C@2 D ~ E F G H I@2 J K L M N O P Q R S T U R V W X Y Z AA AB AC AD AE ~ AF AG AH AI AJ AK@2 AL AM AN AH AO
AP H AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH AU BB BD BI AP BJ BK BL BM BN BO BP BE BF AU BQ BR AT BS BT
BR BU BV BW BX BY BZ BD CA CB CC AN CD CE CF BR CG CH CI CJ CK CL CM CN CO CP CQ CR CS CT CU CV CW CX CY CZ DA DB DC
AH AJ BJ DD AH DE ~ DF@2 DG@4
>`.pickRestart({
A: "~ g2 ~ g2", B: "~@8 g2@8 ~@8 g2@5 c2@2 ~", C: "[~@5 e2@10 ~ f2@2 ~@6 f#2@5 g2@34 ~]/2",
D: "~@16 g2@2 ~@6 g1@5 c2@2 ~", E: "~@16 a2@2 ~@6 a2@5 a1@2 ~", F: "~@31 a2", G: "d2 a2 d3 a2",
H: "g2@6 d2@2 d3@7 ~ b2@8 g2@6 d2 ~",
I: "[c3@5 c2@2 ~ e2@4 ~@4 f2@5 f#2@3 ~@5 g2@10 ~ a#2@13 f2@2 ~ a#2@5 c#2@2 ~]/2",
J: "d#2@6 d#1 ~ e2@6 e1 ~ f2@6 f1 ~ f#2@6 f#1 ~", K: "g2@6 g1 ~ c2@6 c1 ~ d2@6 d1 ~ c#2@8",
L: "c2@3 c1 b1@4 d2@4 d2@4", M: "d#2@4 d#2@4 c2@3 c1 f#2@4", N: "f2@6 f1 ~ g2@6 g1 ~ g#2@8 a1@6 a0 ~",
O: "a#1@6 c2 ~ c3@6 c2 ~ a#1@4 ~@2 a#1@2 f2@8", P: "d#2@6 d#1 ~ a#1@6 a#0 ~ a1@6 a0 ~ g#2@8",
Q: "d#2@6 d#1 ~ f2@8 a#1@6 a#0 ~ d#2@8", R: "g#2 a#2 c3 d#3", S: "g#2@4 a#2@4 b2@4 d#3@3 g#2", T: "d#2 f2 g2 a#2",
U: "d#2@2 ~ d#2 g#1@4 a1@4 g#2@4", V: "a1@2 ~ a1 d#2@4 d2@4 a2@4", W: "g2 d3 f#2 c3", X: "f2@4 e2@4 a#1@2 ~ a#1 c3@4",
Y: "d#2@6 d#1@2 d#2@8 f2@8 f#2@6 f#1 ~", Z: "g2@6 g1 ~ d#2@6 d#1 ~ d2@8 c#2@6 c#1 ~", AA: "c2@4 c2@4 d2@2 ~ d2 d2@4",
AB: "d#2@6 d#1@2 d#2@8 c2@8 e2@7 ~", AC: "f2@6 f1 ~ g2@8 g#2@8 a1@8", AD: "a#1!3 d2",
AE: "d#2@4 ~@2 d#2@2 a#2@8 g#2@8 a2@5 a#2@2 ~", AF: "c2@4 ~@2 c2@2 c#2@8 d2@8 d#2@6 d#1 ~",
AG: "c2@8 g2@8 c2@6 c1 ~ a#1@6 a#0 ~", AH: "a2 a1 c#2 e2", AI: "a#1@4 ~@2 a#1@2 f2@8 a1@8 c#2@7 ~",
AJ: "d2 d3 a2 f#2", AK: "[g2@5 ~ b1@2 f2@7 ~ e2@9 d2@4 ~ c2@10 g2@8 a1@8 a1@8]/2", AL: "d2@2 ~ d2 a2@4 g2@3 g1 g2@4",
AM: "c2 b1 c2!2", AN: "c2 g2 e2 c2", AO: "a1@8 g2@8 g#2@6 g#1 ~ a1@8", AP: "d2 e2 f#2 a2",
AQ: "c2@6 c1 ~ g2@6 g1 ~ f#2@8 f2@6 f1 ~", AR: "c2@6 c1 ~ b1@8 c2@8 f#2@8", AS: "f2 g2 a2 c3",
AT: "f2@5 ~ f1@2 g2@8 g#2@8 c3@6 f2@2", AU: "c2 c3 g2 e2", AV: "g2!2 c2 e2", AW: "f2@6 c2@2 c3@7 ~ a2@8 f2@6 c2 ~",
AX: "f#2@8 c2@8 b1@6 f#1 ~ f#2@6 f#1 ~", AY: "e2@3 e1 e2@4 d#2@2 ~ d#2 c#2@4", AZ: "d2@4 f#2@4 g2@2 ~ g2 b1@4",
BA: "c2@6 g1@2 g2@7 ~ e2@8 c2@6 g1 ~", BB: "c2 d2 e2 g2", BC: "a1@8 e2@8 a2@8 e2@6 ~ a#1", BD: "a1 b1 c#2 e2",
BE: "d2@6 a1 ~ e2@8 f#2@5 ~ a1 ~ a2@6 a1 ~", BF: "g2 d3 b2 g2", BG: "c2@8 a#1@8 a1@6 a0 ~ a1@8", BH: "d2 f#2 g2 d3",
BI: "a1 b1 c2 c#2", BJ: "g2@5 ~ b1@2 f2@7 ~ e2@9 d2@7", BK: "c2@8 g#1@8 a1@8 c#2@7 ~",
BL: "d2@3 d1 g#2@4 g2@3 g2 b1@4", BM: "c3@6 g1 ~ g2@8 e2@6 e1@2 g1@8", BN: "c2@6 g1 ~ d2@8 e2@6 g1 ~ g2@6 g1 ~",
BO: "a2 c#2 d2 d#2", BP: "e2 f#2 g2 e2", BQ: "g2@4 ~@2 g2@2 b1@8 c2@6 g1 ~ g2@6 g1 ~",
BR: "f2@6 c2 ~ g2@8 a2@5 ~ c2 ~ c3@6 c2 ~", BS: "c3 c2 e2 g2", BT: "g2@3 g1 g2@4 c2@4 e2@4",
BU: "f#2@4 a#1@4 b1@2 ~ b1 d#2@4", BV: "e2@4 d2@4 d#2@2 ~ d#2 a2@4", BW: "d2@4 d2@4 g2@3 g1 g2@4",
BX: "c2@6 g1 ~ d2@8 e2@5 ~ g1 ~ g2@6 g1 ~", BY: "c2 e2 g2 g1", BZ: "a1 e2 c#2 a1", CA: "d2@3 a1 e2@4 f2@3 a1 f#2@4",
CB: "g2@6 d2 ~ a2@8 b2@5 ~ d2 ~ d3@6 d2 ~", CC: "c2@4 ~@2 c2@2 e2@8 f2@6 f1 ~ f#2@6 f#1 ~",
CD: "g#2@3 g#1 a2@4 g#2@4 c#2@4", CE: "g#2@8 d#3@8 g#2@8 f#2@6 f#1 ~", CF: "f2@6 f1 ~ f#2@6 f#1 ~ f2@8 f#2@8",
CG: "a#1@6 a#0 ~ c2@6 c1 ~ c#2@8 d2@6 d1 ~", CH: "d#3 d#2 c#2 f2", CI: "g#2@6 d#2 ~ d#3@6 d#2 ~ f2@8 c3@8",
CJ: "a#1@8 f2@8 d#2@8 g2@7 ~", CK: "g#2 d#3 g#2 c#2", CL: "g#2@2 ~ g#2 g2@4 g#2@4 f#2@4",
CM: "f2@4 e2@4 d#2@2 ~ d#2 g2@4", CN: "g#2@3 g#1 f#2@4 a1@4 f2@4", CO: "a#1@8 c2@6 c1 ~ c#2@8 d2@8",
CP: "a#1@5 ~ a#0@2 c2@8 c#2@8 f2@6 a#1@2", CQ: "g#2@2 ~ g#2 d#3@4 a2@4 e2@4", CR: "a#1@6 a#0 ~ e2@8 d#2@6 d#1 ~ d2@8",
CS: "c#3 c#2 f2 g#2", CT: "c#2@5 ~ c#1@2 d#2@7 ~ e2@7 ~ g#2@6 c#2@2",
CU: "g#2@6 d#2 ~ a#2@8 c3@5 ~ d#2 ~ d#3@6 d#2 ~", CV: "g#2@4 ~@2 g#2@2 c#2@8 d2@6 a1 ~ a2@6 a1 ~",
CW: "c#2 d#2 f2 g#2", CX: "g2@4 ~@2 g2@2 f#2@8 g2@6 d2 ~ d3@6 d2 ~", CY: "c2@6 c1@2 c2@8 b1@6 b0 ~ a#1@8",
CZ: "~@8 g2@15 ~ g1@3 ~@5", DA: "c2@6 g1 ~ g2@6 g1 ~ d2@8 d#2@8", DB: "c2 a#1 b1 a#1",
DC: "a1@4 e2@4 a1@2 ~ a1 g#1@4", DD: "c2 g2 b1 a#1", DE: "d2@8 d2@8 d2@7 ~ f#2@5 g2@2 ~",
DF: "[~@5 c3@10 ~ e2@13 f2@10 ~ a#1@13 d#2@10 ~]/2",
DG: "[~@29 c3@2 ~ g2@28 ~ f2@2 ~ c2@64, d2@32 ~@31 c#2@2 ~@63, ~@28 d3@2 ~ g#2@2 ~@27 g2@4 ~@64]/4",
})).s("gm_acoustic_bass").gain(0.17).pan(0.3)
// chords · piano
const piano = note(`<
~@2 A@6 B@3 C D E F G@3 H I J K@2 L@2 M@6 N O P Q@2 R@2 S T@2 U@2 V W X Y@2 Z AA AB@2 W AC AD AE AF AG AH AI AJ AK AL
AM AN AO AP AQ AR AS@2 AT AU@2 AV@4 AW@2 AX AY AZ@2 BA@2 BB BC BD BE@3 BF BG BH@2 BI BJ BK@2 BL@2 BM BN@2 BO BP BQ BR
BS@2 BT BU BV BW BX BY BZ CA CB CC CD@3 CE CF CG CH CI CJ CK CL CM@2 CN@4 CO CP@3 CQ CR CS@2
>`.pickRestart({
A: "[~@168 [g1,g2]@8 ~@8 [g1,g2]@5 c2@2 ~, [a3,c4,e4,g4]@13 [a3,c4,d#4,f#4]@16 [a3,c4,d4,f4]@16 [a3,c4,d#4,f#4]@16 [a3,c4,e4,g4]@16 [a3,c4,d#4,f#4]@16 [a3,c4,d4,f4]@16 [a3,c4,d#4,f#4]@16 [a3,c4,e4,g4]@16 [a3,c4,d#4,f#4]@16 [a3,c4,d4,f4]@16 ~@3 [f3,g#3,b3,e4]@13 ~@3, ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~ [g1,g2] ~@4]/6", // G Am7 Adim Dm7 Adim Am7 Adim Dm7 …
B: "[~@5 e2@10 ~ f2@2 ~@6 f#2@5 ~@8 e5@3 ~@5 d5@2 ~ c5@5 g4@2 ~ f4@5 e4@34 ~, ~@29 g2@34 ~@33]/3",
C: "~@5 e5@5 ~ d5@5 c5@5 g4@5 ~ f4@5, ~@5 d#5 ~@26", D: "e4@31 ~", E: "~@5 g4@3 ~@5 f4@2 ~ e4@5 d4@2 ~ c4@3 ~@5",
F: "c5@13 a4@18 ~, [d2,f#3]", // D
G: "[~@5 e4@3 f4@5 f#4@3 g4@5 c4@3 d#4@3 e4@2 ~@11 e2@4 ~@4 f2@5 f#2@3 ~@5 g2@10 ~@25, [g2,f3] ~@2, ~@29 c4@43 ~@24]/3", // G7
H: "~@9 [g3,a#3,c#4,e4]@2 ~@6 f4@3 ~@4 [f#2,d#3,f#3,a3]@8, ~@8 [d#3,g#3,c4] ~@7", // Gdim D#dim G#
I: "~@7 g4 ~@15 a4 ~ g#4 ~@6, ~@3 [a#3,f4,a#4,d5] ~@7 [c4,f#4,c5,d#5] c#4 ~@3", // A# Cdim
J: "~ [a#3,c4,e4,g4]@2 ~@6 c3@3 ~@5 f4@3 ~@12, ~@8 [d3,a#3,d4] ~@7", // C7 Gm
K: "[~@7 f#4 [d#2,c#3,d#3,f#3]@8 ~ [c3,c4]@2 ~@12 [d#3,g#3,c4,f4]@4 ~@4 [g2,f3,g3,a#3]@9 ~ a#4@3 ~@3 [c3,g3,a3,d#4]@4 ~@5, ~@6 [a#3,d#4,a#4,d#5]@2 ~@9 e4 ~@30 [g3,c4,d#4]@2 ~@14]/2", // D#m7 C Fm7 Gm7 Am7b5 D#5 Cm
L: "[~ f4 ~@14 [a#1,d3,e3,g#3]@12 ~@3 [d#2,d#3,g3,a#3]@9 ~@7 e4 ~ d#4 ~@13 c5, c4 ~@22 [g3,c#4,g4,a#4] a3 ~@6 [d#4,g#4,d#5,g#5]]/2", // A#7 D# Gdim G#5
M: "[~@6 [c3,g3,a#3,d#4] ~@8 f2 ~ [g#3,a#3,c#4,f4]@2 ~@3 d#5@2 ~@24 d#5@2 ~@6 c5@5 ~@24 c5@3 d#5@6 ~@16 c5@2 d#5@4 ~@4 a#4@5 ~ g4@29 ~@4 [f3,c4]@14 ~@3 f4@2 ~ f4@12 ~, ~@7 [f3,b3,f4] ~@7 f5@9 ~@7 d#5@11 ~@5 f5@8 ~@24 f4@7 ~@2 [g#2,c4,g#4]@5 ~@3, ~@32 [g#2,f3]@32 [g#2,f3,b3]@32 [d#2,g3]@32 ~@31 g#4@5 ~@28]/6", // Cm7 A#m7 F5 Fdim G# C# Fdim D#
N: "~@7 a2 ~ [a3,c4]@4 ~@4 [d3,c4,f#4]@2 ~@13, ~@17 d#4 ~@14", // Am D7
O: "~ [a#3,d4,f4,a4]@2 ~@6 g2@3 ~@5 f#4 ~@14, ~@8 c4 ~@7", // A#maj7
P: "~ [f2,g#3,d#4]@2 ~@20 a#1 ~ d4@4 ~@2 f3, ~ c4 ~@20 [f3,c4,f4]@2 ~@8", // Fm7 F5
Q: "[[d#2,c3,d#3,g3]@12 ~@3 d2 ~ [g#3,c4,d#4,f4]@2 ~@4 [d#3,a3,c4,f#4]@4 ~@4 [d#4,g4]@3 ~@7 [d#2,a#3]@2 ~@6 [d3,c4,f#4]@2 ~@12 c#3, ~@41 d#4 ~@7 d4 ~@14]/2", // Cm Fm7 D#dim D# D#5 D7
R: "[~ g4 ~@20 [d3,a#3,d4,f4] ~@8 [a#3,d#4]@3 ~@13 [e3,a#3,c4,g4]@4 ~@13, c4 ~@31]/2", // A# D#5 C7
S: "~@7 f2 [g2,f3,g3,a#3]@8 [g#2,g3,g#3,c4]@8 ~ [g3,a3,c4,d#4]@2 ~@5, ~@3 [f3,c4,f4] ~@12", // Gm7 G#maj7 Am7b5 F5
T: "[~@7 f4@7 ~@3 [g#3,b3,d4,e4]@2 ~@6 a#2@3 ~@3 [d#2,d#3,g3]@14 ~@2 d2 [g#2,f3,c4,d#4]@3 ~@5 [a2,f#3,c4,d#4]@5 [a#2,g3,c4,d#4]@2 ~, ~@6 [g#3,d#4,g#4,c5]@8 ~@17 a#3@11 ~@22]/2", // E7 D# Fm7 Adim Cm7 G#
U: "[~@31 [c2,e3,g3]@14 ~@2 [f3,c4,d4,a4]@4 ~@6 [f#3,a3,c4,d#4]@2 ~@5, ~@31 b3@11 ~@22]/2", // C Dm7 F#dim
V: "~@6 [e3,a3,d4,g4] ~@16 c3 ~ [g#3,c4,d4,f4]@2 ~@5", W: "~@7 a2 ~ [b3,c#4]@4 ~@4 [g3,e4]@5 ~ e2@2 [g3,c#4]@3 ~@4",
X: "~@7 a#2 ~ c#4@4 ~@2 [c#3,g3,b3,e4]@4 ~@13, ~@3 [f3,c4,f4] ~@12", // C#m7b5 F5
Y: "[[f#3,c4,f#4]@13 ~@3 f4@2 ~ f#4@11 ~ [f3,b3]@14 ~@3 e4@2 ~ f4@10 ~@3, a4@3 ~@13 [d3,c4,a4]@10 ~@4 f4@14 ~@4 [g2,b3,g#4]@10 ~@6, ~@31 g#4@5 ~@28]/2", // F#dim Fdim D7 G
Z: "~@7 c3 ~ d#4@4 ~@2 g3 ~@6 [c#3,g3,a3,f4] ~@9, ~@3 [g3,c4,g4] ~@12", // C#aug C5
AA: "~@7 a4@9 ~ [g2,b3,f4]@2 ~@13, ~@6 [c4,f4,c5,e5]@10 ~ d4 ~@14", // G7 Fmaj7
AB: "[~ [b3,c4,e4,g4]@2 ~@6 c3@3 ~@5 g4@3 ~@11 e3@23 g2 ~@9, ~@16 [e3,a3,d4]@2 ~@13 [a3,d4]@29 ~@4]/2", // Cmaj7 Dsus2 D5
AC: "~ [a2,g3,c#4]@2 ~@20 g#2 ~@8, ~ b3 ~@30", AD: "~ [c4,e4,f#4,a4]@2 ~@6 d3@3 ~@5 f4@2 f#4@4 ~@9, ~@17 a4@5 ~@10",
AE: "~@6 [f3,b3,d4,g#4] ~@9 b3 f3 ~@12 e3 ~, ~@8 [d4,g#4] ~@7", // Fdim Ddim
AF: "~@7 c3 ~ [g2,a#3,e4]@2 ~@12 f#2 ~ [g#3,b3,d4,f4]@2 ~@5, ~@9 c#4 ~@22", // Edim G#dim
AG: "~@7 c3 ~@7 [d4,g4]@3 ~@7 [f#2,c#4]@2 ~@5, ~@25 f#4 ~@6", AH: "~ f4 ~@22 [f3,a3,d4]@4 ~@4, c4@2 ~@21 c2@2 ~@7",
AI: "d3@22 c2 ~@9, [g#3,c4]@7 ~", AJ: "[c2,e3,g3,a3]@12 ~@3 b2@2 [c3,g3,e4,g4]@10 ~@5",
AK: "~@7 g2 ~ [d4,f4]@4 ~@10 c3 ~ d#4@4 ~@2 g3, ~@11 [g3,c4,g4] ~@4", // Dm C5
AL: "~ [a3,c4,d4,f4]@2 ~@6 f2@3 ~@5 d4@2 d4@4 ~@9, ~@17 f4@5 ~@10", // Dm7
AM: "~ [f#3,g3,c4]@2 ~@14 [b2,a3,d#4]@2 ~@13, ~ a3 ~@15 c4 ~@14", AN: "~ f#4 ~@21 d#2 ~ [a3,c4]@4 ~@3, b3 ~@15",
AO: "~ [d3,c4,f4]@2 ~@20 g#4@7 ~@2, ~ d4 ~@20 [b3,f4,b4,c#5]@8 ~@2", // Dm7 C#7
AP: "~@7 c3 ~ d#4@4 ~@2 g3 ~ [b3,e4]@3 ~@10 d#3 ~, ~@3 [g3,c4,g4] ~@12", // E5 C5
AQ: "~ [b3,c4,e4,g4]@2 ~@6 c3@3 ~@5 d#4@2 e4@4 ~@9, ~@17 g4@5 ~@10", // Cmaj7
AR: "~ e4@3 ~@19 f3 ~ e4@5 ~@2, [c#3,g3,b3]@2 ~@22 [g3,b4]@5 ~@3, ~@25 c#4@3 ~@4", // C#m7b5 G
AS: "[~ [g3,b3,c#4,e4]@2 ~@6 a2@3 ~@5 c4@2 c#4@4 ~@8 [f#3,c4]@14 ~@3 f4@2 ~ f#4@12 ~, ~@17 e4@5 ~@8 f#4@14 ~@4 [d3,c4,a4]@10 ~@6, ~@31 a4@5 ~@28]/2", // C#m7b5 F#dim D7
AT: "f3@22 d2 ~@9, [b3,d4]@7 ~", // Bm
AU: "[~ [c4,e4,g4]@2 ~@6 c3@3 ~@5 e4@3 ~@3 [a2,c#3,e3,g3]@7 ~ [d4,a#4]@3 ~@15 [g2,b3,f4]@2 ~@13, ~@16 [c#3,g3,b3]@2 ~@31 d#4 ~@14]/2", // C A7 Gm G7 C#m7b5
AV: "[~@5 g4@2 ~ c5@5 e5@2 ~ f5@5 e5@2 ~ c5@5 g4@2 ~ f5@5 e5@2 ~ c5@5 g4@2 ~ f5@5 d#5@2 ~ e5@5 g5@11 ~@3 f#5@2 g5@2 ~ e5@10 ~ d5@2 e5@2 ~ c#5@10 ~ b4@2 c#5@2 ~ a4@5 e4@2 ~@9, [e2,e3]@8 ~ [g2,g3]@7]/4", // E G
AW: "[~@5 e4@2 ~ a4@2 ~ e4@2 a4@2 ~ c5@2 ~ a4@2 c5@2 ~ e5@5 a5@10 ~ d#5@2 ~ e5@2 [f5,a5]@2 ~ [e5,g5]@5 [d5,f5]@2 ~ [b4,d#5]@4 ~@4, [d2,f#3]@4 ~ [g2,f3]@3]/2", // F Em Dm B D G7
AX: "[c5,e5]@5 c5@10 ~ [a2,g3,c#4,f4,a#4]@16", AY: "[d2,f#3,c4,e4,b4] [g2,f3,b3,c#4,g#4]",
AZ: "[g4@5 g4@2 ~ c5@5 c5@2 ~ e5@5 e5@2 ~ f5@5 f5@2 ~ e5@5 c5@2 ~@22 a4 ~ g#4, [c2,c3]]/2", // C
BA: "[g4@5 g4@2 ~ c#5@5 c#5@2 ~ e5@5 e5@2 ~ f5@5 e5@2 ~@33, [a2,g3]]/2", // A7
BB: "~@5 e4@3 a4@5 a4@3 e5@5 e5@3 a5@3 ~@5, [f#3,c4]", BC: "~@5 a4@3 e5@5 e5@3 a5@5 a5@3 d6@3 ~@5, [g2,f3,b3]",
BD: "~@13 b5@3 c6@3 ~@10 f#5@3, ~ [e2,e3]", // E
BE: "[g5@3 ~@10 [a#4,d5]@3 [a4,c#5]@5 g#4@3 a4@5 ~@19 c5@3 ~@5 a4@5 ~@27 c5@3 ~@5, [g2,f3]@2 [c3,a#3]@2 ~ [f2,c3,a3]@3 ~ [f2,d3,g#3]@3, ~@29 d5@18 ~@14 c5@26 ~@9]/3", // A# A G7 C7 F Ddim
BF: "d5@5 c5@2 ~ g4@5 e4@2 ~ d4@3 ~@5 d4@3 ~@5, ~ [c2,g2,e3]", // C
BG: "d4@3 ~@5 d4@5 c#4@2 ~ d4@5 e4@2 ~@9, [g2,f3,a#3] [c3,e3,a#3]", // Gm7 C7
BH: "[~@8 d5@3 ~@5 c5@3 ~@5 a4@5 ~@8 [f#2,a3,e4]@11 [b2,a3,d#4]@16, [f2,a3] ~, ~@29 c5@34 ~]/2", // F#m7 B7 F
BI: "~@8 b4@5 g4@2 ~ b4@3 ~@5 a4@5 [d2,f3,g4]@3, [e2,g3]@16 [d#2,f#3]@13 ~@3", // G7 Em D#m
BJ: "~@8 d#5@3 e5@2 a5@3 d#5@3 e5@2 a5@3 d#5@3 e5@2 a5@2 d#5",
BK: "[e5@5 g4@2 ~@9 g4@3 ~@21 d#5@3 e5@2 a5@3 d#5@3 e5@2 a5@3 d#5@3 e5@2 a5@3, [c2,g2,e3]@29 [c2,g2,e3]@35]/2", // C
BL: "[e5@5 a4@2 ~@9 a4@3 ~@18 a4@3 e5@5 a5@3 e5@5 a4@3 e5@5 a5@3, ~ [a2,g3]@3]/2", // A7
BM: "e5@5 a4@3 e5@5 a5@3 e5@5 a4@3 e5@5 a5@3, [g#3,c4,e4]", // G#aug
BN: "[e5@5 a4@3 e5@5 a5@3 e5@5 ~@3 a4@5 d5@10 ~ c5@5 g4@2 ~ f3@8 [f#3,d#4,c5]@5 [g3,e4,c5]@3, [f3,b3]@4 ~ e3 ~@2, g4@21 g4@11 ~@16 a4@3 ~@13]/2", // Cdim C Fdim
BO: "~@13 [g2,g3]@19", BP: "~ [g#2,c4,f4]@2 ~@20 [c#2,e3,g#3,a#3]@7 ~@2, ~ d#4 ~@30",
BQ: "~@7 g#2 ~ f4@4 ~@9 [f3,c4,d#4,a#4] ~@8 f#2, ~@3 [a#3,d#4,a#4] ~@12", // Fsus4 D#5
BR: "~@7 [e3,a#3,c#4,g#4]@4 ~@12 f2 ~ d4@4 ~@3, ~@11 [f3,c4,g4] ~@4", // A#m7b5 Fsus2
BS: "[~@7 f2 ~ d4@4 ~@2 f3 ~ [a3,d#4]@3 ~@11 [a#3,f4]@3 ~@15 [c#3,c4,f4]@2 ~@6 g#4 ~@6, ~@6 [f3,c4,g4]@2 ~@41 c#4 ~@6 d4@2 ~@6]/2", // Adim A#5 C#maj7 Fsus2
BT: "~ [g#3,a#3,c#4,f4]@2 ~@6 d#3@3 ~@5 c#4@2 c#4@4 ~@9, ~@17 f4@5 ~@10", // A#m7
BU: "~@6 [f3,c4,d#4,a#4] ~@10 [a3,c4,d#4,g#4]@2 ~@6 f2@3 ~@4", // Fsus4 G#
BV: "[a#1,d3,f3,g#3]@12 ~@3 a2 ~@6 [c#3,g3,b3,d#4] ~@9", // A#7 D#aug
BW: "~@6 [f3,c4,d#4,a#4] ~@16 g#2 ~@7 g#4, ~@15 [a#3,e4,a#4,c#5]", // Fsus4 A#dim
BX: "~@7 a#4@9 [g#2,f3,a#3,c4]@5 ~@11, ~@3 [c4,f4,c5,d#5]@5 ~@8", // Fm F7
BY: "~@7 f2 ~ d4@4 ~@2 f3 ~@7 d#2 ~ c4@4 ~@3, ~@3 [f3,c4,f4] ~@7 [d#3,a#3,d#4] ~@4", // F5 D#5
BZ: "~ [b3,d#4,f4,g#4]@2 ~@6 g#2@3 ~@19 f2", // Fm7b5
CA: "~ [a#2,g#3,c#4]@2 ~@6 [c3,a#3,d#4]@2 ~@6 [c4,c#4,f4,g#4]@2 ~@4 [d4,g#4]@3 ~@6, ~ a#3 ~@7 c4 ~@22", // A#m7 Cm7 C#maj7 Ddim
CB: "~ f4 ~@22 [f3,g#3,c#4]@4 ~@4, a#3@2 ~@21 f2@2 ~@7", // C#
CC: "~@7 g#2 ~ g#4@4 ~@10 e4@7 ~@2, ~@11 [g#3,c#4,g#4,b4]@4 ~", // C#7
CD: "[~@9 [g#3,b3,d#4,f#4]@2 ~@12 d#4 [d2,f#3,a3,c4]@5 ~@2 [f3,a#3,d#4,g#4]@4 ~@20 a#3 ~ g#4@5 ~ [c#2,e3,g#3,a#3]@4 ~@13 [c#3,a#3,e4,g#4]@3 ~@13, ~@22 [f#3,c#4,f#4,a#4]@2 ~@32 [a#3,d#5]@5 ~@35, ~@19 f4 ~@12]/3", // G#m7 D7 Fm7 A#m7b5 F# D#5
CE: "~@7 a#4@25, ~@3 [c4,g4,c5,d#5]@13", CF: "~ a#4 ~@21 d3 ~ f4@4 ~@2 a3, d#4 ~@10 [a3,d4,a4] ~@4",
CG: "~ [a#3,d#4,f4,g#4]@2 ~@6 c#3@3 ~@5 e4@2 f4@4 ~@9, ~@17 g#4@5 ~@10", // A#sus4
CH: "~ [b3,d4,f4,g#4]@2 ~@6 g2@3 ~@11 g4@9, ~@11 [b3,f4,b4,d#5]@5", // Bdim Fm7b5
CI: "~ [a#3,d4,d#4,g4]@2 ~@6 c3@3 ~@11 f4 ~ f4@3 ~@4, ~@11 [g#3,d4,g#4,b4] [c#3,g#3,a#3] ~@3", // D#maj7 G#dim A#m7
CJ: "~@8 [g2,f3,a3,c4,e4,a4]@15 ~ [g2,g3,g4]@3 ~@5", CK: "~ g4 ~@15 a4@3 ~@12, d4 ~@7 [f3,c4,d4] ~@7",
CL: "~ [a3,d4,e4,g4]@2 ~@6 c3@3 ~@5 [a3,c4,d#4,f#4]@2 ~@5 [a#1,d3,f3,g#3]@5 ~@3", // Asus4 Adim A#7
CM: "[~ [a2,g3,c#4]@2 ~@20 d#4@7 ~ [c#3,g3]@14 ~@3 c4@2 ~ c#4@12 ~, ~ b3 ~@20 [g3,c#4,g4,a#4]@8 c#4@14 ~@4 [a2,g3,e4]@10 ~@6, ~@31 e4@5 ~@28]/2", // A7 C#dim Gdim A7
CN: "[~@7 a4@23 ~ [f3,b3]@14 ~@3 e4@2 ~ f4@11 ~ [c2,e3,g3]@14 ~@2 b2 ~@7 f#4 ~ f4@3 ~@3 c#3@23 e2 ~@9, ~@3 [c4,f#4,c5,e5]@12 f4@7 ~@2 [g2,b3,a4]@5 ~@15 [d3,g#3,c4] ~@19, ~@31 a4@5 ~@27 a3@11 ~@12 [a3,d#4,a4,c#5]@2 ~@7 [g3,b3]@29 ~@4]/4", // Fdim C F#m7b5 G Dm7b5 D#m7b5 G
CO: "~ [c4,e4,f#4,a4]@2 ~@6 d3@3 ~@5 a4 ~@4 [f3,c4,d4,a4]@5 ~@5, ~@8 e4 ~@7", // F#m7b5 Dm7
CP: "[~@5 e5@2 ~ f5@5 f#5@3 g5@5 ~ c5@3 d#5@2 e5@2 ~@8 e4@10 ~ f4@13 f#4@10 ~ g4@13 c4@10 ~, ~@5 c5@11]/3", CQ: "d#4",
CR: "e4", CS: "[e4,a4,d5,c6,c7]/2",
})).s("gm_piano").gain(0.15).pan(0.3)
// other · alto sax
const alto_sax = note(`<
~@10 A ~ B ~@4 C D E@2 F G H@3 ~@3 I J@3 K@2 E@2 L M N@2 O P Q@2 R@2 S T U V W@3 X Y@3 Z AA ~@3 AB AC AD AE@2 ~@4 AF@4
~@30 AG AH@2 AI@2 AJ@2 AK@2 AL@2 AM@2 AN AO AP AQ AR@4 AS AT AU AV AW@3 ~ AX AY ~@9
>`.pickRestart({
A: "~@8 g3@3 a3@2 c4@3 d#4@5 ~@3 d4@5 c4@3", B: "~@3 e4@3 ~@2 f#4@3 g4@2 g#4@3 a4@5 a#4@3 a4@5 a3@3",
C: "~@8 g4@10 ~ f4@2 d#4@3 a#3@3 f3@2 g#3@3", D: "g3@31 ~",
E: "[~@5 g4@6 ~@2 f4@3 d#4@5 a#3@3 g#3@3 f3@2 g3@34 ~, ~@11 g#4@2 ~@51, ~@6 g4 ~@25]/2",
F: "~@5 a#3@3 ~@5 g#3@2 ~ g3@5 f3@3 d#3@4 ~@4", G: "d#4@13 c4@18 ~",
H: "[~@5 g4@3 g#4@3 ~@2 a4@3 a#4@5 d#4@3 f#4@3 g4@2 d#4@10 ~ a#4@2 ~@3 a4@10 ~ g#4@2 ~@3 g4@5 ~@2 g4@2 ~@2 f4@5 a#3@3 d#4@5 f4@2 ~@9, ~@67 g#4@2 ~@27]/3",
I: "~@5 g3@2 ~@2 a#3@2 ~@2 c#4@2 ~ d#4@15 ~, ~@4 f#3@2 ~ g#3@2 ~@3 c4@2 ~ d4@2 ~@15, ~@8 a3@2 ~ b3@2 ~@19",
J: "[~@3 c4@2 d#4@3 f4@3 f#4@2 f4@3 d#4@4 ~ c4@2 ~@6 g4@10 ~@2 d#4@2 ~@2 f#4@2 ~ g#4@4 ~ d4@3 ~@5 a4@15 ~@2 f4 [d#4,e4] d4@5 f4@2 ~ c4@5 a#3@2 ~, ~@40 d4@2 ~ e4@2 ~@51, ~@44 f4@2 ~ g4@2 ~@47]/3", // Emaj7
K: "[~@8 f#4@3 g4@2 g#4@3 g4@3 d#4@2 a#3@3 g#3@3 f#3@2 g3@34 ~]/2", L: "~@19 c4@2 d#4@3 e4@3 c5@2 g4@3",
M: "a#4@13 g#4@3 g4@5 f4@2 ~ d#4@3 ~@5",
N: "[~@5 g4@3 g#4@5 a4@3 a#4@5 d#4@3 f#4@3 g4@2 d#4@6 ~@2 g#4 a4 [a#4,b4] c5@5 g#4@8 a4@2 ~ f#4@5 d#4@2 ~, ~@55 g#4@2 ~@7]/2", // Bmaj7
O: "~@4 d#5 e5 f5 d#5 e5 c5 g4 f#4 f4 g4 d4 d#4", P: "e4@13 c5@2 ~@17",
Q: "[~@5 c5@3 d#5@3 e5@2 f5@3 e5@3 c5@2 g4@3 f4@3 d#4@2 e4@16 ~@3 c#4@2 e4@2 c#4@2 e4@2 g4@2 e4@2 g4@2 a4@2, ~@47 d4@2 ~@15]/2",
R: "[a#4@5 a4@2 ~@14 a4@3 c5@5 e5@15 ~@3 [f4,g4] e4@3 f4@2 d4@2 ~@9]/2", // Fsus2
S: "~@8 e4@3 f4@2 f#4@3 g4@3 c4@2 d#4@3 e4@3 c4@2 c#4@3", T: "d4@5 g3@10 ~ c4@5 a3@2 ~@9",
U: "~@5 e4@5 ~ g4@5 g#4@5 g5@5 ~ e5@5", V: "d5@18 ~ d#4@2 e4@3 g4@3 c5@2 g4@3",
W: "[f#4@3 f4@2 d#4@3 c4@5 c4@2 d#4 e4@5 g4@3 ~@5 b4@17 ~ [a4,a#4] b4@5 f#4@3 e4@5 b3@16 ~@3 g#3@5 a3@2 ~@9, ~@79 b3@2 ~@15]/3", // A#maj7
X: "~@5 e5@7 ~@2 a4 [f4,g4] e4@5 d4@2 ~@9", // Fsus2
Y: "[~@5 e4@3 f4@5 f#4@3 g4@5 c4@3 d#4@3 e4@2 c4@10 ~ g4@2 ~@3 f#4@10 ~ f4@2 ~@3 e4@5 ~@3 g3@3 d4@5 g3@3 c4@5 d#4@3 ~@5 d4@2 ~, ~@67 f4@2 ~@27, ~@34 e4 ~@13]/3",
Z: "d4@22 ~@2 a3@3 ~@5", AA: "c4", AB: "e4 d#4", AC: "d4 c4", AD: "e4 c#4", AE: "[d4@5 ~@3]/2",
AF: "[~@8 g4@5 a#4@48 g4@42 ~@25]/4", AG: "c5@13 g#4@3 d#4@5 c#4@3 ~@5 c4@2 ~",
AH: "[~@29 c5@8 c5@3 c#5@5 c#5@2 ~ c5@2 ~ f4@2 g4@3 ~@8]/2",
AI: "[~@5 d#4@3 ~@5 c#4@3 c4@5 a#3@3 g#3@5 g#4@16 f4@18 ~]/2",
AJ: "[~@3 d#4@2 g#4@3 c5@3 c#5@2 c5@3 g#4@3 d#4@2 c#4@3 b3@5 g#3@34 ~]/2",
AK: "[~@5 b4@3 g4@5 d#4@3 f#4@5 b4@2 ~ c#4@5 c4@34 ~, ~@23 f#4@2 ~@39]/2",
AL: "[~@5 d#4@3 b4@3 c5@2 c#5@3 c5@3 g#4@2 d#4@3 c#4@3 b3@2 c4@34 ~]/2",
AM: "[~@5 d#4@3 ~@5 c#4@3 c4@5 a#3@3 g#3@5 g#4@16 f4@19]/2", AN: "~@5 c4@3 c#4@5 d4@3 d#4@5 g#3@2 ~ b3@5 b3@3",
AO: "g#3@31 ~", AP: "~@3 g#3@2 c#4@3 d#4@3 f#4@2 g#4@3 b4@5 g#4@3 ~@5 f4@3", AQ: "a#4@23 ~@9",
AR: "[~@16 b3@5 ~@3 a#3@5 d#3@47 ~@4 g#4@5 ~@3 f4@5 g#3@34 ~]/4", AS: "g#4", AT: "g4@16 g4@13 d#4@2 ~",
AU: "~@8 g4@3 a4@2 c5@3 d#5@3 e5@2 c5@3 g4@3 c#4@2 d#4@3", AV: "e4@13 c5@18 ~",
AW: "[~@5 e5@6 ~@2 d5@3 c5@5 g4@3 f4@3 d4@2 e4@24 ~@3 c4@5 a3@31 ~@4, ~@11 f5@2 ~@83, ~@12 e5@2 ~@41 c#4@2 ~@39]/3",
AX: "~@5 g4@6 ~@2 f4@3 e4@5 d4@2 ~ c4@3 ~@5, ~@6 g4 ~@9", AY: "c5@5 a4@26 ~",
})).s("gm_alto_sax").gain(0.33).pan(0.6)
// other · alto sax · soft notes
const alto_sax_soft = note(`<
~@10 A ~ B ~@19 C ~@7 D ~@3 E ~ F ~@6 G H ~@3 I ~ J ~@11 K ~@9 L@6 ~@37 M ~@6 N ~@2 O ~@4 P@2 Q R S@2
>`.pickRestart({
A: "~@6 e4 [a3,c4] ~@24", B: "~@5 f4@3 ~@24", C: "~@12 g#4 [f#4,g4] ~@18", D: "~@3 [e4,f4] f#4 g4 ~@26",
E: "~@13 d#4@2 ~@17", F: "~@12 d#5 [b4,c#5] a4 ~@17", G: "~@13 c4@2 ~@17", H: "~@12 d#5 [b4,c#5] ~@18",
I: "~@21 c#4 c4 [a#3,b3] ~@8", J: "d4@5 d4@2 ~@25", K: "~@7 f#4 ~@24", L: "~@13 d#4@3 e4@5 e4@2 ~@9",
M: "~@15 [f#4,g4] ~@16", N: "~@21 d4@2 ~@9, ~@10 d#4 ~@5", O: "~@11 g#4@2 ~@19",
P: "[~@5 e4@11 f4@13 f#4@11 g4@13 c4@11]/2", Q: "d#4", R: "e4", S: "d4/2",
})).s("gm_alto_sax").gain(0.17).pan(0.6)
// other · alto sax
const alto_sax_2 = note(`<
// … 399 more lines
More by Duke Ellington
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.