Strudelify

Dreams Of The Everyday Housewife

Glen Campbell

KeyF♯ minorTempo171 bpm
0:00/0:00
// Dreams Of The Everyday Housewife — Glen Campbell
// 171 bpm, 3/4, key F# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 157 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(171/3)

// 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 · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note(`<
  A@3 B@2 C@2 D@4 E F@6 G@2 H I J K L M@4 N@3 O@3 P@2 Q R S T U@2 V W X Y Z@2 AA AB AC@2 AD AE AF AG AH@2 AI@2 AJ AK@2
  AL@4 AM AN@6 AO@2 AP AQ AR AS AT AU@4 AV@3 AW@3 AX@2 AY AZ BA BB BC@2 BD BE BF BG BH@2 BI BJ BK@2 BL BM BN BO BP@2 BQ
  BR BS BT BU BV BS BW BX BY@4 BZ@2 CA CB CC ~ CD CE CF CG CD CH CI CJ@4 CK@2 CL CM CN CM CL CM CO@2 ~
>`.pickRestart({
  A: "[g3@5 ~ [b3,d4,f#4]@5 [g3,b3,d4]@5 [b3,d4]@4 [b3,d4,f#4]@5 [b3,d4,f#4]@2 f#4@3 ~@2 g3@5 [g3,d4,f#4]@5 ~ [b3,d4,f#4]@5, ~@5 g3@5 ~ f#4@8 ~@11 f#4@7 ~@11, ~@16 g3@11 [g3,b3,d4]@4 d4@6 ~@5 g3@5 ~, ~@32 b3@11 ~@5]/3", // Bm G Bm Gmaj7 Bm G
  B: "[d4@3 ~ [d4,f#4]@5 ~ b3 [d4,f#4]@3 [d4,f#4]@2 ~ f#4@4 [b3,d4,f#4]@6 [g3,b3,d4,f#4]@5, b3@9 [d4,f#4]@2 b3@10 ~@11, ~@11 g3@5 g3@10 ~@6, ~@16 d4@5 ~@11]/2", // D Bm Gmaj7 D
  C: "[[g3,b3,d4]@3 ~ [b3,d4]@5 [b3,d4,f#4]@2 [d4,f#4]@3 d4@2 [g3,b3,d4]@5 [g3,d4,f#4]@5 ~ [g3,d4,f#4]@5, ~@3 f#4@6 ~@5 f#4@7 ~@11, ~@4 g3@7 [g3,b3]@5 ~@5 b3@11]/2", // G Bm D G Gmaj7 G
  D: "[[g3,b3,d4]@4 ~ g3@4 ~@2 [b3,d4,f#4]@3 ~ [g3,b3] [g3,b3,d4]@5 [g3,b3,d4,f#4]@5 ~ [b3,d4]@5 [g3,b3,d4]@3 ~ [g3,b3,d4]@5 ~@2 [d4,f#4]@3 [b3,d4]@2 [b3,d4]@5 [b3,d4,f#4]@5 ~ [g3,d4,f#4]@5, f#4@3 ~ [b3,d4,f#4]@5 [b3,d4,f#4]@2 ~@3 f#4@7 ~@6 f#4@8 f#4@5 ~@2 b3@4 f#4@7 ~@11, ~@10 g3@4 d4@2 ~@10 g3@5 ~@10 [b3,d4,f#4]@2 g3@5 g3@10 b3@6]/4", // G Bm G Gmaj7 Bm G D Bm …
  E: "[b3,d4,f#4]@3 ~ [b3,d4]@5 ~@2 [d4,f#4]@4 ~, ~@3 f#4@5 ~ [d4,f#4]@2 ~@5, ~@10 b3@5 ~", // Bm D
  F: "[~@5 [e3,g3,c4,e4]@5 ~ c4@5 c4@3 ~@6 [c4,e4]@2 e4@3 ~@2 e3@5 [g3,c4,e4]@5 ~ e4@4 ~ [c4,f#4]@5 [e3,c4,f#4]@5 ~ f#4@4 ~ e3@3 ~ e4@5 ~@5 c4@2 [e3,g3,c4]@5 [e3,g3,c4,e4]@5 ~ [c4,e4]@4 ~, c3@15 ~ c3@15 ~ c3@15 ~@17 c3@15 ~ c3@10 [c3,e3,g3]@4 ~@2, ~@11 [e3,g3,e4]@8 [c4,e4]@5 ~@6 e4@7 ~@31 c4@7 e3@5 ~@16, ~@20 e3@12 ~@5 e3@10 e3@6 ~@5 e3@6 ~@3 e3@6 e4@5 e4@7 ~@11, ~@20 g3@7 [g3,c4]@10 ~@5 [g3,c4]@5 ~ g3@10 [g3,c4]@9 g3@12 ~@17]/6", // C Cdim F#m7b5 C Em C C5
  G: "[~@4 g4@6 ~@10 [d4,g4]@4 ~@3 [d4,g4]@3 [d4,g4]@2, ~@3 d3@13 d3@9 [b3,d4]@2 ~@5, ~@3 [g3,b3,d4]@7 g3@9 g3@7 [d3,g3,b3]@5 ~, ~@11 [b3,d4,g4]@8 b3@5 g4@2 ~@6]/2", // G5 Bm G
  H: "c4@5 [c4,e4,g4]@5 [g3,c4,e4]@4 ~@2, g3@5 ~@3", // C
  I: "d#4@3 [b3,d#4,f#4]@6 ~@2 [d#4,f#4]@3 [d#4,f#4] ~, ~@3 f#3@12 ~, ~@9 f#4@2 ~@5, ~@5 b3@2 ~", // B D#m
  J: "[c4,e4]@5 [c4,e4,g4]@5 ~ [e4,g4]@4 ~, ~@5 c4@2 ~", // C Em
  K: "~@3 [b3,d#4,f#4]@5 ~ [b3,d#4] ~ f#4@3 [d#4,f#4]@2, ~@3 f#3@12 ~, ~@8 f#4@2 [b3,d#4]@5 ~", // B D#m B
  L: "[f#3,b3,d#4,f#4]@5 [b3,d#4,f#4]@5 ~ f#4@5, ~@5 f#3@11, ~@10 [b3,d#4]@5 ~", // B
  M: "[g3@5 ~ f#4@5 [b3,d4]@5 d4@4 [b3,d4,f#4]@5 ~@2 [d4,f#4]@3 ~@2 [g3,b3]@5 [b3,d4,f#4]@5 ~ [d4,f#4]@5 [d4,f#4]@4 [d4,f#4]@5 ~@2 f#4@3 f#4@2, ~@5 g3@21 g3@4 [d4,f#4]@7 ~@5 b3@5 ~ b3@9 [b3,d4,f#4]@2 d4@5, ~@5 [b3,d4]@5 ~ f#4@9 ~@5 [b3,d4,f#4]@2 b3@5 ~@5 g3@21 [g3,b3]@5 ~]/4", // Bm D G Bm D Bm G
  N: "[c3@5 [c3,e3,g3,c4,e4]@5 ~ [g3,c4,e4]@8 ~ [e3,g3]@5 e3 ~ [c4,e4]@3 ~@2 e3@5 [e3,g3,c4]@5 ~ c4@5, ~@10 c3@21 ~ c3@15 ~, ~@10 e3@9 [c4,e4]@5 ~ g3@12 ~@11, ~@25 [c4,e4]@2 ~@3 [c4,e4]@7 e4@9 ~@2, ~@26 e3@5 ~@11 [e3,g3]@5 ~]/3", // C Em C Em
  O: "[[e3,g3,c4,f#4]@5 ~ [c4,f#4]@4 ~ [g3,f#4]@5 e3@5 ~ [c4,e4]@8 [c4,e4]@2 e4@2 ~ e4@2 [c4,e4]@5 ~ [c4,e4]@4 ~, ~@5 [e3,g3]@5 e3@5 ~ c3@14 ~@2 c4@5 ~@11, ~@11 c4@10 e3@16 [c3,e3]@10 ~, ~@21 g3@11 g3@10 g3@5 ~]/3", // C Cdim Gmaj7 C Em C
  P: "[[b3,g4]@5 g4@5 ~@6 [d3,b3]@3 ~ d3@5 [b3,g4]@2 ~@3 d3 ~, g3@19 [b3,g4]@5 ~ d3@5 ~@2, d3@16 ~@4 b2@11 ~, b2@10 ~ g4@8 ~ g3@7 [g3,b3,g4]@5, ~@5 b3@10 g2@15 ~@2]/2", // Em G Em G
  Q: "~ [g3,e4]@4 [g3,c4,e4]@5 ~ g4@4 ~, c4@5 ~@5 [g3,c4,e4]@4 ~@2", // C
  R: "[b3,d#4,f#4]@3 [b3,d#4,f#4]@6 [b3,d#4,f#4] ~ f#4@3 f#4 ~, f#3@15 ~, ~@10 [b3,d#4]@5 ~", // B
  S: "[c4,e4,g4]@5 [c4,e4,g4]@5 ~ g4@5, g3, ~@10 [c4,e4]@5 ~", // C
  T: "f#4@5 ~@4 d4 ~ f#4@3 f#4@2, [a3,d4]@10 [a3,d4]@5 ~, ~@4 f#4 ~@3", // D5
  U: "[f#4@3 f#4@2 [a3,d4]@4 ~@2 [d4,f#4]@4 ~ [g3,c4,e4]@9 ~@2 e4@3 [c4,e4] ~, d3, [a3,d4]@5 f#4@3 ~ f#4@2 ~@15 g3@5 ~, ~@10 a3@4 ~@11 [c4,e4]@2 ~@5, ~@26 c4@3 ~@3]/2", // D5 D C D5 C
  V: "[d3,a3,d4,f#4]@15 ~", W: "~ [b3,g4]@8 ~@2 [b3,g4]@5, d3@15 ~, g3@9 [b3,g4]@2 ~@5, ~@5 g3@3",
  X: "[c4,g4]@9 ~@2 g4@3 g4@2, g3@5 e3@2 ~, ~@9 [e3,c4,g4]@2 [g3,c4]@5", // C5 C C5
  Y: "[g3,b3,g4]@5 [g3,b3,g4]@4 ~@2 [b3,g4]@3 ~ c4, d3@9 [g3,b3,g4]@2 ~@3 [b3,g4]@2, ~@10 [d3,g3]@5 ~", // G Em G Em G5
  Z: "[[c4,g4]@5 [c4,g4]@4 ~@2 [c4,g4]@3 ~@2 [g3,b3,g4]@9 [g3,b3,g4] [d3,g3,b3]@4 ~ c4, e3@15 d3@11 ~@6, g3@10 g3@5 ~@17, a2 ~@8 [c4,g4]@2 ~@3 g4@2 ~@10 g4@3 ~ g4@2]/2", // C5 G C5
  AA: "[c4,g4]@5 [c4,g4]@4 ~@2 [c4,g4]@3 [c4,g4]@2, e3@15 ~, g3@9 [g3,c4,g4]@2 ~@5, ~@10 g3@5 ~", // C5
  AB: "g4@8 ~ [g3,b3] [d3,g3,b3,g4]@5 ~, [d3,g3,b3]@5 ~@3, ~@4 g4 ~@3", // G
  AC: "[[a3,d4,a4]@5 ~ a4@3 ~ f#3@4 ~@2 [a3,d4]@5 [f#3,a3,d4,a4]@5 ~ [d4,a4]@5, f#3@9 a4@5 a4@2 ~@16, ~@5 a3@10 f#3@5 ~@6 [f#3,a3]@5 ~, ~@5 d4@3 ~ d4@7 ~@16]/2", // D5 D D5 F#m
  AD: "[a3,d4,a4]@5 ~ a4@3 ~@2 a4@3 a4@2, f#3@9 [d4,a4]@2 [a3,d4]@5, ~@5 [a3,d4]@5 f#3@5 ~", // D5
  AE: "[d4,a4]@3 [d4,a4]@5 ~ a3 [f#3,a3,d4,a4]@5 ~, [f#3,a3]@5 ~@3, ~@4 [d4,a4] ~@3", // D5 D F#m D5
  AF: "[c3,g3,c4]@5 [c4,e4]@9 [c4,e4]@2, e3, ~@5 [c3,g3]@11", // C5 C C5
  AG: "[e3,c4,e4]@5 [e3,c4,e4]@5 ~ [g3,c4]@5, c3@15 ~, g3@10 [e3,e4]@5 ~", // C C5 E
  AH: "[~@5 [g3,b3,f#4]@5 ~ g3@8 ~ [e3,c4]@5 [c4,e4]@2 e4@3 e4 ~, ~@5 d3@11 ~@9 e3@5 ~@2, ~@11 b3@6 ~@3 g3@7 [g3,c4]@5, ~@11 f#4@4 ~@4 e4@5 ~@8]/2", // Gmaj7 C C5
  AI: "[g3@5 ~ [b3,f#4]@5 [b3,f#4]@5 ~@4 [g3,c4]@5 [c4,e4]@2 e4@3 e4@2, ~@5 d3@10 ~@5 e3@12, ~@5 g3@5 ~ g3@8 e4@5 ~ g3@6 ~, ~@27 c4@5]/2", // B5 C5 C
  AJ: "~ g#4@4 [c#4,e4,g#4]@6 [a3,c#4,e4,g#4]@5, a3@5 ~@3, [c#4,e4]@5 ~@11", // C#m Amaj7 C#m
  AK: "[[a3,c#4,e4]@3 ~ [c#4,e4]@5 [c#4,e4,g#4]@2 [e4,g#4]@3 e4@2 [a3,c#4,e4]@5 [a3,e4,g#4]@5 ~ [a3,e4,g#4]@5, ~@3 g#4@6 ~@5 g#4@7 ~@11, ~@4 a3@7 [a3,c#4]@5 ~@5 c#4@11]/2", // A C#m E A Amaj7 A
  AL: "[[a3,c#4,e4]@4 ~ a3@4 ~@2 [c#4,e4,g#4]@3 ~ [a3,c#4] [a3,c#4,e4]@5 [a3,c#4,e4,g#4]@5 ~ [c#4,e4]@5 [a3,c#4,e4]@3 ~ [a3,c#4,e4]@5 ~@2 [e4,g#4]@3 [c#4,e4]@2 [c#4,e4]@5 [c#4,e4,g#4]@5 ~ [a3,e4,g#4]@5, g#4@3 ~ [c#4,e4,g#4]@5 [c#4,e4,g#4]@2 ~@3 g#4@7 ~@6 g#4@8 g#4@5 ~@2 c#4@4 g#4@7 ~@11, ~@10 a3@4 e4@2 ~@10 a3@5 ~@10 [c#4,e4,g#4]@2 a3@5 a3@10 c#4@6]/4", // A C#m A Amaj7 C#m A E C#m …
  AM: "[c#4,e4,g#4]@3 ~ [c#4,e4]@5 ~@2 [e4,g#4]@4 ~, ~@3 g#4@5 ~ [e4,g#4]@2 ~@5, ~@10 c#4@5 ~", // C#m E
  AN: "[~@5 [f#3,a3,d4,f#4]@5 ~ d4@5 d4@3 ~@6 [d4,f#4]@2 f#4@3 ~@2 f#3@5 [a3,d4,f#4]@5 ~ f#4@4 ~ [d4,g#4]@5 [f#3,d4,g#4]@5 ~ g#4@4 ~ f#3@3 ~ f#4@5 ~@5 d4@2 [f#3,a3,d4]@5 [f#3,a3,d4,f#4]@5 ~ [d4,f#4]@4 ~, d3@15 ~ d3@15 ~ d3@15 ~@17 d3@15 ~ d3@10 [d3,f#3,a3]@4 ~@2, ~@11 [f#3,a3,f#4]@8 [d4,f#4]@5 ~@6 f#4@7 ~@31 d4@7 f#3@5 ~@16, ~@20 f#3@12 ~@5 f#3@10 f#3@6 ~@5 f#3@6 ~@3 f#3@6 f#4@5 f#4@7 ~@11, ~@20 a3@7 [a3,d4]@10 ~@5 [a3,d4]@5 ~ a3@10 [a3,d4]@9 a3@12 ~@17]/6", // D Ddim G#m7b5 D F#m D D5
  AO: "[~@4 a4@6 ~@10 [e4,a4]@4 ~@3 [e4,a4]@3 [e4,a4]@2, ~@3 e3@13 e3@9 [c#4,e4]@2 ~@5, ~@3 [a3,c#4,e4]@7 a3@9 a3@7 [e3,a3,c#4]@5 ~, ~@11 [c#4,e4,a4]@8 c#4@5 a4@2 ~@6]/2", // A5 C#m A
  AP: "[d4,g#4]@5 [d4,f#4,g#4]@5 [a3,d4,f#4,g#4]@4 ~@2, a3@5 ~@3", // Ddim G#m7b5 D
  AQ: "f4@3 [c#4,f4,g#4]@6 ~@2 [f4,g#4]@3 [f4,g#4] f#4, ~@3 g#3@12 ~, ~@9 g#4@2 ~@5, ~@5 c#4@2 ~", // C# Fm
  AR: "[d4,f#4]@5 [d4,f#4,g#4]@5 ~ [f#4,g#4]@4 ~, ~@5 d4@2 ~", // D G#m7b5 F#sus2
  AS: "~@3 [c#4,f4,g#4]@5 ~ [c#4,f4] ~ g#4@3 [f4,g#4]@2, ~@3 g#3@12 ~, ~@8 g#4@2 [c#4,f4]@5 ~", // C# Fm C#
  AT: "[g#3,c#4,f4,g#4]@5 [c#4,f4,g#4]@5 ~ g#4@5, ~@5 g#3@11, ~@10 [c#4,f4]@5 ~", // C#
  AU: "[a3@5 ~ g#4@5 [c#4,e4]@5 e4@4 [c#4,e4,g#4]@5 ~@2 [e4,g#4]@3 ~@2 [a3,c#4]@5 [c#4,e4,g#4]@5 ~ [e4,g#4]@5 [e4,g#4]@4 [e4,g#4]@5 ~@2 g#4@3 g#4@2, ~@5 a3@21 a3@4 [e4,g#4]@7 ~@5 c#4@5 ~ c#4@9 [c#4,e4,g#4]@2 e4@5, ~@5 [c#4,e4]@5 ~ g#4@9 ~@5 [c#4,e4,g#4]@2 c#4@5 ~@5 a3@21 [a3,c#4]@5 ~]/4", // C#m E A C#m E C#m A
  AV: "[d3@5 [d3,f#3,a3,d4,f#4]@5 ~ [a3,d4,f#4]@8 ~ [f#3,a3]@5 f#3 ~ [d4,f#4]@3 ~@2 f#3@5 [f#3,a3,d4]@5 ~ d4@5, ~@10 d3@21 ~ d3@15 ~, ~@10 f#3@9 [d4,f#4]@5 ~ a3@12 ~@11, ~@25 [d4,f#4]@2 ~@3 [d4,f#4]@7 f#4@9 ~@2, ~@26 f#3@5 ~@11 [f#3,a3]@5 ~]/3", // D F#m D F#m
  AW: "[[f#3,a3,d4,g#4]@5 ~ [d4,g#4]@4 ~ [a3,g#4]@5 f#3@5 ~ [d4,f#4]@8 [d4,f#4]@2 ~ f#4@2 f#4@2 [d4,f#4]@5 ~ [d4,f#4]@4 ~, ~@5 [f#3,a3]@5 f#3@5 ~ d3@14 ~@2 d4@5 ~@11, ~@11 d4@10 f#3@16 [d3,f#3]@10 ~, ~@21 a3@11 a3@10 a3@5 ~]/3", // D Ddim Amaj7 D F#m D
  AX: "[[c#4,a4]@5 a4@5 ~@6 [e3,c#4]@3 ~ e3@5 [c#4,a4]@2 ~@3 e3 ~, a3@19 [c#4,a4]@5 ~ e3@5 ~@2, e3@16 ~@4 c#3@11 ~, c#3@10 ~ a4@8 ~ a3@7 [a3,c#4,a4]@5, ~@5 c#4@10 a2@15 ~@2]/2", // F#m C#m F#m A
  AY: "~ [a3,f#4]@4 [a3,d4,f#4]@5 ~ a4@4 ~, d4@5 ~@5 [a3,d4,f#4]@4 ~@2", // D
  AZ: "[c#4,f4,g#4]@3 [c#4,f4,g#4]@6 [c#4,f4,g#4] ~ g#4@3 g#4 ~, g#3@15 ~, ~@10 [c#4,f4]@5 ~", // C#
  BA: "[d4,f#4,g#4]@5 [d4,f#4,g#4]@5 ~ g#4@5, a3, ~@10 [d4,f#4]@5 ~", // G#m7b5 D
  BB: "g#4@5 ~@4 e4 ~ g#4@3 g#4@2, [b3,e4]@10 [b3,e4]@5 ~, ~@4 g#4 ~@3", // E5
  BC: "[g#4@3 g#4@2 [b3,e4]@4 ~@2 [e4,g#4]@4 ~ [a3,d4,f#4]@9 ~@2 f#4@3 [d4,f#4] ~, e3, [b3,e4]@5 g#4@3 ~ g#4@2 ~@15 a3@5 ~, ~@10 b3@4 ~@11 [d4,f#4]@2 ~@5, ~@26 d4@3 ~@3]/2", // E5 E D E5 D
  BD: "[e3,b3,e4,g#4]@15 ~", BE: "~ [c#4,a4]@8 ~@2 [c#4,a4]@5, e3@15 ~, a3@9 [c#4,a4]@2 ~@5, ~@5 a3@3",
  BF: "[d4,a4]@9 ~@2 a4@3 a4@2, a3@5 f#3@2 ~, ~@9 [f#3,d4,a4]@2 [a3,d4]@5", // D5 D D5
  BG: "[a3,c#4,a4]@5 [a3,c#4,a4]@4 ~@2 [c#4,a4]@3 [c#4,a4]@2, e3@9 [a3,c#4,a4]@2 ~@5, ~@10 [e3,a3]@5 ~", // A F#m A A5
  BH: "[[d4,a4]@5 [d4,a4]@4 ~@2 [d4,a4]@3 ~@2 [a3,c#4,a4]@9 [a3,c#4,a4] [e3,a3,c#4]@4 ~ d4, f#3@15 e3@11 ~@6, a3@10 a3@5 ~@17, b2 ~@8 [d4,a4]@2 ~@3 a4@2 ~@10 a4@3 ~ a4@2]/2", // D5 A D5
  BI: "[d4,a4]@5 [d4,a4]@4 ~@2 [d4,a4]@3 [d4,a4]@2, f#3@15 ~, a3@9 [a3,d4,a4]@2 ~@5, ~@10 a3@5 ~", // D5
  BJ: "a4@8 ~ [a3,c#4] [e3,a3,c#4,a4]@5 ~, [e3,a3,c#4]@5 ~@3, ~@4 a4 ~@3", // A
  BK: "[[b3,e4,b4]@5 ~ b4@3 ~ g#3@4 ~@2 [b3,e4]@5 [g#3,b3,e4,b4]@5 ~ [e4,b4]@5, g#3@9 b4@5 b4@2 ~@16, ~@5 b3@10 g#3@5 ~@6 [g#3,b3]@5 ~, ~@5 e4@3 ~ e4@7 ~@16]/2", // E5 E E5 G#m
  BL: "[b3,e4,b4]@5 ~ b4@3 ~@2 b4@3 b4@2, g#3@9 [e4,b4]@2 [b3,e4]@5, ~@5 [b3,e4]@5 g#3@5 ~", // E5
  BM: "[e4,b4]@3 [e4,b4]@5 ~ b3 [g#3,b3,e4,b4]@5 ~, [g#3,b3]@5 ~@3, ~@4 [e4,b4] ~@3", // E5 E G#m E5
  BN: "[d3,a3,d4]@5 [d4,f#4]@9 [d4,f#4]@2, f#3, ~@5 [d3,a3]@11", // D5 D D5
  BO: "[f#3,d4,f#4]@5 [f#3,d4,f#4]@5 ~ [a3,d4]@5, d3@15 ~, a3@10 [f#3,f#4]@5 ~", // D D5 F#
  BP: "[~@5 [a3,c#4,g#4]@5 ~ a3@8 ~ [f#3,d4]@5 [d4,f#4]@2 f#4@3 f#4 ~, ~@5 e3@11 ~@9 f#3@5 ~@2, ~@11 c#4@6 ~@3 a3@7 [a3,d4]@5, ~@11 g#4@4 ~@4 f#4@5 ~@8]/2", // Amaj7 D D5
  BQ: "[c#4,e4,g#4]@9 ~@2 [e4,g#4]@4 ~, a3@15 ~, ~@9 [e4,g#4]@2 ~@5, ~@5 c#4@2 ~", // C#m E
  BR: "[a#3,c#4,f#4]@10 ~ [f#3,c#4,f#4]@4 ~, [c#3,a#4]@15 ~, ~@10 a#3@5 ~", // F# F#5 F#
  BS: "~@5 [f#3,b3,d#4]@4 [d#4,f#4] [d#4,f#4]@4 [d#4,f#4]@2, b2@15 ~, ~@5 f#4@3 ~@2 [f#3,b3]@6", // B D#m B5
  BT: "~@5 [g#3,b3,e4,g#4]@4 b3 ~ [e4,g#4]@3 [e4,g#4]@2, c#3, ~@9 g#3@7, ~@9 [e4,g#4]@2 ~@5, ~@10 b3@5 ~", // E
  BU: "~@5 [d#4,f#4]@3 ~@3 f#4@3 [f#3,d#4,f#4]@2, b2@15 ~, ~@5 b3@11, ~@5 f#3@4 [d#4,f#4]@2 ~@5, ~@5 [f#3,d#4]@2 ~", // D#m
  BV: "~@5 [b3,e4,g#4]@4 ~@2 [e4,g#4]@3 [e4,g#4]@2, c#3, ~@5 g#3@11, ~@9 [e4,g#4]@2 ~@5, ~@5 b3@3", // E
  BW: "~@5 [g#3,b3,e4,g#4]@4 b3 ~ [e4,g#4]@3 [e4,g#4]@2, c#3, ~@9 g#3@7, ~@9 [e4,g#4]@2 ~@5, ~@5 b3@3", // E
  BX: "f#3@5 [b3,d#4,f#4]@3 ~ d#4 [d#4,f#4]@4 [b2,f#3,b3,d#4] ~, b2@7 ~, ~@5 f#3@9 ~@2, ~@4 f#4 ~@3, ~@9 b3@5 ~@2", // B D#m B
  BY: "[[f#2,f#3,a#3,f#4]@5 [f#3,f#4]@9 [c#4,f#4]@2 [c#4,f#4]@3 [c#4,f#4]@6 f#4 f#4@3 ~@3 [f#3,a#3,c#4,f#4]@5 a#3@5 ~ a#3@3 a#3 f#2 f#4@3 [c#4,f#4]@2 [f#3,c#4]@5 ~ [f#3,c#4,f#4]@3 [c#3,f#3,a#3,c#4,f#4]@2, c#3@16 c#3@5 ~@4 c#3@12 [c#3,f#3,c#4]@10 c#3@15 ~@2, c#4@14 f#3@16 [f#3,f#4]@2 ~@14 f#3@7 f#4@3 ~@8, ~@5 [f#2,a#3]@11 [f#2,a#3]@15 f#2@15 f#4@2 a#3@14 ~@2, ~@25 c#4@7 ~@5 f#4@8 ~ c#4@2 f#2@10 ~@6]/4", // F# F#5 F# F#5 F# F#5 F#
  BZ: "[~ e4@4 ~ [g#3,b3,e4]@8 ~ b2 [g#3,b3,e4]@5 [e3,g#3,b3,e4]@5 ~ [g#3,b3,e4]@5, e2@14 ~ e2@6 e2@11, [b2,e3,g#3,b3]@5 b2@9 [g#3,b3,e4]@2 b2@15 ~, ~@6 e3@15 ~@5 e3@5 ~]/2", // E
  CA: "b2@5 ~@2 d#4 ~ [b3,d#4,f#4]@2 [b3,d#4,f#4]@3 [b3,d#4,f#4]@2, ~@5 b2@6 ~@5, ~@5 [b3,f#4]@4 ~@7, ~@5 d#4@2 ~@9, ~@3 f#3@5", // B B5
  CB: "~@5 [g#3,b3,e4,g#4]@4 [b3,e4,g#4] ~ g#4@3 [e4,g#4]@2, c#3@5 b3@3, ~@5 e4@2 ~", // E
  CC: "b2@5 ~ f#4@5 [b2,f#3,b3,d#4,f#4]@5, ~@5 [b2,f#3,b3,d#4]@6 ~@5", // B
  CD: "~@5 [g#3,c#4,f4]@4 [f4,g#4] [f4,g#4]@4 [f4,g#4]@2, c#3@15 ~, ~@5 g#4@3 ~@2 [g#3,c#4]@6", // C# Fm C#5
  CE: "~@5 [a#3,c#4,f#4,a#4]@4 c#4 ~ [f#4,a#4]@3 [f#4,a#4]@2, d#3, ~@9 a#3@7, ~@9 [f#4,a#4]@2 ~@5, ~@10 c#4@5 ~", // F#
  CF: "~@5 [f4,g#4]@3 ~@3 g#4@3 [g#3,f4,g#4]@2, c#3@15 ~, ~@5 c#4@11, ~@5 g#3@4 [f4,g#4]@2 ~@5, ~@5 [g#3,f4]@2 ~", // Fm C# Fm C#
  CG: "~@5 [c#4,f#4,a#4]@4 ~@2 [f#4,a#4]@3 [f#4,a#4]@2, d#3, ~@5 a#3@11, ~@9 [f#4,a#4]@2 ~@5, ~@5 c#4@3", // F#
  CH: "~@5 [a#3,c#4,f#4,a#4]@4 c#4 ~ [f#4,a#4]@3 [f#4,a#4]@2, d#3, ~@9 a#3@7, ~@9 [f#4,a#4]@2 ~@5, ~@5 c#4@3", // F#
  CI: "g#3@5 [c#4,f4,g#4]@3 ~ f4 [f4,g#4]@4 ~@2, c#3@15 ~, ~@5 g#3@10 ~, ~@4 g#4 ~@3, ~@9 c#4@6 ~", // C# Fm
  CJ: "[[g#2,g#3,c4,g#4]@5 [g#3,g#4]@9 [d#4,g#4]@2 [d#4,g#4]@3 [d#4,g#4]@6 g#4 g#4@3 ~@3 [g#3,c4,d#4,g#4]@5 c4@5 ~ c4@3 c4 g#2 g#4@3 [d#4,g#4]@2 [g#3,d#4]@5 ~ [g#3,d#4,g#4]@3 [d#3,g#3,c4,d#4,g#4]@2, d#3@16 d#3@5 ~@4 d#3@12 [d#3,g#3,d#4]@10 d#3@15 ~@2, d#4@14 g#3@16 [g#3,g#4]@2 ~@14 g#3@7 g#4@3 ~@8, ~@5 [g#2,c4]@11 [g#2,c4]@15 g#2@15 g#4@2 c4@14 ~@2, ~@25 d#4@7 ~@5 g#4@8 ~ d#4@2 g#2@10 ~@6]/4", // G# G#5 G# G#5 G# G#5 G#
  CK: "[~ f#4@4 ~ [a#3,c#4,f#4]@8 ~ c#3 [a#3,c#4,f#4]@5 [f#3,a#3,c#4,f#4]@5 ~ [a#3,c#4,f#4]@5, f#2@14 ~ f#2@6 f#2@11, [c#3,f#3,a#3,c#4]@5 c#3@9 [a#3,c#4,f#4]@2 c#3@15 ~, ~@6 f#3@15 ~@5 f#3@5 ~]/2", // F#
  CL: "c#3@5 ~@2 f4 ~ [c#4,f4,g#4]@2 [c#4,f4,g#4]@3 [c#4,f4,g#4]@2, ~@5 c#3@6 ~@5, ~@5 [c#4,g#4]@4 ~@7, ~@5 f4@2 ~@9, ~@3 g#3@5", // C# C#5
  CM: "~@5 [a#3,c#4,f#4,a#4]@4 [c#4,f#4,a#4] ~ a#4@3 [a#3,f#4,a#4]@2, d#3@5 c#4@3, ~@5 f#4@2 ~", // F# D#m
  CN: "c#3@5 ~ g#4@5 [c#3,g#3,c#4,f4,g#4]@5, ~@5 [c#3,g#3,c#4,f4]@6 ~@5", CO: "[~ c#5@16 ~@15, [c#3,g#3,c#4,f4]]/2",
})).s("gm_acoustic_guitar_steel").gain(0.21).pan(0.3)

// chords · acoustic guitar steel · "STEEL GTR" · soft notes
const acoustic_guitar_steel_2 = note(`<
  A ~@2 B ~ C ~@3 D ~ E ~@6 F ~ G H I J ~@2 K ~@7 L M N O ~@2 P ~ Q@2 ~ R ~@6 S ~@2 T ~ U@3 ~ V@8 ~@2 W ~@3 X ~ Y Z AA
  AB ~@2 AC ~@7 AD AE AF AG ~@2 AH ~ AI@2 ~ AJ ~@6 AK ~@2 Y ~ AL@2 ~@2 AM ~ AM AN AM ~ Y ~ AO ~ AP ~@2 AQ AR AM ~ AS ~
  AS AT AS ~ AU ~ AV ~ AW ~@2 AX AY AS AY AX AY ~@3
>`.pickRestart({
  A: "~ b3@5 ~@10", B: "g3@11 ~@5, f#4@3 ~@13", C: "f#4 ~@3", D: "~@9 g3@2 ~@5", E: "g3@5 g3@6 g3@4 ~",
  F: "[d3,g3,b3]@3 ~@13", G: "e4@5 ~@5 g4@4 ~@2", H: "[f#3,b3,f#4]@3 ~@13", I: "g3@15 ~", J: "b3@3 ~@13", K: "b3 ~@3",
  L: "~@15 g4", M: "~@10 b2@5 ~, ~@4 g2@11 ~", N: "b2 ~@3", O: "g4@5 g4@5 ~@6", P: "~@5 f#4@3 ~@8",
  Q: "[~@15 d4 ~@16, ~@13 a2@17 ~@2]/2", R: "~ e3@8 ~@7", S: "a4@5 ~@11", T: "e4@5 ~@11",
  U: "[~@17 c4@3 ~@12 f#4@6 ~@10, ~@14 e4@5 ~@12 b3@7 ~@10, ~@4 e3 ~@7]/3",
  V: "[~@16 g#4@4 ~@69 a3@2 ~@21 a3@5 a3@6 a3@4 ~, a2@63 ~]/8", W: "~@15 g#4", X: "[e3,a3,c#4]@3 ~@13", Y: "f#4@5 ~@11",
  Z: "[g#3,c#4,g#4]@3 ~@13", AA: "a3@15 ~", AB: "c#4@3 ~@13", AC: "c#4 ~@3", AD: "~@15 a4",
  AE: "~@10 c#3@5 ~, ~@4 a2@11 ~", AF: "c#3 ~@3", AG: "a4@5 a4@5 ~@6", AH: "~@5 g#4@3 ~@8",
  AI: "[~@15 e4 ~@16, ~@13 b2@17 ~@2]/2", AJ: "~ f#3@8 ~@7", AK: "b4@5 ~@11",
  AL: "[~@17 d4@3 ~@12, ~@14 f#4@5 ~@13, ~@4 f#3 ~@3]/2", AM: "f#3@5 ~@11", AN: "~ g#3@4 ~@4 b3@2 ~@5",
  AO: "~@5 c#3@4 ~@7", AP: "~@5 f#2@2 ~, ~@9 f#4@2 ~@5", AQ: "~@11 b2@5", AR: "~@11 c#3@4 ~, ~@4 g#3@3 ~",
  AS: "g#3@5 ~@11", AT: "~ a#3@4 ~@4 c#4@2 ~@5", AU: "g#4@5 ~@11", AV: "~@5 d#3@4 ~@7",
  AW: "~@5 g#2@2 ~, ~@9 g#4@2 ~@5", AX: "~@11 c#3@5", AY: "~@11 d#3@4 ~, ~@4 a#3@3 ~",
})).s("gm_acoustic_guitar_steel").gain(0.12).pan(0.3)

// bass · acoustic bass · "ACOU BASS"
const bass = note(`<
  A B C A C A C A C A C A D E D E F G H I J K L M@2 N O B P L E L Q R G S T J K L U V S W N X Y Z N AA K AB AC U AD R AE
  AF AA AG AH X AI X AJ AK AL AM AH H AN AO AP H AN AQ AR AS AT AS AU AV AM AL AW AX S AY AB AZ H U BA BB AS BC AS BD@3
  BE BF BG BH BI AI K BJ BK AQ BK BL AN BM X BN X BO BP BQ BR AT K BJ BS BT@3 BU BK BV BG BW BX BY AT BZ CA CB BC CC CD
  CE@3 CF BT CG BW CH CI CJ AT CK CL@2 ~
>`.pickRestart({
  A: "g2@7 d2", B: "g2@7 ~", C: "g2@15 ~", D: "c2@13 ~@3", E: "c2@13 ~ g2@2", F: "c2@3 ~", G: "c2@7 g2", H: "d2@7 ~",
  I: "d2@3 ~", J: "c2", K: "b1", L: "c2@15 ~", M: "b1@7 f#2", N: "g2", O: "g1@7 d2", P: "g2@5 d2@5 g1@4 g2@2",
  Q: "c2@4 ~ c2@4 ~@2 c2@4 ~", R: "c2@7 ~", S: "d2@13 ~@3", T: "d2@11 b1@5", U: "d2@15 ~", V: "d2@7 a2",
  W: "d2@5 e2@5 f#2@5 ~", X: "a2", Y: "b2@11 ~@3 b2@2", Z: "a2@6 ~ a2", AA: "a1@6 ~ a1", AB: "d2@12 ~@2 d2 ~",
  AC: "d2@9 ~@2 d2@4 ~", AD: "d2@9 ~@2 d2@5", AE: "c2@5 d2@5 ~ e2@5", AF: "g1@6 ~ g1", AG: "g1@3 ~",
  AH: "a1@11 ~@3 a1@2", AI: "a1", AJ: "a1@11 e2@5", AK: "a1@3 ~", AL: "a1@7 e2", AM: "a1@7 ~", AN: "d2@7 a1",
  AO: "d2@6 ~ a1", AP: "d2@4 ~ d2@4 ~@2 d2@3 a1@2", AQ: "e2@15 ~", AR: "e2@6 ~ e2", AS: "d2", AT: "c#2@6 ~ c#2",
  AU: "c#2@12 ~@2 c#2 ~", AV: "c#2@5 g#2@5 ~ c#2@3 g#2 ~", AW: "a2@3 ~", AX: "a2@5 e2@5 ~ a1@3 b1@2",
  AY: "d2@11 a2@3 a1@2", AZ: "d2@4 ~ d2@5 ~ a1@5", BA: "e2@7 ~", BB: "a1@9 b1@2 c#2@5", BC: "c#2@15 ~",
  BD: "e2@12 ~@2 e2 ~", BE: "e2@5 f#2@5 ~ g#2@5", BF: "a2@15 ~", BG: "b2@6 ~ b2", BH: "c#3", BI: "b2@10 ~@3 b2@3",
  BJ: "c#2", BK: "e2@7 b1", BL: "e2@9 b1@2 e2@5", BM: "d2@5 ~@3", BN: "b2", BO: "f#2@15 ~", BP: "b1@7 f#1",
  BQ: "c#2@13 ~ g#1@2", BR: "d#2@7 d#2", BS: "d#2@7 f#1", BT: "f#2@7 c#2", BU: "f#2@9 c#2@2 f#2@4 ~",
  BV: "e2@5 f#2@3 ~ g#2@2 a#2@3 ~@2", BW: "c#3@6 ~ c#3", BX: "b2@15 ~", BY: "g#2@3 ~", BZ: "d#2@11 ~@3 d#2@2",
  CA: "f2@6 ~ f2", CB: "d#2@10 ~ f2@3 d#2@2", CC: "d#2@15 ~", CD: "f2@11 ~@5", CE: "g#2@7 d#2",
  CF: "g#2@9 d#2@2 g#2@4 ~", CG: "f#2@5 g#2@3 ~ a#2@2 c3@3 ~@2", CH: "d#3@6 ~ d#3", CI: "c#3@15 ~", CJ: "d#2@3 ~",
  CK: "d#2@6 ~ d#2", CL: "[c#2@3 ~]/2",
})).s("gm_acoustic_bass").gain(0.37)

// chords · vibraphone
const vibraphone = note("<~@8 A@4 B C D@2 E@2 F@2 G H@2 I J K L M N B O P Q R@2 S@2 T H@2 U@2 ~@115>".pickRestart({
  A: "[[d4,f#4]@28 ~@4 d4@14 ~ [g3,b3]@16 ~, ~@31 b3@14 ~@19]/4", B: "[c4,e4]@15 ~", C: "e4@13 ~@3, c4@11 ~@5",
  D: "[[e4,g4]@13 ~@2 [e4,f#4]@14 ~@3, ~@15 c4@16 ~]/2", E: "[[e4,g4]@29 ~@3]/2", F: "[[b3,d4]@15 ~]/2",
  G: "~@5 [e4,g4]@11", H: "[[d#4,f#4]@15 ~ e4@16, ~@15 c4@16 ~]/2", I: "[d#4,f#4]@11 ~@2 [d#4,f#4]@2 ~",
  J: "[d#4,f#4]@11 ~@5", K: "[d4,f#4]@7 ~", L: "[d4,f#4]@3 ~", M: "[b3,d4]@7 ~", N: "[g3,b3]@7 ~", O: "[c4,e4]@13 ~@3",
  P: "e4@15 ~, g4@13 ~@3", Q: "[c4,e4,f#4]@15 ~", R: "[[e4,g4]@31 ~]/2", S: "[[b3,d4]@29 ~@3]/2", T: "[e4,g4]@15 ~",
  U: "[~ f#3@13 ~@2, [a3,d4]@7 ~]/2", // D5
})).s("gm_vibraphone").gain(0.33)

// other · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
  ~@47 A B C D@3 ~@8 E@2 F G H@2 ~@22 I J@4 ~@6 K L M N@2 O@5 ~@7 P Q@3 R S T U V ~@8 W X Y@3 Z AA AB AC@2 ~@13
>`.pickRestart({
  A: "~@11 [e4,f4] [g4,a4] [b4,c5] [d5,e5] [f5,g5]", B: "b5@5 c6@5 d6@6, a5 ~@15", C: "c6@5 b5@5 a5@6",
  D: "[b5@5 a5@6 g5@4 a5@32 ~]/3", E: "[g#5@15 f#5]/2", F: "g#5@13 ~ f#5@2",
  G: "g#5@3 ~@2 b5@4 ~ g#5@4 f#5@2, ~@4 a5@2 ~@3 a5@2 ~@5", H: "[g#5@19 ~@13]/2", I: "g#5", J: "[f#5@31 e5@30 ~@3]/4",
  K: "~@11 a4 c5 [d5,e5] [f5,g5] [a5,b5]", L: "c#6@9 e5@2 a5@3 c#6@2, c6 ~@15", M: "d6@15 ~",
  N: "[e6@8 g#6@2 e6@3 ~ c#6@3 d6@10 ~@2 [b4,c5] [d5,e5] [f5,g5]]/2", // Cmaj7 Dsus2 Fsus2
  O: "[[a5,b5] ~@4 d6@5 e6@5 d6@5 c#6@6 ~@5 c#6@6 b5@5 a5@5 b5@22 ~@11, c#6@7 ~@19 b5@7 ~@47]/5", P: "~@10 b4 ~@5",
  Q: "[d#6@15 e6@17 f#6@16, d6 ~@47]/3", R: "e6@8 f#6@2 ~ e6@5", S: "d#6", T: "e6", U: "d#6@5 c#6@5 b5@6", V: "c#6",
  W: "~@3 f#4 ~ a#4 c5 ~@3 g#5 a#5 c6 c#6 d#6 e6, ~@7 [c#5,d#5]@2 f#5@2 ~@5, ~@4 f5 ~@3", X: "f6",
  Y: "[~@15 g#6@16 f#6@16 ~, f#6@17 ~@31]/3", Z: "f6@3 f#6@2 g#6@2 ~", AA: "f#6@5 f6@5 c#6@6", AB: "f6@5 d#6@5 c#6@6",
  AC: "[d#6@31 ~]/2",
})).s("gm_string_ensemble_1").gain(0.24).pan(0.4)

// other · string ensemble 1 · "STRINGS" · soft notes · Csus2 Fmaj7 Asus2
const string_ensemble_1_soft = note(`<
  ~@100
  [~@12 b4 ~@3]
  ~@16
  [~@11 [c5,d5] [e5,f5] g5 [a5,b5] c6]
  ~@16
  [~@2 g#4 ~@5]
  ~@22
>`).s("gm_string_ensemble_1").gain(0.14).pan(0.4)

// chords · string ensemble 2 · "SLOWSTRING"
const string_ensemble_2 = note(`<
  ~@25 A@8 B@2 C@5 D@2 E F G H I J K L M@3 ~@4 N O@2 P Q@5 ~@11 R@3 S@2 T@4 U@2 V@2 ~@4 N W@2 X@2 Y@2 Z AA AB@2 AC@5 ~@4
  AD AE@3 ~@9 D@2 AF@3 AG AH ~@10 AI@2 AJ@3 AK AL AK AL AK AM ~@2
>`.pickRestart({
  A: "[~@32 d4@32 e4@47 f#4@17, f#4@65 ~@63]/8", B: "[c4,e4]/2", C: "[d4@31 e4@16 d#4@16 e4@17]/5", D: "f#4/2", E: "e4",
  F: "f#4", G: "b4", H: "c5", I: "d5", J: "c5@15 ~", K: "b4@5 c5@5 d5@6, a4 ~@15", L: "c5@5 b4@5 a4@6",
  M: "[b4@5 a4@6 g4@4 a4@32 ~]/3", N: "[d4,f#4]",
// … 101 more lines

More by Glen Campbell