Strudelify

Love Me Tonight

Tom Jones

KeyG majorTempo210 bpm
0:00/0:00
// Love Me Tonight — Tom Jones
// 210 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 165 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(210/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.

// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
  A B C D E F G H A B C D E F G H A B I@4 J K L M J N L O I@2 P Q B R S T U V W X Y B Z@2 Y AA AB AC AD AE AF AG AH AI
  AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG A B C D E F G H I@4 J K L M J N L O I@2 P Q B
  R S T U V W X Y B Z@2 Y AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE
  BF BG A B C D E F G H A B C D E BH BI
>`.pickRestart({
  A: "g2@4 ~@2 g2 ~ d2@7 ~", B: "g2@4 ~@2 g2@2 d2@7 ~", C: "f2@5 ~ f2@2 c2@8", D: "f2@5 ~ f2 ~ c2@8",
  E: "d#2@4 ~@2 d#2 ~ a#1@7 ~", F: "d#2@2 ~ d#2 a#1@4", G: "a1@5 ~ a1 ~ a1@7 ~", H: "d2@5 ~ d2 ~ d2@4 f#2@3 ~",
  I: "g2@2 ~ g2 d2@4", J: "a2@4 ~@2 a2@2 d2@7 ~", K: "a2@5 ~ a2@2 d2@8", L: "a2@2 ~ a2 d2@4",
  M: "a2@4 ~@2 a2@2 d2@4 d2@3 ~", N: "a2@5 ~ a2 ~ d2@8", O: "a2@2 ~ a2 d2@2 f#2@2", P: "g2@5 ~ g2@2 d2@8",
  Q: "g2@5 ~ g2 ~ d2@4 d3@4", R: "g2@2 ~ g2 d2@2 g2@2", S: "c2@4 ~@2 c2@2 g2@7 ~", T: "c2@2 ~ c2 g2@2 c3@2",
  U: "f2@4 ~@2 f2@2 c2@7 ~", V: "f2@4 ~@2 f2@2 c2@3 ~ f2@4", W: "a#2@4 ~@2 a#2@2 f2@4 a#2@3 ~",
  X: "a2@3 ~@3 a2@2 d2@4 f#2@3 ~", Y: "g2@2 ~ g2 d2@3 ~", Z: "a2@2 ~ a2 d2@3 ~", AA: "g2@4 ~@2 g2@2 d2@3 ~ f#2@2 ~@2",
  AB: "g2@4 ~@2 g2@2 d2@3 ~ d3@2 ~@2", AC: "g2@3 ~@13", AD: "g2@4 ~@2 g2 ~ d2@5 ~ d2 ~",
  AE: "g2@4 ~@2 g2 ~ d2@2 ~@2 d2@3 ~", AF: "g2@4 ~@2 g2 ~ d2@4 ~@2 d2@2", AG: "g2@4 ~@2 g2@2 d2@2 ~@2 d2@3 ~",
  AH: "a2@4 ~@2 a2 ~ d2@4 ~@2 d2@2", AI: "a2@2 ~ a2 d2 ~ d2@2", AJ: "a2@5 ~ a2 ~ d2@4 ~@2 d2@2",
  AK: "a2@5 ~ a2@2 d2@2 ~@2 d2@4", AL: "a2@4 ~@2 a2 ~ e2@4 ~@2 e2@2", AM: "a2@5 ~ a2 ~ e3@3 ~ e2@3 ~",
  AN: "a2@2 ~ a2 e2@2 ~ e2", AO: "a2@4 ~@2 a2@2 d3@3 ~ d2@4", AP: "g2@2 ~ g2 d2@2 ~ d2",
  AQ: "g2@4 ~@2 g2 ~ d2@3 ~ d2@4", AR: "g2@5 ~ g2 ~ d2@4 ~@2 d2@2", AS: "g2@5 ~ g2@2 d2@3 ~ d2@3 ~",
  AT: "g2@4 ~@2 g2 ~ g2@6 ~@2", AU: "g2@4 ~@2 g2 ~ g2@7 ~", AV: "c2@5 ~ c2 ~ c2@6 ~@2",
  AW: "c2@4 ~@2 c2 ~ c2@2 ~@2 c2@3 ~", AX: "f2@5 ~ f2 ~ f2@6 ~@2", AY: "f2@4 ~@2 f2 ~ f2@6 ~@2",
  AZ: "a#1@5 ~ a#1 ~ a#1@5 ~@3", BA: "a1@4 ~@2 a1 ~ d2@3 ~ d2@3 ~", BB: "g2@5 ~ g2 ~ g2@6 ~@2",
  BC: "g2@4 ~@2 g2 ~ g2@3 ~ g2@4", BD: "d2@4 ~@2 d2 ~ d2@5 ~@3", BE: "d2@4 ~@2 d2 ~ d2@3 ~ d2@4",
  BF: "g2@5 ~ g2 ~ d2@3 ~ d2@4", BG: "g2@4 ~@2 g2@2 d2@3 ~ f#2@4", BH: "d#2@4 ~@2 d#2@2 d2@3 ~ d2@3 ~", BI: "g2 ~@7",
})).s("gm_electric_bass_finger").gain(0.44)

// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
  A B C D E F G H A B C D E F G H A B I J K J L M L M L M L M K N O J P Q R S T U V W K J L M P X P Y P X P X L M L M Z
  AA AB AC P AD AE X P Q R S T U V W K J L M K J AF B C D E F G H K J K J L M L M L M L M K N AG AH P Q R S T U AI AJ K
  J L M P X P Y P X P X L M L M Z AA AB AC P AD AK AL P Q R S T U AI AJ K J L M K J AF B C D E F G H A B C D E AM AN
>`.pickRestart({
  A: "[g3,d4,g4,a#4,d5]@2 [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5]@2 [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5]@2", // Gm
  B: "[g4,a#4,d5] ~ [g3,d4,g4,a#4,d5]@2 [g3,d4,g4,a#4,d5]@2 [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~", // Gm
  C: "[f3,c4,f4,a4,c5]@2 [f3,c4,f4,a4] ~ [f3,c4,f4,a4,c5] ~ [c4,f4,a4,c5]@2 [f3,c4,f4,a4] ~ [f3,c4,f4,a4,c5] ~ [f3,c4,f4,a4,c5] ~ [c4,f4,a4,c5]@2", // F
  D: "[f4,a4,c5] ~ [f3,c4,f4,a4,c5]@2 [f3,c4,f4,a4,c5]@2 [f3,c4,f4,a4] ~ [f3,c4,f4,a4,c5] ~ [f3,c4,f4,a4]@2 [f3,c4,f4,a4,c5] ~ [f3,c4,f4,a4,c5] ~", // F
  E: "[d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4] ~ [a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4] ~ [a#3,d#4,g4,a#4]@2", // D#
  F: "[d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4] ~", // D#
  G: "[e3,a3,e4,g4,a4]@2 [e3,a3,e4,g4,a4] ~ [e3,a3,e4,g4,a4] ~ [a3,e4,g4,a4]@2 [e3,a3,e4,g4,a4] ~ [e3,a3,e4,g4,a4] ~ [e3,a3,e4,g4,a4] ~ [a3,e4,f#4,a4]@2", // A7 F#m7
  H: "[e4,f#4,a4] ~ [d3,a3,d4,f#4,a4]@2 [d3,a3,d4,f#4,a4]@2 [d3,a3,d4,f#4,a4] ~ [d3,a3,d4,f#4,a4] ~ [d3,a3,d4,f#4,a4]@2 [d3,a3,d4,f#4,a4] ~ [d3,a3,d4,f#4,a4] ~", // F#m7 D
  I: "[f3,g3,c4,d4,f4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~", // Gm7 Gm
  J: "[g4,a#4,d5] ~ [g3,d4,g4,a#4,d5]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~", // Gm
  K: "[g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~", // Gm
  L: "[a3,d4,f#4,a4,d5] ~ [a3,d4,f#4,a4] ~ [a3,d4,f#4,a4,d5] ~ [d4,f#4,a4,d5] ~ [a3,d4,f#4,a4] ~ [a3,d4,f#4,a4,d5] ~ [a3,d4,f#4,a4,d5] ~ [d4,f#4,a4,d5] ~", // D
  M: "[f#4,a4,d5] ~ [a3,d4,f#4,a4,d5]@2 [a3,d4,f#4,a4,d5] ~ [a3,d4,f#4,a4] ~ [a3,d4,f#4,a4,d5] ~ [a3,d4,f#4,a4]@2 [a3,d4,f#4,a4,d5] ~ [a3,d4,f#4,a4,d5] ~", // D
  N: "[g4,a#4,d5] ~ [g3,d4,g4,a#4,d5]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] g3", // Gm
  O: "[d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] g3 [d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~", // Gm
  P: "[g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~", // G
  Q: "[g4,b4,d5] ~ [g3,d4,g4,b4,d5]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4,d5] c4", // G
  R: "[d#4,g4,c5,d#5] ~ [c4,d#4,g4,c5] ~ [c4,d#4,g4,c5,d#5] d#5 [d#4,g4,c5] ~ [c4,d#4,g4,c5] d#5 [c4,d#4,g4,c5] c4 [d#4,g4,c5,d#5] d#5 [d#4,g4,c5] ~", // Cm
  S: "[g4,c5,d#5] ~ [c4,d#4,g4,c5]@2 [c4,d#4,g4,c5,d#5] ~ [c4,d#4,g4,c5] ~ [c4,d#4,g4,c5,d#5] ~ [c4,d#4,g4,c5]@2 [c4,d#4,g4,c5,d#5] d#5 [c4,d#4,g4,c5] ~, ~ d#5@2 ~@13", // Cm
  T: "[c4,d#4,f4,a4,c5] ~ [c4,d#4,f4,a4] ~ [c4,d#4,f4,a4,c5] ~ [d#4,f4,a4,c5] ~ [c4,d#4,f4,a4] ~ [c4,d#4,f4,a4,c5] ~ [c4,d#4,f4,a4,c5] ~ [d#4,f4,a4,c5] ~", // F7
  U: "[f4,a4,c5] ~ [c4,d#4,f4,a4,c5]@2 [c4,d#4,f4,a4,c5] ~ [c4,d#4,f4,a4] ~ [c4,d#4,f4,a4,c5] ~ [c4,d#4,f4,a4]@2 [c4,d#4,f4,a4,c5] ~ [c4,d#4,f4,a4,c5] ~", // F F7
  V: "[a#3,d4,f4,a#4,d5] ~ [a#3,d4,f4,a#4] ~ [a#3,d4,f4,a#4,d5] ~ [d4,f4,a#4,d5] ~ [a#3,d4,f4,a#4] ~ [a#3,d4,f4,a#4,d5] ~ [a#3,d4,f4,a#4,d5] ~ [d4,f#4,a4,d5] ~", // A# D
  W: "[f#4,a4,d5] ~ [c4,d4,f#4,a4,d5]@2 [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4] ~ [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4]@2 [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4,d5] ~", // D D7
  X: "[g4,b4,d5] ~ [g3,d4,g4,b4,d5]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4,d5] ~", // G
  Y: "[g3,d4,g4,b4,d5] ~@15", // G
  Z: "[a3,e4,a4,c5,e5] ~ [a3,e4,a4,c5] ~ [a3,e4,a4,c5,e5] ~ [e4,a4,c5,e5] ~ [a3,e4,a4,c5] ~ [a3,e4,a4,c5,e5] ~ [a3,e4,a4,c5,e5] ~ [e4,a4,c5,e5] ~", // Am
  AA: "[g#4,c5,e5] ~ [a3,e4,g#4,c5,e5]@2 [a3,e4,g#4,c5,e5] ~ [a3,e4,g#4,c5] ~ [a3,e4,g#4,c5,e5] ~ [a3,e4,g#4,c5]@2 [a3,e4,g#4,c5,e5] ~ [a3,e4,g#4,c5,e5] ~", // G#aug Am
  AB: "[a3,e4,g4,c5,e5] ~ [a3,e4,g4,c5] ~ [a3,e4,g4,c5,e5] ~ [e4,g4,c5,e5] ~ [a3,e4,g4,c5] ~ [a3,e4,g4,c5,e5] ~ [a3,e4,g4,c5,e5] ~ [e4,g4,c5,e5] ~", // Am7 C Am7 C
  AC: "[f#4,c5,e5] ~ [a3,e4,f#4,c5,e5]@2 [a3,e4,f#4,c5,e5] ~ [a3,e4,f#4,c5] ~ [a3,e4,f#4,c5,e5] ~ [a3,e4,f#4,c5]@2 [a3,e4,f#4,c5,e5] ~ [a3,e4,f#4,a4,d5] ~", // F#m7b5 D
  AD: "[g4,b4,d5] ~ [g3,d4,g4,b4,d5]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4,d5] g3", // G
  AE: "[d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] g3 [d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~", // G
  AF: "[g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5]@2 [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5]@2", // Gm
  AG: "[d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] d5 [g3,d4,g4,a#4] g3 [d4,g4,a#4,d5] ~ [d4,g4,a#4,d5] ~", // Gm
  AH: "[g4,a#4,d5] ~ [g3,d4,g4,a#4]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4] ~ [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4]@2 [g3,d4,g4,a#4,d5] ~ [g3,d4,g4,a#4,d5] ~, ~ d5@2 ~@13", // Gm
  AI: "[a#3,d4,f4,a#4,d5] ~ [a#3,d4,f4,a#4] ~ [a#3,d4,f4,a#4,d5] ~ [d4,f4,a#4,d5] ~ [a#3,d4,f4,a#4] d5 [a#3,d4,f4,a#4] ~ [a#3,d4,f4,a#4,d5] ~ [d4,f#4,a4,d5] ~", // A# D
  AJ: "[f#4,a4,d5] ~ [c4,d4,f#4,a4]@2 [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4] ~ [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4]@2 [c4,d4,f#4,a4,d5] ~ [c4,d4,f#4,a4,d5] ~, ~ d5@2 ~@13", // D D7
  AK: "[d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~ [g3,d4,g4,b4] d5 [g3,d4,g4,b4] g3 [d4,g4,b4,d5] ~ [d4,g4,b4,d5] ~", // G
  AL: "[g4,b4,d5] ~ [g3,d4,g4,b4]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4] ~ [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4]@2 [g3,d4,g4,b4,d5] ~ [g3,d4,g4,b4,d5] ~, ~ d5@2 ~@13", // G
  AM: "[d#4,g4,a#4] ~ [d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4]@2 [d#3,a#3,d#4,g4,a#4] ~ [d3,a3,d4,f#4,a4]@2 [d3,a3,d4,f#4,a4] ~ [d3,a3,d4,f#4,a4] ~ [d3,a3,d4,f#4,a4] ~", // D# D
  AN: "[d3,g3,d4,g4,a#4] ~@7", // Gm
})).s("gm_electric_guitar_clean").gain(0.06).pan(1)

// chords · electric guitar clean · "CLEAN GTR" · soft notes
const electric_guitar_clean_2 = note(`<
  A B C D E F G H A B C D E F G H A B I B I B J K J K J K J K I B L B I B M N O P Q R I B J K I B I ~ I B I B J K J K S
  T S T I B L B I B M N O P Q R I B J K I B A B C D E F G H I B I B J K J K J K J K I B L B I B M N O P Q R I B J K I B
  I ~ I B I B J K J K S T S T I B L B I B M N O P Q R I B J K I B A B C D E F G H A B C D E F ~
>`.pickRestart({
  A: "~@2 d5 ~@3 g3@2 d5 ~@5 g3@2", B: "[g3,d4] ~@5 d5 ~@3 d5@2 ~@4", C: "~@2 c5 ~@3 f3@2 c5 ~@5 f3@2",
  D: "[f3,c4] ~@5 c5 ~@3 c5@2 ~@4", E: "~@3 d#3 ~@3 d#3", F: "[d#3,a#3] ~@15", G: "~@3 e3 ~@3 d3", H: "[d3,a3] ~@15",
  I: "~@2 d5 ~@3 g3 ~ d5 ~@5 g3 ~", J: "~@2 d5 ~@3 a3 ~ d5 ~@5 a3 ~", K: "[a3,d4] ~@5 d5 ~@3 d5@2 ~@4",
  L: "~ d5 ~@4 g3 ~ d5 ~@5 g3 ~", M: "~ d#5 ~@4 c4 ~ d#5 ~@5 c4 ~", N: "[c4,d#4] ~@4 d#5 ~@3 d#5@2 ~@5",
  O: "~@2 c5 ~@3 c4 ~ c5 ~@5 c4 ~", P: "[c4,d#4] ~@5 c5 ~@3 c5@2 ~@4", Q: "~ d5 ~@4 a#3 ~ d5 ~@5 c4 ~",
  R: "[c4,d4] ~@5 d5 ~@3 d5@2 ~@4", S: "~@2 e5 ~@3 a3 ~ e5 ~@5 a3 ~", T: "[a3,e4] ~@5 e5 ~@3 e5@2 ~@4",
})).s("gm_electric_guitar_clean").gain(0.03).pan(1)

// chords · string ensemble 1 · "+ORCHESTRA"
const string_ensemble_1 = note(`<
  A@4 B@2 C D A@4 B@2 E F G ~@12 H@4 I@4 J K L@2 M N@7 ~ O P Q P R S@3 T U V W@5 X@2 Y@2 Z@2 AA AB AC@6 AD@2 AE@2 AF@2
  AG F G ~@10 AH@8 J K AI@3 N@7 ~ O P Q P R S@3 T U V W@5 X@2 Y@2 Z@2 AA AB AJ@6 AD@2 AE@2 AF@2 AK@2 AL@4 AM@2 AN
>`.pickRestart({
  A: "[~ a5@6 g6 g5 ~@3 [a5,a6]@7 ~ [g5,g6] ~@3 [a5,a6]@4 [g5,g6] ~@3 g6@7 ~ [f5,f6] ~@3 g6@7 ~ [f5,f6] ~@3 g6@4 [f5,f6] ~@3, a6@6 ~@25 g5@7 ~@5 g5@7 ~@5 g5@4 ~@5]/4", // A G A G F
  B: "[[f5,f6]@7 ~ [d#5,d#6] ~@3 f6@7 d#6 d#5 ~@2 [f5,f6]@3 ~ [d#5,d#6] ~@3 [d#5,d#6], ~@11 f5@7 ~@14]/2", // F D# F D#
  C: "~ [f5,f6] ~ [d5,d6]@13, ~ [d#5,d#6] ~@6", // F D D#
  D: "[d3,d4]@2 [d#3,d#4] ~ [a3,a4] ~ [c4,c5] ~ [a3,a4] ~ [d4,d5] ~ [a4,a5] ~ [d5,d6] ~", // D D# A C A D A D
  E: "~ [f5,f6] ~ [d5,d6]@12 ~, ~ [d#5,d#6] ~@6", F: "d6 ~ a5 ~ f#5 ~ d#5 ~ d5 ~ a4 ~ f#4 ~ d#4 ~",
  G: "d4 d#4 [d4,d#4,e4] [d4,d#4] d4 d#4 [d4,d#4] d4 d#4 [d4,d#4] d4 d#4 [d4,d#4]!2 ~ d4", // D#maj7
  H: "[~@15 d3@8 ~ g3@3 a#3@3 ~ c4@24 ~ a#3@3 a3@4 ~]/4",
  I: "[g3@8 a3@3 a#3@4 ~@25 [b4,f5,g#5]@7 ~@9 c5@4 [a#4,d5]@4, ~@15 b3@33 c4@16, ~@39 d5@8 [c5,d#5,g5]@8 ~@9]/4", // Fdim A# Cm
  J: "[c5,d#5] [d#5,g5]", K: "[a4,c5], d#5 ~",
  L: "[[a4,c5,d#5]@8 [a4,c5,f5]@7 [f4,a#4,f5]@8 ~ [f4,a#4,d5]@2 ~ [f4,a#4]@4 ~]/2", // Adim F A#5 A# A#5
  M: "[f#4,a#4,f5]@7 [f#4,a#4,d#5]@7 ~@2", // F#maj7 D#m
  N: "[g4@16 g5@5 ~@2 [c5,a5]@2 ~@2 [d5,a#5]@3 ~ [d#5,c6]@6 ~@3 [d#5,c6] ~@2 [d#5,f5,c6] ~@3 [d#5,f#5,c6]@7 ~ [d5,a#5] ~@3 [c5,a5] ~@3 [b4,d5,g5]@49, d5@3 ~@13, a#4 ~@111]/7", // F Gm Cm F7 Cdim Gm F G
  O: "[g4,b4,d5]", P: "[g4,b4,e5]", Q: "[g4,b4,f#5]", R: "[a4,c5,g5]", S: "[f#5 f#4@2, [a4,c5]@23 ~]/3",
  T: "[c5,e5,a5]", U: "[c5,e5,g#5,g#6]", V: "[c5,e5,g5]",
  W: "[[c5,e5,f#5]@15 c5 c6@7 b4 [b4,b5]@3 a#4 [a#4,a#5]@3 b4 b4@43 ~ [d6,d#6,d7,d#7]@2 [e6,e7]@2, ~@3 [d4,g4]@12 ~, ~@8 c5@7 ~ b5@24, ~@16 b6@11 ~@13]/5", // F#m7b5 B A# D#maj7 E G5
  X: "[[f6,f7]@7 ~ [f6,f7]@2 ~@2 [f6,f7]@2 ~@2 [f6,f7]@8 [d#6,d#7]@4 [d6,d7]@4, [b3,d4,f4,g4]]/2", // F D# D G7
  Y: "[c4@16 b3@8 ~@4 [c#6,c7] ~ [d6,c#7] ~, [d#4,g4]@31 ~, [d#6,d#7]@14 c6 d7, ~@3 a#3]/2", // C#maj7 Dmaj7 D#
  Z: "[[d#6,d#7]@7 ~ [d#6,d#7] ~@3 [d#6,d#7] ~@3 [d#6,d#7]@8 [d6,d7]@4 [c6,c7]@3 ~, [a3,c4,f4]]/2", // D# D C F
  AA: "[a#3,d4,f4,d6,d7]", AB: "[a3,c4,f#4,c6,c7]",
  AC: "[~@15 g4@15 ~@2 [a3,g4]@14 ~@2 [c5,c6]@4 ~@2 [a#4,a#5]@4 ~@2 a5@2 ~@2 [g4,g5]@17 ~@3 [g4,g5] ~ [a4,a5] ~ [a#4,a#5] ~ c5@2 [c#5,c#6] ~ [d5,d6] ~, ~@31 c4@14 ~@2 [a3,c4,f#4]@13 a4 ~@2 d4@31 ~@2, ~@90 c6 ~@5]/6", // A7 C A# G A A# C# D …
  AD: "[[d#5,d#6]@6 ~@2 d6@2 ~@2 [d#5,d#6]@6 ~@2 [d5,d6] ~@3 [d#5,d#6]@3 ~ [d5,d6] ~@3, ~@8 d5 ~@23]/2", // D# D D# D
  AE: "[[d5,d6]@6 ~@2 c6@2 ~@2 [d5,d6]@7 ~ c6@2 ~@2 [d5,d6]@3 ~ [c5,c6] ~@3, ~@8 c5 ~@11 c5 ~@11]/2", // D C
  AF: "[[c5,c6]@6 ~@2 [a#4,a#5] ~@3 [c5,c6]@7 ~ [a#4,a#5] ~@3 c6@2 ~@2 a#4@2 ~@2, ~@24 c5 ~@3 a#5 ~@3]/2", // C A# C A#
  AG: "[a#4,a#5]@4 [a4,a5]@11 ~", // A# A
  AH: "[~@15 d3@8 ~ g3@3 a#3@3 ~ c4@24 ~ a#3@3 a3@4 g3@5 ~ a3@4 ~@2 a#3@4 ~@25 [b4,f5,g#5]@7 ~@9 c5@4 [a#4,d5]@4, ~@79 b3@33 c4@16, ~@103 d5@8 [c5,d#5,g5]@8 ~@9]/8", // Fdim A# Cm
  AI: "[[a4,c5,d#5]@8 [a4,c5,f5]@7 [f4,a#4,f5]@8 ~ [f4,a#4,d5]@2 ~ [f4,a#4]@4 ~ [f#4,f5]@7 [f#4,a#4,d#5]@7 ~@2, ~@31 a#4@8 ~@9]/3", // Adim F A#5 A# A#5 F#maj7 D#m
  AJ: "[~@15 g4@15 ~@2 g4@14 ~@2 [c5,c6]@4 ~@2 [a#4,a#5]@4 ~@2 a5@2 ~@2 [g4,g5]@17 ~@3 [g4,g5] ~ [a4,a5] ~ [a#4,a#5] ~ c5@2 [c#5,c#6] ~ [d5,d6] ~, ~@31 [a3,c4]@14 ~@2 [a3,c4,f#4]@13 a4 ~@2 d4@31 ~@2, ~@90 c6 ~@5]/6", // C A# G A A# C# D Am …
  AK: "[[a#4,a#5] [a4,a5]@5 ~@2]/2", // A# A
  AL: "[[a5,a6]@6 ~ g6 g5 ~@3 a5@7 ~ [g5,g6] ~@3 a5@4 [g5,g6] ~@3 g6@7 ~ [f5,f6] ~@3 g6@7 ~ [f5,f6] ~@3 g6@4 [f5,f6] ~@3, ~@11 a6@7 ~@5 a6@4 ~@4 g5@7 ~@5 g5@7 ~@5 g5@4 ~@5]/4", // A G F
  AM: "[[f5,f6]@7 ~ [d#5,d#6] ~@3 f6@7 d#6 d#5 ~@2 [d5,d6]@8 ~, ~@11 f5@7 ~@14]/2", AN: "[g5,g6] ~@15",
})).s("gm_string_ensemble_1").gain(0.21).pan(0.2)

// chords · string ensemble 1 · "+ORCHESTRA" · soft notes
const string_ensemble_1_soft = note(`<
  ~@16 A B ~@32 C D E F G H@2 I J ~ G K L ~@11 M@2 ~ N@3 ~@8 A B ~@30 C D E F G H@2 I J ~ G K L ~@11 M@2 ~ N@3 ~@15
>`.pickRestart({
  A: "~@15 d#4", B: "d4 d#4 [d4,d#4] d4 d#4 ~@11", C: "d6", D: "e6@15 ~", E: "f#6", F: "e6", G: "g6",
  H: "[f#6@9 ~@7]/2", I: "~@7 g#6", J: "a6", K: "f#6@15 ~", L: "~@2 b6 a#6", M: "[[g3,d4]@15 ~]/2",
  N: "[~@15 g4 g3@30 ~@2, ~@15 a#3@31 ~@2]/3",
})).s("gm_string_ensemble_1").gain(0.1).pan(0.2)

// chords · trumpet
const trumpet = note(`<
  ~@8 A B C D A E F@2 G ~@38 H I J ~@5 K L M ~@8 N O P@2 ~@47 H I J ~@5 K L M ~@8 N O P@2 ~@10 A B C D A Q R
>`.pickRestart({
  A: "~@8 g4 ~@3 a#4 ~@3", B: "a5@4 g5 ~@3 a#4 ~@3 g4@2 ~@2", C: "~@8 a4 ~@3 c5 ~@3", D: "g5@3 ~ f5 ~@3 c5 ~@3 a4 ~@3",
  E: "f5@3 ~ d#5 ~@3 a#4 ~@3 g4 ~@3", F: "[g4 a4 ~@2 f#4@25 ~ e4 f#4, ~@3 g4@2 ~@27]/2", G: "g4 ~@15",
  H: "~@12 [a4,c5] ~ [b4,d5] ~", // Am Bm
  I: "[c5,e5]@3 ~ [a4,c5] ~ d5@2 c5 ~ d5 ~ c5 ~ d#5@2, ~@6 b4 ~ e5@2 ~ e5@2 ~ b4 ~, ~@9 f#5@2 ~@5", J: "[c5,e5]@15 ~",
  K: "~@12 [g4,b4] ~ [a4,c5] ~", // G Am
  L: "[b4,d5]@3 ~ g4@2 a4@2 [b4,d5] ~ e5@2 d5@2 [a#4,c#5] ~, ~@4 b4 ~ c5 ~@3 c5 ~ b4 ~@3", M: "[b4,d5]@7 ~",
  N: "~@12 [a#4,d5] ~@3", O: "[a#4,d5] ~@3 [a#4,d5] ~@3 [a#4,d5] ~@3 [a#4,d5] ~@3", P: "[[a#4,d5]@4 [a4,c5]@19 ~@9]/2",
  Q: "f5@3 ~ d#5 ~@3 d5@3 d5!4 [d5,d#5,e5]", R: "[f5,g5] ~@15",
})).s("gm_trumpet").gain(0.22).pan(0.3)

// chords · trumpet
const trumpet_2 = note(`<
  ~@8 A B C D A E F@2 ~@33 G@2 H I J K L K M@2 N O P@2 H Q R S@2 T U@3 V W ~@6 X@2 Y@2 Z@2 AA@2 ~@31 G@2 H I J K L K M@2
  N O P@2 H Q R S@2 T U@3 V W ~@6 X@2 Y@2 Z@2 AA@2 A B C D A AB AC
>`.pickRestart({
  A: "~@8 g4 ~@3 a#4 ~@3", B: "a5@4 g5 ~@3 a#4 ~@3 g4 ~@3", C: "~@8 a4 ~@3 c5 ~@3", D: "g5@4 f5 ~@3 c5 ~@3 a4 ~@3",
  E: "f5@3 ~ d#5 ~@3 a#4 ~@3 g4 ~@3", F: "[d#4 f4 d#4 ~ d4@16 ~@12]/2",
  G: "[~@11 d3@2 ~@2 [g2,b2,d3]@2 ~@4 [g2,b2,d3] ~ [g2,b2] ~@8, ~@11 d2 ~@11 d3@2 ~@7]/2", // G
  H: "~@11 [d2,d3] ~@3 [g2,b2,d3]", I: "~@5 [g2,b2,d3] ~ [g2,d3]@2 ~@7, ~@7 b2 ~@8", J: "~@11 [d2,d3] ~@3 [f#2,a2,d3]",
  K: "~@5 [f#2,a2,d3] ~ [f#2,a2,d3] ~@8", L: "~@11 d2 ~@3 [f#2,a2,d3]",
  M: "[~@11 d2 ~@3 [a2,c3,e3]@2 ~@4 [a2,c3,e3] ~ [a2,c3] ~@8, ~@23 e3@2 ~@7]/2", // Am
  N: "~@11 e2@2 ~@2 [a2,c3,e3], ~@11 e3 ~@4", O: "~@5 [a2,c3,e3] ~ [a2,c3,e3] ~@8",
  P: "[~@11 d2@2 ~@2 [b2,d3]@2 ~@4 [g2,b2,d3] ~ [g2,b2,d3] ~@8, ~@15 g2 ~@16]/2", Q: "~@5 [g2,b2,d3] ~ [g2,b2,d3] ~@8",
  R: "~@11 [d2,d3] ~@4", S: "b3/2", T: "c4", U: "[b3@8 a#3@7 a3@33]/3", V: "a#3", W: "a3@8 d4@7 ~",
  X: "[~@8 [g4,g5] ~@3 [g4,g5]@17 ~@3]/2", Y: "[~@8 [f4,f5] ~@3 [f4,f5]@18 ~@2, ~@8 c5@21 ~@3]/2",
  Z: "[~@24 g5@5 ~@3, ~@7 a#4@14 ~@11, ~@12 [d#4,d#5]@15 ~@5]/2", // D#
  AA: "[d#5 a5 ~ g5 d5@21 ~@7, g5 d#5 ~@14, ~ f5@2 ~ f#5@15 ~@13]/2", AB: "f5@3 ~ d#5 ~@3 d5@4 ~@2 [e5,f5] f#5",
  AC: "g5 ~@15",
})).s("gm_trumpet").gain(0.34).pan(0.4)

// chords · trumpet · soft notes
const trumpet_soft = note("<~@66 A@2 B C@3 D E ~@6 F@2 ~@2 G ~@51 A@2 B C@3 D E ~@6 F@2 ~@2 G ~@8 H ~>".pickRestart({
  A: "b2/2", B: "c3", C: "[b2@8 a#2@7 a2@33]/3", D: "a#2", E: "a2@8 d3@7 ~", F: "[~@8 d5@23 ~]/2", G: "~@7 d#4 d#5 ~@7",
  H: "~@12 d5 d#5 ~@2",
})).s("gm_trumpet").gain(0.21).pan(0.4)

// chords · string ensemble 1 · "+ORCHESTRA"
const string_ensemble_1_2 = note(`<
  ~@8 A B C D E F G H A B A B ~@53 I J K L M@2 ~ A B C D E F G H A B A B ~@51 I J K L M@2 ~ A B C D E F G H A B C D E N
  O
>`.pickRestart({
  A: "~@4 [g3,a#3,d4] ~ [g3,a#3,d4] ~ [g3,a#3,d4] ~ [g3,a#3,d4] ~ [g3,a#3,d4] ~ [g3,a#3,d4] ~", // Gm
  B: "~@2 [g3,a#3,d4] ~ [g3,a#3,d4] ~@3 [g3,a#3,d4] ~@3 [g3,a#3,d4] ~@3", // Gm
  C: "~@4 [f3,a3,c4] ~ [f3,a3,c4] ~ [f3,a3,c4] ~ [f3,a3,c4] ~ [f3,a3,c4] ~ [f3,a3,c4] ~", // F
  D: "~@2 [f3,a3,c4] ~ [f3,a3,c4] ~@3 [f3,a3,c4] ~@3 [f3,a3,c4] ~@3", // F
  E: "~@4 [d#3,g3,a#3] ~ [d#3,g3,a#3] ~ [d#3,g3,a#3] ~ [d#3,g3,a#3] ~ [d#3,g3,a#3] ~ [d#3,g3,a#3] ~", // D#
  F: "~@2 [d#3,g3,a#3] ~ [d#3,g3,a#3] ~@3 [d#3,g3,a#3] ~@3 [d#3,g3,a#3] ~@3", // D#
  G: "[d3,f#3,a3] ~ [d3,f#3,a3] ~ [d3,f#3,a3] ~ [d3,f#3,a3] ~ [d3,f#3,a3] ~ [d3,f#3,a3] ~@3 [d3,f#3,a3] ~", // D
  H: "[d3,f#3,a3] ~@3 [d3,f#3,a3] ~@3 [d3,f#3,a3] ~@7", I: "~@15 [a4,a#4,d5,a5]",
  J: "~@3 [a4,a#4,d5,a5] ~@3 [a4,a#4,d5,a5] ~@3 [a4,a#4,d5,a5] ~@3 [g4,a#4,d5,g5]", // A#maj7 Gm
  K: "~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a#4,d5,g5] ~@3 [g4,a4,c5,g5]", // Gm Am7
// … 168 more lines

More by Tom Jones