Strudelify

What Are You Doing the Rest of Your Life

Bilk

KeyA minorTempo120 bpm
0:00/0:00
// What Are You Doing the Rest of Your Life — Bilk
// 120 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 110 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 · "What Are You Doing The"
const piano = note("<A@8 B@7 C@7 D@3 E@7 F@2 G@5 H I@8 J@5 K@2 L@5 M@8 N@6 O@5 P@2 Q@7 R@4 S@6 T@6 U@6>".pickRestart({
  A: "[~@47 d5@10 ~@16 [a4,c5]@6 ~@16 d5@5 ~@18 c5@6 ~@29 c5@5 ~@5 a4@13 ~@77 c4@3, ~@28 a2@34 [c5,e5]@5 [b4,d5]@12 g2@16 b3@5 [d5,f5]@5 [c5,e5]@6 [b4,d5]@6 a4@7 [f2,d5]@27 b2@7 b4@19 ~ g#4@11 g#3@9 g#4@4 e5@2 g#5@6 e6@3 g#6@12 g#7@5 b7@26, ~@29 [c5,e5]@28 a3@23 e4@44 d4@12 f3@16 f4@25 e4@9 e3@10 e4@60, ~@35 e3@45 [c5,e5]@10 e3@35 a4@28 a3@24 e2@15 b3@64, ~@40 a3@7 b4@10 d5 f5@27 c3@41 ~@4 c3@21 d4@25 d4@6 b2@12 d4@6 d5@56]/8", // Am C Bm Dm C Bm Dm C
  B: "[~ d4@4 ~@8 f4@8 ~@61 g#2@32 ~@12 a4@5 ~@31 c3@3 ~ g4@4 ~@51 c2@3, ~@6 e4@15 g#4@36 ~ a2@23 ~@33 g2@17 ~ [f#2,c4,e4]@33 a3@11 f4@5 a3@4 f3@8 c3@16 g4@9 f4@6, ~@48 a4@9 ~@5 e3@8 e4@3 b4@2 a4@5 ~@41 g3@10 ~ f#3@13 f#3@14 a4@7 f2@23 a3@9 f2@25 ~, ~@54 b4@14 c4@13 ~@37 e3@13 ~@9 c5@26 [c4,e4]@15 [c4,e4]@42 ~, ~@65 a3@13 b4@44 [c4,e4,b4]@9 ~ b4@20 ~ b4@14 ~@5 g4@5 c3@4 g4@23 a3@19 ~]/7", // F#m7b5 C Cmaj7
  C: "[~@13 f4@5 ~ f3 ~@4 a3 ~@8 a3 ~@59 [b2,d4]@5 ~@74 g#4@4 a4@5 ~@39 e3@4, [c3,a3,c4]@18 d2@55 b1@25 e2@12 d3@13 d4 g#4@3 b4@3 g#5@8 e6@18 c4@4 d4@4 e4@25 a3@4 e4@15 c4@16, g4@9 g4@9 e4@3 ~@3 [f3,c4,e4]@8 e4@34 e4@10 e4@11 b2@3 e4@24 e3@54 f4@9 ~@4 b4@10 c4@5 b4@2 a4@2 b4@11 e4@13, ~@5 a4@14 ~@9 d4@42 ~ d4@4 ~ b2@6 f4@17 b3@8 b2@12 b3@58 ~@10 e3@16 ~@2 g#3@9 b4@10, ~@32 f3 c4@5 d3@36 ~@2 [f3,a3]@23 g#3@5 g#2@12 g#3@61 ~@7 a2@19 g#2@14 g2@7]/7", // Bm F Fmaj7 F
  D: "[[c4,e4]@4 a4@3 ~ c4@2 ~@10 c3@4 [a3,c4]@6 ~@10 a3@8 ~@5 c2 ~@21 f4@4 ~@13 f4@4, b4@7 ~ [f#2,f#3,e4]@16 f2@24 a3@23 [a3,c4,g4]@8 c2@17, ~@8 b4@8 b4@8 g4@3 ~@3 [a3,c4,g4]@10 [c4,g4]@31 ~@10 g4@7 ~ g4@7, ~@12 c5@11 ~@12 f4@18 ~@5 f2@22 ~@5 a4@11, ~@19 a4@4 ~ e4@16 e4@56]/3", // C Am F#7 Am7 C5
  E: "[~ e4@7 ~ a3 ~@2 d4@3 ~ a2@3 ~@40 d4@4 ~@61 e5@8 ~@2 e5@3 ~@29 c5@6 ~@38 a4@3 ~@6 f4@4 c#5, ~ d1@14 f3@4 ~ d3@10 e2@16 e4@4 f4@4 e4@21 c#4@14 g#6 c#7@2 e7@15 e4@7 a4@18 f3@10 e5@3 c#5@2 e3@25 c#5@25 ~@7 e5@2 b2@12 e5@6, ~@8 [f3,e4]@7 [a3,c4]@8 f3@4 [b2,c3]@7 b2@29 a1@14 e4@4 c#5@52 f4@16 [g#3,d4]@23 g#4@12 a3@24 f3@16, ~@9 c4@6 e4@27 b3@21 [g#3,c#4]@10 g#3@61 [a3,a4]@16 f#4@22 c#4@9 e3@28 a3@15, ~@12 d2@22 ~@4 [e3,g#3]@26 ~@4 a2@14 e5@2 g#5@50 ~@4 d#5@13 d5@4 c#5@6 d5@13 ~@3 a2@32 f4 e5@4 d#5@10]/7", // Fmaj7 Am Cmaj7 G#dim C#5 A E
  F: "[~@5 d5@3 ~@41 c#5@5 c#5@5 c#5@5, ~ e3@21 c5@9 ~@2 a2@12 c#4@19, ~@3 [g#3,d4]@25 g#4@36, ~@4 f#4@24 c#5@13 a3@23, ~@10 c#5@5 d5@13 c#4@10 e3@26]/2", // G#dim
  G: "[~@5 [f#4,c#5]@4 ~@9 b4@5 ~@2 b4@4 ~@6 b4@12 ~@52 a#4@5 ~@12 g#4@9 ~ [g4,a4]@28 c4@6, ~@2 g#2@21 c#3@24 a#4@10 f3@4 c#4@4 [a#3,c4]@12 a#4@4 f4@12 a4@2 c3@4 [d4,e4]@5 a4@6 a#4@15 f2@30 ~@5, ~@4 [d#3,d#4]@20 [f3,c#4]@23 c#4@6 c#3@27 g2@17 g3@29 ~@34, ~@10 c5@15 f4@23 f4@21 c#4@12 [d4,c5]@5 b4@12 a#3@28 ~@34, ~@14 c#5@12 ~@4 a#4@17 f#2@26 f#4@9 ~@2 c3@5 c5@7 e3@30 [e3,e4]@34]/5", // F#5 Gsus2 A#sus2 Dsus2 D# C# D7 E
  H: "~ d4@4 ~@15 b4@3 ~@6 b4@3, ~@3 e4@13, ~@10 f4@12 ~ a2@9, ~@13 g#4@9 ~@5 e3@5, ~@17 a4@5 ~@2 b4@5 ~@3",
  I: "[[a3,a4]@4 ~@25 a4@3 ~ c4@2 ~@10 c3@4 [e4,g4]@5 [a3,e4,g4]@4 ~@65 f4@4 ~@31 a2@5 ~@37 [b2,d4]@4 ~@12 d3@3 ~@18 d4@4 ~@3 d4@3 ~@3 c3@3 ~ [f2,d4,f4,a4,d5]@2, ~@4 [e4,b4]@17 d3@10 ~ f#3@9 b4@3 a4@5 f2@26 a3@22 g4@3 f4@3 ~@2 [a3,c4,g4]@7 a4@8 g4@7 e4@7 d3@2 f3@2 a3@16 d3@9 d2@9 [f3,a3]@3 d3@2 d4@5 b2 e4@6 f4@5 b2@2 e4@17 b2@9 e3@32 ~@2, ~@4 c4@11 c4@10 [c4,e4,b4]@8 [f#2,e4]@16 [a3,c4]@3 ~@6 [a3,g4]@4 f4@4 a3 [c4,e4,g4]@3 f3@31 c2@28 ~ d2@16 e4@25 e4@12 [f3,a3]@21 e2 b4@14 d3@5 g#3@2 b3@3 d4@3 e4@22 ~@2, ~@8 g#2@11 ~@2 e3@184 d4@5 g#2@31 b3@13 ~@2, ~@11 g#3@7 g2@13 ~ b4@5 c5@13 ~@9 [c4,e4]@4 c3@41 c3@25 ~@4 a2@7 e4@3 d4@6 f3@19 a2@12 b1@25 g#4@42 b4 d4@6 ~@2]/8", // A Em A7 Bm Dm E5 Am7 F …
  J: "[~@36 d4@4 ~@28 c5@5 ~@37 [a3,b3]@15 [g4,g#4] ~@6 g4@4 ~ a4@3 ~@15 e4@5, ~@2 c3@19 c4@5 d4@5 a3@16 e3@15 d5@11 f2@15 [c4,e4]@4 a3@18 ~@35 a4@15, ~@4 [d4,f4,a4,d5]@8 f3 [f4,a4]@22 ~@5 [d4,d5]@9 [g#3,d4]@24 [c4,e4,a4]@8 [c4,e4,a4]@7 a4@8 c4@14 ~@15 a4@6 ~@10 b4@19, ~@8 c5@5 d4@4 a3@13 [b2,f3]@20 ~ d5@6 e5@17 ~@10 [f3,g4]@16 e4@55 ~@5, ~@8 c4@5 d5@27 ~@5 c5@5 f#4@24 ~@4 c3@31 [f2,c3,d#3]@51]/5", // Asus2 G#maj7 C Dm F D G#dim Am …
  K: "[~@61 e2@3, ~ c4@13 a3@10 e3@24 b3@4 e4@6 d4@6, ~ e4@13 e4@31 a3@19, ~@5 e2@25 a3@8 b2@26, ~@10 d4@31 f#3@23]/2",
  L: "[~@97 a5@7 ~@7 a3@4 ~@35 g#4@10, g#3@17 e3@5 c4@4 e3@5 a3@4 c4@8 a3@30 [c4,d5]@5 e4@37 b5@3 c4@3 e4@19 g#3@3 b3@3 e4@14, e4@11 e3 e4@9 a2@18 b3@28 g3@11 e5@5 g5@7 g#5@14 a2@20 a5@5 [g#2,b5]@31, ~ c4@21 a4@40 e3@46 e3@28 e3@24, ~@6 b2@16 e4@26 e3@4 g3@5 a2@12 c5@35 b5@11 a3@17 ~ b2@27]/5", // Csus2 G#m
  M: "[~@19 a5@4 ~@23 c2@4 ~ [a4,c5]@5 ~ c5@4 ~ c5@3 ~@34 a4@3 a4@3 ~@16 e2@3 ~@4 [f4,a4]@4 ~@45 d5@3 ~@16 b2@4 ~@9 d3@2 ~@40 a5@3 [a2,b5]@2, g2@12 e4@49 a4 f5@25 f3@24 g5@4 f5@66 [a3,e5]@5 f5@28 e3@42, ~@2 c3@8 c4@5 [c5,e5,b5]@8 f#2 b5@6 c6@4 f#3 a3@6 b5@4 a5@5 f1@25 g5@4 c5@3 a4@2 d3@4 a3@5 [a4,c5,g5]@2 f4@3 f5@4 [c5,g5]@3 d3@15 e5@7 ~ c5@4 e5 [f4,a4]@3 d5 f3@3 [a3,f4,a4,c5]@4 c4@5 f4@9 d2@19 b2@9 c#5@4 a3 e5@20 d3@6 g#3@3 b3@3 d4@3 g#4@4 b4@3 c5@3 d5@4 e5@16, ~@5 e3@52 f2@20 e5@13 c4@17 [a4,a5]@13 d5@3 ~@4 [d3,e5]@5 d3@8 e5@30 d3@10 f3@15 d5@5 e2@43 g5@4 g#5@7 ~@2, ~@8 g3@16 [f#1,e5]@26 [e5,g5]@6 a4 g5@4 e3@4 [f3,a4,c5,e5] g5@2 a3@2 c4@2 e4@49 d2@33 a4@19 [f4,a4,e5]@8 [f4,a4,c5]@19 [g#4,b4]@5 b2@49 ~@2]/8", // Am F Asus2 A5 Cmaj7 Am7 C5 F …
  N: "[~@12 a5@4 ~@4 g#3@4 g#3@13 ~@18 a5@3 [f#2,c5,b5]@4 ~@10 a5@4 ~ a4@3 ~@3 [a4,g5]@4 ~@70 d3@4 ~@26 e5@5, ~ e3@16 c5@20 g2@10 e4@41 [a4,g5]@3 a3@24 c3@15 g5@5 [f4,a5]@6 g5@5 f5@18 e5 [f3,f4,a4,c5]@3 a3@4 c4@3 f4@4 a4@4 c5@3 c4@6, ~@3 b5@5 b5@8 b5@29 [b3,c4]@5 c5@3 e5@5 e5@10 [f#3,b5]@8 e5@7 c5@4 f3@5 f5@28 e3@30 d2@42, ~@6 c4@10 g#2 e5@25 e3@53 [c4,a4,c5,g5]@4 e4@4 c4@5 a4@3 f2@14 f5@5 [c4,a4,c5,e5]@20 e5@4 a2@38, ~@9 e4@31 c3@19 ~@5 c6@13 g5@3 c3@15 e5@25 [a4,c5,g5]@4 a3@33 [a4,c5,e5]@4 [d3,d5]@31]/6", // B A7 F Cmaj7 B5 Am7 Am Am7 …
  O: "[~@2 b2@3 ~@16 d5@4 ~@83 f#4@2 ~@13 c5@4 ~@26 c#5@6 e5, d5@5 [e2,g#4]@7 f5@4 g#3 e5@23 g#4@5 e5@2 g#5@11 e7@3 g#7@20 e4@13 [f4,a4,e5]@4 d#5@3 e5@7 d4 ~ d5@4 c#5@4 d5@9 c#5@17 c#4@16, ~@6 b4@14 b3@5 [g#4,c#5]@11 g#3@50 a4@4 e5@3 f3@11 c#5@2 e3@21 c#4@9 e3@24, ~@7 e5@5 e3@19 e3@17 c#6@3 e6@41 b2@16 g#3@19 g#4@12 a3@21, ~@10 b2@16 a2@16 c#5@13 c#7@39 a3@38 a2@28]/5", // E Fmaj7 C#5
  P: "[~@5 a4@3 ~@12 f#4@2 ~@36 c#4@3 ~ [c#4,c#5]@2, ~@2 b2@3 e5@4 d#5@11 [g#3,d4]@2 d5@4 c#5@5 d5@6 c5@6 [g#4,c#5]@12 a3@9, ~@3 f3@9 e5@52, ~@4 a3@43 a2@17, ~@4 f4@12 c#5@2 e3@25 c#4@8 e3@13]/2", // C# G#dim C#5
  Q: "[~@2 [c#4,c#5]@3 ~@5 c#5@4 ~@8 a#4@5 ~@11 b4@13 ~@38 c3@3 ~@12 a4@6 ~@21 a#3@18 ~@32 c4@5 d4@4 ~@29 b4@5, ~@5 [c#4,c#5]@4 d#3@9 c#5@9 c#3@25 f4@13 c#4@4 a#3 c4@16 g2@12 [a#3,c5]@12 [c3,d4]@40 ~@51 g#4@22 ~, ~@8 g#2@20 [f3,c#4,f4]@25 ~@3 c#3@18 c#4@14 [d4,f4]@23 e4@19 g#4@19 [g4,a4]@39 ~@2 e4@34, ~@10 [d#4,f#4]@18 b4@10 ~@13 a#4@10 f3@27 c5@5 b4@19 a#4@11 [g3,a#4]@27 ~@44 f4@14 ~@5 a4@11, ~@14 c5@15 ~@4 a#4@18 f#2@27 f#4@5 a#4@6 ~@3 e3@25 [e3,a4]@32 f2@59 ~@16]/7", // C# A#sus2 Csus2 C# Dm Gsus2 D#m Gm …
  R: "[~@41 g#5@11 ~@14 a4@3 ~ [c4,b4]@3 ~@9 [c2,a4]@4 [a3,c4,g4]@7 ~@33 a2@2, ~ a2@13 e4@45 g3@3 [c4,b4]@7 f#2 e4@3 f#3@14 ~@6 [a3,c4,g4]@4 f4@3 e4@7 f3@10 e4@4 [a3,g4]@4 f4@3, ~@5 e3@20 g#2@4 g#3@7 g#4@16 g2@48 [a3,c4]@4 c3@24, ~@8 a3@66 c5@4 b4@9 ~@10 f2@31, ~@11 c4@5 b4@3 a4@3 b4@32 c3@2 e3@30 [f1,e4]@14 g4@10 a3@4 c4@14]/4", // Cmaj7 F Am7 Cmaj7 Am7 A7 Am Fmaj7
  S: "[~@15 f4@4 ~ f4@2 ~@42 d4@4 ~@20 e2@5 ~@6 d3@2 ~@34 c3@3 [f4,a4]@5 ~@5 [c4,c5]@4 ~@27 f4@4 f4@5 ~@2 e3@2, ~@2 d2@32 e4@17 b1@37 b4@16 e3@3 g#3@2 b3@3 d4@3 e4@6 g#3@3 b3@3 g#3@4 [c4,c5]@7 f2@30 d4@6 [b2,f3,a3]@18, ~@2 a3@21 d3@12 c4@34 e4@5 f4@9 d4 b2@4 g#4@13 d3@17 g#4@20 [d4,d5]@3 ~@2 [d4,f4,a4,d5]@9 [a4,d5]@25 ~@6 [a4,d5]@9, ~@2 c4@9 g4@4 a2@20 f3@3 d2@5 f3@12 b2@13 b2@11 e4@17 b2@43 ~@13 f4@7 f3@3 a3@3 c4@6 f4@5 ~@12 [f4,c5]@4, ~@2 g4@5 a4@12 e4@8 [f3,a3,e4]@4 d4@16 a3@12 [f3,a3,e4]@10 [f3,a3,c4]@19 d4@5 g#2@46 ~@13 d4@4 c3@20 ~@16]/6", // F C Bm7b5 D Dm D5 F5 Fmaj7 …
  T: "[~ d5@3 ~@16 c3@3 ~@37 [a3,b3]@19 g#4 a4@20 g4@4 ~ a4@3 ~@8 g4@6 ~@41 d4@6 ~@15 d4@7 e2, [g#3,a4]@23 f2@15 a4 e4@4 a3@4 c4@6 e4@69 c4@15 c4@32 b2@23, f#4@3 ~@3 e5@55 ~@47 b4@14 e4@8 e4@7 e4@42 e4@13, ~@11 d5@12 [c4,e4,a4]@8 [c4,e4,a4]@4 e3@26 ~@50 a4@12 ~@10 d4@8 c3@29 f#3@22, ~@17 c5@7 ~@3 c3@33 [f2,c3,d#3]@64 ~@2 e2@45 [a3,b3]@21]/6", // Asus2 Amaj7 Am F7 Asus2
  U: "[g#3@7 b3@17 ~@26 a0@32 ~@14, [c4,e4]@48 [g4,b4]@16 c4@6 b4@5 g5@100 ~@17, ~@48 e4@13 a3@7 g4@5 e5@102 ~@17, ~@53 a2@13 e4@6 c5@5 b5 c6@2 e6 g6@3 c7@2 e7@4 g7@4 b7@64 ~@34, ~@58 e3@117 ~@17]/6", // C G
})).s("gm_piano").gain(0.26)

// chords · piano · "What Are You Doing The" · soft notes
const piano_soft = note(`<
  ~@4 A B C@2 ~@2 D@2 ~@3 E F@2 ~ G@2 ~ H ~@2 I ~ J@3 K@2 ~@3 L M@3 ~@2 N O@2 ~@9 P@2 ~@6 Q R ~@2 S ~@2 T@2 ~@2 U@2 ~
  V@2 W X@2 ~ Y Z ~@2 AA@3 ~ AB ~ AC ~ AD ~ AE@2 ~@2 AF ~ AG@3 AH@2 ~@4
>`.pickRestart({
  A: "~@14 a3@11 ~@7", B: "~@13 b2@5 ~@14", C: "[~@29 e7@35, ~ d6@3, ~@25 d7@39]/2",
  D: "[~@16 e4@13 ~@3, ~@22 g#3@29 ~@13, ~@13 c4@16 ~@3]/2", E: "~@25 a3@7",
  F: "[~@25 c4@18 ~@21, ~@2 a3@17 a3@24 ~@21, ~@11 f3@31 ~@22]/2",
  G: "[~@7 d6@42 ~@15, ~ e5@48 ~@15, ~@5 b5@44 ~@15]/2", H: "~ [c4,e4] ~@6", I: "~@10 a3@5 ~@17",
  J: "[~@67 b2@20 ~@9, ~@15 [g#4,a#4]@56 ~@25, ~@21 c#6@49 ~@26]/3", // G#sus2
  K: "[~@37 c#5@12 ~@15, ~@28 c#4@21 ~@15, ~@32 g#4@17 ~@15]/2", L: "~@9 a4@7 ~@16",
  M: "[~@25 d4@10 ~@26 c3@31 ~@4, ~@61 c4@28 ~@7]/3", N: "~@22 c4@5 ~@5", O: "[~@20 e4@43 ~, ~@15 c4@24 ~@25]/2",
  P: "[~ a3@13 ~@4 b2@20 ~@26]/2", Q: "~@6 c4@12 ~@7 e5@7", R: "~@9 f3@12 ~@11", S: "~@5 f4@8 ~@19",
  T: "[~@29 g#4@9 ~@26]/2", U: "[~@29 f4@7 ~@28]/2", V: "[~@21 g#6@40 ~@3, ~@7 e4@42 ~@15]/2", W: "~@7 d4 ~@8",
  X: "[~@20 g#4@17 ~@27]/2", Y: "~@27 a#4@2 ~@3", Z: "~@12 g4@7 c#4@13",
  AA: "[~@21 c3@59 ~@16, ~@21 e4@41 ~@34, ~@21 e3@38 ~@37, ~@21 c4@32 ~@43]/3", AB: "~@7 c4@8 ~", AC: "~@21 a3@4 ~@7",
  AD: "~@4 a3@11 ~@17", AE: "[~@11 d4@10 ~@11]/2", AF: "~@6 c4@9 ~@17",
  AG: "[~@26 a3@15 ~@16 a3@18 ~@21, ~@41 a3@16 ~@39, ~@51 e3@25 ~@20]/3", AH: "[~@7 g#3@17 c4@8, ~@7 b2@43 ~@14]/2",
})).s("gm_piano").gain(0.15)

stack(piano, piano_soft)

More by Bilk