KeyF majorTempo176 bpm
0:00/0:00
// Emily — Oscar Peterson
// 176 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 133 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(176/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@2 B@3 C@4 D E@2 F G H@3 I J K@3 L@2 M@2 N O P Q R@3 S T U V W X Y Z AA AB AC AD AE@3 AF AG AH AI AJ AK AL AM@2 AN
AO@2 AP AQ AR AS AT@5 AU AV@4 AW AX@2 AY AZ BA@4 BB@3 BC BD BE BF@2 BG BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW
BX BY BZ CA CB CC@2 CD@3 CE CF CG CH CI CJ CK CL CM CN CO CP CQ ~@2
>`.pickRestart({
A: "[[g3,c4,d5,a5,d6,e6,a6]@9 ~ [g3,a3,c4,e4,a5,d6,e6,a6]@17 ~ [e3,b3,d4,g4,d5,e5,a5]@8 ~@6 a5@6, ~@3 [a3,g4,db5,e5,g5]]/2", // Am7 Em7 A7
B: "[f5@10 f5@18 [bb3,d4,eb4,g4,bb4,eb5,f5]@7 ~ [a3,eb4,g4]@5 ~ a5@5 ~ [bb4,f5]@9 ~ [d4,f4,d5]@11 ~ [ab3,b3,d4,f4,d5,ab5,b5,d6] ~, d5@2 ~@33 eb5@11 ~@26, ~@36 [db5,g5]@11 ~@25, ~@41 [a3,eb4,g4]@5 ~ [a3,bb3,d4,f4,bb5]@10 [a3,bb3,bb5,d6]@11 ~@4]/3", // Ebmaj7 Am7b5 Bb5 Dm Abdim Dbdim Am7b5 Bbmaj7
C: "[~@4 [ab3,d5,b5,d6]@8 ~@5 bb5@4 ~ [e5,g5]@30 c5 f5@3 ~@2 f5 ~ g5@3 g5@2 a5@2 ~@4 a5@2 bb5@8 db6 d6@14, ~@4 [b3,d4,f4]@17 [g3,a3,c4,e4,a5]@32 ~@43, ~@4 ab5 ~@7 c6@9 c5@30 ~@45]/4", // Abdim Em Bdim Am7
D: "~@10 d6@2 c6 ~ c6 ~@3 bb5@2 ~@4",
E: "[ab5 ~ a5@3 ~ f5@3 ~@3 bb4@4 ab4 ~ a4@2 ~@3 f4@12 ~@5 d5 ~ f5@2 ~@4, c6@5 ~@43]/2",
F: "a5@11 d5@3 ~@2 f5 a5@2 ~@5", G: "a5@3 ~ f5 ~ d5@2 ~@4 d5@4 ~@2 a5@3 ~ g5@2",
H: "[a5@2 e5 ~ c5 ~@5 g4 ~ bb4@15 ~ [f4,bb4,c5]@8 ~@6 g5@5 ~ [g4,c5,g5,a5]@9 ~ [e4,g4,g5,a5]@14, ~@27 b3@8 ~ [bb3,e4,a4,f5]@11 e4@9 ~@16, ~@48 e5 ~@9 e5 ~@13]/3", // Fsus4 Am7 A7 Bbmaj7
I: "[e3,b3,d4,g4,d5]@10 ~@2 g4@3 ~ a5@7 ~, ~@10 a5@2 g5@11 ~, ~@11 [a3,db4]@12 ~, ~@12 db5 ~@11", // Em7 A
J: "[d3,f4,a4,d5,f5]@7 e5 ~ eb6 ~@2 ab5 ~ e5 eb5 ~ db5 c5 ~@2 bb4 g4 ~, ~@9 e4@10 ~@5, ~@11 db6@2 ~@11", // Dm
K: "[~@6 g4@4 bb4 ~@5 d5 ~ [c5,eb5]@3 ~ [f4,d5]@6 f4@2 ~@6 bb4@3 ~@3 c5@2 ~@2 db5 ~ d5@3 ~ f5@8 e5 f5@2 e5 c5@2 d5 ~@2 d5 bb4 ~, [eb5,g5]@10 ~@2 a4@9 ~ f3@30 [ab3,d4]@20, ~@15 f5@5 ~@2 bb4 ~@19 b4 ~@9 g5@2 ~@18]/3", // Cm Dm Eb Abdim
L: "[c5@3 ~ c3@2 bb4@2 ~@2 c5@2 a4 ~ f4 ~ c4 bb3 ~ g3 ~ ab3 ~ a3@4 e3 ~@6 f4@2 g4@3 ~ g4@2 a4@2 ~@4, ~@4 a4 ~@5 ab4 ~@17 f3@12 ~@8]/2",
M: "[bb4@10 ~@6 [a3,f4] ~@17 d5 ~@2 d5@6 ~@5, ~@10 d5@17 ~@9 c5@9 ~@3, ~@16 d4@7 d4@14 ~@11]/2", // Dm
N: "a4@3 a3 c5 ~ f5@2 ~@4 a4@3 ~ e5 g5@6 ~, ~@11 a5@3 ~@3 g4@2 ~@5",
O: "f5@4 d4@2 ~@6 [c5,db5] ~ d5 ~ [f4,f5] ~ [f4,f5]@3 ~ d5 ~, d5@2 ~@2 db4 ~@7 d3@6 ~@6, e5 ~@23", // Dbmaj7 F
P: "f5@2 ~@2 [d3,f4] ~ d5@2 ab4 ~@3 d4@3 ~ f4 ~ g4@2 ~@2 [g4,d5]@2, ~@5 g2@18 ~, ~@6 g4 ~@17", // Dm G5
Q: "~@2 g4 b2 [c3,f4] ~ [g4,d5]@3 ~@3 [f4,b4,c5] ~ g4 f4 [c3,c4] ~ bb3@3 ~ ab3 ~, ~ ab4@2 ~@21", // F5 G5 F C
R: "[~@4 bb2 ~ [g3,db4]@6 [gb3,c4]@11 ~@7 d6@2 ~@2 c6@2 ~ a5@3 f5 ~ d5@3 ~@2 a3 f5@3 ~ f4 ~ c5@3 a4@3 ~ f4@3 c4 ~ d4 ~ f4 ~ g4 ~, a3@6 ~@17 f3@16 ~ [e3,bb3]@7 eb3@2 ~@23, ~@24 b3@14 ~@16 ab4 ~@17]/3", // Gdim Gbdim Edim
S: "ab4 ~ d5 ab4 f4 ~ g4@3 ~ e4 ~ f4@3 ~ d4 ~ a3@4 f3 ~", T: "g3 ab3@2 ~ f3 ~ g3@4 ~@2 f3@6 ~@6",
U: "~@6 c4 ~@2 eb4 ~ f4 g4 bb4@2 db5 ~ d5 eb5 ~ d5 ~@3",
V: "f5@3 ~@3 eb5@3 ~ db5 ~ [d5,f5]@2 ~@2 f4 ~ g4@2 ~@2 ab4@2", // Dm
W: "~ d5 ab4 ~ f4 ~ [g4,d5]@4 f4 ~@2 d5@3 f4 ~ [bb4,d5]@3 ~ b4@2, ~@6 e5 ~@5 ab4@4 ~@6 a3 ~", // G5 Bb
X: "d5@2 ~ ab4 f4 ~ [bb4,d5]@3 ~ ab4 ~ a4 ~ f4 ~@3 bb3@2 f3 ~ ab3 ~", // Bb
Y: "a3@4 gb2 [e3,bb3]@6 ~@7 g5 ab5 g5 f5 ~ eb5, ~@11 [eb3,a3]@10 ~@3", // Edim Ebdim
Z: "d5 ~ c5 bb4 ~ ab4 f4 ~ eb4 ~ ab3 c4 g4 ~ e4 f4 ~ g4 ab4 ~ bb4 ~@3",
AA: "db5 d5 ~ eb5 e5 ~ g5 f5 ~ d5 ~ [ab3,b4] ~@2 f4 b4 ~ ab4 d5@2 b4 ab4 ~ f4", // Abm
AB: "c5@2 ~@2 [c3,a3,c4] ~ f4 ~ a4 ~ c5@2 a4@2 ~@2 [a2,e3,a3] ~ [e4,a4]@3 ~ a3 ~", // F A5
AC: "[d4,gb4]@3 ~ gb3 ~@7 c5 db5 d5 ~ f5 ~ f5@3 ~ d5 f3", AD: "f5@3 ~ a4 ~@3 f5 ~ a5@2 e5@3 ~ d5 ~ g5@4 e5 ~",
AE: "[f5@3 ~ [f3,e4,a4] ~ c5 d5 c5 ~ a4 ~ b4@3 ~ [f3,e4]@2 f5@3 ~ eb5 ~ e5@3 ~ d6@2 bb5 ~ bb5 ~ d5@2 [a5,c6]@3 ~@2 b5@3 ~@2 [g5,bb5]@2 ~@4 c5@2 ~ d5 ~ f5 g5@2 ab5 ~ d6@2 f5 ~ [g5,d6]@2 ~ e4 [f5,c6]@2, ~@16 b3@6 [bb3,d4]@41 ~@6 a3@2 ~, ~@16 [g4,g5] ~@14 d6@2 ~@7 ab5@2 ~@20 ab5 ~@7 e5 ~]/3", // Fmaj7 Am Gm G5 F5 Bb G
AF: "~ g5 f5 ~ c5 ~ [bb4,f5] ~ a4 ~ [bb4,f5] ~ a4 bb4 f5 [b2,a4] c3 f5 bb4 a4 ~@2 f5@2, ~@22 bb4 ~", // Bb5 B7
AG: "a4 ~ [bb4,f5] ~ a4 ~ [bb4,f5] ~ a4 ~ [bb4,f5] ~ a4 ~ [bb4,f5] ~ a4 ~ [bb4,f5]@3 ~ [c5,f5] ~", // Bb5 F5
AH: "~ c5 a4 ~ f4 ~ g4@3 ~ e4 ~ f4@4 [db3,b3,e4]@7 ~", // Dbm7
AI: "~ f6 eb6 d6 ~ c6 bb5 ~ ab5 a5 ~ gb6 eb6 ~@2 f6 ~ f5 ~@2 eb6 ~ c6 [bb2,db6], c3@5 ~@3, [bb3,eb4]@13 ~@3 eb4@3 ~@5", // Bbm Eb5
AJ: "~ d6 db6 c6 ~ bb5 g5 ~ f5 eb5 ~ db5 c5 bb4 ~ g4 f4 ~ eb4 db4 f3 ~ bb3 ~",
AK: "g3 f3 ~ d4 b3@2 ab3 ~ f3 f4 ~ d4 c4 ~@2 ab4 ~ f4 d4 ~@2 [f3,d5] ~ b4", // Dm
AL: "~@2 e4 ~ [c3,a3,f4] ~ bb4@2 c5@2 ab4 ~@2 a4 f4 g4 c4 ~ [bb3,f4]@2 [f3,g3] ~@3, ~ c5@2 ~@21", // F Bb5 Fsus2
AM: "[a3@4 gb2@2 [e3,bb3]@6 ~@4 bb5 ~ [db5,db6]@3 ~ d6@2 ~ bb5 ~ bb5 f5 ~ [eb5,g5]@3 ~ f5@2 ~ d5@2 ~ f4 ~ g4@2 ~@2 ab3@2, ~@12 [eb3,a3]@10 d3@19 ~@7, ~@22 ab3@15 ~@11, ~@22 d5 ~@3 d6@2 ~@6 db5 ~@11 f4 ~]/2", // Edim Db Eb Ebdim
AN: "g4 ~ ab4 f4!2 ~ [g4,d5]@4 d4 ~ f4@2 ~@2 d5@2 db5@4 b4 ~, ~ d5@2 ~@13 ab3@7 ~", // G5
AO: "[c5@3 ~ [a3,c4] ~ f4 ~ a4@2 c5@2 a4@4 db3@2 g4@2 ~@3 f4@4 d3 db3 ~@5 d2 c5 ~ db5 d5 db3 [f4,f5] ~ [f4,f5]@3 ~ d5 ~, ~@16 e4 ~@13 d3@9 ~@9]/2", // Am F
AP: "f5@3 ~ [g2,b3,f4] ~ [f4,g4] ~ ab4@3 ~ d4@3 ~ [gb2,g2,f4] ~ g4 ~@5, ~@3 d5@2 ~@7", // G7 Fsus2
AQ: "[b4,d5]@4 c2@2 [bb4,d5]@3 ~ a4@2 ~ a4 ~ f4 c4 ~ [bb3,f4]@3 ~ ab3 ~, ~@4 f4 ~@7 c5@2 ~@10", // Bm Bb Bb5
AR: "a3@4 bb2 [g3,db4]@6 ~ [gb3,c4]@12", // Gdim Gbdim
AS: "~@4 [a3,c4,d4,f4,a4,c5] ~@5 [d4,f4,g4,bb4,d5,f5]@8 [e4,db5,e5] bb4 ~@4, ~@9 [g4,g5] ~@2", // Dm7 Gm7 Dbm G
AT: "[[f4,a4,c5,d5,f5,a5]@9 ~ [a3,c4,d4,f4,a4,c5]@17 ~ [e3,d4,g4,a4,d5,e5,a5]@7 ~@7 a5@3 ~ [d3,c4,f4,c5,f5]@12 ~@8 b4@3 ~@9 bb4@4 [e3,ab4]@6 [eb3,a3,db4,gb4]@5 ~ [f2,d3,g3,c4,f4,a4]@13 [g3,c4,f4,bb4]@4 ~ [bb3,f4,a4,d5]@4 [d4,ab4,b4,f5]@4, e4 ~@35 [g3,db4,g4,a4,db5,e5,g5]@9 ~ d5@2 ~@10 [db3,b3,e4,ab4]@11 ~ [c3,bb3,eb4,g4,d5]@12 gb2@11 ~@27, ~@65 bb4@4 ~@13 [b3,db4]@5 ~@33]/5", // Dm7 Em7 Dm7 E Ebm7b5 Dm7 Gm7 Bbmaj7 …
AU: "~ [f4,b4,e5,ab5]@3 ~ [d4,g4,db5,e5]@4 [b3,f4,bb4,d5]@4 [ab3,d4,g4,b4]@3 ~ [f3,b3,e4,ab4]@4 [d3,ab3,db4]@3, ~@17 e3 ~@6", // E Dbdim Bb G E Db
AV: "[~ [c3,a3,c4,e4]@11 [bb2,e3,g3,d4]@9 ~ [f3,c4,db4]@7 ~ c6 a5 ~@2 e5 eb5 ~ c5 bb4 ~ gb4 f4 ~ eb4 d4 ~ c4 bb3 ~@5 db3 ~ d3 ~ d4 b3 ~@2 e3 ~ f3@2 g3 bb3 ~@8 f3 ~ g3 ab3 ~ bb3 b3 ~ c4 db4 ~ d4 eb4 ~ e4 ~ f4 ~ d4 [f3,c4] ~, ~@21 a2@8 ~@11 f2@11 ~ eb3@2 ~@6 c4@2 ~@7 [b1,d3]@22 ~@3 c2@2, ~@22 d3 ~@7 g5@3 ~@57 g4@2 ~@4]/4", // Am Em7b5 Dbmaj7 F5 Bm
AW: "c5 a4 ~ g4 f4 ~ f5 d5 ~ c5 ~ a4 a5 ~ e5 db5 db2@2 c6 ~@3 c5 ~, ~@16 e3 ~@7",
AX: "[~ c6@2 [d2,a5] ~@2 g6 e6 f6 c6 g5 ~@2 e6 eb6 c6 ~ bb5 a5 gb5 ~ f5 eb5 ~ db5 d5 ~ a5 f5 ~ [d5,e5] ~@2 db5 e5@2 d5 ~ c5 ~ a4 ~ bb4 b4 ~ g5 [f4,b4] ~, e6@2 ~@10 f6@2 ~@9 b3@3 ~@22]/2", // D5 Dsus2 Fdim
AY: "bb4 a4 ~ f5 a4@2 ab4 g4@2 e5 g4 ~ gb4 ~ f4 e5 db5 ~ a4 f4 d3 eb4 ~@2",
AZ: "e4 ~ gb4 ab4 ~ bb4 c5 ~ db5 eb5 ~ f5 gb5 ab5 ~@2 ab5 ~@2 e5 bb5@2 gb5 ~, ~@15 c6@2 ~@7",
BA: "[ab5 ~ e5 c5 ~ gb5 d5 ~ bb4 e5 ~@2 ab4 d5@2 bb4 gb4 f4 [c5,d5] a4 ~ bb4 ab4 ~ a4 ~ f4 ~ c4 ~ bb3@2 g3@2 ab3 ~ a3 ~ c4 ~ f4 ~ a4@2 ~@2 c4 ~ a4 ~ f4 ~ c4 ~@2 [bb3,f4] ~ g3 ~ ab3 ~ [a3,b3] a4@2 ~@3 e4@2 ~@7 f3 ~ d2@5 ~ e3@6 db2@6, ~@11 c5@2 ~@10 a3@2 ~@17 a3 ~@4 [b4,c5]@2 ~@16 e2@5 ~@26, ~@65 g3@2 ~@29, ~@66 g4@4 ~ [d4,f4]@7 ~@18]/4", // Csus2 Bb5 Asus2 Cmaj7 Dm
BB: "[[ab5,ab6]@2 ~@2 f6 ~ [ab5,ab6]@3 ~ ab6@2 ~@2 eb6 ~ c6 ~ [b5,f6] ~ f5 bb1 ab5 ~ [bb5,d6]@2 ab5 ~@2 d6 ab5 ~ f5 ~ eb5 ~ db5 ~ d5 ~ f5 ~ g5@2 ~@2 ab3 g5@2 ab5 g5 f5 d5 ~ b4@3 ~@2 ab4 e5@3 ~ ab3@2 d5@3 ~ [a3,c5]@2, [c2,eb3]@10 f2@12 d3@9 ~@41, ~@10 ab5 ~@17 bb5@2 ~@34 b4 ~@5 e4 ~]/3", // Ab Bdim Bb Am Cm
BC: "~ c5 a4 ~ c4 ~ d4@3 ~ f4 ~ [b3,ab4] ~ [f4,g4] d4 ~ b3 ~ a3@2 ~@2 f3, ~ d5@2 ~@15 f4@3 ~@3", // E Fsus2
BD: "~@4 gb2@2 [e3,bb3]@5 ~@7 [d6,g6] eb6 d6 [ab3,c6] b5@2, a3@6 ~@5 [eb3,a3]@9 ~@2 bb2 ~", // Edim G5 Ab Ebdim
BE: "bb5 f5 ~ [db6,g6] eb6 db6 c6 b5 bb5 ~ [d4,ab5] f5 [db6,g6] eb6 db6 c6 b5 bb5 ~ ab5 f5 g6 [ab3,eb6] ~, ~@21 d6@2 ~", // Dbdim Ddim Dbdim Ab5
BF: "[[b5,d6] ~ ab5 ~ [e5,f5] d5 ab5 ~ f5 b5 ~ ab5 ~ d6 b5 ab5 f4 f5 d5 ~ c5 g5 ~ [c3,e5] f5 db5 d5 ~ [f5,a5] ~ c6 a5 ~ f5 [db3,c5] a3 eb6 d6 db6 c6 ~ bb5 g5 ~ [db3,f5] [bb3,eb5] ~ db5, ~@23 a3@2 ~@23]/2", // Bm Fmaj7 C F Dbmaj7 Db Eb5
BG: "d5 ~ f5 ~ c6@2 [e5,e6] ~ [f5,f6] ~ db6@2 e6@2 ~ d6 ~ a5 ~ f5 ~ e5 ~ [b4,c5], ~@3 a5@2 ~@19", // E F Cmaj7
BH: "~@4 [f3,b3] ~@3 f5 e5 d5 ~ db5@3 ~ [b3,f4,e5]@2 d5@4 b4 ~, a5 ~@2, ~@4 g2@2 ~ g5@2 ~@15", // Fdim E
BI: "c5@4 e4 a4@2 bb4 ~ d5 f5 ~ [b4,b5]@4 [f3,b3,eb4] ab5 bb5@3 e3 [bb3,d4] ~, ~@2 bb3 ~@8 ab5", // B Fm7b5 Bb
BJ: "~ ab5@2 f5 c5 ~ [bb4,f5]@4 ~ f4 c5@2 a4@2 [b2,c3,d4] ~ f4@4 [b2,c3] b2, bb5@2 ~@10 ab4 ~@11", // Bb5 Bm Cmaj7
BK: "~@4 c2@5 ~ e2 ~ [c6,db6] ~ d6 ~ [f5,f6] ~ [f5,f6]@3 ~ d6 f1, ~ c3@6 ~@4 f2@11 ~@2, ~@8 f1 ~@3", // Dbmaj7 F
BL: "[f5,f6]@2 ~@4 g5 ~ ab5@3 ~ [f5,c6]@3 ~ [a3,c4,d4,f4] ~@5 g2 bb3, ~@3 d6@2 ~@7", // F F5 Dm7
BM: "[f5,f6]@3 ~@3 d6@2 ~@4 ab5@4 f5 ~ g5@2 ~ d2 [g5,d6]@2, ~@22 f3 ~", // F G5
BN: "~ ab5 g5 ~ f5 ~ g5@2 ~@8 [db3,b3,e4]@8, ~ f5", // Dbm7
BO: "~@6 d7 eb7 d7 c7 ~ bb6 g6 ~ f6 eb6 ~ d6 c6 ~ bb5 [bb2,g5] ~@2, c3@7 ~@5, [bb3,eb4]@5 ~@2 a3 ~@4", // Eb Eb5
BP: "eb5 ~@3 bb4 ~ g4 f4 ~ eb4 d4 ~ c4 bb3 ~ g3 ~ f3 d4 ~ b3 ab3 ~ f3, ~@11 [b1,d3]", // Bm
BQ: "~ e4 eb4 ~ c4 b3@2 ~@2 g4 d3@2 f4 ~ g4 ab4 bb4 ~ b4 c5 ~ db5 d5 ~, f4@2 ~@8 e4 ~@10 [c2,f3]@2 ~", // F5
BR: "eb5 e5 ~ g5 e5@2 a4 bb4 [a3,f4] c4 c5 e4 ~ f4 bb4 ~ [a4,b4] ~ g4 f4 ~ e4 c4 ~, ~@4 f5 ~@4 d5@2 ~@10 d4@2 ~", // Dm Asus2
BS: "a3 ~ g4 e4 ~ f4 ~ c4 eb4 g4 ~ bb4 d5 ~ eb5 b4 eb4 ~ c5 ~ f4 [a3,eb4,bb4] ab4 [bb2,c4,d4,a4], ~@15 bb3@2 d5@2 ~@5", // Eb Bbmaj7
BT: "~ f5 ~@4 f5@3 a3 [bb3,d4,f4,d5] ~ bb4 ~ bb4 ~ f4 ~ g4@4 [ab3,f4] ~", // Bb Db
BU: "d5@2 ab4@2 f4 ~ g4@4 f4@6 [b2,ab3]@6 [g3,a3,c4,e4,a5,eb6] [e6,a6], g4 ~@5 d5@10 d4 ~@7", // E Am7 A5
BV: "~@4 [g3,c4,e4] [d4,a5,eb6,e6,a6,b6] ~@4 [g3,c4,e4,e6,f6,a6] [a5,b5,eb6] bb3 g5@4 ~@2 [a5,db6,e6,a6]@4 ~, ~@4 a3@2 ~@6 [g3,db4,e4,e6,g6]@5 ~ [g3,bb3,db4,e4]@5 ~", // C Dsus2 Fmaj7 B7 A Dbdim Gdim
BW: "~ [gb3,gb5,c6,gb6]@9 ~ e6 ~@11 f3, [c4,d4,f4,d6]@5 [gb3,c4,e4,gb6]@5 [a5,b5,c6] d3, ~@5 [a6,d7]@4 [b6,c7,e7]@3, ~@11 d6@8 [d6,e6,f6,g6]@5, ~@17 f7@7", // Gbdim Dm7 Gbm7b5 Am D5 Cmaj7 Em7
BX: "[gb3,b3,d4,e4,g4] ~ [b3,g4] ~@2 a3 [bb3,d4,f4,g4,b4] b3 b4 ~@2 c4 [db4,f4,g4,b4] d4 d5 ~ eb4 e4 [a4,b4,d5] ~ [a4,b4,d5,f5] ~ g4 ab4, ~ g3@5 ~@3 a3@2 ~@4 d4@2 ~ f4@2 ~ e4@2 ~, ~@2 f3 ~@2 b3 ~ c4 ~@4", // Em7 Em G7 Db7 Bm7 Bm7b5
BY: "[b4,d5,f5] a4 [b4,d5,f5,a5] [f4,g4] ab4 ~ [d5,f5,a5] [d5,f5] c6 c5 ~ d5 [eb5,f5,a5,c6] [e5,f5,a5,c6] e6 d5 f5 gb5 [g5,a5,c6,e6] ~ [g5,a5,b5,c6,g6] ~@3, ~@5 c5@2 ~@3 c5@2 ~@3 e5@2 ~@7", // Bdim Bm7b5 Fsus2 Dm F7 Fmaj7 Am7 Cmaj7
BZ: "~@4 [g5,bb5,d6,g6] f6 ~ [g5,d6]@3 ~@3 [g5,bb5,c6,e6]@4 bb4 ~ [d5,f5,g5,bb5,d6]@5, ~@6 [f5,bb5]@5 ~ e5@4 ~@8", // Gm G5 C7 Gm7 Bb5
CA: "~ [e5,g5,a5,c6]@5 ~ c5@3 ~ c5 ~ f4@4 ~@2 g5@5, c5@5 ~ c4@5 ~@2 f5@3 ~ f5@7, ~@3 g4", // Am7
CB: "e5 a4@9 [g3,a3,c4,e4,a4,d5,e5,a5]@12 [g3,d4,a5,d6,e6,a6] e3, [g3,a3,c4,e4,d5,a5]@9 ~@13 b3@2", // Am7 Gsus2 Am7
CC: "[~@4 [e3,g3,b3,d4,a5,d6,e6,a6]@7 ~@7 a6@5 ~@11 f6@8 d6@2 eb6 d6 c6 ~, ~@12 [g3,a3,db4,e4,g5,db6,e6,g6]@11 f4@21 ~@4, ~@23 f6@11 ~@14, ~@8 [d3,c4,f5,a5]@7 ~, ~@4 d6@3 ~]/2", // Em7 A7 Dm7
CD: "[[bb5,d6] ~ g5@2 c6@2 a5 ~ f5@2 c5 ~ bb4@2 f4 ~ [a3,eb4]@2 bb4@2 ~@2 bb4 ~ b4@5 ~ [bb4,d5]@4 ~@2 ab4@4 ~ d4 f4@4 [ab3,d4]@7 ~@5 f6@2 e6 ~ f6 ~ a5 ~ d6@2 ~@4, ~@4 ab5 ~@7 f5 ~@3 ab4 ~@5 [bb2,ab3]@24 b2@14 ~@12, ~@22 d5@6 ~@8 d5@10 ~@12 f5 ~@4 e6@2 ~@7]/3", // Bb Adim Bb Abdim Bb7
CE: "c6@2 d6 c6 a5 ~ e5@4 c5 ~ d5@3 ~ c5@2 bb4@4 ab4 ~", CF: "a4@2 ~ e3 f3 ~@5 f5 ~ g5@2 ~@2 [e3,g5] f3 a5@2 ~@4",
CG: "bb5@2 ~@4 d6@2 ~@4 f6@4 d4 ~@6 d4", CH: "b5@2 ~@2 d6 ~ f6@2 ~@4 ab6@3 ~ f6 ~ a6@3 ~ f6@2",
CI: "~ a6 f6 ~ c6 ~ bb5@3 ~ ab5 ~ a5@3 ~ e5 ~ g5@3 ~@3", CJ: "gb5@3 ~ eb6 ~ c6@3 ~ db6 ~@5 d5 ~ f5 ~@5",
CK: "ab5@3 ~@3 ab5@4 ~@2 f5@2 ~@10", CL: "ab5@3 ~@3 ab5@4 ~@2 f5 ~ f5 ~ c5 ~ e5@2 ~@2 g5@2",
CM: "f5 ~ f5 ~ c5@2 bb4@4 ~@2 a4@2 ~@10", CN: "~@6 c5@2 ~@4 f5@3 ~@3 g5 ~@5", CO: "a5@2 ~@16 a5@3 ~ f5 ~",
CP: "a5@2 ~@2 bb5@2 ~ b5@2 ~@2 c6@2 ab5 ~ a5 ~@2 ab5 a5@2 ~ f5@2", CQ: "a5 ~ f5 ~@3 bb4@2 ~@16",
})).s("gm_piano").gain(0.36).pan(0.9)
// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
A B C@2 D E ~@3 F G ~@2 H I J@2 K L@3 M N O P@2 Q R ~ S ~ T ~ U V W X Y Z AA AB AC ~ AD AE AF@3 ~ AG AH AI@2 AJ AK ~
AL AM AN AO AP@2 ~ AQ AR ~ AS ~ AT AU AV AW AX ~ AY AZ@2 BA BB BC@2 BD ~ BE BF BG BH ~ BI BJ BK BL BM BN ~@4 BO BP BQ
BR BS@2 BT BU BV BW BX BY BZ ~ CA ~ CB@3 CC@2 CD CE CF CG CH CI CJ CK CL ~@2 CM ~@2
>`.pickRestart({
A: "a3@3 ~@5", B: "~ [db4,e4]", C: "[~@2 d5@25 ~@9 a4@10 ~@2, [d3,c4,f4,a4]@7 ~@5]/2", D: "d5@5 ~@7",
E: "~@4 bb5 ~@2 ab5@4 ~ d5@9 ~@3, ~@11 ab3@10 ~@3", F: "~@13 d6 ~@2 f5 ~@7", G: "~@10 c5 ~@10 d4 ~@2",
H: "~@16 f5 ~@7", I: "~ g5 ~@3 b4@4 ~@15", J: "[~@26 e5@7 ~@3 e5@12, ~@23 c4@9 ~@16, ~@24 a3@9 ~ [a3,c4,c5]@14]/2",
K: "~@16 db5@7 ~",
L: "[~@6 eb5@2 ~@2 db3@10 b4 ~@3 eb4@10 ~ [a3,eb4]@10 ~@9 f4@5 ~@13, c4@8 ~@2 b3@9 ~@4 [c3,bb3]@11 ~@11 [bb2,d4]@23 ~@4]/3", // Adim C7 Bb
M: "~@4 c3 ~@14 e5 ~@4, ~@4 b2@19 ~", N: "~@2 a3 ~@9, ~@4 e4 ~@19", O: "g3 ~@16 f3 ~@6",
P: "[~@16 bb3@7 [ab3,b3,g4]@15 ~@10]/2", Q: "~@3 [c4,d4,f4] ~@7 [db3,e4] a3 ~@11", R: "~@2 d4@3 ~@3",
S: "~@2 a2 ~@19 [f2,g2] ~", T: "~@22 c5 ~", U: "~@22 d2 ~", V: "~@5 d3 ~@6", W: "~@8 d4 ~@15, [c3,bb3]@19 ~@5",
X: "bb2@6 ~@10 [bb2,a3]@2 ~@4 [b2,ab3] ~, a3 ~@5", Y: "~@17 ab3@3 ~@2 c3 ~, ~@17 b2 ~@6",
Z: "~ b4 ~@9 c5 ~@4 [c3,c4] ~ f4 ~@2 g3 ~@2", AA: "~@18 d6 c6 ~@2 d3@2, ~@7 ab3",
AB: "~@9 d4 d3 ~@5 d3@2 ~@3 b4 ~ [b4,c5]", AC: "~@12 ab4@2 ~@6 [b2,ab3,d4] ~@3, ~@11 [b2,d4]@2 ~@11",
AD: "~@5 gb3@8 ~@3 gb3@4 ~@3 b3", AE: "~@6 d5 ~@9 [gb3,c4,f4] ~@7", AF: "[~@4 b3 ~@17 e3@41 ~@6 c3@2 ~]/3",
AG: "~@21 d2 f3 ~", AH: "a4 f5 ~@22", AI: "[~@10 b5 ~@3 [b5,c6] ~ a3@4 ~@3 d4@2 ~@19 e3 c4 ~@2]/2",
AJ: "~@3 f2 ~@8 b3 ~@4 f3 ~@3 e3 ~@2", AK: "~@13 g4 ~@3 f3 ~@6", AL: "~@22 [c4,d4] ~, ~@11 b2",
AM: "~@3 g4 ~@12 d4@5 ~@3, ~@16 b2@3 ~@5, ~@16 c4 ~@7", AN: "~@4 c3 ~@11 a3@2 ~@6", AO: "~@2 d3",
AP: "[~@24 c5 ~@3 e3 ~@19, ~@19 g2@9 ~@20]/2", AQ: "ab3 ~@23", AR: "~ e5@8 ~@15", AS: "d5@3 ~@2 a4@2 ~", AT: "~@7 d5",
AU: "~ c5@3 ~ f5@4 ~@12 [e4,f4]@3, ~ gb5 ~@22", AV: "~ f3@10 ~@13", AW: "~@5 [eb3,a3]@10 ~@9",
AX: "~ g3 bb1@16 ~@6, ~ f3@2 ~@21", AY: "~@17 a4 ~@3 e5 ~@2, ~@10 a5 ~",
AZ: "[~@4 [f3,e5] ~@11 [gb3,c4,f4] ~@6 [g2,f3]@3 ~@5 d5 ~@5 a4 ~@6 c5 ~ [d3,b3] ~]/2", // Fmaj7 F G7 G
BA: "~@9 [c4,f4] ~@6 b3@2 ~@5 db4, ~@9 d3@2 ~@13", BB: "~@5 b4 ~@17 d5",
BC: "[~@14 db3 [bb3,e4] ~@3 e4 bb3@2 ~ c3@18 ~@7, ~@19 db3@2 ~@27]/2", BD: "~@3 [g2,e3,bb3] ~@5 f3 ~@14",
BE: "~@13 f6@2 ~@9", BF: "~@15 d4 ab3 ~@5 d4 b2", BG: "~@2 a5 ~@14 c3 ~@5 b4, ~@8 [b2,d4] ~@2 c3",
BH: "~@3 g4 ~@2 c4 ~@12 bb3@2 ~@3", BI: "~@10 [ab3,bb3,c4,g4] ~@11 [b2,d4] ~",
BJ: "db6 ~ g5 ~@12 b3 [ab3,d4] ~@3 b4 ~@2 e4", BK: "~@10 e4 ~@10 e4 ~@2",
BL: "~@5 [c4,f4] ~@11 [c4,f4] ~@2 d5 ~@3, ~@5 d3@2 ~@17", BM: "~@4 d3 ~", BN: "~@2 c3 ~@9, ~@4 d3 ~@19",
BO: "~@16 d4 ~@7", BP: "~@6 g7 ~@8 eb4 ~@5 d4@2 f5, ~@15 f3@8 ~", BQ: "~@2 d5 c5 ~@5 e3 f3 ~@12 g3",
BR: "~@3 d4 ~@3 [f3,ab3,a3] ~ b1@2 ~@13", BS: "[~@21 b2 c3 c3@5 c2 ~@6 b4 ~@3 c3@2 ~@3 g4 ~@3]/2",
BT: "b2 ~@12 d5 ~@8 b2@2, ~@22 d4 ~", BU: "~@16 c3 ~@3 db4@2 ~ gb6", BV: "~@14 bb3@3 ~@7",
BW: "~@7 f5, ~@17 g7@7, ~@3 d7, ~@19 a6@5, ~@20 g5@3 ~",
BX: "~@2 [d4,e4,f4] ~@3 a4 ~ [d4,f4,g4] ~@5 [f4,g4,b4] ~@4 db5 ~ f4@2 ~", // Dm G7
BY: "a5 ~@3 f4 ~ ab5 a5 ~@4 e6 ~@5 [eb6,g6] ~ [eb6,e6] ~@3", BZ: "~@5 e6 ~ f6@2 ~@10 a5 ~@4", CA: "~@2 e5@7 ~@14 c4",
CB: "[~@19 f6@2 ~ [bb3,eb4]@16 ~ g4 ~@7 a4 ~@11 f4 ~@11 c3, ~@18 g6@2 ~@2 c3@22 ~@2 d4@13 ~@13]/3", // Eb5
CC: "[~@16 b2 ~@2 e6 ~@3 c3@24 ~, ~@5 [ab3,d4]@13 ~@4 a3@16 ~@10, ~@23 f4@13 ~@12]/2", // Abdim
CD: "~@6 f3@8 ~ d3 ~@6 [bb2,d4] ~", CE: "~@16 [a3,bb3,f4] ~@6 [b2,ab3]", CF: "~@16 [ab3,d4] ~@5 [c3,e4] ~, ~@11 a3",
CG: "~@16 [db3,e4] a3 ~@5 [d3,e5]", CH: "~@12 d6 ~@11", CI: "~@5 f5 ~@18", CJ: "~@5 f5 ~@7 ab5 ~@10",
CK: "~ g5 ~@8 ab4 ~@13", CL: "~@16 c5 ~@7", CM: "~@4 c5 ~@19",
})).s("gm_piano").gain(0.14).pan(0.9)
// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
A B C D E F G H I J K L M N O P Q R S T E F G U I J K L V W X ~ Y Z AA@2 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 BI BJ BK BL BM BN BO AK BP BQ BR AO BS BT BU BV BW BX BY BZ CA
CB CC BA CD CE CF CG CH@2 BG BH CI CJ BK CK CL BN CM CN CO CP CQ CR CS CT CU CV CW H CX CY CZ CB DA DB AZ DC DD DE DF
DG@2
>`.pickRestart({
A: "f2@5 ~@7 f2@6 ~@6", B: "e2 ~ e2 ~", C: "d2 ~ d2 ~", D: "c2 ~ f2 ~", E: "bb2 ~ f2 ~", F: "b2 ~ f2 ~",
G: "c3@6 ~@6 f2@6 ~@4 f2 ~", H: "f2@5 ~ f2@5 ~ g2@5 ~ a2@6", I: "bb2 ~ bb2 ~", J: "b2 ~ b2 ~", K: "c3 ~ db3 ~",
L: "d3@5 ~@7 a2@6 ~@6", M: "g2@5 ~@7 g2@6 ~@6", N: "g2@5 ~@7 b2@5 ~@7", O: "c3@5 ~@7 c3@5 ~@5 c3 ~",
P: "c3@3 c2@14 ~ e2@6", Q: "f2 ~ c3 ~", R: "e2 ~ a2 db3", S: "d3 ~ a2 ~", T: "f2 ~ a2 ~",
U: "f2@5 ~ f2@5 ~ g2@5 a2@6 ~", V: "a2@5 ~@7 d3@6 ~@6", W: "g2@6 ~@6 c3@5 ~@7", X: "f2@5 ~@19",
Y: "f2@5 ~ ab2@6 a2@6 f2@5 ~", Z: "e2@5 ~ a2@5 ~ db3@6 e3@6",
AA: "[d3@5 ~ d3@5 ~ a2@6 a2@4 ~@2 f2@5 ~ f2@6 g2@6 a2@5 ~, ~@11 gb2@3 ~@10]/2", AB: "bb2@6 f2@5 ~ f3@5 ~ ab2@6",
AC: "b2@5 ~ b2@6 f2@6 b2@5 ~", AD: "c3@5 ~ f2@6 a2@5 ~ c3@6", AE: "a2@6 f2@5 ~ c3@5 ~ b2@6",
AF: "bb2@5 ~ f2@6 ab2@6 bb2@5 ~", AG: "b2@5 ~ b2@5 ~ f2@5 ~ b2@5 ~", AH: "c3@6 f2@6 db3@5 ~ a2@6",
AI: "d3@6 d3 ~ a2 ~ f2 ~ d2@6 gb2@5 ~", AJ: "g2@5 ~ ab2@5 ~ a2@5 ~ bb2@6", AK: "b2@6 c3@6 db3@6 g2@5 ~",
AL: "c3@6 bb2@6 a2@5 ~ g2@5 ~", AM: "f2@6 f3@5 c3@6 ~ e2@5 ~", AN: "f2@5 ~ a2@5 ~ bb2@6 c3@6",
AO: "e2@5 ~ g2@6 a2@6 db3@6", AP: "d3@6 a2@6 g2@5 ~ gb2@5 ~", AQ: "f2@5 ~ g2@5 ab2@6 ~ a2@6",
AR: "bb2@6 ab2@5 ~ g2@6 f2@6", AS: "b2@6 f2@5 ~ ab2@5 ~ b2@5 ~", AT: "c3@6 c3@5 ~ f2@6 f2@6",
AU: "f2@6 f2@5 ~ g2@6 a2@6", AV: "bb2@6 c3@6 d3@6 eb3@5 ~", AW: "f3@5 ~ b2@6 d3@6 b2@6",
AX: "c3@5 ~ c3@6 db3@6 db3@6", AY: "d3@5 ~ d3@5 ~ a2@5 ~ a2@5 ~", AZ: "a2@6 eb2@5 ~ d2@5 ~ gb2@6",
BA: "g2@6 db2@5 ~ c2@6 e2@5 ~", BB: "f2@5 ~ e2@5 d2@6 ~ ab2@5 ~", BC: "g2@5 ~ db2@5 ~ c2@5 ~ e2@6",
BD: "f2@6 ab2@5 ~ a2@5 ~ f2@5 ~", BE: "e2@5 ~ a2@5 db3@6 ~ e3@6",
BF: "[d3@6 d3@5 ~ a2@6 a2@4 ~@2 f2@6 f2@5 ~ g2@6 a2@5 ~, ~@11 gb2@3 ~@10]/2", BG: "bb2@5 ~ f2@6 f3@6 ab2@5 ~",
BH: "b2@5 ~ b2@5 ~ f2@6 b2@5 ~", BI: "c3@5 ~ f2@5 ~ a2@5 ~ c3@6", BJ: "a2@6 f2@6 c3@5 ~ b2@5 ~",
BK: "bb2@5 ~ f2@5 ~ ab2@5 ~ bb2@5 ~", BL: "b2@6 b2@5 ~ f2@6 b2@5 ~", BM: "c3@6 f2@5 ~ db3@6 a2@6",
BN: "d3@5 ~ d3 ~ a2 ~ f2 ~ d2@5 ~ gb2@5 ~", BO: "g2@5 ~ ab2@5 ~ a2@6 bb2@5 ~", BP: "c3@5 ~ bb2@5 ~ a2@5 ~ g2@6",
BQ: "f2@5 ~ f3@5 ~ c3@5 ~ e2@5 ~", BR: "f2@5 ~ a2@6 bb2@6 c3@5 ~", BS: "d3@6 a2@5 ~ g2@5 ~ gb2@6",
BT: "f2@5 ~ g2@6 ab2@6 a2@5 ~", BU: "bb2@5 ~ ab2@5 ~ g2@5 ~ f2@5 ~", BV: "b2@6 f2@5 ~ ab2@6 b2@5 ~",
BW: "c3@5 ~ c3@5 ~ f2@6 f2@6", BX: "f2@5 ~ f2@5 ~ g2@6 a2@5 ~", BY: "bb2@5 ~ c3@5 ~ d3@5 ~ eb3@6",
BZ: "f3@5 ~ b2@5 ~ d3@5 ~ b2@5 ~", CA: "c3@5 ~ c3@5 ~ db3@5 ~ db3@5 ~", CB: "d3@6 d3@6 a2@6 a2@5 ~",
CC: "a2@5 ~ eb2@6 d2@6 gb2@5 ~", CD: "f2@5 ~ e2@5 ~ d2@5 ~ ab2@5 ~", CE: "g2@5 ~ db2@5 ~ c2@6 e2@6",
CF: "f2@5 ~ ab2@5 ~ a2@5 ~ f2@6", CG: "e2@6 a2@5 ~ db3@5 ~ e3@5 ~",
CH: "[d3@5 ~ d3@5 ~ a2@5 ~ a2@4 ~@2 f2@6 f2@6 g2@5 ~ a2@5 ~, ~@11 gb2@3 ~@10]/2", CI: "c3@5 ~ f2@5 ~ a2@5 ~ c3@5 ~",
CJ: "a2@5 ~ f2@5 ~ c3@6 b2@6", CK: "b2@6 b2@6 f2@5 ~ b2@5 ~", CL: "c3@5 ~ f2@6 db3@5 ~ a2@6",
CM: "g2@5 ~ ab2@5 ~ a2@6 bb2@6", CN: "b2@6 c3@5 ~ db3@6 g2@6", CO: "c3@6 bb2@5 ~ a2@5 ~ g2@5 ~",
CP: "f2@5 ~ f3@5 ~ c3@6 e2@6", CQ: "f2@6 a2@5 ~ bb2@6 c3@6", CR: "e2 g2 a2 db3", CS: "d3@5 ~ a2@5 ~ g2@5 ~ gb2@6",
CT: "f2@6 g2@5 ~ ab2@6 a2@5 ~", CU: "bb2@5 ~ ab2@6 g2@6 f2@5 ~", CV: "b2@5 ~ f2@5 ~ ab2@6 b2@6",
CW: "c3@5 ~ c3@5 ~ f2@6 f2@5 ~", CX: "bb2@6 c3@5 ~ d3@5 ~ eb3@6", CY: "f3@5 ~ b2@6 d3@6 b2@5 ~",
CZ: "c3@6 c3@6 db3@5 ~ db3@6", DA: "a2 eb2 d2 gb2", DB: "g2@6 db2@6 c2@6 e2@5 ~", DC: "g2@5 ~ db2@6 c2@6 e2@6",
DD: "a2@6 eb2@5 ~ d2@5 ~ gb2@5 ~", DE: "g2 db2 c2 e2", DF: "f2 ~@23", DG: "[eb3@4 c3 ~ e3@4 f3 ~@5 f2@32]/2",
})).s("gm_acoustic_bass").gain(0.31).pan(0.2)
// drums · kick
const kick = s("bd").struct(`<
~@30 A ~ A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A
~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~ A B ~
>`.pickRestart({
A: "x", B: "~@5 x ~@2 x ~@3",
})).gain(0.14)
// drums · snare
// … 27 more lines
More by Oscar Peterson
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.