0:00/0:00
// Salt Peanuts — Gillespie Dizzy
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 195 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(120/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 · "Jazz Bass"
const bass = note(`<
A B C ~ A B C D E@2 F@2 G H I ~ J K@2 L J M@2 L J K@2 L J M@2 L N O P Q@2 R S T J K@2 L J K@2 L U V W X Y Z AA ~ AB AC
~@2 AD AE ~@2 AF@2 AG AH AG AI ~@4 AJ AK AL AM AN AO AL AP AQ AR AS AT AU AV AS@2 AW AX Q AY AZ BA BB T AL BC BD BE BF
BG AL BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY ~@7 BZ CA CB CC CD BU CE ~@2 J K@2 L J K@2 L J K@2 L J K@2
L N CF CG Q@2 R CH CI J M@2 L J M@2 L CJ CK CL X Y Z AA ~ AB AC ~@2 AD AE ~@2 AF@2 CM AG@2 CN ~ CO
>`.pickRestart({
A: "c2 ~@8 gb1 ~@2", B: "~@6 c2 ~@5", C: "~@3 gb1 ~@8", D: "~@9 c2 ~@2", E: "gb1 ~@8 c2 ~@2",
F: "gb1 ~@5 gb1 ~@2 c2 ~@2", G: "gb1 ~@8 bb1 ~@2", H: "a1 ~@2 ab1 ~@2 g1 ~@2 gb1 ~@2", I: "f1 ~@11", J: "f1 c2 a1 c2",
K: "[bb1@9 ~ b1 ~@7 c2@11 ~ d2@6 e2@6 g2@6]/2", L: "f2 e2 d2 c2", M: "[bb1@9 ~ b1 ~@7 c2@12 d2@6 e2@6 g2@6]/2",
N: "e2@4 e1 ~ gb2@6 g2@6 b2@4 e2@2", O: "eb2@4 bb1 ~ f2@6 g2@4 bb1 ~@5 bb1 ~, ~@3 bb2",
P: "d2@4 a1@2 a2@5 ~ f2@6 d2@4 a1 ~", Q: "d2 e2 f2 a2", R: "db2 ab2 f2 db2", S: "c2@2 c1 c2@3 g2@3 b1@3",
T: "c2@4 g1 ~ d2@6 e2@4 ~ g1 g2@4 g1 ~", U: "f2@4 c2 ~ g2@6 a2@4 c2 ~@5 c2 ~, ~@3 c3",
V: "g2@5 d2 a2@6 bb2@4 d2 ~ d3@4 d2 ~", W: "~@4 e1 ~ e2@4 e1 ~ ab2@6 ab2@6, a1 ~@3", X: "g2@2 g1 g2@3 gb2@3 db3@3",
Y: "f2!2 b1 gb2", Z: "bb1 f2 eb2 bb2", AA: "a2@3 e2@3 ab2@2 g2 gb2@2 f2", AB: "~@2 f2 ~@3 e2 ~@5",
AC: "eb2 ~@4 d2 ~@3 db2@2 c2", AD: "~@2 eb2 ~@3 d2 ~@5", AE: "db2 ~@4 c2 ~@3 gb2@2 f2",
AF: "[~@2 c2@4 c2@4 c2@4 c2 ~]/2", AG: "c2@2 c2@4 c2 ~", AH: "c2@3 c2@6 c2 ~@2", AI: "c2@6 c2@11 ~ gb1@4 f1@2",
AJ: "f2@5 c2 g2@6 a2@4 c2 ~ c3@5 c2", AK: "g2 ~ d3@2 c2@2 c2@2, ~@5 g2@2 ~@17", AL: "f2 g2 a2 c3",
AM: "g2@3 ~ g2@2 d3@6 c2@3 ~@3 g2@6, ~@17 c2@2 ~@5", AN: "a1@3 a1@3 d2@2 d1 d2@3",
AO: "~@4 d2 ~ d3@4 d2 ~ c2@6 c2@6, g2 ~@3", AP: "g2!2 gb2!2", AQ: "f2@4 c2 ~ c3@5 ~ a2@6 f2@5 c2",
AR: "g2@6 g2@6 ~@4 g1 ~ g2@4 g1 ~, ~@2 c2 ~", AS: "f2 c3 a2 f2", AT: "g2@5 ~ db2@6 c2@6 g2@6, ~@5 g1@2 ~@17",
AU: "a2@6 e2@6 d2@3 ~ d2 ~ gb2@6", AV: "g2@3 ~ g2 ~ b1@6 c2@6 e2@6", AW: "e2@4 b1 ~ gb2@6 g2@4 b1 ~@5 b1 ~, ~@3 b2",
AX: "eb2 f2 g2 bb2", AY: "eb2@2 eb1 eb2@3 d2@2 d1 d2@3", AZ: "d2 a2 f2 d2",
BA: "g2@6 ab2@6 g2@5 ~ g2@6, ~@17 g1@2 ~@5", BB: "g2@3 ~ g2 ~ c2@6 db2@6 db2@6", BC: "g2!2 c2 g2",
BD: "f2@5 c2 g2@6 a2@4 ~ c2 c3@4 c2 ~", BE: "g2 d3 c2!2", BF: "a1@4 a0 ~ a1@6 ~@4 a1 ~ a2@4 a1 ~, ~@2 d2 ~",
BG: "g2@4 g1@2 g2@6 c2@6 e2@5 ~", BH: "g2 d3 c3 g2", BI: "f2@6 c3@6 ~@4 eb2 ~ eb3@4 eb2 ~, ~@2 ab2 ~",
BJ: "g2@3 ~ g2 ~ b1@6 c2@6 c2@6", BK: "f2@3 db2@3 d2@2 d1 d2@3", BL: "g2@6 db2@6 ~@4 g1 ~ g2@4 g1 ~, ~@2 c2 ~",
BM: "a1@2 a0 a1@3 d2@2 d1 d2@3", BN: "g2!2 c2 ab1", BO: "a1@3 a2@3 ab2@2 ~ ab2@2 g2", BP: "~@6 c2@11 ~ gb2@3 ~@3",
BQ: "f2@6 f2@6 ab2@3 ~ ab2 ~ gb2@6", BR: "~@4 d2 ~ d3@4 d2 ~ c2@6 g2@6, g2 ~@3", BS: "f2!2 d3 a2",
BT: "g2@4 g1@2 g2@6 ~@4 g1 ~ g2@4 g1 ~, ~@2 c2 ~", BU: "~@4 e1 ~ e2@4 e1 ~ d2@6 a2@6, a1 ~@3", BV: "g2 d3 c2 g2",
BW: "g2@6 g2@6 c2@3 ~ c2 ~ e2@6", BX: "f2@3 ~ f2@2 c3@6 c2@4 c1@2 c2@6", BY: "db3@3 ab2@3 d2@2 ~ eb2@2 e2",
BZ: "~@6 c2@11 ~ gb2@2 ~@4", CA: "f2 g2 ab2 gb2", CB: "g2 db2 c3 g2", CC: "f2@3 c3@3 d2@2 d1 d2@3",
CD: "g2@3 ~ g2 ~ b1@6 c2@3 ~ c2 ~ ab1@6", CE: "g2@3 d3@3 c2@2 f2@3 ~", CF: "eb2@4 bb1 ~ f2@6 g2@4 bb1 ~ bb2@4 bb1 ~",
CG: "d2@4 a1@2 a2@5 ~ f2@6 d2@4 ~ a1", CH: "c2@5 ~ c2@6 g2@6 b1@6, ~@5 c1@2 ~@17",
CI: "c2@4 g1 ~ d2@6 e2@4 g1 ~@5 g1 ~, ~@3 g2", CJ: "f2@5 c2 g2@6 a2@4 c2 ~ c3@4 c2 ~",
CK: "g2@4 d2 ~ a2@6 bb2@4 d2 ~ d3@5 d2", CL: "a1@5 e1 e2@4 e1 ~ ab2@6 ab2@6", CM: "c2@6 c2@11 ~ c2@3 ~@3",
CN: "c2@5 ~ c2@11 ~ gb1@4 f1@2", CO: "~@9 f2 ~@2",
})).s("gm_acoustic_bass").gain(0.32).pan(0.3)
// chords · piano
const piano = note(`<
A B C ~ A B C D E@2 F G H I J K L M@3 L N@3 L N@3 L N@3 O@3 P ~ Q R S L N@3 L N@3 T U V W@2 X@2 ~ Y Z AA AB AC AD ~@2
AE@6 ~@4 AF AG AH AI AJ AK AL AM AN AO AF AP AQ AR@2 AS AT AU@2 AV AW AX AY AZ BA BB AS BC BD BE BF BG ~@3 BH@2 BI BJ
BK ~@3 BH@2 BI BL BM BN ~@7 BO ~@3 BH@2 BP BQ BR L M@3 L N@3 L N@3 L N@3 BS@3 P ~ Q R S L N@3 L M@3 T U V W@2 X@2 ~ BT
BU AA AB AC BV ~@2 AE@6 BQ BW
>`.pickRestart({
A: "[c3,bb3,e4] ~@8 [gb2,e4,c5] ~@2", B: "~@6 [c3,bb3,e4] ~@5", C: "~@3 [gb2,e4,c5] ~@8", D: "~@9 [c3,bb3,e4] ~@2",
E: "[gb2,e4,c5] ~@8 [c3,bb3,e4] ~@2", F: "[gb2,e4,c5] ~@5 [gb2,bb3,e4] ~@2 [c3,e4,c5] ~@2",
G: "[gb2,bb3,e4] ~@5 [gb2,bb3,e4] ~@2 [c3,e4,c5] ~@2", H: "[gb2,a3,d4,g4] ~@8 [bb2,d4,g4] ~@2",
I: "[a2,db4,ab4] ~@2 [ab2,c4,f4] ~@2 [g2,b3,gb4] ~@2 [gb2,bb3,eb4] ~@2", J: "[f2,a3,e4]@2 ~@5 f4@3 ~@2 f5@3 f4@2 ~@7",
K: "f4@3 ~@2 f5@3 f4@2 ~@14", L: "[f2,a3,c4,d4,f4]@11 ~ [a2,c4,d4,f4,a4]@11 ~",
M: "[[bb2,d4,f4,g4,bb4]@9 ~ [b2,d4,f4,ab4,b4] ~@7 [d4,f4,a4,c5]@11 ~@2 f4@2 ~@3 f5@3 f4@2 ~@7 f4@2 ~@3 f5@3 f4@2 ~@14, ~@6 c3@13 ~@5]/3", // Gm7 Bdim Dm7
N: "[[bb2,d4,f4,g4,bb4]@9 ~ [b2,d4,f4,ab4,b4] ~@7 [d4,f4,a4,c5]@11 ~@2 f4@2 ~@3 f5@3 f4@2 ~@7 f4@2 ~@3 f5@3 f4@3 ~@13, ~@6 c3@13 ~@5]/3", // Gm7 Bdim Dm7
O: "[~ [a3,b3,d4,gb4]@21 b4@4 c5@6 ~@14 [f3,c4,e4,a4]@26, ~@22 [db4,g4,eb5]@9 ~@41]/3", P: "[f3,c4,e4,a4]@11 ~",
Q: "~ [f3,b3,eb4,bb4]@23", R: "~ [e3,bb3,d4,g4]@11 ~ [f3,a3,bb3,d4]@11", S: "~ [gb3,g3,bb3,db4]",
T: "[f2,f3,a3,d4,g4]", U: "[g2,f3,bb3,d4,g4]",
V: "[a2,g3,c4,e4,a4]@11 ~ [gb3,b3,eb4,gb4,bb4] ~@9 [f3,bb3,d4,f4,a4]@2", // Am7 Bmaj7 Bbmaj7
W: "[~@11 [f3,a3,c4,e4,a4]@7 [db3,a3,db4,f4]@6]/2", // Fmaj7 Dbaug
X: "[[db3,ab3,c4,f4]@9 [eb3,g3,db4,f4,a4]@12 [a2,g3,c4,e4,g4]@15 [ab2,gb3,c4,f4,bb4] ~@9 [f2,f3,a3,d4,f4]@2]/2", // Dbmaj7 Am7 Fm Dm
Y: "~@2 [f3,eb4,g4,c5] ~@3 [e3,ab3,d4,gb4,b4] ~@5, ~@4 a3 ~@19", // Cm E7
Z: "[eb3,g3,db4,f4,bb4] ~@4 [d3,c4,e4,a4] ~@3 [db3,f3,b3,eb4,ab4]@2 [c3,e3,bb3,d4,g4], ~@10 gb3 ~@13", // Eb7 Am Db7 C7
AA: "~@12 [c4,gb4] ~@5 [c4,gb4] ~@5", AB: "~@6 [gb4,c5] ~@5 [gb4,c5] ~@11",
AC: "~@2 [eb3,g3,db4,f4,b4] ~@3 [d3,gb3,c4,e4,bb4] ~@5", // Ebaug Daug
AD: "[db3,f3,b3,eb4,a4] ~@4 [c3,e3,bb3,d4,ab4] ~@3 [e3,bb3,db4,eb4,a4]@2 [f3,a3,g4], ~@22 d4 ~", // Dbaug Caug A F
AE: "[~@6 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@12 [c2,c3]@11 ~ gb2@4 f2@2]/6", // C
AF: "~ [d3,a3,c4,g4]", AG: "~ [f3,a3,bb3,d4]@11 ~ [e3,bb3,d4,a4]@11", AH: "~@4 [d3,a3,c4,g4]@3 ~",
AI: "~ [f3,bb3,d4,g4]@11 ~ [e3,g3,bb3,d4]@11", AJ: "~ [g3,c4,e4,b4]@9 ~@3 [gb3,bb3,c4,eb4]@9 ~@2",
AK: "~ [f3,bb3,d4,g4]@11 ~ [e3,bb3,db4,ab4]@11", AL: "~@4 [d3,a3,c4,f4]@3 ~",
AM: "~ [f3,bb3,d4,a4]@11 ~ [f3,ab3,bb3,db4]@11", AN: "~ [d3,a3,c4,g4]@23",
AO: "~ [f3,bb3,d4,g4]@9 ~@3 [e3,a3,bb3,d4]@9 ~@2", AP: "~ [f3,bb3,d4,a4]@9 ~@3 [e3,a3,bb3,d4]@3 ~@8",
AQ: "~ [g3,a3,c4,e4]@2 ~@10 [gb3,a3,c4,eb4]@11", // Am7 Gbdim
AR: "[~ [f3,bb3,d4,g4]@9 ~@3 [e3,bb3,db4,ab4]@9 [d3,a3,c4,f4]@24 ~@2]/2", AS: "~ [d3,a3,c4,f4]",
AT: "~ [g3,d4,e4,b4]@21 ~@2", AU: "[~@12 [g3,c4,db4,f4]@9 ~ [f3,c4,e4,a4]@4 ~@8 [f3,c4,e4,a4]@2 ~@12]/2",
AV: "~ [g3,bb3,db4,f4]@9 ~@3 [f3,c4,d4,a4]@11", AW: "[f3,c4,d4,a4] ~@4 [f3,c4,d4,a4] ~@6",
AX: "~ [f3,c4,e4,a4]@9 ~@3 [f3,b3,d4,a4]@11", AY: "~ [f3,bb3,d4,a4]@11 ~ [f3,b3,eb4,bb4]@9 ~@2",
AZ: "~ [gb3,bb3,db4,g4]@3 ~@20", BA: "~ [e3,g3,a3,c4]", BB: "~ [f3,bb3,d4,g4]@9 ~@3 [e3,bb3,d4,g4]@9 ~@2",
BC: "~ [f3,g3,bb3,d4]@11 ~ [e3,bb3,d4,g4]@3 ~@8", BD: "~@13 [gb3,bb3,c4,eb4]@11",
BE: "~ [f3,bb3,d4,a4]@9 ~@3 [e3,bb3,db4,ab4]@3 ~@8", BF: "~ [e3,a3,c4,g4]@21 ~@2",
BG: "~ [f3,bb3,d4,a4]@9 ~@3 [e3,bb3,db4,g4]@11", BH: "[~@7 [a2,g3,c4,e4]@5 [d3,gb3,c4,e4]@4]/2",
BI: "[g2,f3,bb3,d4] [c3,e3,bb3,d4]", // Gm7 C7
BJ: "~@3 [a2,db4,gb4,a4]@9 [ab2,gb3,c4,f4,ab4]@8 ~ [f3,b3,e4] ~@2, ~@21 [g2,g4]@2 ~", // Gbm Fm E G
BK: "~@6 [c3,e3,bb3,d4,gb4,a4]@11 ~ [gb2,e3]@2 ~@4, ~@18 [bb3,d4] ~@5", // D7 Gb7 Bb
BL: "[g2,f3,bb3,d4]@12 [c3,e3,d4]@8 ~ [f2,f3,d4]@2 ~, ~@21 a3 ~@2", BM: "~@6 [c3,e3,bb3,d4,g4] ~@5",
BN: "[db3,f3,b3,eb4,ab4] ~@4 [d3,gb3,c4,e4,a4] ~@3 [eb3,g3,db4,f4,bb4]@2 [e3,g3,d4,gb4,a4]", // Db7 D7 Eb7 D
BO: "~@7 [c3,e3,bb3,d4,gb4,a4]@11 ~ [gb2,e3,bb3,d4]@2 ~@3", // D7 Gbaug
BP: "[g2,f3,bb3,d4]@12 [c3,e3,bb3,d4]@8 ~ [f2,f3,a3,d4] ~@2", BQ: "~@7 f4 ~@4 f5@3 f4 ~@8",
BR: "f4@2 ~@3 f5@3 f4 ~@15",
BS: "[~ [a3,b3,d4,gb4]@21 ~@5 c5@6 ~@13 [f3,c4,e4,a4]@26, ~@22 [db4,g4]@9 ~@41, ~@11 b4@2 ~@23, ~@23 eb5@9 ~@40]/3", // Bm7 Fmaj7 Dbdim
BT: "~@2 [f3,a3,eb4,g4,c5] ~@3 [e3,ab3,d4,gb4,b4] ~@5", // F7 E7
BU: "[eb3,g3,db4,f4,bb4] ~@4 [d3,gb3,c4,e4,a4] ~@3 [db3,f3,b3,eb4,ab4]@2 [c3,e3,bb3,d4,g4]", // Eb7 D7 Db7 C7
BV: "[db3,f3,b3,eb4,a4] ~@4 [c3,e3,bb3,d4,ab4] ~@3 [e3,bb3,db4,eb4,a4]@2 [f3,a3,d4,g4]", // Dbaug Caug A Dm
BW: "f4 ~@4 f5@3 f4 ~@9 [eb3,a3,d4,f4,ab4,b4]@2 ~@4", // Fm7b5
})).s("gm_piano").gain(0.24).pan(0.3)
// other · alto sax
const alto_sax = note(`<
A B C ~ A B C D E@2 F G H I J K L M N O L M N O L M N O L M N P Q R S T U V W@2 L M N O L M N X Y Z AA AB@2 AC@2 ~ AD
AE AF AG AH AI AJ AK AL ~ AM AN AM AO ~@4 AP ~@31 AQ@2 AR AS AJ AT@2 AU AQ@2 AR AS AJ AV AW AX AY ~@7 AU AQ@2 AR AS AJ
AZ ~ K L M N O L M N O L M N O L M N P Q R S T U V W@2 L M N O L M N X Y Z AA AB@2 AC@2 ~ AD AE AF AG AH AI AJ AK AL ~
AM BA AM BB ~ BC
>`.pickRestart({
A: "e4 ~@8 c5 ~@2", B: "~@6 e4 ~@5", C: "~@3 c5 ~@8", D: "~@9 e4 ~@2", E: "c5 ~@8 e4 ~@2", F: "c5 ~@5 e4 ~@2 c5 ~@2",
G: "e4 ~@5 e4 ~@2 c5 ~@2", H: "g4 ~@8 g4 ~@2", I: "ab4 ~@2 f4 ~@2 gb4 ~@2 eb4 ~@2", J: "e4 ~@11", K: "~@11 c5",
L: "f5@2 f5 e5 ~@2 f5@2 c5 ~@2 c5", M: "f5@3 ~@3 e5@4 f5@2 ~@12", N: "~@3 f5 ~@4 f5 ~@3", O: "f5 ~@4 f5 ~@5 c5",
P: "f5 ~@4 f5 ~@6", Q: "~@9 a3 db4 e4", R: "bb4 ~@2 a4@2 eb4@4 db4@2 d4", S: "~@8 db5 d5@2 a4", T: "db5@2 d5 ~@9",
U: "~@9 g3 b3 d4", V: "ab4 ~@2 g4@2 db4@4 b3@2 c4", W: "[~@6 a4 ~@4 gb4@9 ~@3 c5]/2", X: "f5 ~@4 f5 ~@5 a3",
Y: "f3@2 ab3 a3@2 c4 f4@2 eb4 d4@2 c4", Z: "bb3@2 ab3 a3@2 c4@2 d4 c4 bb3@2 ab3", AA: "a3 ~@11",
AB: "[~@5 a4 ~@2 a4 ~@2 a4@4 g5@2 f5 eb5@2 d5 c5@2 a4]/2", AC: "[bb4@3 eb5@2 db5@6 c5@4 f5@2 c5 bb4@2 ab4 a4@2 f4]/2",
AD: "c5@2 f5 c5@2 b4 eb5@3 b4@2 bb4", AE: "eb5@2 bb4 a4@2 d5 a4@2 ab4 db5@2 c5", AF: "~@6 gb4 ~@2 gb4 ~@2",
AG: "~@3 c5 ~@2 c5 ~@5", AH: "bb4@2 eb5 bb4@2 a4 d5@3 a4@2 ab4", AI: "db5@2 ab4 g4@2 c5 g4@2 ab4 db5@2 d5",
AJ: "~@2 ab4 a4 c5 e5 g5@2 f5 e5@2 d5", AK: "c5@2 bb4 a4@2 g4 f4@2 e4 d4@2 db4", AL: "c4 ~@11",
AM: "~@3 ab4@2 a4 bb4@2 ab4 a4@2 f4", AN: "ab4@5 a4@3 f4 ab4 ~@2", AO: "ab4@9 ~ a4@6 f4@2 ab4@4 g4@2",
AP: "c5@15 ~@5 gb4@2 ~@2, ~@15 b4@2 a4@2 g4@2 ~@3, ~@8 bb4 ab4 ~@2",
AQ: "[f4@6 f4@5 f4@4 d5@2 ab4 a4@2 g4 gb4 ~@2]/2", AR: "~ f4@2 ab4@3", AS: "f4@5 d4 ~@6",
AT: "[c5@2 bb4 a4@2 bb4 d5@2 bb4 g4@2 c5@10 ~@3]/2", AU: "~@6 a4@10 ~ g4 gb4@2 ~@4, ~@8 ab4 ~@3",
AV: "c5@2 bb4 a4@2 bb4 d5@2 bb4 g4@2 c5", AW: "~@2 bb4 a4@2 c5 bb4@2 ab4 a4@2 f4", AX: "~@6 g4 ~@5",
AY: "ab4 ~@4 a4 ~@3 bb4@2 a4", AZ: "c5@2 bb4 a4@2 c5 bb4@2 ab4 a4@2 f4", BA: "ab4@9 ~ a4@6 f4@2 ab4@2 ~@4",
BB: "ab4@5 a4@3 f4 ab4@2 g4", BC: "~@9 b4 ~@2",
})).s("gm_alto_sax").gain(0.54).pan(0.6)
// other · alto sax
const alto_sax_2 = note(`<
A B C ~ A B C D E@2 F G H I J K L M ~ K L M ~ K L M ~ K L M ~@8 N@2 L M ~ K L M ~@5 O@2 P@2 ~@6 Q R S T ~@4 U ~@12 V
~@7 W X Y Z AA AB AC AD AE AF ~@6 AG@2 AH AI ~@3 AJ AG@2 AH AI ~@3 AK AL ~@7 AM AG@2 AH AI ~@3 K L M ~ K L M ~ K L M ~
K L M ~@8 N@2 L M ~ K L M ~@5 O@2 P@2 ~@6 Q R S T ~@4 U ~ AN
>`.pickRestart({
A: "c4 ~@8 a4 ~@2", B: "~@6 c4 ~@5", C: "~@3 a4 ~@8", D: "~@9 c4 ~@2", E: "a4 ~@8 c4 ~@2", F: "a4 ~@5 c4 ~@2 a4 ~@2",
G: "c4 ~@5 c4 ~@2 a4 ~@2", H: "e4 ~@8 e4 ~@2", I: "e4 ~@2 c4 ~@2 d4 ~@2 bb3 ~@2", J: "c4 ~@11", K: "~@11 a4",
L: "c5@2 c5 b4 ~@2 c5@2 g4 ~@2 g4", M: "bb4@3 ~@3 db5@4 d5@2 ~@12", N: "[~@6 f4 ~@4 db4@9 ~@3 a4]/2",
O: "[~@5 e4 ~@2 e4 ~@2 e4@7 f4@6]/2", P: "[f4@6 bb4@4 a4@11 g4@15 f4@4 e4@2 eb4@4 d4@2]/2", Q: "~@9 bb4@2 a4",
R: "~@2 e4 f4 a4 c5 e5@2 d5 c5@2 bb4", S: "a4@2 g4 f4@2 e4 d4@2 db4 c4@2 b3", T: "bb3 ~@11", U: "~@9 eb4@2 d4",
V: "~@2 c5 ~@3 c5 ~@4 bb4", W: "~@12 e4@10 [f4,gb4,g4] [ab4,a4]", X: "bb4 a4", Y: "f4@23 ~", Z: "f4@9 ~ f4@2 ~@12",
AA: "~ d4", AB: "f4 a4", AC: "a4 bb4", AD: "a4@23 ~", AE: "f4@2 f4 e4 ~@2 f4@2 c4 ~@3", AF: "a4 ~@4 a4 ~@3 a4 ~@2",
AG: "[d4@6 c4@5 d4@7 d4@2 eb4 d4 ~@2]/2", AH: "~ d4@2 f4@3", AI: "d4@5 bb3 ~@6",
AJ: "~@6 gb4@9 ~@2 eb4 d4@2 ~@4, ~@15 f4@2 ~@7, ~@8 e4 ~@3", AK: "~@6 d4 ~@5", AL: "eb4 ~@4 e4 ~@3 f4@2 gb4",
AM: "~@6 gb4@9 ~@3 d4@2 ~@4, ~@15 f4@2 eb4@2 ~@5, ~@8 e4 ~@3", AN: "~@9 ab4 ~@2",
})).s("gm_alto_sax").gain(0.44).pan(0.7)
// other · tenor sax
const tenor_sax = note(`<
A B C ~ A B C D E@2 F G H I J K L M ~ K L M ~ K L M ~ K L M ~ N@3 ~ O@3 P@2 L M ~ K L M ~@5 Q@2 R@2 ~@6 S T U V ~@4 W
~@4 X ~@7 Y ~@7 Z AA AB AC AD AE@2 AF AG AH ~@6 AI@2 AJ AK ~@2 AL AM AI@2 AJ AK ~@2 W B AN ~@7 AM AI@2 AJ AK ~ W ~ K L
M ~ K L M ~ K L M ~ K L M ~ AO@3 ~ O@3 P@2 L M ~ K L M ~@5 Q@2 R@2 ~@6 S T AP V ~@4 W ~ AQ
>`.pickRestart({
A: "e3 ~@8 b3 ~@2", B: "~@6 e3 ~@5", C: "~@3 b3 ~@8", D: "~@9 e3 ~@2", E: "b3 ~@8 e3 ~@2", F: "b3 ~@5 e3 ~@2 b3 ~@2",
G: "e3 ~@5 e3 ~@2 b3 ~@2", H: "a3 ~@8 ab3 ~@2", I: "b3 ~@2 gb3 ~@2 a3 ~@2 e3 ~@2", J: "c3 ~@11", K: "~@11 db4",
L: "g4@2 g4 gb4 ~@2 g4@2 d4 ~@2 d4", M: "f4@3 ~@3 g4@4 ab4@2 ~@12",
N: "[~@22 gb4@23 ~@3 db4@18 ~@4 c4@2, ~@47 d4@2 ~@23]/3", O: "[~@22 e4@23 ~@3 b3@18 ~@4 bb3@2, ~@47 c4@2 ~@23]/3",
P: "[~@6 a3 ~@4 e3@9 ~@3 db4]/2", Q: "[~@5 bb3 ~@2 bb3 ~@2 a3@13]/2", R: "[ab3@9 g3@12 c4@15 gb3@4 f3@2 e3@4 f3@2]/2",
S: "~@9 bb3@2 a3", T: "~@2 b3 c4 e4 g4 a4@2 g4 f4@2 e4", U: "d4@2 db4 c4@2 ~ a3@2 g3 ~@2 f3", V: "e3 ~@11",
W: "~@9 e3@2 f3", X: "d4@2 ~", Y: "~@2 d4 ~@3 d4 ~@4 d4", Z: "~ b3", AA: "db4", AB: "c4@23 ~", AC: "g3@5 f3 ~@6",
AD: "~ f3", AE: "[f3@3 bb3]/2", AF: "a3@23 ~", AG: "f3@2 f3 e3 ~@2 f3@2 c3 ~@3", AH: "a3 ~@4 a3 ~@3 c4 ~@2",
AI: "[a3@6 gb3@5 f3@7 e3@2 f3 e3 ~@2]/2", AJ: "~ a3@2 gb3@3", AK: "f3@5 e3 ~@6", AL: "~@2 b3@4 bb3@5 a3",
AM: "~@6 a3@10 ~ f3 e3@2 ~@4", AN: "f3 ~@4 gb3 ~@3 g3@2 g3",
AO: "[~@22 gb4@23 ~@3 db4@18 ~@4 c4@2, ~@23 eb4 ~@12, ~@47 d4@2 ~@23]/3", AP: "d4@2 db4 c4@2 ~ a3@2 g3 gb3@2 f3",
AQ: "~@9 eb4 ~@2",
})).s("gm_tenor_sax").gain(0.44).pan(0.4)
// other · tenor sax · soft notes
const tenor_sax_soft = note("<~@32 A ~@3 B ~@26 C ~@10 D ~@38 E ~@16 E ~@24 F ~@3 B ~@26 G ~@8>".pickRestart({
A: "~@11 eb4, ~@10 f4 ~, ~@21 e4@2 ~", B: "~@11 db4, ~@10 eb4 ~, ~@21 d4@2 ~", C: "~@5 bb3 ~@3 gb3@2 ~",
D: "~@10 ab3 ~, ~@15 db4@2 b3@2 a3@2 ~@3, ~@8 c4 bb3 ~@2", E: "~@8 g3 ~@3, ~@15 ab3@2 ~@7",
F: "~@21 e4@2 ~, ~@10 f4 ~", G: "~@5 bb3 ~@6",
})).s("gm_tenor_sax").gain(0.22).pan(0.4)
// other · baritone sax · "Bari Sax"
const baritone_sax = note(`<
A B C ~ A B C D E@2 F@2 G H I J K L M N K L M N K L M N K L M O@2 P ~ Q@2 R S@2 K L M N K L M T ~@2 U V@2 W@2 ~@6 X Y
Z AA@6 ~@4 AB ~ AC ~@5 AD ~ AC ~@5 AE AF AG AH AI AJ AK AL ~ AM ~@6 AN@2 AO AP ~@2 AQ AR AN@2 AO AP ~@2 AS AT AU ~@7
AR AV@2 AO AP ~ AS ~ J K L M N K L M N K L M N K L M O@2 P ~ Q@2 R S@2 K L M N K L M T ~@2 U V@2 W@2 ~@6 X Y Z AW@6 ~
AX
>`.pickRestart({
A: "c3 ~@8 gb2 ~@2", B: "~@6 c3 ~@5", C: "~@3 gb2 ~@8", D: "~@9 c3 ~@2", E: "gb2 ~@8 c3 ~@2",
F: "gb2 ~@5 gb2 ~@2 c3 ~@2", G: "f2 ~@8 bb2 ~@2", H: "a2 ~@2 ab2 ~@2 g2 ~@2 gb2 ~@2", I: "f2 ~@11", J: "~@11 bb3",
K: "d4@2 d4 db4 ~@2 d4@2 a3 ~@2 a3", L: "d4@3 ~@3 e4@4 f4@2 ~@12", M: "~@3 f3 ~@4 f3 ~@3", N: "f3 ~@4 f3 ~@5 bb3",
O: "[f3 ~@4 f3 ~@5 e3@13]/2", P: "eb3@9 ~@2 d3", Q: "[~@11 d3@13]/2", R: "db3@9 ~@2 c3",
S: "[~@6 g2 ~@4 c2@9 ~@3 bb3]/2", T: "f3 ~@4 f3 ~@6", U: "~@6 ab2 ~@4 g2", V: "[~@5 gb2 ~@2 gb2 ~@2 f2@7 b2@6]/2",
W: "[bb2@9 eb2@12 a2@15 ab2@4 g2@2 gb2@4 f2@2]/2", X: "~@9 gb2@2 f2", Y: "~@2 ab3 a3 c4 e4 g4@2 f4 e4@2 d4",
Z: "db4@2 bb3 a3@2 ab3 f3@2 e3 d3@2 db3",
AA: "[c3@2 ~@4 c2@11 ~ c2@12 c2@12 c2@11 ~ c2@11 ~ c2@12 c2@12 c2@12 c2@12 c2@12 c2@11 ~ gb2@4 f2@2]/6",
AB: "f2@15 ~@5 b1@2 ~@2, ~@15 e2@2 d2@2 c2@2 ~@3, ~@8 eb2 db2 ~@2", AC: "f2 ~@4 f2 ~@6", AD: "~@2 f2 ~@3 f2 ~@4 g2",
AE: "~ e2", AF: "eb2", AG: "d2@23 ~", AH: "eb2@5 d2 ~@6", AI: "~ d2", AJ: "g2", AK: "g2 db2", AL: "c2@23 ~",
AM: "g2 ~@4 c2 ~@3 f2 ~@2", AN: "[f2@6 ab2@5 g2@7 c2@2 db2 c2 ~@2]/2", AO: "~ f2@2 d2@3", AP: "g2@5 c2 ~@6",
AQ: "~@2 a2@4 ab2@5 g2", AR: "~@6 c2@11 ~ gb2@2 ~@4", AS: "~@9 c2@2 f2", AT: "~@6 c2 ~@5",
AU: "db2 ~@4 d2 ~@3 eb2@2 e2", AV: "[f2@12 ab2@10 g2@13 ~ c2@4 db2@2 c2@2 ~@4]/2",
AW: "[c3@2 ~@4 c2@11 ~ c2@11 ~ c2@12 c2@11 ~ c2@12 c2@12 c2@12 c2@12 c2@12 c2@12 c2@11 ~ gb2@4 f2@2]/6",
AX: "~@9 f2 ~@2",
})).s("gm_baritone_sax").gain(0.44).pan(0.8)
// other · trumpet · "Trumpet 1"
const trumpet = note(`<
// … 302 more lines
More by Gillespie Dizzy
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.