Strudelify
Tell It Like It Is cover art

1966 · Tell It Like It Is - The Par Lo Years

Tell It Like It Is

Aaron Neville

KeyE majorTempo93 bpm
0:00/0:00
// Tell It Like It Is — Aaron Neville
// 93 bpm, 6/8, key E major. Source: mcgill + midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: coarse tuning (RPN 2) transposes the affected channels
// note: Full arrangement: all 92 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(93/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.

// other · soprano sax · "Xavi Bech"
const soprano_sax = note("<~@34 A B@2 C@5 D@4 E F@4 ~@15 G H@3 I@4 J@2 K L M@5 N O P Q R@3 S ~>".pickRestart({
  A: "~@4 c5@23 b4@5, ~@3 b4@2 ~@27", B: "[c5@5 ~ a#4 ~@4 a#4@43 ~ c5@4 d5@4 ~]/2",
  C: "[~@2 d#5@2 e5@6 d5@9 ~@2 d5@4 c5@6 f5@11 d5@15 c5@5 g4@6 ~ a4@5 c5@4 ~@2 c5@80]/5",
  D: "[~@8 d4@4 ~@3 a4@4 c5@4 ~ d5@7 c5@7 a#4@5 ~ a#4@57 ~@13 c5@3 ~ d5@2 ~@2 e5@3 ~@3, ~@6 f#4@3 ~@55]/4",
  E: "~@3 f5@8 d5@16 c5@5, ~ e5 ~@14", F: "[g4@6 a4@5 c5@4 ~@2 c5@107 ~@4]/4", G: "~@5 c5@21 b4@5 ~, ~@5 b4@2 ~@25",
  H: "[c5@5 a#4@2 ~@4 a#4@60 ~@5 a#4@2 ~@4 c5@2 ~@2 d5@2 ~@2 e5@3 ~@3]/3",
  I: "[~@2 f5@8 d5@14 c5@4 ~ g4@9 f5@5 e5@3 d5@3 c5@49 ~@2 c5@5 a#4@3 a4@2 g4@3 f4@3 ~@12]/4",
  J: "[~@6 d5@3 ~@3 c5@2 ~@4 c5@2 ~ d5@2 ~ c5 ~ d5@2 c5 ~@2 c5@8 a#4@5 ~@3 a#4@11 a4@5 ~, ~@4 c5@5 ~@21 d5@2 ~@32]/2",
  K: "a#4@3 a4@2 a#4@2 ~ a#4@2 ~ [a4,a#4]@2 ~ a#4@2 a4 a#4@2 ~ a#4@2 ~@2 a4@2 ~ a4@2 a#4@2 ~, ~@7 a4@2 ~@4 a4@2 ~@4 a4@2 ~ a4@2 ~@8, ~@23 a#4@2 ~ a#4@2 ~@4", // A#maj7
  L: "~@19 c5@2 ~@2 d5@2 e5@2 ~@5",
  M: "[~@2 f5@9 ~ d5@11 c5@4 g4@8 a4@5 c5@3 ~@2 c5@73 ~@10 c5@8 ~@2 a#4 ~@6 c5@8 ~@2 d5@2 ~@3, ~@2 e5@3 ~@122 b4@2 ~@31]/5",
  N: "~ c5@5 a#4@4 ~@2 a#4@2 ~@2 a#4@8 ~@4 a4@4",
  O: "~ a#4@3 a4@2 a#4@2 a4@6 g4@2 a4@2 ~@2 a4 ~@4 g4@3 ~@2 d6 ~, ~@19 g4@5 f4@2 ~@2 f4@2 ~@2, ~@29 g4@3",
  P: "~ f4@5 ~@12 c5@3 ~@2 d5@3 ~ e5@3 ~@2", Q: "~@3 f5@5 ~ d5@12 c5@4 g4@7",
  R: "[~@2 a4@5 c5@3 ~ c5@59 ~@11 a#4@4 a4@4 g4@3 f4@4]/3",
  S: "e4@2 d4@2 c4@3 a#3@3 a3@3 g3@2 f3@2 e3@2 d3@2 ~@2 b2@3 a2@4 ~@2, ~@22 c3@3 ~@7",
})).s("gm_soprano_sax").gain(0.38).pan(0.4)

// other · tenor sax
const tenor_sax = note(`<
  ~@19 A@4 B@2 C@6 D@3 ~@2 E F G H I J K ~ L M N O P Q@2 R@4 S@8 T U V ~@2 W M X Y Z AA K ~ AB AC AD AE AF AG AH AI AJ
  AK AL AM AN AO AP ~
>`.pickRestart({
  A: "[~ a2@63 d2@58 ~@6]/4", B: "a2/2", C: "[d2@57 ~@6 g#2@2 a2@63 a#2@57 ~@7]/6", D: "[c3@10 a#2@11 a2@10 ~]/3",
  E: "b3 c4@15 d4@6 c4@4 g3@6", F: "e3@17 ~@15", G: "b3 c4@15 d4@6 c4@4 a3@6", H: "f3@19 ~@8 c4@5",
  I: "e3@24 ~@2 c4@5 ~", J: "f3@27 c4@5", K: "~ [f#3,a3]@25 ~@6", L: "b3 a3@15 d4@6 c4@4 g3@6, c4@15 ~@17",
  M: "e3@9 ~@7", N: "~ c4@15 d4@5 ~ c4@4 a3@5 ~, b3 ~@15", O: "f3@23 ~@4 c4@5", P: "e3@24 ~@3 c4@5",
  Q: "[~ f3@46 ~ f3@3 ~@3 g3@3 ~@2 g#3@3 ~@2]/2", R: "[~ a2@64 d2@56 ~@7]/4",
  S: "[a2@65 d2@54 ~@8 g#2@2 a2@63 a#2@57 ~@7]/8", T: "b2 c3@31", U: "a#2", V: "a2@29 ~@3",
  W: "~ b3 c4@15 d4@5 c4@5 g3@5", X: "b3@2 c4@14 d4@6 c4@5 a3@5", Y: "~ f3@20 ~@6 c4@5", Z: "~ e3@20 ~@6 c4@5",
  AA: "f3@21 ~@6 c4@5", AB: "~ c4@15 d4@6 c4@5 g3@5, ~ b3@3 ~@28", AC: "~ e3@20 ~@11",
  AD: "~ c4@15 d4@6 c4@5 a3@5, b3 ~@15", AE: "f3@19 ~@9 c4@4", AF: "~ e3@25 ~@2 c4@4", AG: "~ f3@24 ~@2 c4@5",
  AH: "~@2 f#3@18 ~@7 a3@5", AI: "~ c4@8 ~@7", AJ: "~ c4@16 d4@5 c4@5 ~ g3@4, b3 ~@15", AK: "~ e3@23 ~@8",
  AL: "~ c4@15 d4@6 c4@5 ~ a3@4, b3 ~@15", AM: "~ f3@18 ~@9 c4@4", AN: "~ e3@17 ~@9 c4@4 ~", AO: "f3@9 ~@5 c4@2",
  AP: "~ f#3@13 ~@18",
})).s("gm_tenor_sax").gain(0.48).pan(0.3)

// other · brass section
const brass_section = note(`<
  ~@19 A@3 ~@9 B C D ~@2 E F G H I J K ~ L M N O P Q@2 R@4 S@4 T@4 U V W ~@2 X Y Z AA AB AC AD ~ AE Y AF AG AH AI AJ ~
  AK Y AL AG AM AN AO ~
>`.pickRestart({
  A: "[e4@65 ~@31]/3", B: "~ e4@31, g4", C: "[d4,f4]", D: "[c4,e4]@31 ~", E: "~ c4@16 d4@5 c4@5 g3@5, b3 ~@15",
  F: "e3@20 ~@11 b3", G: "~ c4@15 d4@6 c4@5 a3@5", H: "f3@23 ~@4 c4@5", I: "e3@23 ~@4 c4@5", J: "f3@13 c4@3",
  K: "~ [d3,f#3]@28 ~@3", L: "c4@17 d4@5 c4@5 g3@5, b3 ~@31", M: "e3@19 ~@13", N: "b3 c4@15 d4@6 c4@5 a3@5",
  O: "f3@22 ~@5 c4@5", P: "e3@12 ~ c4@3", Q: "[~ f3@43 ~@4 f3@2 ~@4 g3@2 ~@4 g#3@2 ~@2]/2", R: "[~ e3@64 f4@57 ~@6]/4",
  S: "[~ [c4,e4]@63 f4@59 ~@5]/4", T: "[~ e4@64 f4@57 ~@6, c4@65 ~@63]/4", U: "~ g4@31, e4", V: "~ [d4,f4]@31",
  W: "~ c4@31, e4@15 ~", X: "~ b3 c4@15 d4@5 ~ c4@5 ~@4", Y: "~ e3@21 ~@10", Z: "~@2 c4@14 d4@6 c4@5 a3@5, ~ b3@2 ~@29",
  AA: "~ f3@19 ~@8 c4@4", AB: "~ e3@20 ~@6 c4@5", AC: "~ f3@20 ~@7 c4@4", AD: "~@2 d3@29 ~, ~ f#3@30 ~",
  AE: "b3@2 c4@16 d4@4 c4@5 g3@5", AF: "~@2 c4@15 d4@5 c4@5 ~ a3@4, ~ b3@2 ~@29", AG: "~ f3@10 ~@3 c4@2",
  AH: "~@2 e3@23 ~@2 c4@5", AI: "~ f3@26 ~ c4@4", AJ: "~@2 a3@15 d3@10 ~@5",
  AK: "~ c4@15 ~ d4@5 ~ c4@5 g3@4, ~ b3@2 ~@29", AL: "b3@2 c4@15 d4@6 c4@4 ~ a3@4", AM: "~ e3@11 ~@2 c4@2",
  AN: "~ f3@27 c4@4", AO: "~@2 f#3@17 ~@13",
})).s("gm_brass_section").gain(0.48).pan(0.7)

// other · brass section · soft notes
const brass_section_soft = note("<~@21 A@2 B@4 C@4 ~@20 D@4 ~@2 E@2 ~@2 F@2 ~@5 G ~@13 H ~@9>".pickRestart({
  A: "[~ f4@56 ~@7]/2", B: "[~ e4@63 f4@54 ~@10]/4", C: "[~ e4@63 ~ d4@57 ~@6, ~@64 f4@55 ~@9]/4",
  D: "[~ c4@64 ~ d4@55 ~@7]/4", E: "[~ d4@56 ~@7]/2", F: "[~ d4@59 ~@4]/2", G: "~@7 g3", H: "~ f#3@17 ~@14",
})).s("gm_brass_section").gain(0.24).pan(0.7)

// bass · acoustic bass · "MIDI BIGBAND V1.0"
const bass = note(`<
  A@4 B C B D E D F G H I J D K L M N O P Q R O P S O T U V W X Y Z AA AB AC AD AE AF AE AG AH AI AJ AD AE AK AE AL AM O
  AN AO AP AQ AN AR O AS AT V AU AV@2 AW AX AY AZ BA BB AZ BC BD BE AX AZ BF BG BH BI BJ AY@2 BK BL BM BK BN BO ~
>`.pickRestart({
  A: "[~@24 g1@7 ~, ~@31 c1@75 ~@22]/4", B: "g1", C: "c1@15 ~", D: "f1", E: "c1", F: "f#1@16 ~@11 f#1@5", G: "g1@15 ~",
  H: "g1@24 ~@3 g1@5", I: "c1@7 ~", J: "c1@27 c1 ~@4", K: "c1@25 ~@2 c1@5", L: "f1@7 ~",
  M: "f1@13 ~@3 f1@3 ~@2 g1@2 ~@4 g#1@3 ~@2", N: "a1@22 ~@5 a1@2 ~@3", O: "a1@22 ~@5 a1 ~@4", P: "d1@22 ~@5 d1 ~@4",
  Q: "d1@20 ~@7 d1@5", R: "a1@23 ~@9", S: "d1@10 ~@6 d1@15 ~", T: "a1@22 ~@5 a1@5", U: "a#1@24 ~@3 a#1 ~@4",
  V: "a#1@23 ~@4 a#1@5", W: "c1@24 ~@3 c1@5", X: "c2@24 ~@3 c2 ~@4", Y: "c2@23 ~@4 c2 ~@4", Z: "c2@27 ~@5",
  AA: "g1@21 ~@6 g1 ~@4", AB: "g1@21 ~@6 g1@2 ~@3", AC: "c1@23 ~@4 c1 ~@4", AD: "g1 c1", AE: "f1@23 ~@4 f1 ~@4",
  AF: "c1@23 ~@4 c1@2 ~@3", AG: "f#1@16 ~@11 a1@5", AH: "g1@23 ~@4 g1 ~@4", AI: "g1@23 ~@4 g1@2 ~@3",
  AJ: "c1@22 ~@5 c1 ~@4", AK: "c1@24 ~@3 c1@2 ~@3", AL: "f1@12 ~@4 f1@3 ~@3 g1@2 ~@3 g#1@3 ~@2",
  AM: "~ a1@22 ~@4 a1@2 ~@3", AN: "~ d1@22 ~@4 d1 ~@4", AO: "~ d1@20 ~@6 d1@5", AP: "~ a1@23 ~@8",
  AQ: "~ a1@22 ~@4 a1 ~@4", AR: "~ d1@10 ~@6 d1@15", AS: "~ a1@22 ~@4 a1@5", AT: "~ a#1@24 ~@2 a#1 ~@4",
  AU: "~ c1@23 ~@3 c1@5", AV: "~ c2@24 ~@2 c2 ~@4", AW: "~ c2@27 ~@4", AX: "~ g1@24 ~@2 g1 ~@4",
  AY: "~ g1@24 ~@3 g1 ~@3", AZ: "~ c1@24 ~@2 c1@2 ~@3", BA: "~ g1@16 e1@5 c2@5 g1@5", BB: "~ f1@25 ~ f1@2 ~@3",
  BC: "~ f1@24 ~@2 f1 ~@4", BD: "~ f#1@14 ~@2 d1@5 a1@5 f#1@5", BE: "~ g1@23 ~@3 g1 ~@4",
  BF: "~ g1@15 ~ e1@5 c2@5 g1@5", BG: "~ f1@23 ~@3 f1 ~@4", BH: "~ c1@24 ~@2 c1 ~@4", BI: "~ f1@31",
  BJ: "~ a0@5 ~@5 f#1@6 d1@4 ~ b0@5 f#1@4 ~, ~@11 a1@3 ~@18", BK: "~ c1@24 ~@3 c1@2 ~@2",
  BL: "~ g1@16 e1@5 c2@5 ~ g1@4", BM: "~ f1@25 ~@2 f1@2 ~@2", BN: "~ f1@24 ~@3 f1 ~@3",
  BO: "~ f#1@14 ~@2 d1@5 a1@5 ~ f#1@4",
})).s("gm_acoustic_bass").gain(0.38)

// chords · electric guitar jazz
const electric_guitar_jazz = note(`<
  ~ A@3 B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE ~ AF AG@2 AH AI@2 AJ AK AL AM@2 AN@3 AO AP AQ
  AR AS AT AU AV AW AX AY AZ BA BB BC BD BE ~ BF BG BH BI BJ@2 BK BL BM BN BO BP BQ@2 BR BS BT BU BV BW BX@2 BY BZ ~
>`.pickRestart({
  A: "[~@64 [c4,e4]@16 ~@5 [c4,a#4]@5 ~ e4@3 ~@2, g#2@25 ~@7, e3@16 a#3@5 ~@3, ~ [c2,g#3]@74 ~@21, ~@64 e3@11 ~@21]/3", // C C7 Fm
  B: "[g3,a#3]@19 ~@2 c4 ~@5 f4@2 ~@3, d4@7 ~@9", C: "e4@11 ~@10 a#4@4 ~@2 a#4 ~@4, [e3,a#3]@21 ~@11, ~ f4",
  D: "~@5 a4@5 ~ g4@3 ~@2 a#4@5 f4@4 ~@2 e4@4 ~, [d3,e3]@21 ~@11", E: "~@5 f4@2 ~@14 f4@5 ~ c4@4 ~, [f3,a3]@11 ~@5",
  F: "[a3,e4,f4]@11 ~@10 f4@5 ~ e4@3 ~@2, e3@11 ~@5, ~@11 f3@8 ~@13, ~@4 a3@3 ~", G: "[a3,c4,f4]@15 ~, f3@19 ~@13",
  H: "~@16 f#4@5 a4@5 ~ f#4@5, d3@9 ~@7, ~@5 a3@16 ~@11, ~@11 d4@13 ~@8",
  I: "~@16 [e4,a#4]@4 ~@7 [e4,a#4]@3 ~@2, a#3@21 ~@11, ~@11 c4@13 ~@8", // Edim
  J: "[d4,g4]@12 ~@9 a#4@6 a4@5, a#3@31 ~, g3@27 ~@5", K: "c4@11 e4@5 ~@5 c4@6 e4@5, a#4@21 ~@11, ~@16 a#3@11 ~@5",
  L: "g4@5 e4@5 ~ c4@5 c3@5 e3@4 ~@2 a#3@5", M: "~@11 c4@5 f4@5 c4@5 ~ a3@5, f3@13 ~@3, ~@5 a3@15 ~@12",
  N: "~@11 e4@5 f4@5 e4@5 ~ a3@4 ~, e3@21 ~@11, ~@5 f3@17 ~@10",
  O: "~@11 a4@5 f4@5 c4@6 a3@5, f3@5 ~@3, ~@5 a3@16 ~@11", P: "f3@5 a3@4 ~@2 c4@3 ~@2 f3 ~@4 g3@2 ~@4 g#3@2 ~@3",
  Q: "~ a2@2 ~@3 [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@9 [a2,a3,c4,e4]@2 ~@3, a3@5 ~@27, ~@3 a2@16 ~@13", // Am
  R: "~@5 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@9 [a2,a3,c4,e4]@2 ~@3, a2@21 ~@11", // Am
  S: "~@5 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@9 [a2,a3,d4,f4]@2 ~@3, d3@9 ~@7", // Dm
  T: "~@6 [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@4 e3@5 [a3,d4,f4]@2 ~@3, d3@10 ~@6 d3@5 ~@6 d3@5", // Dm
  U: "~@6 [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@9 [a3,c4,e4]@2 ~@3, a2 ~", // Am
  V: "~@5 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@9 [a3,c4,e4]@2 ~@3, a2@21 ~@6 a2@5", // Am
  W: "~@6 [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@9 [a2,a3,d4,f4]@2 ~@3, d3 ~", // Dm
  X: "f3@5 ~ [a3,d4,f4]@2 [e3,a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@6 e3@2 ~ [a3,d4,f4]@2 ~@3, ~@16 d3@5 ~@6 d3@5", // Dm
  Y: "~@6 [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@5 f4@5 ~ [a2,e4]@2 ~@3, a2@21 ~@11", // Am A5
  Z: "~@5 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@3 d3@5 ~ [a3,c4,e4]@2 ~@3, a2@18 ~@9 a2@5", // Am
  AA: "~@6 [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~@9 [a#2,d4,f4,a#4]@2 ~@3, a#2@3 ~", // A#
  AB: "~@6 [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~@9 [d4,f4,a#4]@2 ~@3, a#2@21 ~@6 a#2@5", // A#
  AC: "[e3,c4]@5 [g3,e4]@5 ~ [e3,c4]@5 ~@6 [c3,g3,e4]@5 [g2,e3,c4]@5, c3@9 ~@7", // C
  AD: "[d3,a#3]@5 [f3,d4]@5 ~ [d3,a#3]@5 ~@6 [f3,d4]@5 [d3,a#3]@5, a#2@21 ~ a#2@10", // Gm Dm Gm Dm Gm
  AE: "[c3,a3]@5 [e3,c4]@5 ~ a3@5 e4@5 ~ c4@5 a3@5, a2@29 ~@3, ~@11 c3@10 ~@11", // F C
  AF: "~@11 c4@5 a#4@6 e4@5 c4@5, c3@13 ~@3, ~@6 a#3@16 ~@5 a#3@2 ~@3",
  AG: "[~@16 g4@6 d5@5 d4@2 ~@9 a#3@5 ~@5 a#4@4 ~@2 e4@5 c4@5, g3@25 ~@7 c3@27 ~@5, ~@6 a#3@20 ~@17 c4@14 ~@7, ~@11 d4@15 ~ a#4@9 ~@28]/2",
  AH: "a#4@5 ~ a4@4 ~ g4@3 ~@2 d5@6 c5@5 a#4@5, g3@25 ~@2 a#3@2 ~@3, ~@16 d4@11 ~@5",
  AI: "[~@16 f4@5 ~ a4@5 c4@2 ~@9 f3@5 ~@11 a4@5 f4@5, f3@22 ~@10 e3@26 ~ f3 ~@4, ~@6 a3@21 ~@16 a3@20 ~, ~@11 c4@10 ~@6 f4@11 ~@10 e4@9 ~@7]/2",
  AJ: "~@16 a4@4 ~@2 f4@4 ~ c4@5, f3@7 ~, ~@3 a3@10 ~@3, ~@11 c4@10 ~@11",
  AK: "~@22 a4@5 [a3,f#4]@5, d3@25 ~@7, ~@6 f#3@21 ~@5, ~@11 a3@11 ~@10, ~@8 d4@5 ~@3", // D
  AL: "~@11 c4@5 a#4@5 ~ e4@4 ~ c4@5, c3@23 ~@9, ~@6 a#3@19 ~@2 a#3@3 ~@2",
  AM: "[~@16 g4@5 ~ a#4@5 d4@2 ~@19 a#4@5 ~ e4@5 c4@5, g3@13 ~@3 c3@14 ~@2, ~@6 a#3@22 ~@10 a#3@17 ~@4 a#3@3 ~@2, ~@11 d4@12 ~@4 g4@10 ~@6 c4@12 ~@9]/2",
  AN: "[c3@6 g4@5 ~@5 [a#3,a#4]@6 [d4,a4]@5 a#4@8 ~@13 a4@5 ~ g4@5 a3 ~@10 f3@5 ~@5 f4@4 ~@2 a4@5 f4@5, ~@11 g3@15 ~ a#3@2 ~@9 f3@20 ~@6 e3@25 ~@2 f3@2 ~@3, ~@43 c4@16 f4@10 ~@6 a3@19 ~@2, ~@75 e4@10 ~@11]/3", // A# D5
  AO: "~@6 f4@5 ~@5 a4@5 ~ [a3,g4]@5 f4@5, f3@23 ~@4 f3@2 ~@3, ~@6 a3@9 ~@17, ~@11 c4@17 ~@4", // A7
  AP: "[f3,f4]@9 ~@7 [f3,f4]@2 ~@4 [g3,g4]@2 ~@3 [g#3,g#4]@3 ~@2", // F G G#
  AQ: "~ a2@2 ~@3 [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@8 [a2,a3,c4,e4]@2 ~@3, ~ a3@5 ~@26, ~@3 a2@18 ~@11", // Am
  AR: "~@6 [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~@9 [a2,a3,c4,e4]@2 ~@3, a2@21 ~@11", // Am
  AS: "~@6 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~@9 [a2,a3,d4,f4]@2 ~@3, ~ d3@18 ~@13", // Dm
  AT: "~@6 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~@4 e3@5 [a3,d4,f4]@2 ~@3, ~ d3@10 ~@5 d3@5 ~@6 d3@5", // Dm
  AU: "~@6 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@8 [a3,c4,e4]@2 ~@3, ~ a2@15 ~@16", // Am
  AV: "~@6 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~@9 [a3,c4,e4]@2 ~@3, ~ a2@21 ~@5 a2@5", // Am
  AW: "~@6 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@8 [a2,a3,d4,f4]@2 ~@3, ~ d3@16 ~@15", // Dm
  AX: "~ f3@5 [a3,d4,f4]@2 ~ [e3,a3,d4,f4]@2 [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~ [a3,d4,f4]@2 ~@5 e3@2 ~ [a3,d4,f4]@2 ~@3, ~@17 d3@5 ~@5 d3@5", // Dm
  AY: "~@6 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@5 f4@5 [a2,e4]@2 ~@3, a2@21 ~@11", // Am A5
  AZ: "~@6 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~ [a3,c4,e4]@2 ~@3 d3@5 [a3,c4,e4]@2 ~@3, ~ a2@18 ~@8 a2@5", // Am
  BA: "~@6 [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~@8 [a#2,d4,f4,a#4]@2 ~@3, ~ a#2@23 ~@8", // A#
  BB: "~@6 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~ [d4,f4,a#4]@2 ~@8 [d4,f4,a#4]@2 ~@3, a#2@21 ~@6 a#2@5", // A#
  BC: "~ [e3,c4]@5 [g3,e4]@5 [e3,c4]@5 ~@6 [c3,g3,e4]@5 [g2,e3,c4]@5, ~ c3@18 ~@13", // C
  BD: "~ [d3,a#3]@5 [f3,d4]@5 [d3,a#3]@5 ~@6 [f3,d4]@5 [d3,a#3]@5, ~ a#2@21 a#2@10", // Gm Dm Gm Dm Gm
  BE: "~ [c3,a3]@5 [e3,c4]@5 a3@5 ~ e4@5 c4@5 a3@5, ~ a2@29 ~@2, ~@11 c3@10 ~@11", // F C
  BF: "~@11 [e3,a#3,c4]@2 ~ [e3,a#3,c4]@2 ~ [e3,a#3,c4]@2 ~@13", // C7
  BG: "~@11 [a#3,d4]@2 ~ [g3,a#3,d4]@2 ~ [g3,a#3,d4]@2 ~@13", // A# Gm
  BH: "~@9 a#3@2 [e3,a#3]@2 ~ [e3,a#3,c4]@2 ~ [e3,a#3,c4]@2 ~@13", // Edim C7
  BI: "~@9 d4@2 [g3,a#3,d4,g4]@2 ~ [g3,a#3,d4]@2 ~ [a#3,c4,e4]@2 ~@13", // Gm C7
  BJ: "[~@9 a3@2 [f3,a3,c4,f4]@2 ~ [f3,a3,c4,f4]@2 ~@2 a4@5 c5@4 ~ f4@9 ~@4 f3@2 ~ a3@2 [e3,f3,a3]@2 ~ [e3,f3,a3]@2 ~@3 a4@5 f4@4 ~, ~@17 [f3,a3,c4,f4,g#4]@2 ~@24 f3@2 ~@19]/2", // F Fmaj7 F
  BK: "~ c5@4 ~ a4@3 [a3,c4]@2 [f3,a3,c4]@2 ~ [a3,c4]@2 ~ [f3,a3,c4,f4]@2 ~@13, ~@11 f4@5 ~@16", // Am F Am F
  BL: "~@11 a3@2 ~ [f#3,a3,d4]@2 ~@3 [a3,d4]@2 ~@3 d4@4 ~ a4@3, ~@17 [f#3,a3,d4]@2 f#4@5 ~@8, ~@9 f4 ~@6", // D D5 D
  BM: "~@6 c4@2 ~@3 [a#3,c4,e4]@2 ~ [a#3,c4,e4]@2 ~ [a#3,c4,e4]@2 ~@13", // C7
  BN: "~@6 [d3,g3,a#3]@2 ~@3 [d3,g3]@2 ~ [d3,g3,a#3]@2 ~ [d3,g3,a#3]@2 ~@13", // Gm G5 Gm
  BO: "~@12 [c4,e4]@2 [a#3,c4,e4]@2 ~ [a#3,c4,e4]@2 ~@13", // C C7
  BP: "~@6 [g3,a#3,d4]@2 ~ [g3,a#3,d4]@2 ~ [g3,a#3,d4]@2 [g3,a#3,d4]@2 ~ [a#3,c4,e4]@2 ~@13", // Gm C7
  BQ: "[~@6 [a3,c4]@2 ~ [a3,c4]@2 [a3,c4]@2 ~ [a3,c4,f4]@2 ~@2 a4@4 c5@5 ~ f4@9 ~@4 a3@2 [f3,a3,e4]@2 ~ [f3,a3,e4]@2 ~@2 e5@4 f5@4 ~@2 a4@4, ~@17 [a3,c4,f4,g#4]@2 ~@29 b4@2 ~@14, ~@49 [f3,a3,e4]@2 ~@13]/2", // Am F Fmaj7 F Fmaj7
  BR: "~@6 [c4,f4]@2 ~ c4@2 [a3,c4]@2 ~ [a3,c4,f4]@2 ~ [a3,c4,f4]@2 a4@2 ~@6 [a3,c4,f4]@2 ~@3, ~@16 g#4@3 ~@13", // F5 Am F
  BS: "~@6 [d3,f#3]@2 ~ [d3,f#3]@2 f#3@2 ~@6 f3@2 ~ a4@5 d3@2 ~@3, ~@19 f#3@5 ~@8", // D
  BT: "~@12 [e3,a#3,c4]@2 [e3,a#3,c4]@2 ~ [e3,a#3,c4]@2 ~@13", BU: "~@12 [a#3,d4]@2 [g3,a#3,d4]@2 ~ [g3,a#3,d4]@2 ~@13",
  BV: "~@9 a#3@2 ~ [e3,a#3]@2 [e3,a#3,c4]@2 ~ [e3,a#3,c4]@2 ~@13", // Edim C7
  BW: "~@9 d4@2 ~ [g3,a#3,d4,g4]@2 [g3,a#3,d4]@2 ~ [a#3,c4,e4]@2 ~@13", // Gm C7
  BX: "[~@9 a3@2 ~ [f3,a3,c4,f4]@2 [f3,a3,c4,f4]@2 ~@2 a4@5 ~ c5@4 f4@9 ~@4 f3@2 ~ [f3,a3]@2 [e3,f3,a3]@2 ~ [e3,f3,a3]@2 ~@3 a4@5 ~ f4@4, ~@17 [f3,a3,c4,f4,g#4]@2 ~@45]/2", // F Fmaj7 F
  BY: "~ c5@5 ~@3 [a3,c4]@2 ~ [f3,a3,c4]@2 [a3,c4]@2 ~ [f3,a3,c4,f4]@2 ~@13, ~@7 a4@4 ~ f4@5 ~@15", // Am F Am F
  BZ: "~@12 a3@2 [f#3,a3,d4]@2 ~@4 [a3,d4]@2 ~@2 d4@4 ~ a4@3, ~@17 [f#3,a3,d4]@2 f#4@5 ~@8, ~@9 f4 ~@6", // D D5 D
})).s("gm_electric_guitar_jazz").gain(0.16).pan(0.3)

// chords · electric guitar jazz · soft notes
const electric_guitar_jazz_2 = note("<~@67 A B C D E F G H I J K ~ L M N O A P C D E Q G R ~>".pickRestart({
  A: "~@9 e3@2 ~@21, ~@6 c4@5 ~@21", B: "~@6 d4@2 ~ [g3,a#3]@2 g3@2 ~@19",
  C: "~@6 [a#3,c4]@2 ~ c4@5 ~@18, ~@9 e3@2 ~@21", D: "~@6 [a#3,d4]@2 ~ [g3,a#3]@2 ~@21", E: "~@9 [f3,c4,f4]@2 ~@21",
  F: "~@6 [f3,a3]@2 ~@3 e3@2 ~@19, ~@6 e3@5 ~@21", G: "~@9 [f3,f4]@2 ~@3 f3@2 ~@16",
  H: "~@11 f#3@2 ~@19, ~@9 d4@5 ~@18", I: "~@9 [c4,e4]@2 ~@21, ~@6 a#3@5 ~@21", J: "~@9 a#3@2 a#3@2 ~@19",
  K: "~@9 [c4,e4]@2 ~@21, ~@9 a#3@5 ~@18", L: "~@6 f4@2 ~@3 f4@2 ~@19", M: "~@3 a3 ~@12", N: "~@9 [a3,f4]@2 f4@2 ~@19",
  O: "~@11 d3@2 ~@19", P: "~@6 d4@2 ~ [g3,a#3]@2 ~ g3@2 ~@18", Q: "~@3 [f3,a3] ~@2 e3 ~@9, ~@6 e3@5 ~@21",
  R: "~@6 f#3 ~@9, ~@9 d4@5 ~@18",
})).s("gm_electric_guitar_jazz").gain(0.08).pan(0.3)

// chords · piano · "for GS Shynths)"
const piano = note(`<
  A@4 B C D E F G H I J K L M N O P Q R S T U@2 V@3 W X Y Z AA AB ~ AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS
  AT AU AV AW@2 AX@3 AY AZ BA BB BC BD ~ BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU BV BW BX BY BZ CA CB CC
>`.pickRestart({
  A: "[~@96 [a#4,e5]@3 ~@2 [a#4,e5]@2 ~@4 [a#4,e5]@2 ~@3 [a#4,e5]@3 ~@2 [a#4,e5]@2 ~@4 [e4,a#4,e5]@3 ~@2, ~@27 c2@69 [c3,a#3,c4]@11 ~@21, ~@14 g#2@39 ~@11, ~@15 [e3,g#3]@38 ~@11, ~@15 c3 e4@37 ~@11]/4", // A#dim Edim C7 E
  B: "[a#4,d5]@3 ~@2 [a#4,d5]@3 ~@3 [a#4,d5]@3 ~@2 [a#4,d5]@2 ~@3 [a#4,d5]@2 ~@4 [a#4,d5]@3 ~@2, d4@13 ~@3 a#3@8 ~@8, ~@5 a#3 ~@5 d3@14 ~@7, ~@21 d4@4 ~@2 f4@5", // A#
  C: "[a#4,c5]@3 ~@2 [a#4,c5]@2 ~@4 [a#4,c5]@2 ~@3 [c4,f5]@2 ~@3 [f3,c4,f5]@3 ~@3 [c4,f5]@2 ~@3, ~@5 e4@4 ~@2 c4@5 c3@4 ~@12", // A#sus2 F5
  D: "e4 ~@4 [d4,a5]@3 ~@3 [d4,a5]@2 ~@3 [a#4,d5]@2 ~@3 [a#4,d5]@2 ~@4 [a#3,a#4,d5]@3 ~@2, g3@25 ~@7, ~@5 d3@5 ~ g4@5 ~@5 c4@4 ~@7", // D5 A#
  E: "[a4,f5]@3 ~@2 [a4,f5]@2 ~@4 [a4,f5]@3 ~@2 [a3,c4,f4]@5 [a4,f5]@3 ~@3 [a3,c4,f4]@5, f3, ~@16 [a4,f5]@2 ~@9 [a4,f5]@3 ~@2", // Dm F Dm F Dm
  F: "[a4,e5,f5]@3 ~@2 [a4,e5,f5]@3 ~@3 [a4,e5,f5]@2 ~@3 [a3,a4,e5,f5]@3 ~@2 [e4,a4,f5]@4 ~@2 [a4,e5,f5]@2 ~@3, e3@7 ~, ~@11 f3@4 ~@6 e5@2 ~@4 f4@4 ~", // Fmaj7
  G: "[a4,f5]@3 ~@2 [a4,f5]@3 ~@3 [a4,f5]@3 ~@2 [a4,f5]@3 ~@2 [a4,f5]@3 ~@3 [c4,f4,a4,f5]@4 ~, f3@7 ~, ~@16 [a3,c4] ~@10 a3@2 ~@3", // Dm F Am
  H: "f5 ~@4 d5@3 ~@3 a3@5 [d4,f#4]@4 ~ [d4,f#4]@3 ~@3 d4@5, d3@7 ~, ~@5 f#3@22 ~@5, ~@11 a4@3 ~@13 f#4@2 ~@3", // D
  I: "~@5 a#4 ~@5 a#3@4 ~ [a#3,c4,e4,a#4,e5]@3 ~@2 [a#4,e5]@2 ~@4 [a#3,c4,e4,a#4,e5]@3 ~@2, ~@11 a#4@2 ~@19", // C7 A#dim C7
// … 149 more lines

More by Aaron Neville