0:00/0:00
// Wade in the Water — The Ramsey Lewis Trio
// 134 bpm, 4/4, key D minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: Full arrangement: all 109 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(134/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, A@4 for four bars: edit a riff to change every repeat.
// chords · piano
const piano = note(`<
~ A@5 B@4 C@8 D E F@2 G@2 H@4 I J K L M N O P@2 Q@2 R@2 S T U@2 V@2 W@2 X Y@2 Z@2 AA AB@2 AC@2 AD@2 AE@2 AF@2 AG@2
AH@2 AI@2 AJ@2 AK@2 AL@2 AM AN AO AP AQ AR@2 AS AT AU AV@2 AW@2 AX AY AZ@3 BA BB@2 BC BD@2 ~ BE@2 BF@2 BG@2
>`.pickRestart({
A: "[~@23 [d3,f3,b3]@9 [d3,f3,a3]@37 ~@2 [g3,b3]@9 [d3,f3,a3]@37 ~@3, ~@71 d3@8 ~@41]/5", // Bdim Dm G Dm
B: "[~@20 d4@20 ~ f4@2 ~ d4 ~@2 f4@9 d4@29 ~ ab4 a4@2 c5@2 ~ a4 ~@2 [c5,d5,f5]]/4", // Dm7
C: "[~@5 [d5,f5]@4 ~ ab4 [d4,g4]@3 f4@2 ~ d4@2 ~ c4 ~@2 d4@14 ~ [d4,d5] ~@2 [f4,d5]@3 d4 ~@2 [f4,d5]@9 [d3,g3,b3,d4]@15 f4@6 d4@5 ~ c4 ~@2 d4@9 [c2,e3,c4]@9 ~ [d2,f3,d4]@64 [d3,f3,a3,d4]@7 ~@2 [d3,f3,a3,d4]@5 ~ [f3,d4,d5,d6] a3 ~ [d3,f3,a3,db4,f5,f6]@2 ~ [a3,db4,d5,d6] f3, ~@71 [d3,f3]@24 ~@97, ~@71 a3@20 ~@78 [d5,d6]@14 ~@9]/8", // Dm G5 D Dm G C Dm Dmaj7 …
D: "~ [d3,f3,a3,c4,d5,a5,c6,a6]@7 ~@2 [g4,d5,d6]@6 ~ g5 d5 ~@5, ~@10 [d3,f3,a3,b3]@13 ~, ~@10 g5@5 ~ b5@2 ~@6", // Dm7 G5 Bm7b5
E: "~@2 [a5,a6] a6 a5!2 a6 a5!2 a6 ~@7 [d3,f3,a3,d4,a5,c6,a6] ~@2 [c3,a3,c4,c6,e6,c7]@3 [c3,a3,c4,a5,c6,a6], ~@2 [d3,f3,a3,d4]@15 ~@7, ~@2 d6@3 ~@19", // A Dm7 Am F Dm
F: "[~@2 [d3,f3,a3,d4,d6,f6,d7]@3 ~@3 [d3,f3,a3,d4,d6,f6,d7]@5 ~ ab5 g5 ~ d3@2 ~ d5@2 ~ c5@3 ~ [d3,a3,d4]@7 ~@2 [d3,f3,a3,d4]@5 [d5,d6] [f3,a3,d4] ~@2 [d3,f3]@2 [d5,d6], ~@14 [f3,a3,c4]@12 f3@7 ~@11 [a3,db4,f5,f6]@2 ~@2, ~@7 [d5,d6]@3 ~@3 [d5,d6]@7 ~@4, ~@7 c3 ~@16]/2", // Dm D5 Dm D Dm D F Aaug …
G: "[[f3,a3,db4] ~@2 [d3,f3,d5,a5]@7 ~@2 [d3,a3,b3]@15 ~ [d4,a6]@3 ~@2 [d3,f3,d4,d5,d6,a6]@4 ~@5 [d3,f3,d4,d5,d6,a6]@4 ~@2, ~@2 [a3,c4,c6,f6]@7 ~@2 f3@15 ~ [d3,f3,d5,d6]@4 ~@17, ~@11 [d5,d6]@7 ~@30, ~@11 g5@5 ~@32, ~@12 g4@7 ~@29]/2", // Faug Dm Bm7 D5 Dm F Dm D
H: "[~@4 [c3,a3,c4,c6]@8 ~ [d3,f3,a3,d4,d5,d6]@51 ~@3 [ab4,a4] ~@2 [a4,d5]@3 d4 ~@2 [gb3,a3,c4,d5]@3 gb4 ~@5 [d3,gb3,a3,c4] ~@5 c4 ~@2 [d3,gb3,a3,d4]@2, ~@3 [g3,e5]@9 ~@55 d5@2 ~@7 f4@2 ~@18]/4", // F Dm Amaj7 D5 D7 D C
I: "~ c4 ~@2 [d3,gb3,d4] ~@5 [d3,a3,c4] ~@2 [d3,gb3,a3,c4] ~@5 [c4,ab4,a4,d5] ~ [ab4,d5] [d3,gb3,a3,c4]@2, ~@22 a4 ~", // D D7 Abdim D7
J: "ab4 [d3,gb3,c4,a4] ~@2 [ab4,a4] ~ [f3,b3]@2 ~@2 [f3,b3] ~@5 b3@2 ~@4 [d3,f3,b3] ~, d5@2 ~ d3@5 ~@2 d3@2 ~@12, ~@3 [f3,b3,d5]@2 ~@4 d4@2 ~@11 d4@2", // D7 Amaj7 Fdim Bdim
K: "~ f3@2 ~@6 [d3,f3,b3,d4] ~@2 [f3,b3] ~@5 [f3,b3,ab4] a4 ~ [d3,f3,b3,d4,ab4] a4 ~, [d3,b3]@2 ~@10 d3@2 ~@4 d5@2 ~ d5@2 ~", // Bdim Fdim Ddim G
L: "[f3,b3,d4] ~@2 [d3,gb3,a3,c4] ~@2 gb4 ~@5 [d3,gb3,a3,c4] ~@6 d4 f4 [d3,c4,gb4,a4]@2 ~, ~@3 [f4,d5]@3 ~@15 [gb3,a3] ~@2", // Bdim D7 Dm Gbm
M: "[g4,b4]@2 ~ [d3,gb3,a3,c4] ~@2 d4 ~@5 [d3,gb3,a3,c4] ~@5 [d3,c4,ab4,a4] ~@2 [d3,gb3,c4,c5] ~@2, ~@3 [gb4,a4]@2 ~@13 d5@2 ~ [e5,c6]@2 ~", // G D7 Gbm C
N: "[d3,gb3,c4,d5,f5,d6] ~@2 [b3,d5,f5,d6]@3 ~@3 [d5,f5,d6]@3 [d3,f3,b3]@4 ~ f4 [g4,c5]@2 ~ f4 ~@2, ~@3 [d3,f3] ~@20", // D7 Bdim Dm Bdim C5 Dm
O: "[d3,f3] ~@2 [d3,f3] ~@5 [d3,f3,d4] ~@2 d4 ~@2 [d3,f3,b3]@2 ~@4 [d3,f3,b3]@2 c5, d4@3 b3@2 ~@4 b3@2 ~@4 d4 ~@5 d4 ~@2", // Dm Bdim
P: "[[f3,b3,d4,a4,a5] ~@2 [d3,gb3,a3,c4]@3 [d5,gb5,d6] ~@2 [d5,gb5]@4 ~ a3 ~@2 [gb3,a3,c4]@2 ~@4 [d3,gb3,a3,c4]@5 ~@7 [d3,gb3,a3,c4,gb4,a4,f5]@3 ~@3 d5@2 ~ [a4,e5] ~@2 [a3,b4], ~@3 [c5,e5,c6]@2 ~@3 [d3,gb3,a3,c4,d6]@4 ~@2 d3@3 d3 ~@23 [d3,gb3,a3,c4]@5 ~@2, ~@15 [d5,gb5,d6]@4 ~@29]/2", // Bm7b5 D7 D Gbdim D7 A5 Asus2 C …
Q: "[~@2 [d3,f3,g3,b3]@5 ~ [d3,f3,g3,b3]@6 ~@3 g4@2 ~ d4 ~@2 [g3,d4,f4]@6 g4 ~ [f3,d4] ~@3 f4@5 g4@2 ~ [f3,g3,b3,g4]@3 [d3,f3,g3,f4] ~, ~@2 [f4,b4,d5]@14 ~ b3 ~@5 [d3,f3,b3]@4 ~@7 d4@7 ~@5 b3@2, ~@17 [d3,f3,g3,b3]@2 ~@5]/2", // G7 Dm G7 Bdim G7
R: "[~ ab4 a4@2 ~@3 [d3,gb3,c4,d4]@5 ~@4 [d3,gb3,c4] ~@2 d4 ~@2 [d3,gb3,c4,d4]@5 ~ c4 ~@2 [d3,gb3,c4,d4] ~@2 d4@5 d3 d4 ~@2 f4 ~@2 g4 ~, ~ [gb3,c4,c5]@5 ~@27 gb3@7 ~@8, ~@33 d3@4 ~@5 [d3,gb3]@2 ~ d3@2 ~, ~@34 c4@7 ~ c4@5 ~]/2", // D7 Gbdim D
S: "ab4 c5@2 d4 ~@2 d4@2 ~ c4 ~@2 d4@2 ~ [d3,f3,b3] ~@5 [d3,f3,b3,b4]@2 ~, d3@5 ~ [d3,f3,b3]@8 ~@10, ~ [f3,b3]@5 ~@18, ~ a4 ~@19 [d4,f4] ~@2", // Bdim Fdim Dm
T: "~@3 [d4,g4,b4]@3 f4 ~@2 [f3,b3,d4,g4,b4]@6 [d3,b3,f4] ~@2 [d3,f3,b3,d4,g4,b4]@3 [d3,f3,b3] ~@2, ~@3 [d3,f3,b3] ~@5 d3@4 ~@11", // G G7 Bdim G7 Bdim
U: "[[d2,gb3,a3,c4]@30 ~@3 [a4,a5]@2 ~@4 [c5,c6]@2 ~@3 d5 d6 ~ d5]/2", // D7 A C
V: "[d6 d5 d6 d5 [d5,d6] d6 d5 ~ d5 d6!2 ~ d6 ~@25 [d5,a5,d6] ~@3 [f5,c6,f6] ~@2 [d3,f3,g5,d6,g6] ~@2, [d2,d3,gb3,c4]@22 d2@17 ~@3 d2@3 ~@3, ~@24 [d3,g3]@18 ~@3 c4@2 ~]/2", // D D5 F5 G7 D7 G5
W: "[[f5,c6,f6]@2 ~@4 d6@2 ~ [d5,d6] d6 d5 d6 ~ d6!2 ~ d6 ~ a5@2 ~@6 [d4,g4]@5 ~ f4 ~@2 g4@3 f4@2 d4@3 ~ c4@2 ~, d2 ~@5 [d3,gb3,c4]@26 ~ [d3,gb3,c4]@13 ~@2, ~@6 a5@5 ~@7 d5@3 ~@3 d2@22 ~@2, ~@6 d5 ~@7 d2@5 d6 ~@7 f4 ~@7 d4@3 ~@10, ~@36 f4 ~@11]/2", // F5 D G5 D7
X: "[d2,d3,gb3,c4,d4]@19 ~@5", Y: "[~ a3 ~ a3!4 ~ a3!8 ~ a3!4 ~ a3 a3@22 ~@3, c2@3 d2@13]/2",
Z: "[c2@9 ~@9 c3@2 ~ gb3@5 ~ d3 ~@2 d3@3 c3 ~@2 d3@2 ~@4 d3@3 c3 ~@2, ~@9 d2@38 ~, ~@21 [a3,c4]@10 ~@17]/2", // Am
AA: "d3@2 ~@4 d3@2 ~ f3@6 d3 ~@2 d3 ~@5, d2@23 ~, ~@9 c3@5 ~@10",
AB: "[~@11 d3 f3@3 g3 ~@2 g3@2 ~ f3 ~@2 a3@2 ~ d3 ~@2 d3@2 ~ d3 ~@5 [f3,b3]@2 ~@4 [d3,f3,b3]@2 ~, g2@37 ~@11, ~@24 ab3 ~@13 d3@3 ~@7]/2", // Fdim Bdim
AC: "[~@3 a3 ~ a3 c4 ~ d4 ~@2 a3 [a3,d4]@3 [c3,gb3,c4] a3 ~ [a3,d4]@3 c4 ~@5 a3 ~ a3 c4 ~ d4 [c3,gb3] ~ a3 [a3,d4]@3 [c3,gb3,c4] a3 ~ [a3,d4]@3 [c3,gb3,c4] ~@2, [c3,gb3]@13 ~@8 [c3,gb3]@11 ~@16]/2", // D5 Cdim D5 Cdim D5 Cdim D5 Cdim
AD: "[~@3 d3!2 ~ f3 g3 ~@3 d3 [d3,g3]@2 ~ f3 ~@2 [d3,g3]@3 f3 ~@5 d3 ~ d3 f3 ~ g3 ~@2 d3 [g2,b2]@3 f3 d3 ~ g3 ab3@2 a3 ~@2, b2@13 ~ [g2,b2]@2 ~@5 [g2,b2]@11 ~@4 g3 ~@5 [g2,b2]@6]/2", // G5 G
AE: "[~@9 [a3,c4,gb4]@2 ~ [a3,d4,gb4]@2 ~ [a3,d4,gb4]@2 ~ d4@2 ~ c4@2 ~ a3@4 ~@2 c4@3 [a3,d4,gb4]@6 [a3,c4] ~@2 f4 ~@2 [d4,g4] ~@2, [d2,d3,gb3]@5 ~, ~@12 c4 ~@5 [a3,gb4]@5 ~ [d4,gb4]@8 ~@7 d4@2 ~@7, ~@15 a3 ~@5 [c3,gb3,a3]@3]/2", // Gbdim D Am G5 D Gbdim
AF: "[g4 a4@2 ~ f4@2 d4@2 ~@4 f4@2 ~ [b3,d4,g4]@2 ~ [b3,d4,a4]@2 ~ [b2,f3]@5 ~ gb4 g4 ~ [d4,gb4,c5] g4 ~ [d4,gb4] g4 ~ [d4,gb4] g4 ~ [g2,f3]@3 d5@3 [g2,f3]@2 ~, [b2,f3]@14 ~ [b2,f3] ~@16 g2@5 ~@11, d4@3 g4@2 ~@3 b3@5 ~@8 [b3,d4]@3 ~@3 c5@2 ~@4 c5@2 ~ c5@5 ~@4 c5 ~@2, ~@9 d4@5 ~@12 d4@2 ~@5 f3@5 ~ d4@2 ~ [d4,g4]@5 ~]/2", // G Bm7 Bdim D7 D G7 Bdim Bm …
AG: "[[c3,gb3,d4,gb4,d5]@5 ~ [d4,gb4,c5]@2 ~@7 [c3,gb3]@2 ~ [ab4,a4] ~@2 [a4,d5]@5 ~ d4@3 [gb4,g4,c5] ~@2 g4 ~@2 gb4@3 [c3,gb3,d4]@2 ~ [c3,gb3,a3,c4]@5 ~, ~@6 [c3,gb3]@7 ~@2 ab4 ~@2 d5@2 ~ [c3,gb3]@17 ~@10, ~@33 c5@5 ~@10]/2", // D7 Cdim Amaj7 D5 C D7 Gbdim Cdim
AH: "[~@5 ab4 a4 ~@2 [a4,d5]@5 ~ [d3,f3,b3,d4] ~@2 d4@3 c4 ~@2 d4@2 ~ f3 ~@2 [d3,f3] ~@2 [d3,f3,b3]@3 d4@3 c4 ~@2 d4@3 f4@2 ~, [d3,f3,b3]@14 ~@7 [d3,f3,b3]@5 ~@13 [d3,f3,b3]@8 ~, ~@5 d5@2 ~@2 ab4 ~@20 d4@3 c4 ~@14]/2", // D5 Bdim Dm Bdim
AI: "[~@9 [a4,c5,a5] ~@2 [c5,e5,c6]@2 ~ [d5,e5,gb5,d6] ~@2 [d5,gb5,d6]@2 ~ [c5,e5,c6] ~@2 [d5,gb5,d6]@7 ~@5 [c3,gb3,a3]@5 ~ [c3,gb3,a3]@5 ~, [c3,gb3,a3]@14 gb3@2 ~@5 [c3,gb3]@14 ~@13, ~@15 a3@2 ~@16 [c5,e5,c6]@8 ~@7]/2", // Am C D C D Gbdim Cdim C
AJ: "[[f5,a5,f6]@3 ~@3 [d5,f5,d6]@4 ~@5 [d3,f3,b4,f5,b5] ~@2 [d5,a5,d6] ~@2 [f5,c6,f6]@4 ~@2 [f5,c6,f6] ~@2 [d5,a5,d6] ~@2 [b4,f5,b5] ~@2 [b2,d3,f3]@12, [b2,d3,f3]@13 ~@2 b2@2 ~@4 [b2,d3,f3]@14 ~ [d5,a5,d6]@6 ~@6]/2", // F Dm Bdim D5 F5 D5 Bdim D5
AK: "[[ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 d5@3 [d3,gb3,c4] ~@2 d5 ~@2 [gb4,c5,d5]@5 ~ [d5,ab5] a5 ~ [d5,ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 [d3,gb3,c4,d5] ~@2 d5 ~@2 [d3,gb3,c4,c5,d5]@5 ~, [d3,gb3,c4]@14 ~@7 [d3,gb3,c4]@14 ~@13, d5@2 ~@10 [a5,d6]@6 ~@18 [a5,d6]@3 ~@9, ~@12 ab5 ~@29 gb4@3 ~@3]/2", // D D7 Ddim D D7 D5
AL: "[[ab5,a5] ~@2 [d5,ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 [d5,ab5,a5,d6] ~@2 d5@3 [d3,f3,b3] ~@2 d5 ~@2 [f4,b4,d5]@5 ~ [f4,b4,c5] ~@2 [f4,b4,d5]@3 c5 ~@2 [d3,b3,f4,b4,d5]@3 c5 ~@2 [d3,f3,b3,f4,b4]@3 c5 ~@2, [d3,f3,b3]@12 ab5 ~@8 [d3,f3,b3]@14 ~ f3 ~@11, d6 ~@5 [a5,d6]@3 ~@12 d5 ~@2]/2", // Amaj7 D Bdim F Bdim D5
AM: "d2@6 [d3,gb3,c4]@2 ~ d2 ~@2 d2@3 [d3,gb3] ~@5 d6 d5 d6, d5@12 ~@3 c4@2 ~@4 d2@2 ~", // D7 D
AN: "[gb3,d5] d6 ~ [d2,d5] d6 d5 d6 d5 ~ d6 d5 [d2,d6] d5 d6 d5 ~ d6 d5 d6 d5 d6 [d2,d5] d6 d5, [d3,c4]@2 ~@4 d2@2 ~ [d3,gb3,c4]@2 ~@4 d2@2 ~ [d3,gb3,c4]@2 ~@4", // D D7
AO: "~ d6 d5 d6 d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 d5 d6, g2@6 [d3,f3,b3]@3 ~@2 g2@4 [d3,f3,b3]@5 ~ g2@3", // Bdim
AP: "[d3,f3,b3,d5] ~ [d5,d6] ~ d6 d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 d5, ~@3 g2@6 [d3,f3,b3]@6 g2@3 [d3,f3,b3]@5 ~", // Bdim D Bdim
AQ: "~ d6 d5 d6 d5 d6 d5 d6 ~ d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 ~ d5 d6 d5, [d2,gb3,a3,c4]@8 ~@4 [d3,g3,c4]@2 ~@4 d2@2 ~ [d3,g3,c4]@2 ~", // D7 Csus2
AR: "[d6 d5 d6 ~ d5 d6 d5 d6 d5 ~ d6 d5 d2@2 d5 d6 d5 d6 d5 ~ d6 d5 d6 d5 d6 d5@2 d6@2 ~@4 [d5,f5,b5,d6] ~@2 [g2,b3,f5,b5,d6,f6]@2 ~ [g2,d3,f3,b3]@2 ~ [g2,d3,f3,b3,g5,b5,d6,g6]@2 ~ [g2,f5,b5,d6,f6] ~@2, ~@3 d2@3 [d3,g3,c4]@2 ~@4 d6 ~@2 [d3,g3,c4]@2 ~@4 [g2,d3,f3,b3]@11 ~ [g2,f3,b3]@2 ~ [d3,f3] ~@2 [g5,b5,d6,g6] ~@5 [d3,f3,b3]@2 ~]/2", // Bdim G7 Csus2 G7 Dm G Bdim
AS: "[g2,db6] ~@2 g2 ~@2 [g2,d3,f3,b3,db6] d6@2 [g2,d3,f3,b3] ~@2 [g2,d3,f3,b3,g5,b5,d6,g6] ~@2 [g2,d3,f3,b3,d5,f5] ~@2 [g2,d3,f3,b3] ~@2 [g2,d3,f3,b3,d5,f5,c6]@3, [d3,f3,b3,b5,a6]@5 ~@19, ~ d6@4 ~ [b5,a6]@4 ~@5 d6@2 ~ [d5,f5,d6]@2 ~@4", // Gdim G7 Bm7b5 B7 Dm
AT: "[d3,gb3,c4,d4] ~@5 [d3,gb3,c4]@4 ~@5 [d3,gb3,c4,d5,a5,d6] ~@5 [d3,gb3,c4,f5,c6,f6]@3, [d5,a5,d6]@13 ~@11", // D7 D5
AU: "~@3 [d3,c4,d5,a5,d6] ~@2 [d3,gb3,c4] ~@2 [d3,gb3,c4]@5 ~ [d3,gb3,c4,b4,d5,d6] ~@2 [d3,gb3,c4]@3 [d5,g5,g6] ~@2, ~@6 [d5,a5,f6]@6 ~@6 [c5,f5,f6] ~@5", // D7 Bm D7 G5 Dm F5
AV: "[[d3,f3,b3,d4,f5,a5,a6]@4 ~@2 [d3,f3,b3,d4]@2 ~@7 [d3,f3,b3,d4,f5,g6,c7] ~@5 [d3,f3,b3,d4]@4 ~ d6 [d4,d7] ~ d6 [d3,f3,b3,d4,d6,d7] [a6,d7] ~ [d3,f3,b3,d4]@2 ~ g6@2 ~ [f3,b3,b5,d6,f6] ~@2 [d3,f3,b3] ~@2 [d3,f3,b3,b5,d6] ~@2, ~@6 [f5,g6,c7]@5 ~@10 f5@12 ~@2 [b5,d6]@3 ~@4 [b5,f6]@2 ~@4, ~@21 [a6,d7]@5 ~@10 f6 ~@11]/2", // Bm7b5 Bdim G7 Bdim D Bdim D5 Bdim …
AW: "[[gb3,c4,a5,d6,f6]@4 ~@2 [d3,gb3,c4,a5,d6,f6]@3 ~@6 [d3,gb3,c4,gb5,a5] ~@2 c6 ~@2 [c4,gb5,a5,d6]@5 ~ [d3,a3,c4,gb5,a5,d6] ~@2 [d3,gb3,a3,c4,gb5] ~@2 [d3,gb3,a3,c4]@3 [gb5,a5,d6]@3 [d3,gb3,a3,c4] ~@2 [d3,gb3,a3,c4,a5,c6,d6,f6]@3 ~@3, d3@2 ~@19 [d3,gb3]@3 ~@9 [gb5,a5] ~@14, f3 ~@5 f3 ~@8 d6@2 ~@13 [a5,d6]@2 ~ c6@2 ~@13]/2", // D7 D D7 D Gbm D5
AX: "[d3,f3,b3,d4]@3 ~@3 [d3,f3,b3,d4,g5]@3 [f5,c6,f6] ~@2 [g5,g6]@2 ~ [d3,f3,b3,d4,f5,c6,f6] ~@2 [g5,d6,e6,g6] ~@2 [d3,f3,b3,d4]@3, ~@6 [d6,g6] ~@5 d6 ~@8 [f5,c6,f6] ~@2", // Bdim G7 F5 G Bdim Em7 Bdim G5 …
AY: "[g5,d6,g6] ~@2 [d3,f5,c6,f6] b3 ~ [d3,f3,b3,d4] ~@6 f2 [g2,a2] [b2,c3] [d3,e3] [f3,g3,a3] [b3,c4] ~ [a4,b4,c5,d5] [e5,f5,g5] [b5,c6] [d6,e6,f6], ~@6 [g5,d6,g6]@3 g2@4 e2@2 ~@3 d4@3 ~@3, ~@12 d2@3 ~@4 [e4,f4]@2 ~ a5@2", // G5 Dm7 Bdim Gsus2 Cmaj7 Dsus2 F Cmaj7 …
AZ: "[a6@2 ~@31 [d3,g3,c4]@4 ~@5 d2@4 ~@9 d2 ~ d2!2 ~ d2 ~ d2!2 ~ d2!3 ~ d2!3, d2@10 ~@2 d2@6 ~@3 d2@8 ~ d2@6 ~ d2@4 ~@6 d2@6 ~@19, g6 ~@5 [d3,g3,c4]@8 ~ [d3,g3,c4]@8 ~ [d3,g3,c4]@8 ~@7 g3@18 ~@15, ~@39 [d3,c4]@8 ~ [d3,c4]@9 ~@15]/3", // Csus2 D7
BA: "~ d2!2 ~ d2!2 d2@5 ~@2 f2 [g2,a2] [b2,c3] [d3,e3] [f3,g3,a3] [b3,c4] ~ [a4,b4,c5,d5] [e5,f5,g5] [b5,c6] [d6,e6,f6], ~@4 d2 ~ d4 ~, ~@19 [e4,f4]@2 ~ a5@2", // Gsus2 Cmaj7 Dsus2 F Cmaj7 D7 Em Cmaj7 …
BB: "[a6@2 ~@31 d3@5 ~@4 d3@6, d2@6 d2@5 ~, g6 ~@11 [d3,g3,c4]@20 ~ [g3,c4]@15]/2", // Csus2 C5
BC: "~@12 [d3,g3,c4]@2 ~ [d3,g3,c4]@7 ~@2, d2@3 ~", BD: "[[c2,c3,g3]@8 ~ [d2,d3,a3]@38 ~]/2",
BE: "[~@3 [f4,gb4] ~@2 [f4,gb4] ~@2 d4 gb4 ~@3 d4 [d3,gb3,c4,f4] ~@2 d4@2 ~ c4 ~@2 d4@2 ~@4 d4@2 ~ [d3,gb3]@2 ~ d4 ~@2 [d3,gb3,c4,d4,f4] ~@5 [d3,gb3,c4]@2 ~, [d3,gb3,c4]@14 ~ gb4@2 ~@4 [d3,gb3]@10 ~@2 c4 ~@14]/2", // Gbmaj7 D7 D D7 D
BF: "[~@3 [g4,d5] ~@2 [g4,d5]@2 ~ f4 ~ d5@2 ~@2 [d3,f3,b3,g4,d5] ~@2 [g4,d5]@2 ~@4 [g4,d5]@2 ~ [d3,f3,f4] ~@2 [g4,d5]@3 [d3,f3,b3]@3 a4@2 ~ [d3,f3,b3] ~@5 [d3,f3,b3]@3, [d3,f3,b3]@14 ~@7 [d3,f3,b3]@5 ~@22, ~@11 g4 ~@21 f4 ~@2 g4 ~@2 d4@2 ~@4 d4 ~@2]/2", // G5 G7 G5 Dm G5 Bdim
BG: "[~@3 [ab4,d5] ~@2 ab4 a4 ~ g4 ab4 d5@3 ~ [d3,gb3,c4,ab4,d5] ~@2 c5@2 ~ a4 ~@2 g4@2 ~ a4@2 ~ c5@2 ~ g4 ab4 d5@2 ~@2 [d3,gb3,c4,d5]@3 c5@2 ~@4, [d3,gb3,c4]@13 ~@8 [d3,gb3,c4]@10 ~@2 [d3,gb3,c4]@2 ~@13, ~@6 d5@2 ~@3 a4 ~@3 a4@2 ~@22 a4 ~@8]/2", // Abdim D7
})).s("gm_piano").gain(0.41)
// chords · piano · soft notes
const piano_soft = note(`<
~@17 A ~ B C D E ~@4 F G H I J K L M N O@2 P Q R ~ S ~@2 T ~ U ~@8 E ~@2 V ~@8 W X@2 ~@3 Y Z ~ AA ~@5 AB ~@2 AC ~ AD
AE ~@6 AF ~@7 AG AH AI AJ AK
>`.pickRestart({
A: "~@17 d3 ~@5 d3", B: "~@10 a6 a5 ~@8 f3@3 f3", C: "~@17 f5@2 ~@5", D: "~@18 d3 ~@5", E: "d3 ~@23",
F: "~@4 d3@4 ~@11 [d3,gb3,a3] ~@4", G: "~ a3 ~@17 [d3,gb3,a3] ~@4",
H: "~@13 [d3,f3,b3] ~@3 b4 ~ [d3,f3,b3]@2 ~@3, ~@15 d3@2 ~@7, ~@8 f3 ~@3", I: "~@6 [d3,f3,b3] ~@11 d3 ~@5",
J: "d3 ~@8 [d3,gb3,a3,c4] ~@8 [d3,gb3,c4] ~@5, ~@9 a3 ~@2", // D7
K: "[d3,gb3,a3,c4] ~@5 [a3,c4] ~@2 [d3,gb3,a3,c4] ~@5 d3 ~@2 [gb3,a3] ~@2 a3 ~@2", // D7 Am D7 Gbm
L: "~@6 [d3,f3,b3] ~@2 [d3,f3,b3] ~@8 [d3,f3,b3] ~@2 [d3,f3,b3] ~@2", M: "b3 ~@5 [d3,f3,b3] ~@5 [f3,b3] ~@5 f3 ~@5",
N: "d3 ~@13 [gb3,c4] ~@9", // Gbdim
O: "[~@5 [d3,gb3,a3,c4] ~@2 [d3,gb3,a3,c4] ~@14 [d3,c4]@2 ~@16 [d3,f3,g3] ~@4 [g3,b3] ~, ~@23 gb3 ~@24]/2", // D7 G7 G
P: "~@5 [d3,f3,g3,b3] ~ [d3,g3,b3] ~@8 [d3,f3,g3,b3] ~@2 d3@2 ~@3", Q: "~ d3@5 ~@18", R: "~@4 [d3,gb3] ~@16 gb3 ~@2",
S: "~@15 f3 ~@8", T: "~@10 d5!2 ~@12", U: "~@8 d5 ~@3 a5 d5 a5 [d5,a5] d5 a5 ~@6", V: "g2@13 ~@11",
W: "~@3 [d3,b3] ~@2 b3 ~@17", X: "[~@15 c3@2 ~@4 a3@14 ~@13]/2", Y: "~@6 c6 ~@17", Z: "d5 ~@11",
AA: "~@13 d6 d5 d6 ~ d5 d6 ~ d5 ~@3", AB: "~@9 d3@2 ~@13", AC: "~@3 gb3 ~@20", AD: "~@4 a6 ~@10 d3 ~@8",
AE: "~@18 a5 ~@5", AF: "~@13 e2@2 ~@9", AG: "~@15 gb4@2 ~@7", AH: "~@14 f4 ~@6 f4 ~@2", AI: "~@3 b3 ~@20",
AJ: "~@4 a4 ~@19", AK: "~@14 g4 ~@9",
})).s("gm_piano").gain(0.21)
// bass · acoustic bass
const bass = note(`<
~ A@4 B@8 C@2 D E F G@4 H I J K L M N O P H Q R S T@4 F U V W X@6 Y Z AA AB X AC V W X AC V W X AC V W X AC V W X AC V
W X AC V W X AC V W X AC V W X AC V W X AC V W AD@6 AE Z AA AB X AC V W X AF
>`.pickRestart({
A: "[~@23 g2@9 d2@36 ~@3 g2@9 d2@11 ~ d2@2 ~ d2]/4",
B: "[~@8 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2]/8",
C: "[~@8 d2@2 ~ d2@2 ~ a1@3 c2@2 ~ db2@2 ~ c2@9 ~ d2@12 c2@3]/2", D: "f2@6 d2 ~@2 d2@2 ~ d2 ~@2 d2@4 ~@2 a1@3",
E: "c2@9 ~ d2@14", F: "~ d2@8 ~ d2@2 ~ d2@3 a1@3 c2@3 db2@2",
G: "[~ d2@7 ~@3 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@3 a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@3 a1@3 c2@3 db2@3 d2@7 ~@3 d2@2 ~ d2@3 a1@3 c2@3]/4",
H: "db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3", I: "db2@3 d2@4 ~@2 d2@2 ~ d2@2 ~ d2@3 d2@5 ~", J: "d2@3 c2@9 d2@10 ~@2",
K: "~ d2@3 f2@6 d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~@3", L: "~ a1@3 c2@9 d2@6 a1@3 c2@2",
M: "~ db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@2", N: "~ db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@2",
O: "~ gb2@3 g2@7 ~@2 g2@2 ~ g2@2 ~ d2@3 f2@2", P: "~ gb2@3 g2@7 ~@2 g2@2 g2@2 ~ a1@3 c2@3",
Q: "db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@3", R: "gb2@3 g2@7 ~@2 g2@2 ~ g2@2 ~ d2@3 f2@3",
S: "gb2@3 g2@7 ~@2 g2@2 ~ g2@2 ~ a1@3 c2@3",
T: "[db2@3 d2@7 ~@2 d2@2 d2@2 ~ a1@3 c2@3 db2@3 d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@3 gb2@3 g2@7 ~@2 g2@2 ~ g2@2 ~ d2@3 f2@3 gb2@3 g2@7 ~ g2@2 ~ g2@2 ~ a1@3 c2@3 db2@2]/4",
U: "~ d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@3 gb2@2", V: "g2@7 ~@2 g2@2 ~ g2@2 ~ d2@3 f2@3 gb2@3",
W: "g2@7 ~@2 g2@2 ~ g2@2 ~ a1@3 c2@3 db2@3", X: "d2@7 ~@2 d2@2 ~ d2@2 ~ a1@3 c2@3 db2@3",
Y: "d2@7 ~@2 d2@2 ~ d2@2 ~ d2@5 ~ a1@3", Z: "c2@9 d2@10 ~@2 d2@3", AA: "f2@6 d2@2 ~ d2@2 ~ d2@2 ~ d2@2 ~@4 a1@3",
AB: "c2@8 ~ d2@6 a1@3 c2@3 db2@3", AC: "d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@3 gb2@3",
AD: "d1@9 d2@2 ~ d2@3 a1@3 c2@3 d2@3", AE: "d1@7 ~@2 d2@2 ~ d2@2 ~ d1@3 a1@3 d2@2 ~",
AF: "d2@7 ~@2 d2@2 ~ d2@2 ~ d2@3 f2@3 ~@3",
})).s("gm_acoustic_bass").gain(0.31)
// chords · trombone
const trombone = note(`<
A@5 ~@11 B ~ C ~ C ~ D E F@3 ~@8 G H I J K L M N O P Q R O P S T@2 U ~@16 V@2 W@2 V@2 W@2 X Y Z AA X AB Z AA AC AD AE
AF AG AH AE AF AI AJ AK AL AI AM AN AO@2 U ~@6
>`.pickRestart({
A: "[~@23 f5@6 d5 ~@2 a4 ~@2 c5@6 d5@22 ~@8 c5@5 ~ a4 ~@2 d4 ~@2 g4 f4 ~ d4 ~@2 d4@25 ~@6]/5",
B: "~@19 [f4,a4,e5]@2 ~@3", C: "~@10 [f4,a4,e5] ~", D: "~@21 [a3,f4,a4]@2 ~", E: "~@9 [a3,d4,a4] ~@2",
F: "[~@3 [g3,c4,g4]@9 [a3,d4,a4]@39 ~ [g3,c4,g4]@9 [a3,d4,a4]@3 ~@8]/3", G: "~@9 [a3,d4] ~@7 [a3,d4] ~@6",
H: "~@2 [a3,d4] ~@8 [a3,d4] ~@8 [a3,d4] ~@3", I: "~@8 [g3,b3] ~@8 [g3,b3] ~@6",
J: "~@2 [g3,b3] ~@7 [g3,b3] ~@8 [g3,b3] ~@4", K: "~ [a3,d4] ~@5 [a3,d4] ~@8 [a3,d4] ~@7",
L: "~ [a3,d4] ~@8 [a3,d4] ~@8 [a3,d4] ~@4", M: "~ [g3,b3] ~@4 [g3,b3] ~@8 [g3,b3] ~@8", N: "[g3,b3] ~@23",
O: "~@6 d3@8 ~ f3 ~@5 d3@2 ~", P: "f3@9 d3@14 ~", Q: "~@6 a3@8 ~ c4 ~@5 a3@2 ~",
R: "d4@6 c4@3 ab3@6 g3@2 f3@3 ~ d3@2 ~", S: "f3@4 ~@2 d3@4 ~@2 d3@2 ~ d3@2 ~@4 a2@3", T: "[c3@3 d3@13]/2",
U: "g3@9 a3@2 ~@13", V: "[d3,d4]/2", W: "[g2@41 ~ [d3,b3]@2 ~@4]/2", X: "~@6 [gb3,a3,d4] ~@8 [gb3,a3,d4] ~@8",
Y: "[gb3,a3,d4] ~@8 [gb3,a3,d4] ~@8 [gb3,a3,d4] ~@5", Z: "~@6 [f3,b3,d4] ~@8 [f3,b3,d4] ~@8",
AA: "[f3,b3,d4] ~@8 [f3,b3,d4] ~@8 [f3,b3,d4] ~@5", AB: "[gb3,a3,d4] ~@8 [gb3,a3,d4] ~@8 [a3,d4]@2 ~@4, ~@18 gb3 ~@5",
AC: "~@6 [a3,a4]@8 ~ [b3,b4] ~@5 [c4,c5] ~@2", AD: "~@6 [c4,c5]@6 [b3,b4]@6 [c4,c5] ~@5",
AE: "~@6 [c4,c5]@8 ~ [b3,b4] ~@8", AF: "[a3,a4] ~@8 [a3,a4] ~@8 [a3,a4]@5 ~", AG: "~@6 [a3,a4]@9 [b3,b4] ~@8",
AH: "[c4,c5] ~@8 [c4,c5]@2 ~@7 [c4,c5]@4 ~@2", AI: "~@6 [d3,d5]@9 [f3,f5]@2 ~@4 [d3,d5]@2 ~",
AJ: "[f3,f5]@3 [d3,d5]@5", AK: "~@6 [a3,a5]@5 ~ [a3,a5]@5 ~ [a3,a5]@5 ~", AL: "[a3,a5]@5 ~ [a3,a5]@5 ~@13",
AM: "[f3,f5]@3 [d3,d5]@3 ~@2", AN: "[f3,f5]@3 ~@3 [d3,d5]@3 ~@3 [d3,d5]@3 [d3,d5]@2 ~@4 [a2,a4]@3",
AO: "[[c3,c5]@3 [d3,d5]@13]/2", // C D
})).s("gm_trombone").gain(0.58).pan(0.6)
// other · trombone
const trombone_2 = note(`<
~ A@7 ~@8 B ~ C ~@24 D E F G D E H I@2 J ~@17 K ~ L ~ K ~ L M N O P M N O P ~@8 F Q R S T U V I@2 W ~@6
>`.pickRestart({
A: "[~@23 [g2,d3,f3,b3]@9 [d2,a3,d4]@37 ~@2 [g2,d3,g3,b3]@9 d2@38 d2@2 ~@48, ~@32 f3 ~@47 [f3,a3,d4]@87 ~]/7", // G7 D5 G Dm
B: "~@19 [e3,a3]@2 ~@3", C: "~@10 [e3,a3] ~", D: "~@6 d4@8 ~ f4 ~@5 d4@2 ~", E: "f4@5 ~@7",
F: "~@6 a4@8 ~ c5@2 ~@4 a4@2 ~", G: "d5@6 c5@3 ab4@6 g4@2 f4@3 ~ d4@2 ~", H: "f4@4 ~@2 d4@4 ~@2 d4@2 ~ d4@2 ~@4 a3@3",
I: "[c4@3 d4@13]/2", J: "g4@9 a4@2 ~@13", K: "~@2 [d4,gb4]@2 [e4,g4]@2 [gb4,a4] ~, ~@5 d2@18 ~", L: "~@9 [f4,d5] ~@2",
M: "~@6 d2 ~@8 d2 ~@8", N: "d2 ~@8 d2 ~@8 d2 ~@5", O: "~@6 g2 ~@8 g2 ~@8", P: "g2 ~@8 g2 ~@8 g2 ~@5", Q: "c5@3 a4@5",
R: "~@6 d5@5 ~ d5@5 ~ d5@5 ~", S: "d5@5 ~ d5@5 ~@13", T: "~@6 f4@9 g4@2 ~@4 e4@2 ~", U: "g4@3 e4@3 ~@2",
V: "g4@3 ~@3 e4@3 ~@3 e4@3 e4@2 ~@4 a3@3", W: "c5@9 d5@2 ~@13",
})).s("gm_trombone").gain(0.42).pan(0.3)
// drums · kick
const kick = s("bd").struct("<~@3 A B C@9 D E F G H@3 I J@3 K@5 J@5 L H@2 G@3 M@31 N M@3 N M@31 O>".pickRestart({
A: "~@23 x", B: "~@8 x ~@11 x ~@2 x", C: "~@8 x ~@2 x ~@2 x ~@5 x ~@2 x", D: "~@3 x!3 ~ x", E: "x ~@2 x!2 ~@2 x",
F: "x ~@9 x ~@2 x ~@8 x ~", G: "~ x ~@8 x ~@2 x ~@2 x ~@5 x ~", H: "~@2 x ~@8 x ~@2 x ~@2 x ~@5 x",
I: "~@2 x ~@9 x ~@2 x ~@2 x ~@5", J: "x!2 ~@2 x!3 ~", K: "~ x ~@2 x ~@8 x ~@2 x ~@2 x ~@4",
L: "x ~@2 x ~@8 x ~ x ~@2 x ~@5 x", M: "x ~@2 x!3 ~ x", N: "x ~@2 x!5", O: "x ~@2 x!3 ~@2",
})).gain(0.31)
// drums · rim
const rim = s("rim").struct("<~@5 A@9 B@2 C@2 D@3 E@4 F@2 ~@16 B@10 ~@56>".pickRestart({
A: "~@5 x ~@11 x ~@6", B: "~ x ~ x", C: "~@7 x ~@11 x ~@4", D: "~@2 x ~@2 x", E: "~@3 x ~@3 x", F: "~@5 x ~@5 x",
})).gain(0.5)
// drums · clap
const clap = s("cp").struct("<~@5 A B@8 C@2 D@2 E@3 F@4 G@5 F@6 E@2 D@3 C@68>".pickRestart({
A: "~@17 x ~@6", B: "~@5 x ~@11 x ~@6", C: "~ x ~ x", D: "~@7 x ~@11 x ~@4", E: "~@2 x ~@2 x", F: "~@3 x ~@3 x",
G: "~@5 x ~@5 x",
})).gain(0.44)
// drums · snare
const snare = s("sd").struct("<~@72 [~@7 x] ~@3 [~@3 x] ~@32>").gain(0.5)
// drums · low tom
const low_tom = s("lt").struct(`<
~@4 A ~@20 B ~ C D C E F E G H I J K L ~ M N O ~@8 H ~ P Q P R P Q P Q E S T U E H V U W ~ W X Y H Z Q Y Q AA E AB AC
AD AE AA H P H AF Q@2 AG H@3 AG M AG M@2 AA AB P Q P R P Q
>`.pickRestart({
A: "~@17 x ~@6", B: "~ x ~@4", C: "~@4 x ~@8 x ~@5 x ~@2 x ~", D: "~ x ~@2 x ~@19", E: "x!2", F: "~ x ~@4 x!2",
G: "~@4 x ~ x!2", H: "x", I: "~@3 x ~@8 x ~@4 x ~@2 x ~@2 x", J: "~@11 x ~@12", K: "~@2 x ~@8 x ~@5 x ~@5 x",
L: "~@5 x ~@5 x", M: "~@7 x", N: "~@3 x ~ x ~@2", O: "~ x ~@2", P: "x ~@2 x!2 ~@2 x", Q: "x ~@2 x!2 ~@3",
R: "x ~@2 x!3 ~ x", S: "x!2 ~@4 x!2", T: "~ x ~@6", U: "x ~@5 x!2", V: "x!2 ~@2 x ~@3", W: "x ~@4 x ~@2",
X: "~ x ~@3 x!2 ~", Y: "~@4 x ~@2 x", Z: "~ x ~@5 x", AA: "~@3 x!2 ~@3", AB: "~ x", AC: "x!2 ~@2 x!2 ~@2",
AD: "~@4 x!2 ~@2", AE: "x!8", AF: "x ~@3 x ~@2 x", AG: "x ~@6 x",
})).gain(0.31)
// drums · low tom · soft notes
const low_tom_soft = s("lt").struct("<~@34 A ~@2 B ~@23 C ~ A ~ D E C D ~ D ~@2 F C ~@11 A ~@22>".pickRestart({
A: "~ x", B: "~@5 x", C: "~@5 x ~@2", D: "~ x ~@6", E: "~ x ~@4 x ~", F: "~@3 x ~@4",
})).gain(0.19)
// drums · hihat
const hihat = s("hh").struct(`<
// … 125 more lines
More by
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.