Strudelify

All the Things You Are

Evans Bill

KeyC minorTempo120 bpm
0:00/0:00
// All the Things You Are — Evans Bill
// 120 bpm, 4/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 69 bars on a 32-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.

// chords · piano · "A.PIANO 1"
const piano = note("<A@6 B@5 C@8 D@8 E@5 F@6 G@7 H@7 I@8 J@8 ~>".pickRestart({
  A: "[~@96 eb3@3 ~@32 g4@9 ~@22 [d3,f4]@4 [b3,f4]@4 ~@16 f4@5 b3, ~@14 ab4@10 eb3@3 ab3@3 c4@2 eb4@2 f3@4 ~ bb2@29 [ab3,ab4]@5 eb2@4 ~@5 eb3@3 g4@3 eb3@4 [db4,g4]@7 ab2@41 db2@18 ab3@8 g2@17 d3@9, ~@14 [c4,eb4]@8 c3@14 [f4,db5]@38 g4@5 g4@6 d4@14 g4@27 eb3@14 f4@7 [ab3,db4,f4]@5 db4@14 d4@7 f4@7 b3@11 ~, ~@14 ab3@6 ab2@16 ab4@10 f3@4 ab3@7 f3@14 bb2@4 ~@2 bb2@23 ~@4 eb3@6 g3@31 ~@3 ab2@23 ~@6 b4@19, ~@17 f2@19 db4@6 db3@33 ~@4 [g3,eb4]@21 c4@7 c5@34 ~@8 db3@3 [ab3,f4]@3 f3@12 ~@3 d3@3 b3@3 f3@16]/6", // Dm Bdim Ab Dbdim Cm Db Cm Db
  B: "[~@53 g3@3 g3@3 ~@39 bb2@3 ~@22 bb2@3 ~@27 ab2@3 [ab1,g3,c4]@3 ab2, e4@8 b3@9 e5@4 b5 e6@3 g6@2 b6@2 e7@3 g7@19 eb3@5 eb4@15 g3@2 bb3@3 c3@3 [f2,c4,ab4]@16 eb4@6 [bb1,d4]@6 ~@5 a3@14 d4@10 eb3@4 g3@4 eb3@4 d4@8 ~@4, ~@2 c2@54 bb3@9 c3@3 eb3@10 ab3@6 ~ c3@18 ~ bb2@5 bb2@6 ~ bb2@7 ~@3 eb2@30 ~@4, ~@4 g2@6 e4@5 b4@41 eb3@5 ~@2 g2@16 eb4@9 ab3@3 eb3@12 ~@4 bb3@20 ~@3 bb2@26 ~@4, ~@7 g3@6 g4@46 c2@21 ~@2 ab2@21 ~@4 d4@6 d4@6 [ab3,d4]@7 g3@7 g4@23 ~@4]/5", // Abmaj7 Fm Bb Abdim
  C: "[~@6 c4@2 ~ c4@4 ~@6 a2@2 ~@7 a3@3 a3@3 [eb3,a3]@4 ~@60 d5@6 ~@12 c5@4 ~@89 b4@4 ~@40 a4@3, ~@2 g3@19 a1@17 eb3@9 [gb3,a3]@7 d3@5 b3 d4@2 gb4@2 a4 b4 d5@2 gb5@2 a5@4 gb6@2 ab6 a6@3 b6@3 d7@4 d4@5 g4@12 g4@2 ~@7 c4@7 c5@17 a2@13 a3@3 c5@3 a3@5 ~ g2@9 b4@2 d5 gb5@2 b5@2 d6@2 gb6 b6@2 d7@2 gb7@2 b7@16 d4@3 g4@7 ~ b4@13 e3@3 a3@8 ~@4 bb3@14, ~@4 ab2@18 ~@3 a2@15 [a3,c4]@4 d3@7 g2@54 d5@25 c4@8 ~@3 c4@5 gb3@12 gb4@9 gb3@46 ~@4 db3@20 ~@10 b3@9, ~@8 eb3@5 eb3@9 a3@6 d4@3 eb4@17 b3@8 gb3@50 a2@21 e3@11 ~@2 d3@19 b4@8 d4@2 gb4@44 ~@6 a4@3 e3@2 a4@9 b2@6 b2@5 b2@12, ~@15 c4@7 c4@12 d4@13 d4@11 a3@48 ~@3 e3@5 e4@18 a2@2 d2@6 ~@3 f4@5 [c4,gb4]@12 ~@4 d3@49 gb2@23 b1@20]/8", // Ebdim Gbm Am Cdim
  D: "[b2@3 ~@7 b3@6 ~@17 b2@7 ~@97 eb3@3 ~@82 bb3@10 ~@23 [g3,c4,eb4], ~@3 ab4@26 e2@11 b2@3 b3@3 e3@4 b3@4 e3@4 ab4@11 ab3@19 db5@23 b2@3 eb2@26 ab2@16 c4@18 g4@4 f4@8 ab3@3 db4@3 f3@3 f4@4 ab3@4 ab4@6 ~@7 ab3@38 ab2@2, ~@3 e2@13 b3@7 db4@34 f2@20 eb4@4 f3@4 db4@4 bb2@6 f3@4 db4@14 g3@7 [g3,eb4]@6 g4@3 eb3@4 [db4,g4]@7 g4@11 g3@26 db2@27 bb2@5 ~@3 f3@34 db5@5 eb3@5, ~@6 b2@10 d4@42 eb4@7 eb3@21 f4@27 eb4@4 bb2@23 c4@8 c5@31 ~@4 db3@22 eb5@15 ~ [ab4,eb5]@35, ~@10 eb4@20 c4@28 ab3 c4@3 c3@25 ab4@5 db3@9 ab3@3 f3@3 [ab3,eb4,ab4]@7 g4@6 g4@3 eb3@3 d4@15 ~@4 eb3@35 ~ ab2@25 ~@2 db3@47 ~]/8", // Cm Dbdim Ab5
  E: "[~@85 db4@2 ~@19 ab4@4 ~@39 g3@11, ~@3 eb3@12 eb3@5 eb4@3 d4@4 eb4@3 g4@10 c4@3 eb4@3 a4@6 a5@2 c6@3 eb6 g6@19 f4@5 e4 eb4 d4@3 db4@6 ~ db4@18 ab4@6 ~@12 ab3@7 db4@23, ~@8 c4@25 a2@55 bb2@14 ab3@8 ab3@4 db5@23 bb3@18 ~@5, ~@11 g3@23 ~ gb3@13 c5@42 ~ f3@24 [bb2,f5]@26 ~@19, ~@18 eb4 f4@15 ~@4 a3@12 eb5@40 ~@7 ab3@2 f4@17 ~@4 f3@21 ~@19]/5", // Bb5
  F: "[~@170 c5@16 ~ [db5,f5]@4 db3, ~@8 ab2@26 eb5@12 g6@10 eb3@2 ab2@3 ab4@7 ab2@22 ab5@8 ab3@20 bb2@4 [g4,eb5,g5]@6 [g4,eb5]@7 g5@4 bb3@3 [db5,g5]@5 eb3@4 [c5,g5]@8 c6@29 ~@4, ~@9 ab4@30 c6@3 eb6@20 c5@12 eb3@3 ab3@3 c4@4 ab4@9 ~ f3@27 eb2@29 ab2@37 ~@5, ~@10 eb4@8 g3@45 [eb5,ab5]@24 ab3@3 bb2@11 db4@4 f4@5 db4@4 [ab4,eb5,ab5]@9 ~@2 bb2@27 ~@7 g5@20 ~@7 db2@6, ~@14 eb3@13 g4@37 f2@26 [db5,f5,db6]@33 ~@5 g5@3 eb3@4 [g3,d5]@17 ~@3 eb3@32 ~@5]/6", // Db Cm Dbdim C5 Ab5 Db G5
  G: "[~@16 d3@3 [g2,d5]@3 ~@3 [b4,f5]@4 ~@137 ab4@6 eb2@2 ~@20 d5@7 ~@18 [c4,ab4,c5]@5, ~ [ab4,db5,f5]@5 f3@13 [b4,f5]@6 b5@12 b3 b4 f5@5 [g4,b4]@12 e3@12 e5@6 e6@5 b6@3 e7@3 g7@4 b7@4 g3@3 c3@3 eb3@2 g3@3 bb3 eb4 g4 bb4 eb5@4 c4@3 eb4@3 g4@2 bb4@3 c3@3 c5@8 ab3@3 c4@2 ab4@3 eb5@3 ab3@5 ~ ab3@5 ab3@3 d5@3 ab3@3 d5@7 ~@7 g5@22 c5@7 [c4,ab4,c5]@6 [c4,ab4,c5]@5 ~@5, ~@3 db3@16 ~@3 d3@20 c2@6 c1@15 g4@2 b4@60 [f2,ab5]@23 [bb2,d5]@5 ~ d4@19 ~@3 bb2@26 ~@9 ab3@6 ab3@7, ~@7 [ab4,db5,f5]@6 [ab4,db5,f5]@7 ~@11 [b3,b4,f5]@4 d4@9 e4@10 c3@8 e4@10 b5@53 eb5@7 eb3@18 ~@3 bb4@19 ~@7 d5@7 g3@4 bb3@11 ab2@23, ~@10 ab3@10 ~@9 f3@16 e5@13 g3@2 b3@10 g5@56 ab4@3 c3@21 ~@3 d5@6 a4@13 [g4,d5]@7 ~@4 eb3@19 ~@3 eb3@19]/7", // G5 Bdim Fm Db Bdim G Fm Bb …
  H: "[~@81 [d5,d6]@4 e3@2 ~@53 a3@4 ~@64 b5@3 ~@10 gb3@3, a2@17 gb3@3 [c4,c5]@4 d3@5 g2@8 d4@2 gb4@3 b4@2 d5 gb5@2 b5@5 [b6,d7] gb7 b7@9 [d4,d5]@9 [g4,g5]@15 ~@7 [c5,e5,g5,c6]@3 a3@2 c4 [c5,e5,g5,c6] e4@3 g4@15 ~@7 [f4,f5]@5 [gb4,gb5]@2 gb3@4 [c5,c6]@7 b5@11 b3@4 gb4@3 b4@2 d5@2 gb5@3 b5@2 d6 gb6@2 b6@2 d7 gb7 g7@33 gb2@13, bb2@2 ~@2 gb3@3 [d4,d5]@2 gb3 [eb4,eb5]@17 [d4,gb4]@7 gb3@53 ~@3 e3@17 e4@4 c5@18 d3@15 [d5,gb5]@8 gb3@27 b7@22 d5@4 g5@7 b5@12, ~ ab4@27 b4@8 b3@51 ~@5 g3@22 d2@8 d2@22 b4@6 d3@63 ~@2 db3@9, ~ [c4,c5]@12 gb3 [d4,d5]@15 ~@2 d3@56 [a2,d5,d6]@31 d1@28 ~ g2@10 d4@55 ~@6 a5@6]/7", // D C Bm D G C F Gb …
  I: "[~@34 gb4@8 ~@52 c3@3 ~@48 bb2@3 eb2@3 ~@18 eb3@3 [ab2,g4]@2 ~@20 db3@3 [ab3,db4]@3 ~@3 ab3@4 ~@46 [g3,c4,eb4]@3, a5@10 a3@10 [gb3,bb4]@14 a5@35 e2@4 b2@3 e3@4 ab3@3 b3@4 ab3@3 b4@7 [f2,ab4]@13 c4@3 eb4@3 f3@3 bb2@9 f3@3 ab3@4 f3@6 [ab3,eb4,ab4]@7 [g3,eb4,g4]@6 [g3,g4]@5 d4@13 c4@6 [c4,c5]@13 g4@6 f4@12 ab3@3 db4@3 f4@3 ab3@4 eb5@30 ab2@4, ~ db4@13 b2@28 ab5@20 db5@35 eb4@10 ab3@14 db4@28 ~@5 eb4@18 eb4@25 ~@10 f3@14 [bb2,ab4]@19 f4@15 ~, ~@4 e4@11 ~@2 eb3@25 e2@7 eb5@48 c4@6 eb3@18 ab4@3 db3@25 ~@2 bb2@21 ~@3 eb3@7 g3@3 eb3@3 g3@9 ~@3 db3@22 f4@14 db4@19 ~, ~@7 a4@16 a3@3 b4@5 eb4@13 ~@2 b2@10 d5@41 ab3@4 c3@21 [f4,db5]@28 ~@6 eb3@3 [g3,g4]@3 eb3@3 [g3,db4,g4]@7 g3@6 g4@12 eb3@7 db2@26 ~@2 db3@19 db5@5 eb3@6 ~]/8", // Abmaj7 Db5 Cm Gb Fm Ab5 Cm G …
  J: "[~@7 g3@4 ~@3 eb4@2 ~@74 ab4@5 ~@20 ab3@8 [eb3,bb3,db4,eb4]@32 ~@53 bb7@48, ~ eb3@10 eb3@6 eb4 d4@4 eb4@4 a2@9 eb4@2 a4 c5 eb5@3 c6@3 a6 c7 eb7 g7@16 e4 eb4 d4 eb4 db4@8 db4@20 ab4@6 ~@55 [eb4,g4]@14 c4@9 eb5@10 g6@64 ~@2, ~@4 c4@21 g4@44 bb2@17 ab3@9 ab3@3 db5@26 ~@33 g3@7 eb3@13 c5@10 eb6@13 g7@56, ~@13 g3@14 ~@2 gb3@4 c4@27 gb3@11 ~@2 f3@26 [bb2,f5]@25 ~@33 ab2@19 [g4,ab4]@8 c6@12 eb7@60, ~@16 f4@11 ~@4 a3@32 f4@8 ~@8 ab3@4 f4@18 ~@3 f3@19 ~@34 c4@11 g3@5 eb4@9 g5@10 c7@64]/8", // Eb7 Eb Bb5 Abmaj7
})).s("gm_piano").gain(0.36)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note(`<
  ~ A@2 B@2 C D@2 ~@5 E@3 ~@3 F@2 G ~@3 H@2 I ~@2 J@5 ~ K@2 ~@5 L@2 ~@7 M@3 ~@4 N O P@2 Q@2 R@4
>`.pickRestart({
  A: "[~@21 db4@21 ~@22]/2", B: "[~@23 eb3@7 ~@34, ~@19 c4@27 ~@18]/2", C: "~@29 [g2,a2]@3",
  D: "[~@47 c3@12 ~@5, ~@6 c3@34 c3@7 ~@17, ~@19 g5@40 ~@5, ~@44 g2@15 ~@5]/2",
  E: "[~@8 b5@32 e3@2 ~@7 a3@10 a3@14 ~@23]/3", F: "[~@26 b2@7 ~@3 e3@10 ~@18, ~@7 eb3@23 ~@2]/2", G: "~@9 c4@16 ~@7",
  H: "[~@10 f4@4 ~@26 bb3@23 ~, ~@29 f4@35, ~@17 db4@15]/2", I: "~@4 eb4@5 ~@7",
  J: "[~@68 eb3@6 c4@12 ~@28 c6@15 ~@22 gb3@5 ~@4, ~@29 ab4@13 f4@34 ~@12 eb4@41 ~@31, ~@41 g4@34 ~@25 g5@29 ~@31, ~@47 eb3@21 ~@67 c3@21 ~@4, ~@59 bb3@16 ~@11 c4@43 ~@31]/5",
  K: "[~@31 c5@11 ~@13 db3@3 ab4@6, ~@31 g3@28 ~@5, ~@46 g4@13 ~@5, ~@49 eb4@10 ~@5, ~@51 g5@8 ~@5]/2",
  L: "[~@19 g4@22 ~@23, ~@18 eb3@5 ~@41]/2", M: "[~@28 b3@16 ~@25 c5@27, ~@29 ab3@11 ~@8]/3", N: "~@5 f3@26 ~",
  O: "~@2 eb4@5 ~@9, ~@4 g3@3 ~@25", P: "[~@5 a5@14 ~@13]/2", Q: "[~@13 ab3@6 ~@8 g4@32 ~@5]/2",
  R: "[~@65 ab1@41 ~@22, ~@27 g3@64 ~@37]/4",
})).s("gm_piano").gain(0.21)

stack(piano, piano_soft)

More by Evans Bill