Strudelify

Eleonora mia madre

Pooh

KeyA minorTempo61 bpm
0:00/0:00
// Eleonora mia madre — Pooh
// 61 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (1/4 at bar 1, 4/4 at bar 1, 2/4 at bar 7, 4/4 at bar 7, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 87 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(61/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 · "tk1"
const piano = note("<~@28 A@7 B C@2 D@6 E F@3 ~@17 G@2 H@7 I@4 J@4 K L@3 M>".pickRestart({
  A: "[~@40 b4@4 ~@7 d5@4 [g#3,b3,e4,c5]@8 b4@4 ~@18 d5@4 ~@7 b4@4 a2@11 [a3,c4,e4]@11 ~ [a3,c4,e4,f5]@11 a2@11 [a3,c4,e4]@11 [a3,c4,e4]@10 [g#2,e5]@8 b4@4 ~@7 d5@3 ~@7 b4@4 [g#2,e5]@7 b4@3 ~@7 d5@4 [g#3,b3,e4,c5]@7 b4@4 a2@10 [a3,c4,e4]@10 ~ [a3,c4,e4,f5]@10 a2@11 ~ [a3,c4,e4]@10 [a3,c4,e4]@9 ~@8 c5@4 ~@6 e5@4 ~@6 g5@4 ~@7 c#5@4, ~@32 [g#2,e5]@12 [g#3,b3,e4,c5]@11 ~@12 [g#2,e5]@10 b3@11 ~@12 c5@23 ~@11 e5@32 ~@22 b3@10 ~@12 c5@10 ~@11 c5@21 ~@10 e5@31 ~@43, ~@74 b4@4 [g#3,e4,c5]@11 [g#3,b3,e4,c5]@11 ~@78 [g#3,b3,e4,c5]@11 [g#3,e4,c5]@10 ~@10 [g#3,b3,e4]@11 ~@74 [c2,c3,g5]@11 [g3,c4,e4,d5]@10 [g3,c4,e4,f5]@10 [c#2,c#3,a5]@11]/7", // E Am Fmaj7 Am C#m E Am Fmaj7 …
  B: "~@6 e5@4 ~@6 g5@4 [d2,d3]@11 [a3,d4,f4]@10 [a3,d4,f4,a#5]@7, [g3,a3,c#4,e4,d5]@10 [g3,a3,c#4,e4,f5]@10 a5@21 ~@7", // D Dm A#maj7 A7
  C: "[~@3 [d2,d3]@11 [a3,d4,f4]@10 [a3,d4,f4]@10 ~@7 a4@4 [a3,c4,e4,b4]@7 c5@3 [a3,c4,e4,d5]@8 f5@3 ~@7 b4@3 ~@7 d5@4 [g#3,b3,e4,c5]@6 b4@3, ~@3 a5@31 ~ a2@11 ~@20 [g#2,e5]@10 [g#3,b3,e4]@10 ~@10, ~@77 c5@10 ~@9]/2", // D Dm Am E C#m E
  D: "[~ a2@9 [a3,c4,e4]@10 ~ f5@9 ~ a2@10 [a3,c4,e4]@9 [a3,c4,e4]@9 ~ [g#2,e5]@7 b4@3 ~ c5@6 d5@3 [g#3,b3,e4,c5]@7 b4@3 ~@6 b4@3 ~@7 d5@3 ~@6 b4@4 a2@10 [a3,c4,e4]@9 [a3,c4,e4,f5]@10 a2@10 [a3,c4,e4]@10 [a3,c4,e4]@8 [g#2,e5]@7 b4@3 ~@6 d5@4 [g#3,b3,e4,c5]@6 b4@3 [g#2,e5]@6 b4@3 [g#3,b3,e4,c5]@6 d5@3 [g#3,b3,e4,c5]@6 b4@4 a2@9 [a3,c4,e4]@9 [a3,c4,e4,f5]@10 a2@9 [a3,c4,e4]@9 ~ [a3,c4,e4]@8, ~ a4@19 [a3,c4,e4]@10 e5@29 ~@11 [g#3,b3,e4]@10 ~@10 [g#2,e5]@9 b3@10 [b3,c5]@9 ~ c5@20 ~@9 e5@28 ~@57 c5@19 ~@9 e5@27, ~@100 [g#3,e4,c5]@10 [g#3,e4]@9 ~@67 [g#3,b3,e4,c5]@10 ~@92]/6", // Am C#m E Am Fmaj7 Am C#m E …
  E: "~@7 c5@4 [g3,c4,e4,d5]@6 e5@3 [g3,c4,e4,f5]@6 g5@3 [c#2,c#3,a5]@6 c#5@3 [g3,a3,c#4,e4,d5]@6 e5@4, ~ [c2,c3,g5]@10 ~@37", // C F#m A7 C5
  F: "[~@5 g5@3 ~ d2@9 [a3,d4,f4]@9 [a3,d4,f4,a#5]@9 [d2,d3]@9 [a3,d4,f4]@9 [a3,d4,f4]@8 ~@7 a4@4 [a3,c4,e4,b4]@6 c5@3 [a3,c4,e4,d5]@6 f5@3 [g#2,e5]@6 b4@3 ~@6 d5@3 ~@6 b4@3 ~@26, [g3,a3,c#4,e4,f5]@8 a5@19 ~@9 a5@27 ~@38 c5@9 ~@34, ~@8 d3@10 ~@45 a2@10 ~@27 [g#3,b3,e4]@9 ~ [g#3,b3,e4,c5]@9 ~@25]/3", // Dm A#maj7 D Dm Am C#m A7 E
  G: "[~@16 b4@4 ~@7 d5@4 [g#3,b3,e4,c5]@8 b4@4 ~@18 d5@4 ~@7 b4@4 a2@11 [a3,c4,e4]@9, ~@8 [g#2,e5]@12 [g#3,b3,e4,c5]@11 ~@12 [g#2,e5]@10 b3@11 ~@12 c5@20, ~@50 b4@4 [g#3,e4,c5]@11 [g#3,b3,e4,c5]@11 ~@20]/2", // E Am C#m E C#m G#aug E
  H: "[~@3 [a3,c4,e4,f5]@11 a2@11 [a3,c4,e4]@11 [a3,c4,e4]@10 [g#2,e5]@8 b4@4 ~@7 d5@3 ~@7 b4@4 [g#2,e5]@7 b4@3 ~@7 d5@4 [g#3,b3,e4,c5]@7 b4@4 a2@10 [a3,c4,e4]@10 ~ [a3,c4,e4,f5]@10 a2@11 ~ [a3,c4,e4]@10 [a3,c4,e4]@9 ~@8 c5@4 ~@6 e5@4 ~@6 g5@4 ~@7 c#5@4 ~@6 e5@4 ~@6 g5@4 [d2,d3]@11 [a3,d4,f4]@10 [a3,d4,f4,a#5]@10 [d2,d3]@11 [a3,d4,f4]@10 [a3,d4,f4]@10 ~@7 a4@4 [a3,c4,e4,b4]@7 c5@3 [a3,c4,e4,d5]@8 f5@3 [g#2,e5]@6, ~@14 e5@32 ~@12 [g#3,b3,e4,c5]@10 b3@10 ~@12 c5@10 ~@11 c5@21 ~@10 e5@31 ~@63 a5@21 ~@10 a5@31 ~@38, ~@69 [g#3,e4,c5]@10 ~@10 [g#3,b3,e4]@11 ~@74 [c2,c3,g5]@11 [g3,c4,e4,d5]@10 [g3,c4,e4,f5]@10 [c#2,c#3,a5]@11 [g3,a3,c#4,e4,d5]@10 [g3,a3,c#4,e4,f5]@10 ~@63 a2@11 ~@26]/7", // Fmaj7 Am C#m E Am Fmaj7 Am D …
  I: "[~ b4@3 ~@7 d5@4 ~@6 b4@3 ~ a2@9 [a3,c4,e4]@10 ~ f5@9 ~ a2@10 [a3,c4,e4]@9 [a3,c4,e4]@9 ~ [g#2,e5]@7 b4@3 ~ c5@6 d5@3 [g#3,b3,e4,c5]@7 b4@3 ~@6 b4@3 ~@7 d5@3 ~@6 b4@4 a2@10 [a3,c4,e4]@9 [a3,c4,e4,f5]@10 a2@10 [a3,c4,e4]@10, ~@4 [g#3,b3,e4]@10 ~ [g#3,b3,e4,c5]@10 ~@19 [a3,c4,e4]@10 ~@40 [g#3,b3,e4]@10 ~@10 [g#2,e5]@10 [g#3,e4,c5]@10 [g#3,e4]@9 ~@49, ~@5 c5@10 ~@10 a4@20 ~@9 e5@29 ~@40 b3@10 [b3,c5]@9 ~ c5@20 ~@9 e5@20]/4", // Am C#m E Am Fmaj7 Am E Am …
  J: "[[a3,c4,e4]@8 [g#2,e5]@7 b4@3 ~@6 d5@4 [g#3,b3,e4,c5]@6 b4@3 [g#2,e5]@6 b4@3 [g#3,b3,e4,c5]@6 d5@3 [g#3,b3,e4,c5]@6 b4@4 a2@9 [a3,c4,e4]@9 [a3,c4,e4,f5]@10 a2@9 [a3,c4,e4]@9 ~ [a3,c4,e4]@8 ~@7 c5@4 [g3,c4,e4,d5]@6 e5@3 [g3,c4,e4,f5]@6 g5@3 [c#2,c#3,a5]@6 c#5@3 [g3,a3,c#4,e4,d5]@6 e5@4 ~@5 g5@3 ~ d2@9 [a3,d4,f4]@6, ~@18 [g#3,b3,e4,c5]@10 ~@37 c5@19 ~@9 e5@28 [c2,c3,g5]@10 ~@37 [g3,a3,c#4,e4,f5]@8 a5@16, ~@88 d3@5 ~@3]/4", // Am C#m E C#m E Am Fmaj7 Am …
  K: "~@3 [a3,d4,f4,a#5]@9 [d2,d3]@9 [a3,d4,f4]@9 [a3,d4,f4]@8 ~ a2@6 a4@3, ~@4 a5@9 ~@3", // A#maj7 D Dm
  L: "[~ [a3,c4,e4,b4]@6 c5@3 [a3,c4,e4,d5]@6 f5@3 [g#2,e5]@6 b4@3 ~@6 d5@3 ~@6 b4@3 ~ a2@9 [a3,c4,e4]@9 [a3,c4,e4,f5]@9 a2@9 [a3,c4,e4]@9 [a3,c4,e4]@9 [g#2,e5]@7 b4@3 [g#3,b3,e4,c5]@6 d5@3 [g#3,b3,e4,c5]@6 b4@3 [g#2,e5]@6 b4@3 [g#3,b3,e4,c5]@6, ~@28 [g#3,b3,e4]@9 ~ [g#3,b3,e4,c5]@9 ~@97, ~@29 c5@9 ~@9 a4@18 ~@9 e5@27 ~@43]/3", // Am C#m Am Fmaj7 Am C#m E C#m …
  M: "d5@4 ~@5 b4@3 [a2,c5] ~@35, ~@4 [g#3,b3,e4,c5]@9 ~@35", // Am E
})).s("gm_piano").gain(0.16)

// bass · fretless bass · "tk2"
const bass = note(`<
  A@2 B@2 C@2 D@3 E F@6 G@4 H@8 ~@10 I J@3 K L M@4 N O N P Q R S T U V@4 W X Y@3 ~@8 Z@8 AA@2 ~@3
>`.pickRestart({
  A: "[~ [a1,a2]@2 [g1,g2]@2 [f#1,f#2]@2 [f1,f2]]/2", // A G F# F
  B: "[[e1,e2] [b1,b2] [e1,e2]@2 [a1,a2]@8 [g1,g2]@8 [f#1,f#2]@8 [f1,f2]@4]/2", // E B E A G F# F
  C: "[[e1,e2]@3 [b1,b2]@3 [e1,e2]@5 ~ [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~ [g1,g2]@2 ~ [g1,g2]@2 ~ [g1,g2]@17 ~ [f#1,f#2]@2 ~ [f#1,f#2]@2 ~ [f#1,f#2]@18 [f1,f2]@2 ~ [f1,f2]@2 ~ [f1,f2]@6]/2", // E B E A G F# F
  D: "[[e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3 [a1,a2]@12 [e1,e2]@6 [g1,g2]@6 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~ [g1,g2]@3 [g1,g2]@3 [g1,g2]@17 ~ [f#1,f#2]@3 [f#1,f#2]@3 [f#1,f#2]@18 [f1,f2]@3 [f1,f2]@3 [f1,f2]@5 ~ [e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3 [a1,a2]@12, ~@9 e2 ~@134]/3", // E B E A E G A G …
  E: "[a1,a2]@6 [b1,b2]@5 ~ [c2,c3]@12 [e1,e2]@6 [c2,c3]@6 [b1,b2]@12", // A B C E C B
  F: "[[g1,g2]@6 [b1,b2]@6 [a1,a2]@3 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@2 ~@13 f#2@9 [d1,d2]@2 ~ f#2@6 [d1,d2]@2 ~ f#2@2 ~@13 [g#1,g#2]@12 [a1,a2]@12 [a#1,a#2]@12 [b1,b2]@12 [d#1,d#2]@5 ~@4 [d#1,d#2]@2 ~ [e1,e2]@47 ~ [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~ [g1,g2]@3 [g1,g2]@3 ~@18 [f#1,f#2]@2 ~ [f#1,f#2]@2 ~ [f#1,f#2]@18 [f1,f2]@2 ~ [f1,f2]@2 ~ [f1,f2]@6 [e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3 [a1,a2]@12, ~@4 [g1,g2]@6 [g1,g2]@24 ~ [g1,g2]@13, ~@273 e2 ~@14]/6", // G B A D G# A A# B …
  G: "[[e1,e2]@6 ~@6 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~ [g1,g2]@3 [g1,g2]@3 ~@18 [f#1,f#2]@3 [f#1,f#2]@3 [f#1,f#2]@18 [f1,f2]@3 [f1,f2]@3 [f1,f2]@5 ~ [e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3 [a1,a2]@12 [a1,a2]@6 [b1,b2]@5 ~ [c2,c3]@12 [e1,e2]@6 [c2,c3]@6 [b1,b2]@12 ~@6 [b1,b2]@6 [a1,a2]@3 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@2 ~, ~ [g1,g2]@5 ~ [g1,g2]@21 [g1,g2]@4]/4", // E A G F# F E B E …
  H: "[~@12 f#2@9 [d1,d2]@2 ~ f#2@6 [d1,d2]@2 ~ f#2@2 ~@13 [g#1,g#2]@12 [a1,a2]@12 [a#1,a#2]@12 [b1,b2]@12 [d#1,d#2]@5 ~@4 [d#1,d#2]@2 ~ [e1,e2]@36 ~@240, [g1,g2]@3 [g1,g2]@29]/8", // D G# A A# B D# E G
  I: "~@11 e2@9 c2@10 ~@18", J: "[~@12 g#2@25 ~@2 e2@3 g#2@26 ~@3 a2@10 e2@8 ~ c2@10 a1@28 ~@16]/3",
  K: "~@10 e2@3 g#2@25 ~@3 a2@7", L: "~@2 e2@8 ~ c2@10 a1@27",
  M: "[~ c2@28 c#2@9 a1@9 c#2@9 ~ d2@17 ~@10 d2@18 a1@8 ~@2 a1@18 ~@9 e2@20 ~@9 [a1,a2]@24]/4", N: "[g1,g2] [f#1,f#2]",
  O: "[f1,f2]@4 [e1,e2] [b1,b2] [e1,e2]@2 [a1,a2]@8", // F E B E A
  P: "[f1,f2]@12 [e1,e2]@3 [b1,b2]@3 [e1,e2]@5 ~ [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~", // F E B E A
  Q: "[g1,g2]@2 ~ [g1,g2]@2 ~ [g1,g2]@17 ~ [f#1,f#2]@2 ~ [f#1,f#2]@2 ~ [f#1,f#2]@18", // G F#
  R: "[f1,f2]@2 ~ [f1,f2]@2 ~ [f1,f2]@6 [e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3 [a1,a2]@12 [e1,e2]@6 [g1,g2]@6, ~@21 e2 ~@26", // F E B E A E G
  S: "[a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@17 ~ [g1,g2]@3 [g1,g2]@3 [g1,g2]@17 ~", // A G
  T: "[f#1,f#2]@3 [f#1,f#2]@3 [f#1,f#2]@18 [f1,f2]@3 [f1,f2]@3 [f1,f2]@5 ~ [e1,e2]@3 [b1,b2]@3 [e1,e2]@3 e3@3", // F# F E B E
  U: "[a1,a2]@12 [a1,a2]@6 [b1,b2]@5 ~ [c2,c3]@12 [e1,e2]@6 [c2,c3]@6", // A B C E C
  V: "[[b1,b2]@12 [g1,g2]@6 [b1,b2]@6 [a1,a2]@3 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@2 ~@13 f#2@9 [d1,d2]@2 ~ f#2@6 [d1,d2]@2 ~ f#2@2 ~@13 [g#1,g#2]@12 [a1,a2]@12 [a#1,a#2]@12 [b1,b2]@12 [d#1,d#2]@5 ~@4 [d#1,d#2]@2 ~ [e1,e2]@47 ~, ~@3 [g1,g2]@3 [g1,g2]@10]/4", // B G B A D G# A A# …
  W: "[c2,c3]@2 [e1,e2] [c2,c3] [b1,b2]@2 [g1,g2] [b1,b2]", // C E C B G B
  X: "[a1,a2]@3 [a1,a2]@2 ~ [a1,a2]@2 ~ [a1,a2]@2 ~@13 f#2@9 [d1,d2]@2 ~ f#2@6 [d1,d2]@2 ~ f#2@2 ~, ~ [g1,g2]@3", // A D G
  Y: "[~@12 [g#1,g#2]@12 [a1,a2]@12 [a#1,a#2]@12 [b1,b2]@12 [d#1,d#2]@5 ~@4 [d#1,d#2]@2 ~ [e1,e2]@26 ~@46, [g1,g2]@49 ~@23]/3", // G# A A# B D# E G
  Z: "[~@35 e2@9 c2@10 ~@30 g#2@25 ~@2 e2@3 g#2@26 ~@3 a2@10 e2@8 ~ c2@10 a1@28 ~@26 e2@3 g#2@25 ~@3 a2@9 e2@8 ~ c2@10 a1@28 c2@28 c#2@9 a1@9 c#2@9 ~ d2@15]/8",
  AA: "[~@12 d2@18 a1@8 ~@2 a1@18 ~@9 e2@20 ~@9]/2",
})).s("gm_fretless_bass").gain(0.3)

// bass · fretless bass · "tk2" · soft notes
const bass_soft = note(`<
  ~@8 A ~ B C D ~@5 E ~ F ~ G ~@15 H@2 I J@2 ~@2 K L M ~@7 N ~@2 O P ~@2 Q ~ R ~@9 S T U ~ V W ~@2 X Y@3 ~
>`.pickRestart({
  A: "~@33 e2 ~@14", B: "~@12 f#1@3 ~", C: "f#1@6 ~@3 f#1@2 ~@37", D: "~@15 [d#2,d#3] ~@8", E: "~@9 e2 ~@38",
  F: "~@12 f#1@9 ~@3 f#1@6 ~@3 f#1@2 ~@13", G: "~@3 [d#2,d#3] ~@20", H: "[a1@5 ~@10 a1@15 ~@18]/2", I: "~@5 e2 ~@6",
  J: "[~@33 g#2@21 ~@32 e2@4 ~@6]/2", K: "~@27 a1@8 ~@13", L: "~@34 e1@9 ~@5", M: "~@14 e1@9 ~@25", N: "~@45 e2 ~@2",
  O: "f#1@9 ~@3 f#1@6 ~@3 f#1@2 ~@25", P: "~@21 [d#2,d#3] ~@2", Q: "~@24 f#1@9 ~@3 f#1@6 ~@3 f#1@2 ~",
  R: "~@9 [d#2,d#3] ~@14", S: "~@12 a1@5 ~@7", T: "~ a1@5 ~@2", U: "~@11 e2", V: "~@3 g#2@7 ~@6", W: "~@7 e2@2 ~@15",
  X: "~@3 a1@8 ~@37", Y: "[~@10 e1@9 ~@19 e1@9 a1@54 ~@43]/3",
})).s("gm_fretless_bass").gain(0.2)

// chords · string ensemble 2 · "tk3"
const string_ensemble_2 = note("<~@4 A@8 B@6 C@4 D@8 ~@5 E@3 F@6 G@4 ~@3 H@8 I@6 ~@6 J@7 K@7 L@2>".pickRestart({
  A: "[~@12 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 ~ [e3,g#3,b3]@11 ~ [c4,e4]@24 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 ~ [e3,g#3,b3]@11 ~@13 g4@7 ~@5 [c4,e4]@24 [b3,d4]@24 [c4,e4]@24 f#4@23 [b3,g4]@12 ~ [b3,d4,g#4]@11 ~ [c4,e4,a4]@11 a#4, ~@12 a4@83 g#4@12 a4@23 ~@2 [a4,c5]@83 [g#4,b4]@12 c5@23 ~@134, ~@12 [c4,e4]@47 ~@73 [c4,e4]@47 ~@49 [e3,a3,c4]@24 g3@48 a3@48 ~@36, ~@38 a4@3 ~@13 d4@6 ~@4]/8", // D F E C D F E C …
  B: "[[e3,a#3,c#4,g4]@11 ~ [b3,d4,f#4]@12 [d#3,a3,c4,f#4]@11 [b3,e4]@49 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 ~ [g#3,b3]@11 ~ [c4,e4]@24 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 [g#4,b4], ~@11 b4@11 ~@13 e3@133 e3@120, ~@7 e4@8 ~@2 [e4,a4,c5]@7, ~@84 a4@83 g#4@12 a4@23 ~@86, ~@84 c4@47 ~@73 c4@47 ~@37]/6", // Edim Bm D#dim E5 D F G#m C …
  C: "[[e3,g#3,b3]@11 ~@13 g4@7 ~@5 c4@24 [b3,d4]@24 c4@24 f#4@23 [b3,g4]@12 ~ [b3,d4,g#4]@11 ~ [c4,a4]@11 ~ [a#3,c#4,g4]@11 ~ [b3,d4,f#4]@12, ~@11 c5@23 ~@74 d4@36 ~@23 a#4@12 b4@11 ~@2, ~ e3@13 e3@2, ~ [a3,c4]@2 [g3,e4]@4 a3@4 ~@5, ~@2 a4@3 ~@9 e4@12 e4@6]/4", // E Bm Em G#dim F Gdim Bm Am …
  D: "[[d#3,a3,c4,f#4]@11 b3@12 ~@118 g#5@30 e5@29 [g5,b5]@31 ~@30 b4@31 ~@92, ~@11 [e3,e4]@373]/8", // D#dim G E
  E: "[~@20 a4@62 ~ a4@31 g#4@30]/3", F: "[a4@59 ~@2 g#4@58 a4@57 g#4@55 ~@2 a4@55]/6",
  G: "[~ g4@28 a4@27 ~ a4@54 ~ a4@27 g#4@27 ~@5 a4 ~@20]/4",
  H: "[~@24 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 ~ [g#3,b3]@11 ~ [c4,e4]@24 a3@24 g3@24 [f#3,a3,d4]@24 [f3,a3,c4]@11 ~ [e3,g#3,b3]@11 ~@13 g4@7 ~@5 c4@24 [b3,d4]@24 c4@24 f#4@23 [b3,g4]@12 ~ [b3,d4,g#4]@11 ~, ~ e4@4 ~ e4@5 ~@2 e4@3, ~@24 a4@83 g#4@12 a4@23 ~@2 [a4,c5]@83 [g#4,b4]@12 c5 a4@18 ~@78 d4@36 ~@12, ~@24 c4@47 ~@37 e3@120 ~@12 e3@144, ~@144 c4@47 ~@49 [a3,c4]@24 [g3,e4]@48 a3@48 ~@24]/8", // D F G#m C D F E Bm …
  I: "[[c4,a4]@11 ~ [a#3,c#4,g4]@11 ~ [b3,d4,f#4]@12 [d#3,a3,c4,f#4]@11 [b3,e4]@49 c4@24 [b3,d4]@24 c4@24 f#4@23 [b3,g4]@12 ~ [b3,d4,g#4]@11 ~ [c4,a4]@11 ~ [a#3,c#4,g4]@11 ~ [b3,d4,f#4]@12 [d#3,a3,c4,f#4]@12 ~@24, e4@47 ~@49 e4@131 a#4@12 b4@11 ~@38, ~@11 a#4@12 b4@11 ~@62 g3@48 a3@48 ~@96, ~@12 e3@227 ~@49, ~@14 d4@3 ~@7]/6", // F Gdim Bm D#dim E5 Bm Em G#dim …
  J: "[~@44 a4@62 ~ a4@31 g#4@30 a4@59 ~@2 g#4@58 a4@49]/7",
  K: "[~@8 g#4@55 ~@2 a4@56 g4@28 a4@27 ~ a4@54 ~ a4@27 g#4@27 ~ a4@49]/7", L: "[~ g#4@9 ~@6]/2",
})).s("gm_string_ensemble_2").gain(0.16)

// chords · string ensemble 2 · "tk3" · soft notes
const string_ensemble_2_soft = note("<~@23 A@7 B@6 ~@29 C@7 ~@15>".pickRestart({
  A: "[~@3 [c5,a5]@31 [b4,g#5]@29 [c5,a5]@30 b4@30 [c5,g5,c6]@29 [b4,d5]@31 [a4,c5,e5,a5]@30 [g#4,e5,g#5]@29 ~@2 f4@28 g#4@64, ~@3 e5@59 ~ e5@60 ~@119 [f2,f3]@30 ~@64, ~@243 [a4,c5,f5]@31 ~@62]/7", // F E F C5 Bm Am C#m F
  B: "[~@4 a4@66 ~ g#4@63 ~ a4@63 g4@31 a4@31 ~@28]/6", C: "[~@8 g#4@67 ~ a4@66 ~ g#4@63 ~ a4@63 g4@31 a4@31 ~@4]/7",
})).s("gm_string_ensemble_2").gain(0.1)

// other · string ensemble 1 · "tk3"
const string_ensemble_1 = note("<~@13 A@8 ~@39 B@5 ~@22>".pickRestart({
  A: "[d4@3 e4@3 g#4@2 ~ e4@3 a4@3 b4@3 g#4@3 e4@3 d4@3 e4@3 d4@3 b3@351]/8",
  B: "[~@12 d4@3 e4@3 g#4@2 ~ e4@3 a4@3 b4@3 g#4@3 e4@3 d4@3 e4@3 d4@3 b3@182 ~@13]/5",
})).s("gm_string_ensemble_1").gain(0.22)

// other · cello · "tk5"
const cello = note("<A B C B D ~ E ~ F G ~@5 F H ~ I ~@28 J K L K M ~ N ~@2 O ~@30>".pickRestart({
  A: "~@15 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@5 g3 ~@2 g3 ~@2 g3 ~@2",
  B: "g3 ~@2 g3 ~@2 g3 ~@2 g3 ~@5 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@5 f3 ~@2 f3 ~@2 f3 ~@2",
  C: "~@3 e3 ~@2 e3 ~@2 e3 ~@5 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@5 g3 ~@2 g3 ~@2 g3 ~@2",
  D: "~@3 e3 ~@2 e3 ~@2 e3 ~@38", E: "~@15 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@14",
  F: "~@39 a3 ~@2 a3 ~@2 a3 ~@2", G: "a3 ~@2 g3 ~@2 g3 ~@2 g3 ~@38", H: "a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@38",
  I: "~@15 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 g3 ~@2 g3 ~@2 g3 ~@14", J: "~@30 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2",
  K: "~@3 g3 ~@2 g3 ~@2 g3 ~@2 g3 ~@2 g3 ~@2 g3 ~@2 g3 ~@5 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2",
  L: "~@3 f3 ~@2 f3 ~@2 f3 ~@5 e3 ~@2 e3 ~@2 e3 ~@5 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2",
  M: "~@3 f3 ~@2 f3 ~@2 f3 ~@5 e3 ~@2 e3 ~@2 e3 ~@26", N: "~@27 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2",
  O: "~@3 a3 ~@2 a3 ~@2 a3 ~@2 a3 ~@2 g3 ~@2 g3 ~@2 g3 ~@26",
})).s("gm_cello").gain(0.27).pan(0.4)

// other · cello · "tk5" · soft notes
const cello_soft = note("<~@23 A B@2 C D ~@59>".pickRestart({
  A: "~@3 a4@8 ~@7 a4@9 ~@6 g#4@9 ~@6", B: "[g#4@3 ~@2 a4@3 ~@2 a4@3 ~@2 g#4@3 ~@2 g#4@3 ~@2 c5@3 ~@2 c5@2]/2",
  C: "~@3 b4@3 ~@2 b4@3 ~@2 a4@3", D: "~@2 a4@3 ~@2 g#4@3 ~@2 g#4@3 ~",
})).s("gm_cello").gain(0.09).pan(0.4)

// other · vibraphone · "tk5"
const vibraphone = note(`<
  ~@13
  [~@12 g#5 a5 g#5 ~ g#5 ~@3 g#5 ~ a5 g#5 a5!2 g#5 a5 g#5!2 ~@2 a5 g#5 a5 ~@13]
  ~@46
  [~@25 a5 g#5@2 g#5@4 g#5 ~ a5 ~ a5!2 ~ a5 g#5 g#5@2 ~ a5 ~ a5 ~, ~@24 g#5@2 ~@9 g#5@3 g#5@2 ~@8]
  ~@26
>`).s("gm_vibraphone").gain(0.09).pan(0.4)

// other · vibraphone · "tk5" · soft notes
const vibraphone_soft = note("<~@13 A@8 ~@39 B ~@26>".pickRestart({
  A: "[~@21 g#5 ~@9 g#5 ~@3 g#5@349]/8", B: "~@33 g#5@2 ~@8 g#5@3 ~@2",
})).s("gm_vibraphone").gain(0.04).pan(0.4)

// other · string ensemble 2 · "tk5"
const string_ensemble_2_2 = note("<~@28 A@2 B@8 C@6 D E F G@8 ~@10 H@8 I@8 J@5 ~>".pickRestart({
  A: "[~ g#3@2]/2", B: "[~@4 a3@66 ~ g#3@63 ~ a3@63 g3@31 a3@31 a3@62 ~ a3@31 g#3@30]/8",
  C: "[a3@59 ~@2 g#3@58 a3@57 g#3@55 ~@2 a3@55]/6", D: "~ g3@28 a3@19", E: "~@3 a3@13", F: "~@16 a3@27 g#3@5",
  G: "[~@9 a3@119]/8", H: "[~@8 g#3@67 ~@68 g#3@63 ~@64 g3@31 a3@31 a3@52, ~@76 a3@131 a3@94 ~@83]/8",
  I: "[~@42 g#3@30 ~@61 g#3@58 ~@57 g#3@55 ~@58 g3@23, ~@11 a3@61 a3@119 a3@114 a3@79]/8",
  J: "[~@5 a3@28 a3@55 ~@27 g#3@27 ~@98, ~@88 a3@109 ~@43]/5",
})).s("gm_string_ensemble_2").gain(0.1).pan(0.4)

// other · viola · "tk6"
const viola = note("<A B C B D ~ E ~ F G ~@3 H ~ F G ~ E ~@28 I J K J L ~ M ~@2 N ~@3 O ~@26>".pickRestart({
  A: "~@15 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@5 c4 ~@2 c4 ~@2 c4 ~@2",
  B: "c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@5 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@5 c4 ~@2 c4 ~@2 c4 ~@2",
  C: "~@3 b3 ~@2 b3 ~@2 b3 ~@5 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@5 c4 ~@2 c4 ~@2 c4 ~@2",
  D: "~@3 b3 ~@2 b3 ~@2 b3 ~@38", E: "~@15 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@14",
  F: "~@39 c4 ~@2 c4 ~@2 c4 ~@2", G: "c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@38",
  H: "d3@2 ~ e3@2 ~ g#3@2 ~ e3@2 ~ a3@2 ~ b3@2 ~ g#3@2 ~ e3@2 ~ d3@2 ~ e3@2 ~ d3@2 ~ b2@2 ~@13",
  I: "~@30 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2",
  J: "~@3 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@5 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2",
  K: "~@3 c4 ~@2 c4 ~@2 c4 ~@5 b3 ~@2 b3 ~@2 b3 ~@5 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2",
  L: "~@3 c4 ~@2 c4 ~@2 c4 ~@5 b3 ~@2 b3 ~@2 b3 ~@26", M: "~@27 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2",
  N: "~@3 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@2 c4 ~@26",
  O: "~@12 d3@2 ~ e3@2 ~ g#3@2 ~ e3@2 ~ a3@2 ~ b3@2 ~ g#3@2 ~ e3@2 ~ d3@2 ~ e3@2 ~ d3@2 ~ b2@2 ~",
})).s("gm_viola").gain(0.27).pan(0.6)

// other · viola · "tk6" · soft notes
const viola_soft = note("<~@23 A B@2 C D ~@59>".pickRestart({
  A: "~@3 a4@8 ~@7 a4@9 ~@6 g#4@9 ~@6", B: "[g#4@3 ~@2 a4@3 ~@2 a4@3 ~@2 g#4@3 ~@2 g#4@3 ~@2 c5@3 ~@2 c5@2]/2",
  C: "~@9 b4@9 ~@6 b4@9 ~@5 a4@9 ~", D: "~@5 a4@9 ~@6 g#4@9 ~@6 g#4@9 ~@4",
})).s("gm_viola").gain(0.09).pan(0.6)

// other · string ensemble 1 · "tk6"
const string_ensemble_1_2 = note("<~@28 A@8 B@2 C@6 D@2 E F@8 ~@10 G@8 H@7 I@6 ~>".pickRestart({
  A: "[~@32 d4@67 ~ c4@66 ~ d4@63 ~ c4@63 c4@31 c#4@31 e4@28]/8",
  B: "[d4@2 ~ d4@2 f4@8 e4@11 a3@7 b3@4 ~ c4@30 b3@30, ~ c#4 ~@46]/2", C: "[a3@57 ~@4 d4@58 c4@57 d4@55 ~@2 c4@55]/6",
  D: "[~ c4@28 c#4@27 e4@25 d4 c#4 ~ d4@2 f4@6 e4@4]/2", E: "~@6 a3@6 b3@4 c4@27 b3@5", F: "[~@9 c4@119]/8",
  G: "[~@8 d4@67 ~@68 d4@63 ~ c4@63 ~@31 c#4@31 e4@28 d4 ~@2 d4@2 f4@8 e4@11, ~@76 c4@131 ~@63 c4@114, ~@181 c#4 ~@10]/8",
  H: "[a3@7 b3@4 ~@31 b3@30 a3@57 ~@4 d4@58 ~@57 d4@55 ~@2 c4@31, ~@12 c4@179 c4@114 ~@31]/7",
  I: "[~@53 c#4@27 e4@25 d4 c#4@2 d4@2 f4@6 e4@10 a3@6 b3@4 ~@27 b3@27 a3@52 ~@46, ~@25 c4@138 ~@125]/6",
})).s("gm_string_ensemble_1").gain(0.11).pan(0.6)

// other · viola · "tk7"
const viola_2 = note("<A B C B D ~ E ~ F G ~@5 F G ~ E ~@28 H I J I K ~ L ~@2 M ~@30>".pickRestart({
  A: "~@15 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~@4 e4 ~@2 e4 ~@2 e4 ~@2",
  B: "e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~@4 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4@2 ~@4 f4 ~@2 f4 ~@2 f4 ~@2",
  C: "~@3 e4 ~@2 e4 ~@2 e4 ~@5 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~@4 e4 ~@2 e4 ~@2 e4 ~@2",
  D: "~@3 e4 ~@2 e4 ~@2 e4 ~@38", E: "~@15 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@14",
  F: "~@39 e4 ~@2 e4 ~@2 e4 ~@2", G: "e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@38",
  H: "~@30 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~",
  I: "~@3 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~@4 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4 ~@2 f#4@2 ~",
  J: "~@3 f4 ~@2 f4 ~@2 f4 ~@5 e4 ~@2 e4 ~@2 e4 ~@5 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4@2 ~",
  K: "~@3 f4 ~@2 f4 ~@2 f4 ~@5 e4 ~@2 e4 ~@2 e4 ~@26", L: "~@27 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2",
  M: "~@3 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~@26",
})).s("gm_viola").gain(0.22)

// other · viola · "tk7" · soft notes
const viola_soft_2 = note("<~@23 A B@2 C D ~@59>".pickRestart({
  A: "~@3 a3@8 ~@7 a3@9 ~@6 g#3@9 ~@6", B: "[g#3@3 ~@2 a3@3 ~@2 a3@3 ~@2 g#3@3 ~@2 g#3@3 ~@2 c4@3 ~@2 c4@2]/2",
  C: "~@9 b3@9 ~@6 b3@9 ~@5 a3@9 ~", D: "~@5 a3@9 ~@6 g#3@9 ~@6 g#3@9 ~@4",
})).s("gm_viola").gain(0.07)

// other · tinkle bell · "tk7"
const tinkle_bell = note(`<
  ~@13
  [~@12 g#8 ~ a8 ~ b8 ~ g#8 ~ a8 ~ b7 ~ g#8 ~ a8 ~ b8 ~ g#8 ~ a8@2 b8 ~@13]
  ~@46
  [~@24 g#8 ~ a8 ~ b8 ~ g#8 ~ a8 ~ b7 ~ g#8 ~ a8 ~ b8 ~ g#8 ~ a8@2 b8 ~]
  ~@26
>`).s("gm_tinkle_bell").gain(0.18).pan(0.6)
// … 144 more lines

More by Pooh