0:00/0:00
// Hay Burner — Basie
// 132 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 124 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(132/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 D E F C G H I J K H L M N H I J K H L M O P Q P Q P R S T U I J K H L G V W X Y Z AA AB AC AD AE AF AG AH AI
AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF@2 BG BH@2 BI ~ BJ BK BL BM BN BO BP BQ BR BS BT
BU BV BW BX BY BZ P CA P Q P CB S T U I J K H L G V W CC S CD CE CF@3
>`.pickRestart({
A: "f2@3 ~@2 a2@3 a2 a1@3", B: "bb1@3 ~@2 b2@3 b2 b1@3", C: "c2 ~ d2 ~", D: "g2@3 ~@2 g2 c2@2 c2 e2@3",
E: "f2 ~ eb2 ~", F: "d2 ~ db2 ~", G: "g2@3 ~@2 g2 c2@3 ~@2 c3", H: "f2@3 ~@3 a2@3 ~@2 a2",
I: "bb2@3 ~@2 c3@3 c3 c2@3", J: "d2 ~ a2 ~", K: "eb2@3 ~@2 c2@3 c2 e2@3", L: "g2 bb2 a2 d2",
M: "g2@3 ~@2 g2 c2@3 ~@2 c2", N: "f2@2 f2 bb2@3 a2@3 g2@3", O: "f2@5 ~ f2@4 gb2@2 g2@4 g2@2 a2@6", P: "bb2 bb1 b1 b2",
Q: "c3 f2 g2 a2", R: "c3 c2 d2 gb2", S: "g2 g1 g2 g1", T: "c3 c2 c3 c2", U: "f2!2 a2!2", V: "f2@3 ~@2 f2 d2@3 ab2@3",
W: "g2@3 ~@2 g2 c2@3 ~@3", X: "f2@2 f2 g2@3 g2@3 c2@3", Y: "f2@6 f2@6 a1@4 a0 ~ a1@6", Z: "bb1 b1 g2 c2",
AA: "d2@3 ~@2 d2 ab1@6 a1@6 c2@5 ~", AB: "eb2@4 eb1 ~ db2@6 c3@6 g2@6", AC: "f2!2 a1!2", AD: "bb1 a1 g2 ab2",
AE: "g2@4 g1 ~ g2@4 g1 ~ g2@6 c2@6", AF: "f2 g2 bb1 g2", AG: "f2 gb2 f2 a1", AH: "bb1@4 ~ bb0 bb1@6 b1@6 b1@6",
AI: "f2@4 f1@2 f2@6 d2@3 ~ d2@2 a2@6", AJ: "g2@5 d2 d3@4 d2 ~ c2@6 g2@6",
AK: "f2@4 ~@2 f2@6 f2@4 f1 ~ f2@6, ~@5 f1@2 ~@17", AL: "bb1@2 bb0 bb1@3 bb2@3 f2@3",
AM: "f2@6 db2@6 d2@5 a1 a2@4 ~ a1", AN: "g2@4 ~ g1 c2@6 f2@4 f1 ~ f2@6",
AO: "~@4 f1 ~ f2@4 ~ f1 b1@3 ~ b1 ~ e2@6, bb1 ~@3", AP: "f2@3 ~@2 f2 e2@6 f2@3 ~ f2@2 c3@6",
AQ: "bb1@4 bb0@2 bb1@6 b1@3 ~@3 f2@6, ~@17 b1@2 ~@5", AR: "f2@4 f1 ~ gb2@6 f2@3 ~ f2 ~ a1@6", AS: "bb2 f2 b1 f2",
AT: "f2@3 ~ f2 ~ db2@6 d2@4 d1 ~ d2@6", AU: "g2 d3 b2 g2", AV: "c2@6 e2@5 ~ f2@3 ~@3 c3@6, ~@17 f2@2 ~@5",
AW: "bb1@6 f2@6 b1@6 d2@5 ~", AX: "f2@3 ~@2 f2 e2@6 f2@4 f1 ~ f2@6", AY: "bb1@3 ~ bb1@2 f2@6 b1@6 b1@6",
AZ: "f2 g2 gb2 f2", BA: "bb1@2 bb1@2 b1 ~ f2@2, ~@17 b1@2 ~@5", BB: "f2@4 f1 ~ f2@6 eb2@6 d2@4 d1 ~",
BC: "g2 d3 ab2 g2", BD: "c2 c3 db3 c3", BE: "c3@4 c3@2 c2@5 ~@5 c3@2 c2@5 ~", BF: "~@4 c3@2 c2@5 ~@5 c3@2 c2@5 ~",
BG: "~@4 c3@2 c2@5 ~@5 c3@2 c2@6", BH: "c3@6 c2@6 c3@4 c3@2 c2@5 ~", BI: "c3@3 c2@3 c3@3 c2@2 f2", BJ: "~ c2 c3 c2",
BK: "f2@3 ~ f2@2 c3@6 f2@6 a1@6", BL: "bb1@4 ~ bb0 b1@4 b0 ~ g2@3 ~ g2 ~ db2@6", BM: "d3 a2 a1 d2",
BN: "eb2@3 ~ eb2@2 bb2@6 c2@6 g2@6", BO: "f2 c3 a1!2", BP: "bb1@6 a1@6 g2@4 ~ g1 g2@6",
BQ: "g2@6 g2@4 g1 ~ g2@4 ~ g1 c2@4 c1 ~", BR: "f2@4 ~ f1 db2@3 ~@3 ab2@6 c2@4 ~ c1, ~@11 db2@2 ~@11",
BS: "f2@3 ~ f2@2 c3@6 f2@4 f1@2 b1@6", BT: "bb1@4 bb0@2 c2@6 b1@4 b0 ~ c2@4 ~ c1", BU: "f2@6 db2@6 d2@3 ~ d2@2 a2@6",
BV: "g2@3 ~ g2 ~ b1@6 c2@6 c2@4 c1 ~", BW: "~@4 c2 ~ c3@4 c2 ~ f2@4 f1@2 f2@6, f2 ~@3",
BX: "bb1@3 ~ bb1@2 f2@6 bb1@4 bb0 ~ bb1@6", BY: "f2@3 ~ f2 ~ db2@6 d2@3 ~ d2 ~ gb2@6", BZ: "g2@4 g1 ~ c2@6 f2@6 a2@6",
CA: "c3@4 ~ f2 g2@6 a2@6 f2@6", CB: "c3 a2 d3 d2", CC: "f2@2 f2 eb2@3 d2@3 gb2@3", CD: "c2 c3 c2 c3",
CE: "~@4 f2@7 ~ eb2@2 ~@4 d2@2 ~@4", CF: "[db2 ~@2 c2@2 f2@25 ~@6]/3",
})).s("gm_acoustic_bass").gain(0.33).pan(0.3)
// chords · piano
const piano = note(`<
~ A B C D E F G H I J K L M N O P I J K L M N O Q R S R S R T@2 U V W V X V Y Z AA AB AC AD AE AF AG AH AI@2 AJ AK
AL@2 AM AN AO AP AQ AR AS@2 AT AU AV AW AX AY@2 AZ BA@2 BB BC BD BE BF@2 BG BH BI@2 ~ BJ@2 BK@2 BL BM@2 BN BO@4 BP BQ
BR BS BT BU ~ BU ~ BU ~ BV U V W V X V Y Z AA AB ~ BW ~ BX BY@3
>`.pickRestart({
A: "~@4 [ab4,d5]@2 [a4,c5] ~@5 [ab4,d5]@4 [a4,c5] ~@7, f2@5 a2@7", // Abdim Am Abdim Am
B: "~@4 [db5,g5]@2 d5@2 ~@4 [db5,g5]@4 [d5,f5] ~@7, bb2@5 b2@7, ~@6 f5 ~@17", C: "d5 ~@2 d3@3, c3 ~, ~@4 c5@19 ~",
D: "~@6 b4@2 ~@4 bb4@10 ab4!2, g2 c3", E: "a4@2 f4 ~@3 eb2@6, f2 ~", F: "~@6 f5@2 ~@4 bb5@6 db6@4 b5!2, d2 db2",
G: "c6@4 c5@2 ~@6 d2@11 ~, c2@11 ~@13", H: "~ [b4,ab5]@2 ~ [bb4,g5]@2, g2@11 ~ c2@11 ~", I: "f2@11 ~ a2@9 ~ a2@2",
J: "bb2@10 c3@13 ~", K: "d2@11 ~ a2@11 ~", L: "eb2@10 c2@13 ~",
M: "[g5,a5,c6,f6]@3 ~ [g5,a5,c6,f6] ~@7 a2@6 ~@4 a2@2, f2 ~", N: "[g2,bb3] [bb2,d4] a2 d2, ~@12 c4@11 ~",
O: "~ [b3,ab4]@2 ~ [bb3,g4]@2, g2@11 ~ c2@11 ~", P: "~@6 [bb2,f3,d4]@5 ~ [a2,e3,c4]@5 ~ [g2,d3,bb3]@5 ~",
Q: "~@5 gb2 g2@3 a2@3, f2@5 ~@7, ~@4 [a3,f4]@19 ~", R: "[bb2,g3,bb3,d4,f4]@2 ~@8 [b2,ab3,b3,d4,f4]@13 ~",
S: "[c3,a3,c4,d4,f4]@2 ~@8 [f2,a3,c4,eb4,f4]@13 ~", // Dm7 F7
T: "[[c3,a3,c4,d4,f4]@2 ~@8 [d3,gb3,a3,c4,e4]@12 [g2,f3,b3,db4,e4]@25 ~]/2", // Dm7 D7 Dbm7b5
U: "~@4 [g3,bb3,d4,f4]@19 ~, [c2,c3]@23 ~", V: "[a5,f6] [g5,e6]", W: "[f5,d6]@3 [g5,e6]", X: "[bb5,g6]",
Y: "[f5,d6] [e5,c6]", Z: "~ [b4,ab5]@2 ~ [bb4,g5]@2", AA: "~ [a4,f5]@2 ~ [gb4,eb5]@2", AB: "~ [f4,d5]@2 ~ [f4,d5]@2",
AC: "~@5 [a4,d5,c6] ~@6 [g2,bb3,f4] g3 ~@4 [c2,e3,g3,bb3,e4] ~@5", // D7 Gm7 C7
AD: "~@5 f2 a4 d5@2 ~ d4 ~ a2@2 ~@2 g4 [c5,a5] ~@6, ~@9 a4@2 ~@13", // F
AE: "[bb1,d3,f3,g3,d4] ~@5 [b1,d3,gb3,a3,d4] ~@4 [g2,f3,g3,bb3,f4]@3 ~@4 [c2,g3,bb3,e4] ~@5", // Gm7 Bm7 Gm7 C7
AF: "[d5,d6] [a4,f5] ~@9 a2@3 ~@3 [g4,c5,a5] ~@6", AG: "bb4@3 ~@2 bb3@5 ~ c2@3 ~@2 bb4 [e5,c6] ~@6",
AH: "[c5,d5,c6] f4 ~@11 [e4,a4,a5] ~@10", // Csus2 A5
AI: "[[bb1,d3,f3,g3,d4] ~@5 [a2,g3,a3,c4,g4] ~@5 d6 [g4,d5,f5] ~@9 [g2,f3,a3,b3,f4]@3 ~@3 [g2,f3,a3,b3,f4]@3 ~@3 [g2,f3,g3,bb3,f4]@3 ~@4 [c2,e3,bb3,e4] g3 ~@4]/2", // Gm7 Am7 G7 Gm7 C7
AJ: "[f2,d3,f3,a3,d4] ~@5 [g2,f3,g3,bb3,f4] ~@5 [bb1,d3,f3,g3] ~@4 [g2,f3,g3,bb3,f4]@3 ~@4, ~@6 d4 ~@5", // Dm Gm7
AK: "~@5 f2 a4 ~@3 e4 ~ [f4,c5] [d5,c6] ~@10, ~@8 e5@3 ~@13, ~@9 a4@2 ~@13", // F5 D7
AL: "[[d5,f5,d6] f4 ~@9 f5@2 ~@5 [f4,b4,d5] ~@4 ab5@2 [f2,f3,c6]@11 a5 ~@5 [c5,gb5,a5,d6] ~@5]/2", // Dm Bdim F5 D7
AM: "[d5,f5,d6] g4 ~@10 [c5,e5,c6] ab4 ~@10", // Dm C
AN: "db6 d3@3 ~ [d3,a3,f5,db6] ~@5 [c3,eb5,f5]@4 ~@2 [c3,eb5,f5] ~@6, [a3,f5,f6]@3 ~@2 f6@2 ~@17", // Dm F7 Dm
AO: "~@4 c5@2 f5 ~@5 bb5@5 ~ db6@4 b5@2, ~@4 bb2 ~@6 bb1@3 ~@10",
AP: "c6@4 c5@2 ~@7 eb6 ~@3 [gb3,c4,eb6] ~@6, [f2,d3]@11 ~ [gb3,c4,a6]@3 ~@2 a6@2 ~@5", // Cdim Dm Gbdim
AQ: "[g2,f3,g3,b3,f4] ~@4 [c2,g3,bb3,e4]@3 ~@4 [f2,d3,f3,a3,d4] ~@4 [f2,eb3,f3,a3,eb4]@3 ~@4", // G7 C7 Dm F7
AR: "f5 ~@5 [f4,d5] ~@4 f5@2 ~ f5@10, ~@13 [b1,d3,ab5]@11", // Dm Abdim
AS: "[f5 ~@5 [f4,c5] ~@5 [f3,a3] eb4 ~@12 f5@10 b1@2 ~@3 [ab4,d5,b5] ~@6, ~@23 e5@2 bb1@11 ~@12, ~@24 [d3,ab5]@11 ~@13]/2", // F5 F Abdim Ddim
AT: "[f2,f3,a3,d4] ~@5 [gb2,e3,gb3,bb3,e4] ~@6 [f2,eb3,a5]@11, ~@6 e5 ~@5", // Dm Gb7 F7
AU: "[d3,f5,f6]@3 ~@2 [d3,g3,f5,b5] ~@11 b2 ~ ab4 ~@2 d4 ~, b5 ~@4 f6@2 ~@13 d5@3 ~, ~@21 ab4@2 ~", // Dm G7
AV: "[d3,a3,f6]@3 ~@2 [d3,a3,f5,db6] ~@6 [d2,bb3,c4,gb4] ~@5 [d2,gb3,a3,c4,gb4] ~@5, db6 ~@4 f6@2 ~@17", // Dm Daug D7
AW: "[a3,b3,f4] ~@23", AX: "[d5,d6] [g4,e5] ~@10 [f2,f3,a3,eb4] ~@11",
AY: "[~ d5@3 ~ bb2 [c5,c6]@3 ~@3 f5 ~@5 [f4,d5] ~@4 [f3,a3,d4]@2 ~@11 eb5@3 ~ f2 ~ [c5,c6]@3 ~@3]/2", // C Dm C
AZ: "[bb4,d5] [f4,bb5] ~@10 b1@2 ~@2 ab4 [d5,b5] ~@6", // Bb Bb5 G
BA: "[d5 [f4,c5,c6] ~@9 [gb2,e3,gb3,bb3,e4]@3 ~@4 [f2,eb3,a3,eb4] f3 ~@3 [f3,g3,d4]@2 ~@11 [f2,d5,f5]@3 ~@2 [f2,d5,f5] ~@6]/2", // F5 Gb7 F7 G7 Dm
BB: "f2@2 ~@2 a4 [d5,c6] ~@6 [eb2,g3,bb3,db4,g4] ~@5 [d2,gb3,a3,c4,gb4] ~@5", // D7 Eb7 D7
BC: "g2@2 ~@2 b4 [f5,d6] ~@6 [ab2,bb3,c4,gb4] ~@5 [g2,a3,b3,f4] ~@5", // Dm Ab7 G7
BD: "~@5 g2 bb4 f5@2 bb4@2 f4 [db2,ab3,b3,f4] ~@5 [c2,e3,bb3,e4] g3 ~@4", BE: "[g3,bb3,f4] ~@23",
BF: "[[f3,ab5,ab6]@2 e6@2 ~ [f3,b3,ab5,e6] ~@17 e5@2 ~ f5@20 ~@2, ~@5 ab6@2 ~@18 [g2,bb5]@22 ~]/2", // Fm E Gm
BG: "[ab2,f4,ab4] ~@11 ab5 [f3,d4,d5,d6]@9 ~@2, d5 ~@11", BH: "~ f5@10 ~, e5 ~@11, ~ [g2,bb5]@22 ~",
BI: "[[ab2,f3,b3,f4] ab3 ~@4 g5 ~@5 f5 ~@5 [ab2,ab3,b3,f4] ~@4 [f3,g6]@4 ~@2 [f3,bb3,g5,eb6] ~@6 [g2,f3,g3,bb3,f4] ~@5 [f2,f3,a3,d4] ~@5, ~@23 eb6@2 ~@4 g6@2 ~@17]/2", // Fdim Fsus2 Eb Gm7 Dm
BJ: "[[f2,d3,f3,a3,d4] ~@5 [f2,d3,f3,a3,d4] ~@4 [ab2,f3,ab3,c4,f4]@3 ~@4 [bb1,f3,g3,d4] ~@4 [d3,f6]@4 ~@2 [d3,a3,f5,db6] ~@6 [f2,a3,d4] f3 ~@3 [a2,g3,a3,c4,g4]@3 ~@4, ~@23 db6@2 ~@4 f6@2 ~@17]/2", // Dm Fm Gm7 Dm Am7
BK: "[[bb1,d3,g3,d4] f3 ~@3 [b1,d3,gb3,a3,d4]@3 ~@4 [d2,bb4,d5]@3 ~@2 [d2,bb4,d5] ~@5 ab5@2 ~ a5@8 ~ a2@3 ~@3 [g4,c5,a5] ~@6, ~@25 [d2,f3,c6]@10 ~@13]/2", // Gm Bm7 Gm Am7 Dm7
BL: "[eb3,g3,c4] ~@10 [ab3,bb3,e4]@2 ~@11", // Cm Bbm7b5
BM: "[[c3,e5,g5]@3 ~@2 [c3,g5] ~@6 e5 ~@5 [e4,e5] ~@4 [bb1,d3,f3,bb3,d4]@3 ~@4 [a2,g3,a3,c4,g4] ~@4 [g3,bb3,f4]@2 ~@11]/2", // C C5 E Bb Am7 Gm7
BN: "[g2,a3,b3,f4] ~@4 [g2,a3,b3,f4]@3 ~@4 [g2,f3,g3,bb3,f4] ~@5 [c2,e3,g3,bb3,e4] ~@5", // G7 Gm7 C7
BO: "[[f2,f3,a3,d4] ~@4 [ab2,b4,eb5]@4 ~@2 [ab2,b4,eb5] ~@6 [c2,e3,g3,bb3,e4] ~@4 [c3,e5,g5]@4 ~@2 [e5,g5] ~@6 d5@3 ~ f2 ~ [c5,c6]@3 ~@2 bb1@3 ~@3 [g4,d5,bb5] ~@6 [b1,d3,f3,ab3,d4] ~@5 [c2,e3,g3,bb3,e4] ~@4 [g5,c6]@2 ~@5 [e5,c6] g5 ~@4 [a3,c4,gb4] ~@11]/4", // Dm Abm C7 C Em C Gm Bdim …
BP: "~@11 [c2,ab3,bb3,e4]@3 ~@4 a5 ~@5, ~@6 ab5@11 [c2,e3,g3,bb3,e4]@3 ~@4", // Caug C7
BQ: "c5@3 ~ c5 ~@7 e5 ~ f5@10, ~@12 eb3@11 ~, ~@13 [eb2,a5]@11", BR: "~@4 d5@2 f5 ~@5 g5@5 ~ f5 ~@5, d2 db2",
BS: "[ab5,d6]@4 [a5,c6]@2 ~@4 [ab5,d6]@2 [a5,c6]@2 ~@4 c5 ~@5, c2 d2", // Abdim Am Abdim Am
BT: "[g2,b4,ab5]@5 ~ [c2,bb4,g5]@3 ~ [f2,a4,f5] ~@13", BU: "[g3,bb3,d4,f4]@9 ~ [ab3,b3,d4,f4]@11 ~ [a3,c4,d4,f4] ~",
BV: "~@6 [g2,f3,b3,db4,e4,a4]@3 ~ [g2,f3,b3,db4,e4,a4] ~ [g2,f3,b3,db4,e4,a4]@3 ~ [g2,f3,b3,db4,e4,a4] ~@7", // A7
BW: "~@4 [g2,f3,b3] [db4,e4,a4] ~@6 [g2,f3,b3,db4,e4,a4] ~@11", BX: "~@4 [f2,a3]@7 ~ [eb2,g3]@2 ~@4 [d2,gb3]@2 ~@4",
BY: "[[db2,f3] ~@2 [c3,c4]@2 [f2,a3,eb4,ab4]@25 ~@6]/3", // Db C F7
})).s("gm_piano").gain(0.19).pan(0.3)
// chords · piano · soft notes
const piano_soft = note(`<
~@42 A ~ B ~@2 C ~@4 D E ~ F ~ G H I J ~ K L M N ~ O@2 ~ P@2 ~ Q A N R S T S U@2 ~ V@2 ~@2 W X Y Z AA AB ~ AC AD ~@28
>`.pickRestart({
A: "~@12 f3 ~@11", B: "~@18 e3 ~@5", C: "~@12 c5 ~@11", D: "~@11 b5@2 ~@5 [ab4,f5,b5] ~@5",
E: "~@2 a5@10 d6 ~@5 [a4,d5] ~@5", F: "~ d6 ~@10", G: "~@7 e6 ~@4", H: "~@5 e3@3 ~@16",
I: "c6 ~@5 [ab4,c5,f5,c6] ~@17", J: "c6 ~@5 [a4,d5,c6] f5 ~@4 f2 ~@11", K: "d3 ~@13 g5@10", L: "g3 c6 ~@10",
M: "f5@2 d6@2 ~@8 gb3 ~@11", N: "g2 ~@23", O: "[~@12 b5 ~@5 [ab4,b4,f5,b5] ~@4 f2@2 ~@23]/2",
P: "[~@23 bb1@2 ~@23]/2", Q: "~@12 gb3 ~@5 f3 ~@5", R: "b3 ~@7, e6 ~@23", S: "~ f4@23", T: "~@23 f3",
U: "[~@6 d6 ~@5 [g4,bb4,d5,g5,d6] ~@5 f3 ~@4 [bb3,g5]@3 e6@2 ~@14 d3 ~@5]/2", // Gm Eb
V: "[~@18 d3 ~@4 [a3,f5]@3 d6@2 ~@8 d3 ~@11]/2", W: "eb2 ~@10 c2@2 ~@11", X: "~@5 e5 ~@6 a5 ~@5 [g4,a4,c5,a5] ~@5",
Y: "~@11 g2@2 ~@11", Z: "f3@2 ~@3 f3@3 ~@16", AA: "d3 ~@11", AB: "~@5 c3 ~@18", AC: "~@6 [g4,a4,c5] ~@5 d2 ~@11",
AD: "~@5 g2 ~@5 e3@3 ~@10",
})).s("gm_piano").gain(0.14).pan(0.3)
// other · alto sax
const alto_sax = note(`<
~@25 A@2 B@2 C@4 D@2 ~ E F ~@4 G H@3 I J K@4 L M@2 N ~@2 O P Q R S T U@2 V W X Y@3 Z AA@2 ~@2 AB@3 ~ AC ~ AD@2 AE@3 AF
AG@2 AH AI AJ AK ~@5 AL@2 AM@2 AN@3 ~ D@2 ~ E F ~@5 AO AP AQ AR@3
>`.pickRestart({
A: "[~@6 d5@4 ab4@17 ~ d5@4 ~ d5@2 ~ d5@4 c5@2 ab4@4 f4@2, ~@32 e5@2 ~ c5@2 ~@11]/2",
B: "[~@6 d5@4 ab4@17 ~ d5@4 ~@2 c5@2 d5@4 c5@2 ab4@4 f4@2, ~@16 e5 ~@7, ~@33 d5@2 ~@13]/2",
C: "[~@6 d5@4 ab4@17 ~ a4@2 f4@4 c4@2 e4@4 d4@2 ~@4 e4@6 eb4 ~ db4@4 d4@2 ~@4 g4@2 a4@4 c5@25 ~]/4",
D: "[f4@10 c4@37 ~]/2", E: "~@4 g4 ~@7 g4@2 ~@10", F: "~@4 a4 ~@19", G: "~@2 d4 ab3@3 a3@2 c4 d4@2 f4",
H: "[~@10 c4@2 ~@10 bb4@7 ~ a4@4 f4@2 ~@12 f4!2 ~@2 c4@2 f4@4 e4@6 g4@2 e4@4 c4@2, ~@47 c4@2 ~@23]/3",
I: "eb4@4 eb4@2 ~@10 db4@7 ~", J: "c4@2 c4!2 ~@2 e4@2 e4 ~@2 e4",
K: "[d4@2 ~@4 e4@2 ~@4 f4@3 ~ g4@2 ~@4 ab4@7 ~ a4@4 d4@2 f4@3 ~ g4@2 ~@4 f4@7 ~ bb4@4 a4@2 f4@3 ~ d4@2 ~@4 c4@13 ~@13]/4",
L: "~@4 d4@2 f4@4 ab4@7 bb4 g4@4 f4@2, ~@18 a4 ~@5", M: "[d5@4 ab4@37 ~ g4@4 e4@2]/2", N: "f4@2 c4 ~@9",
O: "~@8 c4 eb4@2 g4", P: "f4@2 c4 d4@2 f4 d4@2 b3 ~@2 b3", Q: "e4@2 f4@2 c5@12 a4@2 ~ a4@2 g4@2 ~, ~@9 g4 ~@2",
R: "d4@4 f4 ~@11 d4@2 d4@4 d4@2", S: "a4@2 f4 db4@2 d4@7", T: "~@2 gb3 g3@2 ~ b3@2 bb3 b3@2 db4",
U: "[d4@4 a4@2 f4@4 eb4@8 eb4@4 db5@5 ~@2 bb4 a4@4 e4@2 db4@4 a3 ~@7]/2", V: "~@2 d4 e4@2 g4 g4@2 ~ eb4@2 g4",
W: "f4@2 c4 ~@2 c4 d4@2 b3 ~@2 b3", X: "a4@5 ~ a4@5 ~ g4@4 c4 ~@7, ab4 ~@5 ab4 ~@17",
Y: "[~@4 gb3@2 g3@4 bb3@2 b3@4 ab3@2 ab4@4 f4@13 ~ ab4@4 g4@2 ~@4 bb4@6 ~ d4 bb3@4 db4@2 d4@4 b3@2 ab4@4 b3@2]/3",
Z: "e4@2 f4@2 c5@2 f4@4 gb4@2 f4@4 e4 ~@7",
AA: "[~@2 a4@2 ab4@2 a4@2 ab4@2 a4@2 ~@2 e4@2 f4@2 e4@4 bb3@8 d4@4 bb3@2 f4@3 ~ e4@2 ~@6]/2",
AB: "[~@4 d4@2 f4@2 ~@2 f4@2 bb4@2 f4@2 bb4@2 c5@4 e5@6 ~@2 db5@4 b4@2 db5@3 ~ e5@2 ~@4 c5@25 ~]/3",
AC: "d4@4 bb3@2 d4@4 g4@6 f4@2 d4@4 d4 ~", AD: "[~@6 d4@2 ~@4 f4@3 ~ g4@2 ~@4 a4@19 ~ a3@2 ~@4]/2",
AE: "[f4@6 f4@4 d4@2 ~@10 f4@5 ~ [d4,eb4] db4 c4@2 ~@2 c4@2 c4@3 ~ c4@2 ~@4 c4@13 ~@5 c4@7 ~]/3", // Ebmaj7
AF: "a3@3 ~ a3@2 ~@4 a3@2 a3@2 ~@4 a3@2 ~@4",
AG: "[bb3@6 c4@4 bb3@2 ~@4 d4@2 ~@4 e4@7 ~ f4@4 b3@2 d4@4 d4@2 ~@4 c4@2]/2", AH: "~@6 eb4@11 ~ d4@2 ~@4",
AI: "a3@2 a3 ~@9", AJ: "~@6 ab4@11 ~ a4@2 ~@4", AK: "a3@4 a3 ~@19",
AL: "[~@6 d5@9 ~@2 [g4,a4] f4@4 d5@4 e5 d5 ~ c5 d5@4 c5@2 ab4@4 f4@2 ~@6, ~@18 gb4 ~@29]/2", // Gsus2
AM: "[~@6 d5@9 ~@2 g4 f4@4 d5@3 e5 ~ d5 ~ c5 d5@4 c5@2 ab4@4 f4@2 ~@6, ~@18 gb4 ~@29]/2",
AN: "[~@6 d5@9 ~@2 [gb4,g4] f4@4 d5@4 e5 d5 c5 ~ d5@4 eb5@6 d5@2 eb5@4 e5@6 ~ d5 db5@4 a4@2 e4@3 ~ db4@2 ~@4 c4@2]/3", // Gmaj7
AO: "~@4 e5@6 ~ d5 db5@4 d5@2 a4@4 f4@2", AP: "d5@2 ab4@4 f4@2 g4 f4@2 f4", AQ: "~@12 c4 ~ c4 ~@3 c4!2 ~@4",
AR: "[b3!2 ~@4 c4@4 f4@49 ~@13]/3",
})).s("gm_alto_sax").gain(0.47).pan(0.7)
// other · alto sax · soft notes
const alto_sax_soft = note(`<
~@31 A ~@28 B ~@2 C ~ D E ~@4 F ~ G ~@3 H I ~@7 J ~@13 K ~ L ~ L ~ M ~@11 N ~@5
>`.pickRestart({
A: "~@5 d4 ~@6 e4@4 ~@8", B: "~@22 c4 ~", C: "~@5 bb3 ~@6", D: "~@3 c5 b4 ~@19", E: "~@8 c4 ~@3",
F: "~@4 [f4,g4] ~@19", G: "~@6 f4 ~@5", H: "~@4 d4 ~@7", I: "~@4 eb5 d5 ~@18", J: "~@3 e4 ~@20",
K: "~@16 [b4,db5] ~@7", L: "~@16 [b4,db5] a4 ~@6", M: "~@4 eb5 ~@19", N: "~@10 eb5 ~@13",
})).s("gm_alto_sax").gain(0.31).pan(0.7)
// other · tenor sax
const tenor_sax = note(`<
~@20 A B ~@3 C@2 D@2 E@4 F@2 ~ G H ~@4 I J@2 K L M N@4 O P@2 Q ~@2 R S T U V W X@2 Y Z AA AB@3 AC AD@3 AE AF@3 AG AH ~
AI@2 AJ@3 AK AL@2 AM AN AO AP ~@5 AQ@2 AR@2 AS@4 F@2 ~ G H ~@5 AT AU AV AW@3
>`.pickRestart({
A: "~@4 g3 ~@7 e3@2 ~@10", B: "~@2 f3 ~@9",
C: "[~@6 ab4@4 d4@17 ~ d4@4 ~@2 c4@2 d4@4 c4@2 ab3@4 f3@2, ~@16 e4 ~@7, ~@33 d4@2 ~@13]/2",
D: "[~@6 ab4@4 d4@17 ~ d4@3 e4@2 d4@2 ~ d4@4 c4@2 ab3@4 f3@2, ~@35 c4@2 ~@11]/2",
E: "[~@6 ab4@4 d4@17 ~ a4@2 f4@4 c4@2 e4@4 d4@2 ~@4 e4@6 eb4 ~ db4@4 d4@2 e4@4 g4@2 a4@4 c5@25 ~]/4",
F: "[d4@10 g3@37 ~]/2", G: "~@4 eb4 ~@7 e4@2 ~@10", H: "~@4 f4 ~@19", I: "~@2 d4 ab3@3 a3@2 c4 d4@2 f4",
J: "[~@10 g3@2 ~@10 g3@7 ~ a3@4 g3@2 ~@10 e3@2]/2", K: "a3 ~ a3 ~@3 a3@4 a3@6 c4@2 a3@4 g3@2, ~@5 f3@2 ~@17",
L: "eb3@2 eb3 ~@5 gb3@4", M: "f3@2 f3!2 ~@2 g3@2 g3 ~@2 g3",
N: "[g3@2 ~@4 g3@2 ~@4 bb3@3 ~ bb3@2 ~@4 b3@7 ~ b3@4 f3@2 bb3@3 ~ bb3@2 ~@4 a3@7 ~ bb3@4 c4@2 bb3@3 ~ f3@2 ~@4 e3@13 ~@13]/4",
O: "~@4 d4@2 f4@4 ab4@7 ~ g4@4 f4@2, ~@18 a4 ~@5", P: "[d5@4 ab4@37 ~ g4@4 e4@2]/2", Q: "f4@2 c4 ~@9",
R: "~@8 a3 c4@2 eb4", S: "d4@2 ab3 c4@2 d4 b3@2 ab3 ~@2 ab3",
T: "db4@2 d4@2 a4@12 f4@2 eb4@2 ~@2 a3 ~, ~@10 f4 ~, ~@21 eb4@2 ~", U: "c4@2 d4 ~@5 ab3 ab3@2 ab3",
V: "f4@2 d4 bb3@2 a3@7", W: "~@2 e3 f3@2 g3 ab3@2 g3 ab3@2 bb3",
X: "[c4@4 f4@2 d4@4 c4@8 c4@4 a4@5 ~@2 f4 e4@4 db4@2 a3@4 b3 ~@7]/2", Y: "~@2 bb3 d4@2 e4 eb4@2 a3 c4@2 e4",
Z: "d4@4 ab3 ~@5 ab3@2 b3@4 ab3 ~@5 ab3@2", AA: "f4@5 ~ f4@5 ~ eb4@4 a3 ~@7, e4 ~@5 e4 ~@17",
AB: "[~@4 e3@2 f3@4 g3@2 ab3@4 f3@2 f4@4 d4@13 ~ e4@4 eb4@2 ~@4 g4@6 ~ bb3 g3@4 bb3@2 b3@4 ab3@2 f4@4 ab3@2]/3",
AC: "db4@2 ~@2 a4@2 d4@4 d4@2 db4@4 c4 ~@7",
AD: "[~@2 e4@2 eb4@2 e4@2 eb4@2 e4@2 c4@2 b3@2 c4@2 b3@4 g3@8 bb3@4 g3@2 eb4@3 ~ d4@2 ~@4 c4@25 ~]/3",
AE: "~@4 c3@19 ~", AF: "[~@4 bb3@2 c4@2 ~@2 c4@2 f4@2 c4@2 f4@2 g4@4 b4@6 ~ a4 ab4@4 f4@2 ab4@4 b4@2 ~@4 c5@25 ~]/3",
AG: "~@6 c3@5 ~@7 c3@5 ~", AH: "bb3@2 g3 bb3@2 f4@3 d4 bb3@2 c4",
AI: "[~@6 bb3@2 ~@4 eb4@4 f4@2 ~@4 f4@19 ~ g3@2 ~@4]/2",
AJ: "[d4@6 d4@4 bb3@2 ~@10 c4@6 b3 bb3 a3@2 ~@2 a3@2 g3@3 ~ g3@2 ~@4 bb3@13 ~@5 bb3@8]/3",
AK: "f3@3 ~ f3@2 ~@4 f3@2 g3@2 ~@4 g3@2 ~@4",
AL: "[g3@6 g3@4 f3@2 ~@4 bb3@2 ~@4 b3@7 ~ b3@4 f3@2 bb3@3 ~ bb3@2 ~@4 a3@2]/2", AM: "~@6 b3@11 ~ bb3@2 ~@4",
AN: "f3@2 f3 ~@9", AO: "~@6 ab3@11 ~ a3@2 ~@4", AP: "e3@2 e3 ~@9",
AQ: "[~@6 d4@9 ~@2 [g3,a3] f3@4 d4@3 e4 ~ d4 c4 ~ d4@4 c4@2 ab3@4 f3@2 ~@6, ~@18 gb3 ~@29]/2", // Gsus2
AR: "[~@6 d4@9 ~@2 [gb3,g3] f3@4 d4@3 e4 ~ d4 c4 ~ d4@4 c4@2 ab3@4 f3@2 ~@6]/2", // Gmaj7
AS: "[~@6 d4@9 ~@2 g3 f3@4 d4@3 e4 ~ d4 ~ c4 d4@4 eb4@6 d4@2 eb4@4 e4@6 eb4 d4 db4@4 a3@2 e3@3 ~ db3@2 ~@4 c3@25 ~, ~@18 gb3 ~@77]/4",
AT: "~@4 e4@6 ~ d4 db4@4 d4@2 a3@4 f3@2", AU: "d4@2 ab3@4 f3@2 g3 f3@2 f3", AV: "~@12 a3 ~ a3 ~@3 a3!2 ~@4",
AW: "[ab3!2 ~@4 c4@4 a3@49 ~@13]/3",
})).s("gm_tenor_sax").gain(0.47).pan(0.4)
// other · tenor sax · soft notes
// … 360 more lines
More by Basie
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.