Strudelify
Quattro amici cover art

Canzoni Eterne

Quattro amici

Paoli

KeyC minorTempo77 bpm
0:00/0:00
// Quattro amici — Paoli
// 77 bpm, 4/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: bank select 127 (Roland MT-32 map) read through the MT-32 patch table: ch 5 Fantasy -> pad new age
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 103 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): guitar program 30.
setcpm(77/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, A@4 for four bars: edit a riff to change every repeat.

// chords · synth strings 1
const synth_strings_1 = note("<A B@2 C@2 ~@18 D E@6 F ~@6 G@5 H I@8 J K@2 ~@4 L M@6 N O@3 P@2 ~@32>".pickRestart({
  A: "bb3 a3, f4", B: "[[bb3,d4]@8 g3@7 ~ d3@7 [a2,e4]@8 ~, ~ c4@3, ~@15 f4@8 ~@9]/2",
  C: "[[bb2,bb3,d4]@2 [c3,c4]@3 ~@3, ~@8 g3@9 ~@15]/2", D: "[b3,eb4,gb4]",
  E: "[[ab3,db4,f4]@3 [bb3,g4] b3@3 f4 bb4@4 eb4@2 ~@6 [eb4,b4]@4, ~@3 eb4@4 db4@5 b4@4 [db4,bb4]@4 ~@4, ~@2 ab4@2 gb4@3 [f4,ab4]@2 gb4@3]/6", // Db Eb Abm Gb Fm
  F: "[ab3,db4,f4]", // Db
  G: "[~@2 [c4,e4,g4]@4 [a3,d4,gb4]@3 [b3,ab4] c4@3 gb4 b4@4 [e4,c5]@2, ~@9 e4@4 d4@5 ~@2, ~@5 a4@2 g4@3]/5", // C D E C
  H: "~ [d4,b4], [gb4,a4]", // G Gbm
  I: "[~ [e4,c5]@2 [a3,d4,gb4]@2 [c4,e4] [b3,d4] [a3,c4] [g3,b3] c4 [b3,d4] [a3,c4] [g3,b3] [c4,e4] [b3,d4] [a3,c4], g4@3 ~@2 g4@11, ~@36 e4@3 ~@25]/8", // C D C Bm Am G Bm Am …
  J: "[g3,b3] [c4,e4]", K: "[[b3,d4,gb4]@2 [c4,e4]@2 g3 gb3 [g3,bb3,eb4]@2, ~ a3@2 ~, ~@2 d4 ~]/2", L: "[db4,f4,ab4]",
  M: "[[bb3,eb4,g4]@3 [c4,a4] db4@3 g4 c5@4 f4@2 ~@6 [f4,db5]@4, ~@3 f4@4 eb4@5 db5@4 [eb4,c5]@4 ~@4, ~@2 bb4@2 ab4@3 [g4,bb4]@2 ab4@3]/6", // Eb F Db Cm Gm
  N: "[bb3,eb4,g4]", O: "[[db4,f4]@2 [c4,eb4]@2 db4@2 ~ g4 ~@4, ab4@7 ~@5, ~@16 bb3@17 ~@15, ~@24 eb4@17 ~@7]/3",
  P: "[~@8 [ab3,db4,f4]@4 [bb3,eb4,g4]@19 ~]/2", // Db Eb
})).s("gm_synth_strings_1").gain(0.22)

// other · acoustic guitar nylon
const acoustic_guitar_nylon = note(`<
  A B A B ~@12 C D@2 ~@12 E F ~@12 G H I J K@3 L@2 ~@12 M N ~@3 M N M N ~@28
>`.pickRestart({
  A: "f4!2 ~ f4 g4 a4 ~ c5 ~ c5 ~ c5 a4@2 f4@2", B: "d4!2 ~ d4 e4 f4 ~ c4@9", C: "~@8 f4!2 ~ f4 g4 a4 ~ c5",
  D: "[~ c5 ~ c5 a4@2 f4@2 d4!2 ~ d4 e4 f4 ~ c4@9 ~@8]/2", E: "gb4!2 ~ gb4 ab4 bb4 ~ db5 ~ db5 ~ db5 bb4@2 gb4@2",
  F: "eb4!2 ~ eb4 f4 gb4 ~ db4@9", G: "~@15 a4", H: "~ a4 ~ a4 g4@2 d4@3 ~@6 d5", I: "~ d5 ~ [a4,b4] a4@2 g4@3 ~@6 a4",
  J: "~ a4 ~ a4 g4@2 d4@2 ~@8",
  K: "[~@4 b4 c5 b4 g4@2 g4 ~ g4 gb4@2 e4 d4@3 e4 d4@5 ~ e4 ~ e4 [c4,d4]@2 c4 b3@8 ~@2 b4 ~ b4 g4@2 e4 a4]/3", // Csus2
  L: "[~ a4 ~ a4 gb4@2 d4@2 ~ g4 ~ g4 e4@2 c4 a3@9 ~@8]/2", M: "ab4!2 ~ ab4 bb4 c5 ~ eb5 ~ eb5 ~ eb5 c5@2 ab4@2",
  N: "f4!2 ~ f4 g4 ab4 ~ eb4@9",
})).s("gm_acoustic_guitar_nylon").gain(0.45).pan(0.4)

// chords · marimba
const marimba = note(`<
  A B A C D ~@11 E F G ~@12 H I J ~@11 K L M N O P Q R S ~@12 T U V ~@2 T U W U V ~@27
>`.pickRestart({
  A: "[d4,f4]!2 ~ [d4,f4] [e4,g4] [f4,a4] ~ [a4,c5] ~ [a4,c5] ~ [a4,c5] [f4,a4] ~ [d4,f4] ~", // Dm Em F Am F Dm
  B: "[bb3,d4]!2 ~ [bb3,d4] [c4,e4] [d4,f4] ~ [g3,c4]!8 ~", C: "[bb3,d4]!2 ~ [bb3,d4] [c4,e4] [d4,f4] ~ [g3,c4]!9",
  D: "g3 ~@15", E: "~@8 [d4,f4]!2 ~ [d4,f4] [e4,g4] [f4,a4] ~ [a4,c5]",
  F: "~ [a4,c5] ~ [a4,c5] [f4,a4] ~ [d4,f4] ~ [bb3,d4]!2 ~ [bb3,d4] [c4,e4] [d4,f4] ~ [g3,c4]", G: "[g3,c4]!7 ~@9",
  H: "[eb4,gb4]!2 ~ [eb4,gb4] [f4,ab4] [gb4,bb4] ~ [bb4,db5] ~ [bb4,db5] ~ [bb4,db5] [gb4,bb4] ~ [eb4,gb4] ~", // Ebm Fm Gb Bbm Gb Ebm
  I: "[b3,eb4]!2 ~ [b3,eb4] [db4,f4] [eb4,gb4] ~ [ab3,db4]!9", J: "[ab3,db4] ~@15",
  K: "~@9 [e4,g4] ~ [e4,g4] [c4,e4] ~ [b3,d4]!2", L: "[b3,d4]!8 ~ [d4,b4] ~ [d4,b4] [c4,a4] ~ [b3,g4]!2",
  M: "[b3,g4]!8 ~ [e4,g4] ~ [e4,g4] [c4,e4] ~ [b3,d4]!2", N: "[b3,d4]!8 ~ [c4,e4] ~ [c4,e4] [b3,d4] ~ [a3,c4] [g3,b3]",
  O: "[g3,b3]!9 [e4,g4] ~ [e4,g4] d4@2 [c4,e4] [b3,d4], ~@12 gb4 ~@3", // G Em C Bm
  P: "[b3,d4]!8 ~ [c4,e4] ~ [c4,e4] b3@2 [a3,c4] [g3,b3], ~@12 d4 ~@3", // Bm C Am G
  Q: "[g3,b3]!4 b3 [g3,b3]!2 b3 ~ [g4,b4] ~ [g4,b4] g4@2 [c4,e4] [gb4,a4], ~@12 e4 ~@3", // G C Gbm
  R: "~ [gb4,a4] ~ [gb4,a4] [d4,gb4] ~ [b3,d4] ~@2 [e4,g4] ~ [e4,g4] [c4,e4] ~ [a3,c4] [gb3,a3]", S: "[gb3,a3]!8 ~@8",
  T: "[f4,ab4]!2 ~ [f4,ab4] [g4,bb4] [ab4,c5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] [ab4,c5] ~ [f4,ab4] ~", // Fm Gm Ab Cm Ab Fm
  U: "[db4,f4]!2 ~ [db4,f4] [eb4,g4] [f4,ab4] ~ [bb3,eb4]!9", V: "[bb3,eb4] ~@15",
  W: "[bb3,eb4,f4,ab4] [f4,ab4] ~ [f4,ab4] [g4,bb4] [ab4,c5] ~ [c5,eb5] ~ [c5,eb5] ~ [c5,eb5] [ab4,c5] ~ [f4,ab4] ~", // Bbsus4 Fm Gm Ab Cm Ab Fm
})).s("gm_marimba").gain(0.42).pan(0.4)

// bass · electric bass finger
const bass = note(`<
  ~@4 A B C@2 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@2 K AF AG J AH AI AJ AK AL AM AN AO AP AM AQ
  AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG AT BH@2 ~@4 BI BJ BI BJ BK BL BK BM BK BN BK BM BK BL BK BM BK BN BK
  BO BP@2 ~@6
>`.pickRestart({
  A: "~@8 f1 ~@2 f1 c1 ~ f1 ~", B: "~@3 f1 c1 ~ f1 ~@4 f1 c1 ~ f1 ~", C: "~@3 c2 g1 ~ c2 ~@4 c2 g1 ~ c2 ~",
  D: "~@3 f1 c1 ~ f1 ~@4 bb1 f1 ~ bb1 ~", E: "~@3 bb1 f1 ~ bb1 ~@4 c2 g1 ~ c2 ~", F: "~@3 c2 g1 ~ d2 ~@4 g1 d1 ~ g1 ~",
  G: "~@3 c2 g1 ~ c2 ~@4 f1 c1 ~ f1 ~", H: "~@2 f1@2 g1@2 a1@2 bb1 ~@2 bb1 f1 ~ bb1 ~",
  I: "~@3 bb1 f1 ~ bb1 ~@4 a1 e1 ~ a1 ~", J: "~@3 d2 a1 ~ d2 ~@4 g1 d1 ~ g1 ~", K: "~@3 g1 d1 ~ g1 ~@4 c2 g1 ~ c2 ~",
  L: "~@3 c2 g1 ~ c2 g1 bb1@7 bb1", M: "a1@6 ~ a1 g1@6 ~ g1", N: "c2 db2",
  O: "gb1 ~@2 gb1 db1 ~ gb1 ~@4 gb1 db1 ~ gb1 ~", P: "~@3 gb1 db1 ~ gb1 ~@4 db2 ab1 ~ db2 ~",
  Q: "~@3 db2 ab1 ~ db2 ~@4 db2 ab1 ~ db2 ~", R: "~@3 db2 ab1 ~ db2 ~@4 gb1 db1 ~ gb1 ~",
  S: "~@3 b1 gb1 ~ b1 ~@4 b1 gb1 ~ b1 ~", T: "~@3 db2 ab1 ~ db2 ~@4 db2 ab1 ~ eb2 ~",
  U: "~@3 ab1 eb1 ~ ab1 ~@4 db2 ab1 ~ db2 ~", V: "~@3 gb1 db1 ~ gb1 ~@3 gb1@2 ab1@2 bb1@2",
  W: "b1 ~@2 b1 gb1 ~ b1 ~@4 b1 gb1 ~ b1 ~", X: "~@3 bb1 f1 ~ bb1 ~@4 eb2 bb1 ~ eb2 ~",
  Y: "~@3 ab1 eb1 ~ ab1 ~@4 ab1 eb1 ~ ab1 ~", Z: "~@3 db2 ab1 ~ db2 ~@4 db2 ab1 ~ db2 ab1", AA: "b1@7 b1 bb1@6 ~ bb1",
  AB: "ab1@6 ~ ab1 db2@8", AC: "d2@8 g1 ~@2 g1 d1 ~ g1 ~", AD: "~@3 g1 d1 ~ g1 ~@4 g1 d1 ~ g1 ~",
  AE: "~@3 d2 a1 ~ d2 ~@4 d2 a1 ~ d2 ~", AF: "~@3 c2 g1 ~ c2 ~@4 d2 a1 ~ d2 ~", AG: "~@3 d2 a1 ~ e2 ~@4 a1 e1 ~ a1 ~",
  AH: "~@2 g1@2 a1@2 b1@2 c2 ~@2 c2 g1 ~ c2 ~", AI: "~@3 c2 g1 ~ c2 ~@4 b1 gb1 ~ b1 ~",
  AJ: "~@3 e2 b1 ~ e2 ~@4 a1 e1 ~ a1 ~", AK: "~@3 a1 e1 ~ a1 ~@4 d2 a1 ~ d2 ~", AL: "~@3 d2 a1 ~ d2 a1 c2@6 ~ c2",
  AM: "b1@8 a1@6 ~ a1", AN: "g1@4 ~ g1 a1 b1 c2@6 ~ c2", AO: "b1@7 b1 a1@6 ~ a1", AP: "g1@8 c2@7 c2",
  AQ: "g1@6 a1 b1 c2@8", AR: "b1 a1", AS: "d2 eb2", AT: "ab1 ~@2 ab1 eb1 ~ ab1 ~@4 ab1 eb1 ~ ab1 ~",
  AU: "~@3 ab1 eb1 ~ ab1 ~@4 eb2 bb1 ~ eb2 ~", AV: "~@3 eb2 bb1 ~ eb2 ~@4 eb2 bb1 ~ eb2 ~",
  AW: "~@3 eb2 bb1 ~ eb2 ~@4 ab1 eb1 ~ ab1 ~", AX: "~@3 db2 ab1!2 ~ ab1 db2 ~@2 db2 ab1 ~ db2 ~",
  AY: "~@3 eb2 bb1 ~ eb2 ~@4 eb2 bb1 ~ f2 ~", AZ: "~@3 bb1 f1 ~ bb1 ~@4 eb2 bb1 ~ bb1!2",
  BA: "ab1 ~@2 ab1 eb1 ~ ab1 ~@3 ab1@2 bb1@2 c2@2", BB: "db2 ~@2 db2 ab1 ~ db2 ~@4 db2 ab1 db2 ~ db2",
  BC: "c2 ~@2 c2 g1 ~ c2 ~@4 f2 c2!2 ~ c2", BD: "~@3 bb1 f1 ~ bb1 ~@4 bb1 f1 ~ bb1 ~",
  BE: "~@3 eb2 bb1 ~ eb2 ~@4 eb2 bb1 ~ eb2 bb1", BF: "db2@7 db2 c2@8", BG: "bb1 eb2",
  BH: "[~@3 ab1 eb1 ~ ab1 ~ db2@4 eb2@20]/2", BI: "f1 ~@6 f1 c2 ~@5 bb1 c2", BJ: "db2 ~@6 db2 ab1 ~@2 ab1 eb2 ~@2 eb2",
  BK: "f1@6 ~ f1 c2@6 bb1 c2", BL: "db2@6 ~ db2 ab1@2 ~ ab1 eb2@2 eb1@2", BM: "db2@7 db2 ab1!2 ~ ab1 eb2@2 eb1 ~",
  BN: "db2@6 ~ db2 ab1@3 [ab1,db2] eb2@2 eb1@2", BO: "db2@6 ~ db2 ab1@7 ~", BP: "ab1/2",
})).s("gm_electric_bass_finger").gain(0.64)

// chords · rock organ
const rock_organ = note(`<
  ~@4 A B C D E F G C H I J F K@3 L@3 M N O@2 P Q R S T U@2 V W X Y Z AA AB AC AD AE AF AG AH@7 AI@2 AJ AK@4 AL@2 AM T
  AN AO AP AQ@2 AR AS@2 ~@4 AT AU@10 AV AT AU@6 AW AX@3 ~@5
>`.pickRestart({
  A: "~@13 f4 ~@2", B: "~ f4 ~@3 c5 [a4,c5]@2 ~@8, ~@6 f5 ~@9", C: "~@5 g5 [c5,e5,g5] ~@9", D: "~@5 d5 [bb4,d5,g5] ~@9",
  E: "~@5 [a4,c5,f5] ~ [a4,c5,f5] ~@8", F: "~@5 f5 [bb4,d5,f5] ~@9", G: "~@5 a5 [d5,gb5,a5] ~@9",
  H: "~ [c5,a5] [bb4,g5] [a4,f5] ~@4", I: "~@5 g5 [c5,g5] ~@9, ~@3 e5 ~@4", J: "~@5 a5 [d5,a5] ~@9, ~@3 f5 ~@4",
  K: "[~@2 [d5,bb5]@2 [c5,a5]@2 [bb4,d5]@2 ~ e5 [ab4,db5,f5]@2, ~@2 f5@7 ~@3, ~@4 [g4,c5] ~]/3", // Gm F Bb Db C5
  L: "[[bb4,db5,gb5]@2 ~@11 gb5 ~ [bb4,db5,gb5]@3 ~@11 ab5 f5@2 [b4,eb5]@2 ~@11 ab5 [b4,eb5,ab5]@2, ~@15 ab5@2 ~@7, ~@30 db5 ~@17]/3", // Gb B Abm
  M: "~@13 gb5 [bb4,db5,gb5]@2", N: "[b4,eb5,gb5] ~@6 [eb5,gb5], ~@14 b4 ~",
  O: "[[db5,f5,ab5]@3 ~@10 bb5 [g5,bb5]@2 [ab5,b5]@2 ~@12 [ab5,b5]@2, ~@14 eb5@4 ~@12 f5 ~]/2", // Db Gm Abm
  P: "[gb5,bb5,db6] ~@4 [db5,bb5] [b4,ab5] [bb4,gb5]", Q: "~@13 f5 [ab4,f5] ~, ~@7 db5",
  R: "[ab4,bb4,db5,f5]@2 ~@11 bb5 [gb5,bb5]@2, ~@14 eb5 ~", S: "[eb5,gb5,b5] ~@7", T: "[db5,f5,ab5] ~@7",
  U: "[[eb5,b5]@2 [db5,bb5]@2 [b4,eb5]@2 ~ f5, gb5@7 ~, ~@3 [ab4,db5]]/2", V: "[a4,d5,gb5]@4 [b4,d5,g5] ~@3",
  W: "~@5 g5 ~ [b4,d5,g5]@3 ~@6", X: "~@5 a5 gb5@2 [c5,e5]@2 ~@6, ~@3 a5@2 ~@3, ~@6 d5 ~@9",
  Y: "~@5 a5 ~ [c5,e5,a5]@3 ~@6", Z: "~@5 g5 d5@2 [c5,e5]@2 ~@6, ~@3 g5@2 ~@3, ~@6 b4 ~@9",
  AA: "~@8 [d5,gb5,a5]@2 ~@3 [d5,gb5,a5] ~@2", AB: "~@5 b5 [ab5,b5]@2 [a5,c6]@2 ~@6, ~@3 e5@2 ~@3",
  AC: "~@4 [d5,g5,b5] ~@3", AD: "~ [d5,b5] a5 [b4,g5] [c5,e5,g5] ~@3, ~@4 c5 ~@11",
  AE: "[d5,gb5,a5]@2 ~@3 [d5,gb5,a5] ~@2 [d5,gb5,a5]@2 ~@6", // D
  AF: "[e5,g5,b5]@2 ~@3 [e5,g5,b5] ~@2 [e5,g5,c6]@2 ~@3 [e5,g5,c6] ~@2", AG: "~@8 [gb5,a5,d6]@3 ~@2 [a5,d6] ~@2",
  AH: "[~ [gb5,a5,d6] ~@6 [e5,c6]@8 [d5,b5]@8 [c5,e5]@8 [b4,d5]@8 [e5,c6]@8 [d5,b5]@8 [c5,e5]@8 b4@8 [e5,c6]@8 [d5,b5]@8 [c5,e5]@8 [b4,d5]@8 [e5,c6]@8, ~ g5@13, ~@32 d5@3 ~@21]/7", // D C G C Bm C G C …
  AI: "[[d5,gb5,b5]@2 [c5,e5]@2 ~ gb5 [bb4,eb5,g5]@2, ~@2 g5@3 ~@3, ~@2 [a4,d5] ~]/2", // Bm C Eb D5
  AJ: "[c5,eb5,ab5]@2 ~@11 ab5 [eb5,ab5]@2, ~@14 c5 ~", // Ab Ab5
  AK: "[[c5,eb5,ab5]@3 ~@10 bb5 [eb5,g5] ~ [db5,f5]@2 ~@11 bb5 db5 ~ db5@2 ~@11 ab5 eb5@2 [db5,f5]@3 ~@13, ~@7 bb5@2 ~@6 [f5,bb5]@2 ~@6 ab5@2 ~@7, ~@46 c5 ~@17]/4", // Ab Eb Db Bb5
  AL: "[[eb5,g5,bb5]@3 ~@10 c6 [a5,c6]@2 [bb5,db6]@2 ~@12 [eb5,g5,bb5]@2, ~@7 f5@2 ~@7]/2", // Eb Am Bbm Eb
  AM: "[eb5,ab5,c6] ~@4 [eb5,c6] [db5,bb5] [c5,ab5]", AN: "[eb5,g5,c6] ~@7",
  AO: "[f5,ab5,db6]@2 ~ [f5,ab5,db6] ~ [ab5,db6] ~@3 [f5,ab5,db6] ~@3 [f5,ab5,db6] ~@2", AP: "[eb5,g5,bb5] ~@7",
  AQ: "[[db5,f5]@2 [c5,eb5]@2 db5@2 ~ g5, ab5@7 ~, ~ bb4, ~@3 eb5]/2", AR: "[c5,eb5,ab5]@2 ~@11 ab5 ~@2",
  AS: "[[c5,eb5,ab5]@3 ~@5 [ab4,db5,f5]@4 [bb4,eb5,g5]@17 ~@3]/2", AT: "[ab5,c6] [g5,bb5], eb5@15 ~",
  AU: "[[f5,db6]@2 c6 [g5,bb5] [ab5,c6]@2 [g5,bb5]@2, ab5@3 ~@5, ~@8 eb5@23 ~]/2", // Db Gm Ab Gm
  AV: "[f5,db6]@2 c6 [g5,bb5], ab5@3 ~, ~ eb5", AW: "[f5,ab5,db6] [eb5,g5,bb5]", AX: "[[eb5,ab5,c6]@3 ~]/3",
})).s("gm_rock_organ").gain(0.35).pan(0.7)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  ~@4 A 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 ~@2 AA AB AC AD AE AF AG AH AI AJ AK AL AM ~@8 AN AO AP AQ Z
  AR AS AT AU AV AW AX ~@2 AN AY@2 AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BD BE BF BG BH BI BJ BP BQ@2 ~@6
>`.pickRestart({
  A: "~@10 [a3,c4,f4] ~@3 [a3,c4,f4] ~", B: "~@2 [a3,c4,f4] ~@3 [a3,c4,f4] ~@3 [a3,c4,f4] ~@3 [a3,c4,f4] ~",
  C: "~@2 [bb3,d4,f4] ~@3 [c4,e4,g4] ~@3 [bb3,d4,g4] ~@3 [bb3,d4,g4] ~", // Bb C Gm
  D: "~@2 [bb3,d4,g4] ~@3 [bb3,d4,g4] ~@3 [bb3,d4,g4] ~@3 [bb3,d4,g4] ~", // Gm
  E: "~@2 [a3,c4,f4] ~@3 [a3,c4,f4] ~@3 [bb3,d4,f4] ~@3 [bb3,d4,f4] ~", // F Bb
  F: "~@2 [bb3,d4,f4]@2 ~@2 [bb3,d4,f4] ~@3 [c4,e4,g4] ~@3 [c4,e4,g4] ~", // Bb C
  G: "~@2 [c4,e4,g4] ~@3 [d4,gb4,a4]@2 ~@2 [d4,g4,bb4] ~@3 [d4,g4,bb4] ~", // C D Gm
  H: "~@2 [c4,e4,g4,bb4] ~@3 [c4,e4,g4,bb4] ~@3 [c4,f4,a4] ~@3 [c4,f4,a4]@2", // C7 F
  I: "~@2 [c4,f4,a4]@2 ~@2 [c4,f4,a4] ~@3 [bb3,d4,f4] ~@3 [bb3,d4,f4] ~", // F Bb
  J: "~@2 [c4,e4,g4] ~@3 [c4,e4,g4] ~@3 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~", // C
  K: "~@2 [c4,f4,a4] ~@3 [c4,f4,a4] ~@3 [d4,f4,bb4] ~@3 [d4,f4,bb4] ~", // F Bb
  L: "~@2 [d4,f4,bb4] ~@3 [d4,f4,bb4] ~@3 [c4,e4,g4] ~@3 [c4,e4,g4] ~", M: "~@2 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@9",
  N: "~ [f3,ab3,db4]", O: "~@2 [bb3,db4,gb4] ~@3 [bb3,db4,gb4] ~@3 [bb3,db4,gb4] ~@3 [bb3,db4,gb4] ~",
  P: "~@2 [bb3,db4,gb4] ~@3 [bb3,db4,gb4] ~@3 [b3,eb4,gb4] ~@3 [db4,f4,ab4] ~", // Gb B Db
  Q: "~@2 [b3,eb4,ab4] ~@3 [b3,eb4,ab4] ~@3 [b3,eb4,ab4] ~@3 [b3,eb4,ab4] ~", // Abm
  R: "~@2 [b3,eb4,ab4] ~@3 [b3,eb4,ab4] ~@3 [bb3,db4,gb4] ~@3 [bb3,db4,gb4] ~", // Abm Gb
  S: "~@2 [b3,eb4,gb4] ~@3 [b3,eb4,gb4] ~@3 [b3,eb4,gb4]@2 ~@2 [b3,eb4,gb4] ~", // B
  T: "~@2 [db4,f4,ab4] ~@3 [db4,f4,ab4] ~@3 [db4,f4,ab4] ~@3 [eb4,g4,bb4]@2", // Db Eb
  U: "~@2 [eb4,ab4,b4] ~@3 [eb4,ab4,b4] ~@3 [db4,f4,ab4,b4] ~@3 [db4,f4,ab4,b4] ~", // Abm Db7
  V: "~@2 [db4,gb4,bb4] ~@3 [db4,gb4,bb4]@2 ~@2 [db4,gb4,bb4]@2 ~@2 [db4,gb4,bb4] ~", // Gb
  W: "~@2 [b3,eb4,gb4] ~@3 [b3,eb4,gb4] ~@3 [db4,f4,ab4] ~@3 [db4,f4,ab4] ~", // B Db
  X: "~@2 [db4,f4,ab4]@2 ~@2 [db4,f4,ab4] ~@3 [db4,gb4,bb4] ~@3 [db4,gb4,bb4] ~", // Db Gb
  Y: "~@2 [eb4,gb4,b4] ~@3 [eb4,gb4,b4] ~@3 [eb4,gb4,b4] ~@3 [eb4,gb4,b4] ~", // B
  Z: "~@2 [db4,f4,ab4] ~@3 [db4,f4,ab4] ~@3 [db4,f4,ab4]@2 ~@2 [db4,f4,ab4] ~", // Db
  AA: "[gb3,a3,d4]@8 ~@2 [b3,d4,g4] ~@3 [b3,d4,g4] ~", // D G
  AB: "~@2 [b3,d4,g4] ~@3 [b3,d4,g4] ~@3 [b3,d4,g4] ~@3 [b3,d4,g4] ~", // G
  AC: "~@2 [c4,e4,g4] ~@3 [d4,gb4,a4] ~@3 [c4,e4,a4] ~@3 [c4,e4,a4] ~", // C D Am
  AD: "~@2 [c4,e4,a4] ~@3 [c4,e4,a4] ~@3 [c4,e4,a4] ~@3 [c4,e4,a4] ~", // Am
  AE: "~@2 [b3,d4,g4] ~@3 [b3,d4,g4] ~@3 [c4,e4,g4] ~@3 [c4,e4,g4] ~", // G C
  AF: "~@2 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@3 [d4,gb4,a4] ~@3 [d4,gb4,a4] ~", // C D
  AG: "~@2 [d4,gb4,a4] ~@3 [e4,ab4,b4]@2 ~@2 [e4,a4,c5] ~@3 [e4,a4,c5] ~", // D E Am
  AH: "~@2 [d4,gb4,a4,c5] ~@3 [d4,gb4,a4,c5] ~@3 [d4,g4,b4] ~@3 [d4,g4,b4]@2", // D7 G
  AI: "~@2 [d4,g4,b4]@2 ~@2 [d4,g4,b4] ~@3 [c4,e4,g4] ~@3 [c4,e4,g4] ~", // G C
  AJ: "~@2 [d4,gb4,a4] ~@3 [d4,gb4,a4] ~@3 [d4,gb4,a4]@2 ~@2 [d4,gb4,a4] ~", // D
  AK: "~@2 [d4,g4,b4] ~@3 [d4,g4,b4] ~@3 [e4,g4,c5] ~@3 [e4,g4,c5] ~", // G C
  AL: "~@2 [e4,g4,c5] ~@3 [e4,g4,c5] ~@3 [d4,gb4,a4] ~@3 [d4,gb4,a4] ~", AM: "~@2 [d4,gb4,a4]@2 ~@2 [d4,gb4,a4] ~@9",
  AN: "~@2 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~", // Ab
  AO: "~@2 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~@3 [db4,f4,ab4] ~@3 [eb4,g4,bb4] ~", // Ab Db Eb
  AP: "~@2 [db4,f4,bb4] ~@3 [db4,f4,bb4] ~@3 [db4,f4,bb4] ~@3 [db4,f4,bb4] ~", // Bbm
  AQ: "~@2 [db4,f4,bb4] ~@3 [db4,f4,bb4] ~@3 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~", // Bbm Ab
  AR: "~@2 [eb4,g4,bb4] ~@3 [eb4,g4,bb4] ~@3 [eb4,g4,bb4] ~@3 [f4,a4,c5]@2", // Eb F
  AS: "~@2 [f4,bb4,db5] ~@3 [f4,bb4,db5] ~@3 [eb4,g4,bb4,db5] ~@3 [eb4,g4,bb4,db5] ~", // Bbm Eb7
  AT: "~@2 [eb4,ab4,c5] ~@3 [eb4,ab4,c5]@2 ~@2 [eb4,ab4,c5]@2 ~@2 [eb4,ab4,c5] ~", // Ab
  AU: "~@2 [db4,f4,ab4] ~@3 [db4,f4,ab4] ~@3 [eb4,g4,bb4] ~@3 [eb4,g4,bb4] ~", // Db Eb
  AV: "~@2 [eb4,g4,bb4]@2 ~@2 [eb4,g4,bb4] ~@3 [eb4,ab4,c5] ~@3 [eb4,ab4,c5] ~", // Eb Ab
  AW: "~@2 [f4,ab4,db5] ~@3 [f4,ab4,db5] ~@3 [f4,ab4,db5] ~@3 [f4,ab4,db5] ~", // Db
  AX: "~@2 [eb4,g4,bb4] ~@3 [eb4,g4,bb4] ~@3 [eb4,g4,bb4]@2 ~@2 [eb4,g4,bb4] ~", // Eb
  AY: "[~@2 [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~ [ab3,db4,f4]@3 ~ [bb3,eb4,g4]@16 ~@4]/2", // Ab Db Eb
  AZ: "[f3,ab3,c4] ab3 ~ [ab3,c4] [f3,ab3,c4] [ab3,c4] c4 [ab3,c4] [g3,c4,eb4] eb4 ~ eb4 [g3,c4,eb4] c4 ~ eb4", // Fm Ab Fm Ab Cm
  BA: "[ab3,db4,f4] [ab3,db4] db4!2 [ab3,db4,f4] db4!2 [db4,f4] [bb3,eb4,g4] [bb3,eb4] eb4!2 [bb3,eb4,g4] eb4!3", // Db Db5 Db Eb Eb5 Eb
  BB: "[f3,ab3,c4] [ab3,c4] ~@2 [ab3,c4]@2 ~ [ab3,c4] [g3,c4,eb4] ~ c4 ~ [g3,c4,eb4] ~@2 [c4,eb4], ~@4 f3@3 ~@9", // Fm Ab Cm
  BC: "[ab3,db4,f4] [ab3,db4] db4!2 [ab3,db4,f4] db4!2 [db4,f4] [bb3,eb4,g4] eb4!3 [bb3,eb4,g4] eb4 [eb4,g4] [bb3,eb4,g4]", // Db Db5 Db Eb
  BD: "[ab3,c4] ab3!2 [ab3,c4]!2 c4 [ab3,c4]!2 [g3,c4,eb4] eb4 c4!2 [g3,c4,eb4] eb4 c4 eb4, f3@4 f3@3 ~@9", // Ab Cm
  BE: "[ab3,db4,f4] db4 [ab3,db4]!2 [ab3,db4,f4] [ab3,db4] [ab3,db4,f4]!2 [ab3,c4,eb4]!2 [c4,eb4]!2 [g3,bb3,eb4] [bb3,eb4]!3", // Db Db5 Db Db5 Db Ab Cm Eb …
  BF: "[f3,ab3,c4] [ab3,c4]!2 c4 [f3,ab3,c4] [ab3,c4] c4 [ab3,c4] [g3,c4,eb4] [c4,eb4]!2 c4 [g3,c4,eb4] eb4 c4 eb4", // Fm Ab Fm Ab Cm
  BG: "[ab3,db4,f4]!2 [ab3,db4] db4 [ab3,db4,f4] db4 [ab3,db4,f4]!2 [ab3,c4,eb4]!2 [c4,eb4] [ab3,c4,eb4] [g3,bb3,eb4] [bb3,eb4]!3", // Db Db5 Db Ab Cm Ab Eb Eb5
  BH: "[ab3,c4]!3 c4 [ab3,c4] c4 [ab3,c4] c4 [g3,c4,eb4] eb4 ~@2 [g3,c4,eb4] [c4,eb4] ~ eb4, f3@4 f3@3 ~@9", // Ab Cm
  BI: "[ab3,db4,f4] db4 [ab3,db4] db4 [ab3,db4,f4] db4 [ab3,db4,f4] [db4,f4] [c4,eb4]!3 [ab3,c4,eb4] [bb3,eb4]!4, ~@8 ab3@3 ~ g3@3 ~", // Db Db5 Db Cm Ab Eb5
  BJ: "[f3,ab3,c4] [ab3,c4]!2 c4 [ab3,c4]!2 c4!2 [g3,c4,eb4] [c4,eb4] ~ [c4,eb4]!3 c4 eb4, ~@4 f3@3 ~@5 g3@3 ~", // Fm Ab Cm
  BK: "[ab3,db4,f4] [ab3,db4]!3 [ab3,db4,f4] db4 [ab3,db4] [ab3,db4,f4] [ab3,c4,eb4] [c4,eb4]!2 [ab3,c4,eb4] [g3,bb3,eb4] [bb3,eb4]!3", // Db Db5 Db Db5 Db Ab Cm Ab …
  BL: "[ab3,c4]!3 ~ [ab3,c4]!4 [g3,c4,eb4] eb4 [c4,eb4]!5 eb4, f3@4 f3@3 ~@5 g3@3 ~", // Ab Cm
  BM: "~ db4!3 [ab3,db4,f4] db4 [db4,f4]!2 [ab3,c4,eb4] [c4,eb4]!2 [ab3,c4,eb4] [bb3,eb4]!4, [ab3,db4,f4]@2 ~@10 g3@3 ~", // Db Ab Cm Ab Eb5 Db
  BN: "[ab3,c4] c4 ab3 [ab3,c4]!4 c4 [g3,c4,eb4] [c4,eb4] c4 ~ [c4,eb4] ~@2 eb4, f3@3 ~ f3@3 ~@5 g3@3 ~", // Ab Cm
  BO: "[ab3,db4,f4] db4!3 [db4,f4] db4 [db4,f4] db4 [ab3,c4,eb4] [c4,eb4]!3 [g3,bb3,eb4] [bb3,eb4]!3, ~@4 ab3@3 ~@9", // Db Ab Cm Eb Eb5
  BP: "[ab3,db4,f4] [ab3,db4]!3 [ab3,db4,f4] db4 [ab3,db4] [ab3,db4,f4] [bb3,eb4,g4]@8", BQ: "[[c4,eb4,ab4]@19 ~@13]/2",
})).s("gm_electric_guitar_clean").gain(0.37).pan(0.7)
// … 212 more lines

More by Paoli