Strudelify
Help Yourself cover art

1993 · Help Yourself

Help Yourself

Tom Jones

KeyG♯ minorTempo183 bpm
0:00/0:00
// Help Yourself — Tom Jones
// 183 bpm, 4/4, key G# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 132 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(183/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 · marimba
const marimba = note(`<
  ~@10 A B C ~ D E ~@2 F G H G I ~@3 A B C ~ D E ~@2 F G H G I ~ J K L K@2 M@2 N O N J P@2 K L K@2 M@2 N O N J ~ J K L
  K@2 M@2 N O N J Q ~@2 R S T ~ U V ~@2 W X Y X Z ~@3 AA AB AC AB@2 AD@2 AE AF AE AA ~@2 AA AB AC AB@2 AD@2 AE AF AE AA
  ~@2 AA AB AC AB@2 AD@2 AE AF AE AA ~
>`.pickRestart({
  A: "~@4 a#3 ~@3 d4 ~@3 f4 ~@3", B: "g#4 ~@3 f4 ~ c5 ~@3 a#4 ~ f4 ~@3", C: "g4 ~@15",
  D: "~@4 d#4@2 ~@2 g#4 ~@3 a#4 ~@3", E: "c5 ~@3 d#5 ~ g#4 ~@3 a#4 ~ c5 ~@3", F: "~@2 [d#4,g4] ~@5",
  G: "~@4 [d4,g#4] ~@11", H: "~@4 [d#4,g4] ~@11", I: "[d#4,g4] ~@15", J: "~@4 [g3,a#3] ~ [g3,a#3] ~@5 [g3,a#3] ~@3",
  K: "~@4 [g3,c4] ~ [g3,c4] ~@5 [g3,c4] ~@3", L: "~@4 [g3,d4] ~ [g3,d4] ~@5 [g3,d4] ~@3",
  M: "~@4 [f3,a#3] ~ [f3,a#3] ~@5 [f3,a#3] ~@3", N: "~@4 [f3,c4] ~ [f3,c4] ~@5 [f3,c4] ~@3",
  O: "~@4 [f3,d4] ~ [f3,d4] ~@5 [f3,d4] ~@3", // Dm
  P: "[~@3 [g3,a#3] ~ [g3,a#3] ~@6 g3@8 g3@2 g3@6 [g3,a#3] ~@3, ~@12 a#3 ~@7 a#3 ~ a#3 ~@9]/2", // Gm
  Q: "~@3 [g3,a#3] ~ [g3,a#3] ~@6 [g3,a#3] ~@3", R: "~@4 b3 ~@3 d#4 ~@3 f#4 ~@3",
  S: "a4 ~@3 f#4 ~ c#5 ~@3 b4 ~ f#4 ~@3", T: "g#4 ~@15", U: "~@4 e4@2 ~@2 a4 ~@3 b4 ~@3",
  V: "c#5 ~@3 e5 ~ a4 ~@3 b4 ~ c#5 ~@3", W: "~@2 [e4,g#4] ~@5", X: "~@4 [d#4,a4] ~@11", Y: "~@4 [e4,g#4] ~@11",
  Z: "[e4,g#4] ~@15", AA: "~@4 [g#3,b3] ~ [g#3,b3] ~@5 [g#3,b3] ~@3", AB: "~@4 [g#3,c#4] ~ [g#3,c#4] ~@5 [g#3,c#4] ~@3",
  AC: "~@4 [g#3,d#4] ~ [g#3,d#4] ~@5 [g#3,d#4] ~@3", AD: "~@4 [f#3,b3] ~ [f#3,b3] ~@5 [f#3,b3] ~@3",
  AE: "~@4 [f#3,c#4] ~ [f#3,c#4] ~@5 [f#3,c#4] ~@3", AF: "~@4 [f#3,d#4] ~ [f#3,d#4] ~@5 [f#3,d#4] ~@3",
})).s("gm_marimba").gain(0.19)

// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
  A@3 B A@3 B C@2 D@2 E F G H I J K L K L K M C@2 D@2 E F G H I J K L K L K N C O@2 P Q R@2 S@2 T U V C O@2 P Q R@2 S@2
  T U W C O@2 P Q R@2 S@2 T U X Y@2 Z@2 AA AB AC AD AE AF AG AH AG AH AG AI AJ AK Y AL@2 AM AN AO@2 AP@2 AQ AR AS AK Y
  AL@2 AM AN AO@2 AP@2 AQ AR AS AK Y AL@2 AM AN AO@2 AP@2 AQ AR AT
>`.pickRestart({
  A: "d#2@5 ~ d#2@2 a#1@8", B: "d#2@2 ~ d#2 a#1@4", C: "d#2@4 ~@2 d#2@2 a#1@5 ~@3", D: "f2@4 ~@2 f2@2 a#1@5 ~@3",
  E: "d#2@2 ~ d#2 a#1@2 ~@2", F: "d#2@2 ~ d#2 a#1@2 d#2@2", G: "g#2@2 ~ g#2 d#2@2 ~@2", H: "g#1@5 ~ g#2@2 d#2@4 ~@4",
  I: "g#2@4 ~@2 g#2@2 d#2@3 ~@5", J: "g#2@2 ~ d#2 g#2@2 ~@2", K: "d#2@4 ~@2 d#2@2 a#1@3 ~@5",
  L: "f2@4 ~@2 f2@2 a#1@3 ~@5", M: "d#2@4 ~@2 d#2 ~ a#1@3 ~@5", N: "d#2 ~@3", O: "d#2@4 ~@2 d#2 ~ a#1@6 ~@2",
  P: "d#2@2 ~ d#2 a#1@3 ~", Q: "f2@4 ~@2 f2 ~ c2@7 ~", R: "f2@2 ~ f2 a#1@3 ~", S: "f2@4 ~@2 f2@2 a#1@7 ~",
  T: "f2@5 ~ f2@2 a#1@7 ~", U: "d#2@4 ~@2 d#2@2 a#1@5 ~ a#1@2", V: "d#2@4 ~@2 a#1@2 d#2@3 ~ a#1@4", W: "d#2 ~@15",
  X: "d#2@4 a#1 ~ d#2@2 ~@2 d#2@3 ~ b1@2", Y: "e2@4 ~@2 e2@2 b1@5 ~@3", Z: "f#2@4 ~@2 f#2@2 b1@5 ~@3",
  AA: "e2@2 ~ e2 b1@2 ~@2", AB: "e2@2 ~ e2 b1@2 e2@2", AC: "a2@2 ~ a2 e2@2 ~@2", AD: "a1@5 ~ a2@2 e2@4 ~@4",
  AE: "a2@4 ~@2 a2@2 e2@3 ~@5", AF: "a2@2 ~ e2 a2@2 ~@2", AG: "e2@4 ~@2 e2@2 b1@3 ~@5", AH: "f#2@4 ~@2 f#2@2 b1@3 ~@5",
  AI: "e2@4 ~@2 e2 ~ b1@3 ~@5", AJ: "e2 ~@3 b1@3 ~", AK: "b1@7 ~ b1@3 ~@5", AL: "e2@4 ~@2 e2 ~ b1@6 ~@2",
  AM: "e2@2 ~ e2 b1@3 ~", AN: "f#2@4 ~@2 f#2 ~ c#2@7 ~", AO: "f#2@2 ~ f#2 b1@3 ~", AP: "f#2@4 ~@2 f#2@2 b1@7 ~",
  AQ: "f#2@5 ~ f#2@2 b1@7 ~", AR: "e2@4 ~@2 e2@2 b1@5 ~ b1@2", AS: "e2 ~@7 b1@6 ~@2", AT: "e2 ~@15",
})).s("gm_electric_bass_finger").gain(0.5)

// chords · acoustic guitar nylon · "NYLON GTR"
const acoustic_guitar_nylon = note(`<
  A B C B C B C B C B D E F B G H I H J D F D F C@2 B D E F B G H I H J D F D F K A B C B L M N O@3 F C@2 B C B L M N
  O@3 F P A B C B L M N O@3 F C Q R S T U R V W X W Y S U S U Z AA AB Q R AC R AD AE AF AG@3 U AH AB Q R AC R AD AE AF
  AG@3 U AH AB Q R AC R AD AE AF AG@3 U AI
>`.pickRestart({
  A: "[d#3,g3,a#3,d#4,g4]@4 [g3,a#3]@2 [g3,a#3]@2 d#3 ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3] ~, ~ [d#3,d#4,g4] ~ g4", // D# Gm D#
  B: "g4@4 [d#3,g3,a#3,d#4] ~ [g3,a#3]@2 d#3 ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3] ~, d#4 ~@3 g4@4 ~@4 g4@4", // D# Gm D#
  C: "[d#3,g3,a#3,d#4] ~@3 [d#3,g3,a#3,d#4] ~ [g3,a#3]@2 d#3 ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3] ~, g4!2 ~ g4", // D# Gm D#
  D: "[f3,g#3,d4,f4]@4 g#3@2 [g#3,a#3]@2 f3 ~ [f3,g#3,a#3,d4] ~ [f3,g#3,a#3,d4] ~ [f3,g#3,a#3] ~, a#3 ~@3 [f3,d4,f4]@4 ~@8, ~@4 a#3 ~@7 f4@4", // Ddim G#sus2 A#7 Dm
  E: "f4@4 [f3,g#3,a#3,d4] ~ [g#3,a#3]@2 f3 ~ [f3,g#3,a#3,d4] ~ [f3,g#3,a#3,d4] ~ [f3,g#3,a#3] ~, d4 ~@3 f4@4 ~@4 f4@4", // A#7 G#sus2 A#7
  F: "[d#3,g3,d#4,g4]@4 g3@2 [g3,a#3]@2 d#3 ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3] ~, a#3 ~@3 [d#3,d#4,g4]@4 ~@8, ~@4 a#3 ~@7 g4@4", // D# Gm D#
  G: "[g#3,c4,g#4]@4 [g#3,c4]@2 [g#3,c4]@2 d#3 ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4] ~, [d#3,d#4] ~@3 g#4@4 ~@4 g#4@4, ~@4 [d#3,d#4] ~@11", // G# D#
  H: "g#4@4 [d#3,g#3,c4,d#4] ~ [g#3,c4]@2 d#3 ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4] ~, d#4 ~@3 g#4@4 ~@4 g#4@4", // G#
  I: "[d#3,g#3,c4,d#4] ~@3 [d#3,g#3,c4,d#4] ~ [g#3,c4]@2 d#3 ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4,d#4] ~ [d#3,g#3,c4] ~, g#4!2 ~ g#4", // G#
  J: "[g3,a#3,g4]@4 [g3,a#3]@2 [g3,a#3]@2 d#3 ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3,d#4] ~ [d#3,g3,a#3] ~, [d#3,d#4] ~@3 g4@4 ~@4 g4@4, ~@4 [d#3,d#4] ~@11", // Gm D#
  K: "[d#3,g3,a#3,d#4] ~@15, g4 ~@3", // D#
  L: "[f3,g#3,c4,f4,g#4]@4 [g#3,c4]@2 [g#3,c4]@2 f3 ~ [f3,g#3,c4,f4] ~ [f3,g#3,c4,f4] ~ [f3,g#3,c4] ~, ~ [f3,f4,g#4] ~ g#4", // Fm G# Fm
  M: "[f3,g#3,f4] ~@3 [f3,g#3,f4] ~ [g#3,d4]@2 f3 ~ [f3,g#3,d4,f4] ~ [f3,g#3,d4,f4] ~ [f3,g#3,d4] ~, [d4,g#4] g#4 ~ g#4, ~@2 d4 ~@5", // Fm G#dim Ddim
  N: "[a#3,g#4,a#4]@4 [d4,f4,g#4] ~ [d4,f4]@2 a#3 ~ [a#3,d4,f4,g#4] ~ [a#3,d4,f4,g#4] ~ [a#3,d4,f4] ~, [d4,f4] ~@3 [a#3,a#4]@4 ~@4 a#4@4", // A#7 Ddim Dm A#7 A# Dm A#
  O: "[a#3,d4,f4,g#4] ~@3 [a#3,d4,f4,g#4] ~ [d4,f4]@2 a#3 ~ [a#3,d4,f4,g#4] ~ [a#3,d4,f4,g#4] ~ [a#3,d4,f4] ~, a#4!2 ~ a#4", // A#7 Dm A#7 A#
  P: "[d#3,g3,a#3,d#4,g4] ~@15", // D#
  Q: "[e3,g#3,b3,e4,g#4]@4 [g#3,b3]@2 [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3] ~, ~ [e3,e4,g#4] ~ g#4", // E G#m E
  R: "g#4@4 [e3,g#3,b3,e4] ~ [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3] ~, e4 ~@3 g#4@4 ~@4 g#4@4", // E G#m E
  S: "[f#3,a3,d#4,f#4]@4 a3@2 [a3,b3]@2 f#3 ~ [f#3,a3,b3,d#4] ~ [f#3,a3,b3,d#4] ~ [f#3,a3,b3] ~, b3 ~@3 [f#3,d#4,f#4]@4 ~@8, ~@4 b3 ~@7 f#4@4", // D#dim Asus2 B7 D#m
  T: "f#4@4 [f#3,a3,b3,d#4] ~ [a3,b3]@2 f#3 ~ [f#3,a3,b3,d#4] ~ [f#3,a3,b3,d#4] ~ [f#3,a3,b3] ~, d#4 ~@3 f#4@4 ~@4 f#4@4", // B7 Asus2 B7
  U: "[e3,g#3,e4,g#4]@4 g#3@2 [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3] ~, b3 ~@3 [e3,e4,g#4]@4 ~@8, ~@4 b3 ~@7 g#4@4", // E G#m E
  V: "[a3,c#4,a4]@4 [a3,c#4]@2 [a3,c#4]@2 e3 ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4] ~, [e3,e4] ~@3 a4@4 ~@4 a4@4, ~@4 [e3,e4] ~@11", // A E
  W: "a4@4 [e3,a3,c#4,e4] ~ [a3,c#4]@2 e3 ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4] ~, e4 ~@3 a4@4 ~@4 a4@4", // A
  X: "[e3,a3,c#4,e4] ~@3 [e3,a3,c#4,e4] ~ [a3,c#4]@2 e3 ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4,e4] ~ [e3,a3,c#4] ~, a4!2 ~ a4", // A
  Y: "[g#3,b3,g#4]@4 [g#3,b3]@2 [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3] ~, [e3,e4] ~@3 g#4@4 ~@4 g#4@4, ~@4 [e3,e4] ~@11", // G#m E
  Z: "[e3,g#3,b3,e4] ~@3 [e3,g#3,b3,e4] ~ [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e2,e3,g#3,b3] [e3,g#3], g#4!2 ~ g#4", // E G#m E
  AA: "[b3,e4] ~@7 [b2,f#3,b3]@7 ~", AB: "[b2,f#3,b3]@7 ~@9",
  AC: "[e3,g#3,b3,e4] ~@3 [e3,g#3,b3,e4] ~ [g#3,b3]@2 e3 ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3,e4] ~ [e3,g#3,b3] ~, g#4!2 ~ g#4", // E G#m E
  AD: "[f#3,a3,c#4,f#4,a4]@4 [a3,c#4]@2 [a3,c#4]@2 f#3 ~ [f#3,a3,c#4,f#4] ~ [f#3,a3,c#4,f#4] ~ [f#3,a3,c#4] ~, ~ [f#3,f#4,a4] ~ a4", // F#m A F#m
  AE: "[f#3,a3,f#4] ~@3 [f#3,a3,f#4] ~ [a3,d#4]@2 f#3 ~ [f#3,a3,d#4,f#4] ~ [f#3,a3,d#4,f#4] ~ [f#3,a3,d#4] ~, [d#4,a4] a4 ~ a4, ~@2 d#4 ~@5", // F#m Adim D#dim
  AF: "[b3,a4,b4]@4 [d#4,f#4,a4] ~ [d#4,f#4]@2 b3 ~ [b3,d#4,f#4,a4] ~ [b3,d#4,f#4,a4] ~ [b3,d#4,f#4] ~, [d#4,f#4] ~@3 [b3,b4]@4 ~@4 b4@4", // B7 D#dim D#m B7 B D#m B
  AG: "[b3,d#4,f#4,a4] ~@3 [b3,d#4,f#4,a4] ~ [d#4,f#4]@2 b3 ~ [b3,d#4,f#4,a4] ~ [b3,d#4,f#4,a4] ~ [b3,d#4,f#4] ~, b4!2 ~ b4", // B7 D#m B7 B
  AH: "[e3,g#3,b3,e4,g#4] ~@7 [b2,f#3,b3]@7 ~", AI: "[e3,g#3,b3,e4,g#4] ~@15",
})).s("gm_acoustic_guitar_nylon").gain(0.14).pan(1)

// chords · acoustic guitar nylon · "NYLON GTR" · soft notes
const acoustic_guitar_nylon_2 = note(`<
  A B A B A B A B A B C D A B E F E F A C A C A@3 B C D A B E F E F A C A C A ~ A B A B G H I@4 A@3 B A B G H I@4 A ~ A
  B A B G H I@4 A@2 J K L M J K N O N O J L J L J@2 ~@2 J K J K P Q R@4 J ~@2 J K J K P Q R@4 J ~@2 J K J K P Q R@4 J ~
>`.pickRestart({
  A: "~@8 [g3,a#3,d#4,g4] ~ g4 ~@5", B: "[d#3,g3,a#3] ~@7 [g3,a#3,d#4,g4] ~ g4 ~@5", C: "~@8 [g#3,a#3,d4,f4] ~ f4 ~@5",
  D: "[f3,g#3,a#3] ~@7 [g#3,a#3,d4,f4] ~ f4 ~@5", E: "~@8 [g#3,c4,d#4,g#4] ~ g#4 ~@5",
  F: "[d#3,g#3,c4] ~@7 [g#3,c4,d#4,g#4] ~ g#4 ~@5", G: "~@8 [g#3,c4,f4,g#4] ~ g#4 ~@5",
  H: "~@8 [g#3,d4,f4,g#4] ~ g#4 ~@5", I: "~@8 [d4,f4,g#4,a#4] ~ a#4 ~@5", J: "~@8 [g#3,b3,e4,g#4] ~ g#4 ~@5",
  K: "[e3,g#3,b3] ~@7 [g#3,b3,e4,g#4] ~ g#4 ~@5", L: "~@8 [a3,b3,d#4,f#4] ~ f#4 ~@5",
  M: "[f#3,a3,b3] ~@7 [a3,b3,d#4,f#4] ~ f#4 ~@5", N: "~@8 [a3,c#4,e4,a4] ~ a4 ~@5",
  O: "[e3,a3,c#4] ~@7 [a3,c#4,e4,a4] ~ a4 ~@5", P: "~@8 [a3,c#4,f#4,a4] ~ a4 ~@5", Q: "~@8 [a3,d#4,f#4,a4] ~ a4 ~@5",
  R: "~@8 [d#4,f#4,a4,b4] ~ b4 ~@5", // B7
})).s("gm_acoustic_guitar_nylon").gain(0.08).pan(1)

// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
  ~@40 A B C D E F@3 G@3 H@6 I@7 A B C J@2 F@3 K@4 ~@16 L M N@5 O@7 M N@5 O@7 M N@5 P@7
>`.pickRestart({
  A: "[d#3,g3,a#3]", B: "[d#3,g3,c4]", C: "[d#3,g3,a#3,d4]", D: "[d#3,a#3,c4], g3 ~@15", E: "[f3,g#3,c4]",
  F: "[[f3,g#3,a#3]@15 [d3,f3,a#3]@16 [d3,g#3,c4]@16 ~, ~@31 f3 ~@16]/3", // A#7 A# Dm7b5
  G: "[[f3,a#3,d4]@15 ~ f4@15 [g3,d#4]@17, ~@15 [f3,a#3,d4]@16 a#3 ~@16]/3", // A# Cm A#
  H: "[~@16 [a#4,a#5]@15 ~ [c5,c6]@15 ~ [d5,d6]@15 g3 [c5,c6]@8 [a#4,a#5]@7 ~ [c5,c6]@15 [f3,g#3,a#3], ~@15 [d#3,g3,a#3]@16 [d#3,g3,c4]@16 [d#3,g3,a#3,d4]@16 [d#3,a#3,c4]@16 [f3,g#3,c4]@16 ~]/6", // A# C D C A# C A#7 D# …
  I: "[~@15 f3@15 f3 [d3,g#3,c4,c5,c6]@16 [f3,a#3,d4,d5,d6]@16 [f5,f6]@8 [d5,d6]@8 [g3,d#4,d#5,d#6]@19 ~@14, ~@15 [d3,a#3,a#4,a#5]@17 ~@31 [f3,a#3,d4,f4]@16 a#3 ~@32]/7", // Dm7b5 A# F D Cm Gm A#
  J: "[[d#3,a#3,c4]@15 ~ [f3,c4]@16, g3 ~@14 g#3@16 ~]/2", // Cm7 F5
  K: "[[f3,a#3,d4]@15 ~ f4@15 [g3,d#4]@32 ~, ~@15 [f3,a#3,d4]@16 a#3 ~@32]/4", L: "~@7 [e4,g#4]@7 ~@2",
  M: "[e4,g#4,b4]@3 ~ [b4,e5,g#5]@4", // E
  N: "[b5@15 ~ [c#5,c#6]@15 ~ [d#5,d#6]@15 g#3 [c#5,c#6]@8 [b4,b5]@7 ~ [c#5,c#6]@15 [f#3,a3,b3], b4@8 ~@7 [e3,g#3,c#4]@16 [e3,g#3,b3,d#4]@16 [e3,b3,c#4]@16 [f#3,a3,c#4]@16 ~]/5", // C# D# C# B C# B7 C#m Emaj7 …
  O: "[~@15 f#3@15 f#3 [d#3,a3,c#4,c#5,c#6]@16 [f#3,b3,d#4,d#5,d#6]@16 [f#5,f#6]@8 [d#5,d#6]@8 [g#3,e4,e5,e6]@19 ~@5 [e4,g#4]@7 ~@2, ~@15 [d#3,b3,b4,b5]@17 ~@31 [f#3,b3,d#4,f#4]@16 b3 ~@32]/7", // D#m7b5 B F# D# C#m E G#m B
  P: "[~@15 f#3@15 f#3 [d#3,a3,c#4,c#5,c#6]@16 [f#3,b3,d#4,d#5,d#6]@16 [f#5,f#6]@8 [d#5,d#6]@8 [g#3,e4,e5,e6]@19 ~@14, ~@15 [d#3,b3,b4,b5]@17 ~@31 [f#3,b3,d#4,f#4]@16 b3 ~@32]/7", // D#m7b5 B F# D# C#m G#m B
})).s("gm_string_ensemble_1").gain(0.24).pan(1)

// other · trumpet
const trumpet = note(`<
  ~@2 A B ~@2 A B ~@14 A B ~@2 C D E ~ F G ~@6 H I ~@10 J K ~@11 L M N@4 O P Q@4 R S ~ T U V ~ W X ~@6 Y Z AA ~@12 AB AC
  AD AE@4 AF AG AH@4 AB AC AD AE@4 AF AG AH@4 ~
>`.pickRestart({
  A: "~@4 [g4,g5] ~@3 [a#4,a#5]@3 c#6 [c#5,d5,d#5,d6,d#6] ~@3", // G A#
  B: "[d5,d6]@3 [b4,c5,b5,c6] [a#4,a#5]@2 [c5,c6]@2 ~@2 [g4,g5]@2 [a#4,a#5]@2 ~@2, ~@6 [b4,b5] ~@9", // D Cmaj7 A# C G A# B
  C: "~@4 a#3 ~@3 d4@4 f4 ~@3", D: "g#4@4 f4 ~ c5 ~@3 a#4@2 f4@4", E: "g4 ~@7", F: "~@4 d#4 ~@3 g#4@4 a#4 ~@3",
  G: "c5@4 d#5 ~ g#4 ~@3 a#4 ~ c5@2 ~@2", H: "~@4 c#5 d5 ~ d#5 e5 f5 ~ f#5 g5 g#5 ~ a5", I: "a#5 ~@7",
  J: "~@6 a#4 ~ d#5 ~ f5@2 ~@2 g5@2", K: "~ f5 [d5,e5] c5 [g4,a4,b4] f4 ~@10", L: "~@2 g4@2 a#4@2 g5 ~, ~@8 a4 ~@7",
  M: "g5@8 ~@2 d#5 ~@3 d#5 ~",
  N: "[d#5@8 a#4 ~ a#4@2 ~@2 a#4@5 ~@3 g4 ~ a#4 ~ g5@2 ~@2 g5@4 ~@2 d#5 ~@3 d#5 ~ f5 ~@3 f5@11 ~@7]/4",
  O: "~@4 g#4@3 a4 a#4@4 f5@2 ~@2", P: "f5@8 ~@2 d5@2 ~@2 d5 ~",
  Q: "[d5@7 ~ a#4 ~ a#4@2 ~@2 a#4@6 ~@2 g#4 ~ a#4 ~ f5@2 ~@2 f5@4 ~@2 d5@2 ~@2 d5 ~ d#5 ~@3 d#5@18]/4",
  R: "~@6 d#5@2 ~@2 d#5@2 ~@2 d#5 ~", S: "e5 ~@15", T: "~@4 b3 ~@3 d#4@4 f#4 ~@3", U: "a4@4 f#4 ~ c#5 ~@3 b4@2 f#4@4",
  V: "g#4 ~@7", W: "~@4 e4 ~@3 a4@4 b4 ~@3", X: "c#5@4 e5 ~ a4 ~@3 b4 ~ c#5@2 ~@2",
  Y: "~@4 [g#4,g#5] ~@3 [b4,b5]@3 d6 [d5,d#5,e5,d#6,e6] ~@3", // G# B
  Z: "[d#5,d#6]@3 [c5,c#5,c6,c#6] [b4,b5]@2 [c#5,c#6]@2 ~@2 [g#4,g#5]@2 [b4,b5]@2 ~@2, ~@6 [c5,c6] ~@9", // D# C#maj7 B C# G# B C
  AA: "[e4,e5]@3 ~@13", AB: "~ g#4", AC: "a#4 b4@7 g#5@7 ~", AD: "g#5@8 ~@2 e5 ~@3 e5 ~",
  AE: "[e5@8 b4 ~ b4@2 ~@2 b4@5 ~@3 g#4 ~ b4 ~ g#5@2 ~@2 g#5@4 ~@2 e5 ~@3 e5 ~ f#5 ~@3 f#5@11 ~@7]/4",
  AF: "~@4 a4@3 a#4 b4@4 f#5@2 ~@2", AG: "f#5@8 ~@2 d#5@2 ~@2 d#5 ~",
  AH: "[d#5@7 b4 ~@2 b4@2 ~@2 b4@6 ~@2 a4 ~ b4 ~ f#5@2 ~@2 f#5@4 ~ d#5@2 ~@2 d#5 ~@2 e5 ~@3 e5@18]/4",
})).s("gm_trumpet").gain(0.32).pan(0.3)

// chords · trumpet
const trumpet_2 = note(`<
  ~@2 A@2 ~@2 A@2 ~@14 B@2 C ~ D@2 E ~ F@3 ~ G@2 D@2 H I ~@34 J@2 K ~ L@2 M ~ N@3 ~ O@2 L@2 P@2 ~@40
>`.pickRestart({
  A: "[d#2@15 ~]/2", B: "[~@4 d#2@27 ~]/2", C: "d#3 ~@7, g3 ~@15", D: "[~ a#2@7]/2", E: "[d#3,g3] ~@15",
  F: "[~@4 d#4 ~@3 g#4@4 a#4 ~@3 c5@4 d#5 ~ g#4 ~@3 a#4 ~ c5@2 ~ g#2@3 ~@14, ~@4 d#3@27 ~@17]/3", G: "[~@4 a#2@27 ~]/2",
  H: "~@8 a#2@6 c#3 d3", I: "d#3 ~@7", J: "[~@4 [d#3,g3]@16 ~@2 [b3,b4] ~@3 [b3,b4] ~@3 [b3,b4] ~]/2",
  K: "[e3,b4] ~@7, [g#3,b3] ~@15", L: "[~ b2@7]/2", M: "[e3,g#3] ~@15",
  N: "[~@4 e4 ~@3 a4@4 b4 ~@3 c#5@4 e5 ~ a4 ~@3 b4 ~ c#5@2 ~ a2@3 ~@14, ~@4 e3@27 ~@17]/3", O: "[~@4 b2@27 ~]/2",
  P: "[~ [e2,b2,g#3,b3]@7]/2", // E
})).s("gm_trumpet").gain(0.38).pan(1)

// chords · trumpet
const trumpet_3 = note(`<
  A B C@2 A B C@2 ~@14 D@3 ~ E@3 ~ F@3 ~ G@2 H@2 I@2 J K L K M N O P Q P R S J K L K M N O P Q P T U V W@4 X Y Z@4 AA@2
  ~ AB@3 ~ AC@3 ~ AD@2 AE@2 ~@4 AF AG AH AG AI AJ AK AL AM AL ~ AN AO AP AQ@4 AR AS AT@4 AN AO AP AQ@4 AR AS AT@4 ~
>`.pickRestart({
  A: "~@2 g3 ~ a#3@2 d#4 ~", B: "d4@4 a#3 ~ c4@2 ~@2 g3 ~ a#3@2 ~@2", C: "[[a#2,g3]@31 ~]/2",
  D: "[~@4 [a#2,g3]@27 [g3,a#3]@2 ~@15]/3", E: "[~@3 a#2@27 ~ [g3,a#3]@2 ~@15]/3",
  F: "[~@3 g#3@27 ~ [d#3,c4]@2 ~@15]/3", G: "[~@3 a#2@28 ~]/2", H: "[~@3 a#2@27 ~@2]/2",
  I: "[~@4 g#4 a4 a#4 ~ b4 c5 c#5 ~ d5 [b2,d#5] [c3,e5] ~ [d#3,f5]@3 ~@13, ~@7 a#2@6 ~ c#3@2 ~@16, ~@15 d3@2 ~@15]/2", // B C D#sus2
  J: "~@2 [d#3,g3,a#3] ~@5", K: "~@2 [d#3,g3,a#3,c4] ~@5", L: "~@2 [d#3,g3,a#3,d4] ~@5", M: "~@2 [f3,g#3,c4] ~@5",
  N: "~@2 [f3,g#3,a#3] ~@5", O: "~@2 [d3,f3,a#3] ~@5", P: "~@2 [d3,f3,g#3,c4] ~@5", Q: "~@2 [d3,f3,a#3,d4] ~@5",
  R: "~@6 a#4 ~ a#4 ~ a#4 ~@3 d#5@2", S: "~ [b4,c5,c#5] [g4,a4] [e4,f4] ~@12", T: "~@10 [d#3,g3,a#3]@5 ~",
  U: "[d#3,g3,a#3] ~@3 d#4@4 g4@3 ~ d#5 ~@3", V: "d#5@8 ~@2 c5 ~@3 c5 ~",
  W: "[c5@6 ~@2 g4 ~ g4 ~@3 g4@6 ~ d#4 ~@2 g4 ~ d#5 ~@3 d#5@5 ~ c5 ~@3 c5 ~ d5@2 ~@2 d5@10 ~@8]/4",
  X: "~@4 f4@3 ~ g4@3 ~ d5@2 ~@2", Y: "d5@8 ~@2 a#4 ~@3 a#4 ~",
  Z: "[a#4@6 ~ d4 ~@2 d4@2 ~@2 d4@7 ~ d4 ~ f4 ~ d5@2 ~@2 d5@4 ~@2 a#4@2 ~@2 a#4 ~ g#4@2 ~ g4@16 ~@3]/4",
  AA: "[~@6 g4 ~@3 g4 ~@5 g#4@2 ~@14, ~@7 g4 ~@8, ~@15 [g#3,b3]@2 ~@15]/2", AB: "[~@3 b2@27 ~ [g#3,b3]@2 ~@15]/3",
  AC: "[~@3 a3@27 ~ [e3,c#4]@2 ~@15]/3", AD: "[~@3 b2@28 ~]/2", AE: "[~@3 b2@27 ~@2]/2", AF: "~@2 [e3,g#3,b3] ~@5",
  AG: "~@2 [e3,g#3,b3,c#4] ~@5", AH: "~@2 [e3,g#3,b3,d#4] ~@5", AI: "~@2 [f#3,a3,c#4] ~@5", AJ: "~@2 [f#3,a3,b3] ~@5",
  AK: "~@2 [d#3,f#3,b3] ~@5", AL: "~@2 [d#3,f#3,a3,c#4] ~@5", AM: "~@2 [d#3,f#3,b3,d#4] ~@5", AN: "~@8 e4@7 ~",
  AO: "g#4@7 ~ e5@6 ~@2", AP: "~@4 [e3,g#3,b3]@2 ~@4 c#5 ~@3 c#5 ~, e5 ~",
  AQ: "[~@4 [e3,g#3,b3,c#4]@2 ~@2 g#4 ~ g#4 ~@3 g#4@6 ~ e4 ~@2 g#4 ~ e5 ~@3 e5@5 ~ [e3,g#3,b3,c#4]@2 ~@2 c#5 ~ d#5@2 ~@8 [f#3,a3,c#4]@2 ~@10, c#5@6 ~@14 [e3,g#3,b3,d#4]@2 ~@14 c#5 ~@9 d#5@10 ~@8]/4", // C#m7 F#m Emaj7
  AR: "~@4 [f#3,a3,b3,f#4]@3 ~ g#4@3 ~ d#5@2 ~@2", AS: "~@4 [d#3,f#3,b3]@2 ~@4 b4 ~@3 b4 ~, d#5 ~",
  AT: "[~@4 [d#3,f#3,a3,c#4]@2 ~ d#4 ~ d#4@2 ~@3 d#4@6 [d#3,f#3,b3,d#4]@2 ~@2 f#4 ~ d#5@2 ~@2 d#5@4 ~@2 [d#3,f#3,a3,c#4,b4]@2 ~@2 b4 ~ a4@2 ~ g#4@16 ~@3, b4@3 ~@8 d#4@2 ~@19]/4", // D#m7b5 B D#m7b5
})).s("gm_trumpet").gain(0.31).pan(0)

// other · piccolo
const piccolo = note(`<
  ~@10 A B C ~ D E ~@2 F G@3 H ~@3 A B C ~ D E ~@2 F G@3 H ~@39 I J K ~ L M ~@2 N O@3 P ~@41
>`.pickRestart({
  A: "~@2 a#4 ~ d5 ~ f5 ~", B: "g#5@2 ~@2 f5@2 c6@2 ~@2 a#5 ~ f5@2 ~@2", C: "g5 ~@7", D: "~@4 d#5 ~@3 g#5 ~@3 a#5 ~@3",
  E: "c6@2 ~@2 d#6@2 g#5 ~@3 a#5 ~ c6 ~@3", F: "~@4 a#5 ~@11", G: "~@2 a#5 ~@5", H: "a#5 ~@15",
  I: "~@2 b4 ~ d#5 ~ f#5 ~", J: "a5@2 ~@2 f#5@2 c#6@2 ~@2 b5 ~ f#5@2 ~@2", K: "g#5 ~@7", L: "~@4 e5 ~@3 a5 ~@3 b5 ~@3",
  M: "c#6@2 ~@2 e6@2 a5 ~@3 b5 ~ c#6 ~@3", N: "~@4 b5 ~@11", O: "~@2 b5 ~@5", P: "b5 ~@15",
})).s("gm_piccolo").gain(0.3).pan(0.6)

// chords · pizzicato strings · "PIZZICATO"
const pizzicato_strings = note("<~@18 A B C D ~@12 A B C D ~@48 E F G H ~@42>".pickRestart({
  A: "~@2 [d#4,a#4] ~@5, ~@4 g4 ~@11", B: "~@4 [d4,g#4,a#4] ~@11", C: "~@4 [g4,a#4] ~@11, ~@2 d#4 ~@5",
  D: "~@4 [d4,a#4] ~@11, ~@2 g#4 ~@5", E: "~@2 [e4,b4] ~@5, ~@4 g#4 ~@11", F: "~@4 [d#4,a4,b4] ~@11",
// … 175 more lines

More by Tom Jones