Strudelify
Si sta facendo notte cover art

I miei numeri

Si sta facendo notte

Zero

KeyG majorTempo61 bpm
0:00/0:00
// Si sta facendo notte — Zero
// 61.4 bpm, 4/4, key G major. 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 81 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(61.4/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.

// bass · electric bass finger
const bass = note(`<
  ~@17 A@2 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 AH AI AJ AK AL AM@3 AN AO AP AQ AR AS
  AT AU AH AV AW AX AY AZ BA AK BB@2 ~@4
>`.pickRestart({
  A: "[~ c2 d2 d2@2 c#2 d2!2]/2", B: "d2 c#2 d2 e2", C: "f#2@2 c2 f#2", D: "b1@12 a#1@11 a#1", E: "a#1 a2",
  F: "d2@4 g2@3 g2", G: "f2 e2", H: "f2@6 f1@6 a#1@9 a#2 a#1 d2", I: "d#2", J: "f1@2 f2!2", K: "d2@3 d2 b1@2 a1@2",
  L: "d2@6 d2@3 d2@3 b1@10 ~ [g#1,a1,a#1]", M: "g1@8 ~ g1@3 f#1@6 e1@6", N: "a1@3 a1 a1@2 c2@2", O: "f1@3 f1 f1@2 c2@2",
  P: "f1@3 f1 f1@2 a#1@2", Q: "d#2@8 ~ d#2 ~ d#2 d#2@6 a#1@6", R: "d#1@9 a#1!3 d#2@6 d#2@6", S: "g1@3 g1 d2@2 d2@2",
  T: "g1@3 g1 e1@3 g1", U: "c1!2 b1 a1", V: "d2@2 d2!2 d1@2 d2 d1", W: "g1@2 g1!2 e1@2 d1@2", X: "g1@2 g1!2 e1@3 d1",
  Y: "c2@2 c2 c3 b1@2 a1@2", Z: "d1@2 d1!2 d1@2 f1@2", AA: "a#1@3 a#1 a#1@2 f1@2", AB: "a#1@3 a#1 a#1@2 d#2@2",
  AC: "g#2@2 g#2 g#1 g#1@2 d#2@2", AD: "g#2@3 g#2 g#2@2 g#2@2", AE: "c1@3 c1 a1@2 g1@2", AF: "c1@2 c1 g1 a1@2 a1@2",
  AG: "f1@3 f1 e1@2 d1@2", AH: "g1@3 g1@5", AI: "c2@2 c1 c2 a1@2 g1@2", AJ: "c2@2 c1 c2 a1@2 a1@2",
  AK: "f1@2 f1!2 e1@2 d1@2", AL: "g1@6 g1@3 g1@3 g1@3 g1@2 d2 g2@6", AM: "g1@2 g1@3 g1@2 g1", AN: "a1@3 a1 g1 g1@2 g1",
  AO: "c2@9 c2@3 a1@6 g1@4 g1!2", AP: "c1@9 g1@3 a1@4 c2 e2 a2@2 g#2 [f2,f#2,g2] [d2,d#2,e2] [a#1,b1,c2,c#2]",
  AQ: "f1@2 f1!2 e1@2 d1@2, a1 ~@23", AR: "g1@9 g1@11 g1@4", AS: "c2@6 c2@3 c2@3 a1@6 g1@4 [f1,f#1] [d1,d#1,e1]",
  AT: "c1@6 c1@3 c1@3 a1@3 a1 c2 e2 a2@3 [g2,g#2] [e2,f2,f#2] [c#2,d2,d#2], c#1 ~@23", AU: "f1@3 f1 e1@2 d1@2, c2 ~@23",
  AV: "c2@5 c2 c2@5 ~ a1@5 ~ g1@5 ~", AW: "c1@6 c1@4 c1 c2 a1@5 a1 a1@6", AX: "f1@6 f1@3 f1@2 f1 e1@6 d1@6",
  AY: "g1@9 g1@6 g1@5 g1@4", AZ: "c1!2 a1 g1", BA: "c1 c2 a1!2", BB: "[g1@2 g1 g2!2 g1 ~ g1@9]/2",
})).s("gm_electric_bass_finger").gain(0.64)

// bass · acoustic bass
const bass_2 = note("<A B@4 C D E F G H I@6 J ~@63>".pickRestart({
  A: "~@3 a1", B: "d2@3 a1", C: "d2 e2 f#2@2", D: "c2 f#1 b1@2", E: "a#1", F: "a1 d2", G: "g1 f1", H: "e1 f1",
  I: "[a#1@2 d#2@4 f1@3 f1 d2@4 e2@3 a2 d2@4 a2@2]/6", J: "g2 c2 ~@2",
})).s("gm_acoustic_bass").gain(0.48)

// other · timpani
const timpani = note("<A B C ~@32 D E ~@7 F G H I J ~@7 K@3 ~@4 L ~@3 M ~@13>".pickRestart({
  A: "~@18 d1 ~@5", B: "f#1 ~@17 d1 ~@5", C: "f#1 ~@23", D: "a1 ~@8 a1!4 ~@4 a1!2 ~ a1 ~ b1 ~", E: "a1 ~@23",
  F: "a1 ~@17 a1 ~@5", G: "a1 ~@10 a1!2 ~@11", H: "~@18 f2 ~@5", I: "g2 ~@9 g1!3 ~@5 g1!2 ~ g1!3", J: "g1 ~@23",
  K: "~@6 g1 ~@17", L: "~@6 g2 ~@8 g2 ~@4 g2 ~@3", M: "~@6 g1 ~@2 d2 ~@4 g1 ~@3 d2 ~ d2 ~ g1 ~",
})).s("gm_timpani").gain(0.64)

// other · timpani · soft notes
const timpani_soft = note("<~@35 [~@5 a1 ~@18] ~@9 [~@9 a1!2 ~@13] ~ [~@9 g1 ~@10 g1 ~@3] ~@33>")
  .s("gm_timpani").gain(0.4)

// other · string ensemble 2
const string_ensemble_2 = note(`<
  ~@18 A ~@10 B C D E F@3 G H@2 I J K L M ~@3 N O P Q R@4 S@5 T U V W X@3 Y Z U V W X@3 Y ~@5
>`.pickRestart({
  A: "~ a4 ~@2", B: "a4", C: "a4 g4 a4 g4", D: "c#5@5 ~ a4 ~@2 e4@9 e4@3 f4@3", E: "f4 c4 c5@2",
  F: "[a4@6 f4@6 c5@9 d#5@8 a#4@6 ~@7 g#5@6 g5@6 d#5@6 ~@10 a#5@2, ~@3 a#5@2 ~]/3", G: "b5@2 c6 d6",
  H: "[b5@12 a5@6 g5@12 e6@5 d6@6 ~ c6@6]/2", I: "d6@3 a5@3 f#5@3 d5@3 d5@2 g5@2 d5 ~ d5@2 a5@2 c6@2",
  J: "b5 a5 b5 a5 g5@2 a5@2", K: "b5@6 d6@6 a5@6 g5@5 ~", L: "g5@3 c6@3 d6@3 e6@3 d6@5 ~ c6@2 e5@3 ~",
  M: "f#5 a5@3 ~ a5 ~ d5@4 ~ d5 a4@4 ~@7", N: "~@14 c5 ~ d#5 ~ d#5 ~ d#5@2 c5 ~",
  O: "[e5,g5] c6 d6 e6 [f5,f6]@2 [g5,b5]@2, ~@3 g5 ~@20", P: "d6 c6 [d5,b5] [e5,c6], e5 ~",
  Q: "a5@3 c6 g5 c6 [a4,f5]@2, c5@11 ~ c5@6 ~@6", // Dm
  R: "[[g4,g5]@6 d5 c5 d5 [g4,c5]@5 g4@5 ~@5 e5@8 ~ [g5,e6]@3 [a5,f6]@6 [g5,g6]@12 [e5,e6]@6 [d5,d6]@6 [c5,c6]@12 a5@6 g5@6 [a4,f5]@6, ~@6 d4@3 ~@11 g5@13 ~@45 c5@12 ~@6]/4", // G C5 C Dm G E D C …
  S: "[[b4,g5]@6 ~@3 c5@6 d5@5 g4@100]/5", T: "c6@2 ~ c6@3 [g5,g6]@6 [c5,c6]@6 [d5,d6]@6, g5 ~@3",
  U: "[g5,e6] [c6,g6] [d5,b5] [a5,c6]", V: "~@3 c6@3 f6@3 [c6,a6]@3 [g5,g6]@6 [f5,f6]@5 ~, a5@3 ~@5",
  W: "[g5,g6]@3 [d5,d6]@2 [g4,g5]@3", // G D G
  X: "[~@3 c6@3 d6@3 e6@2 ~ [a5,f6]@6 [g5,g6]@12 [e5,e6]@6 [d5,d6]@6 [c5,c6]@12 a5@6 g5@3 ~@5 f5@3 ~, g5@2 ~@7 c5@2 a4, ~@63 c6@5 ~@4]/3", // Dm G E D C
  Y: "[b4,g5] ~@3", Z: "e6@2 ~ d6@3 g6@3 g6@3 [c5,c6]@6 [d5,d6]@6, g5!2 ~@2",
})).s("gm_string_ensemble_2").gain(0.55).pan(0.3)

// chords · string ensemble 2
const string_ensemble_2_2 = note(`<
  ~@5 A B C@2 D E F G@2 H@2 I ~ J K L M@2 N@3 O@2 P Q R S T U V W X Y Z AA AB AC AD AE ~@4 AF AG AH AI AJ AK AL AM AN@3
  AO AF AG AH AI AJ AK AL AP AF AG AH AI AJ AK AL AQ@2 ~@4
>`.pickRestart({
  A: "~@3 d4", B: "e4@3 f#4", C: "[g4@6 g4 f#4]/2", D: "a4 g4 a4 a#4", E: "c5 a#4 ~ f4, g4@3 ~, ~ a4",
  F: "[d4,f4]@3 d#4", G: "[d4@6 c4@6 c4@18 c4@5 ~@7 d4@6]/2", H: "[c#4 a3 c4@4 ~ d4]/2", I: "c#4 a3 c4@2",
  J: "~@6 [a3,c#4]@5 ~@13", K: "~ a3@3", L: "d4 a4 e4@2", M: "[e4@6 [d#4,f#4]@6 d4@18 c4@17 ~, ~@12 g4@35 ~]/2",
  N: "[g4@6 f#4@6 a4@6 g4@6 a4@6 a#4@6 c5@6 a#4@6 ~@6 f4@6 [d4,f4]@11 ~, c4@2 d4@4 g4@3 ~@3, ~@4 a4 ~]/3", // Dm
  O: "[[d4,f4] d#4 [a#3,d4] ~ a3@4, ~@3 c4@5]/2", P: "a3@2 d4 c#4 d4@2 e4@2", Q: "~ d4 [c#4,e4] [d4,f#4], f#4 ~",
  R: "a4 [d4,g4] [d4,a4] [d4,g4], d4 ~@23", S: "[e4,a4]@5 ~ [c#4,e4]@2 ~ [a3,c#4]@8 ~ c4@6", T: "a3!2 g3!2",
  U: "a3@6 a3@6 a3@6 g#3@5 ~", V: "a#3@5 ~ a#3@6 a#3@6 g#3@6", W: "a#3@6 a#3@6 ~@2 d#5@2 ~ a#4@2 d#5@2 ~ a#4 ~",
  X: "~@12 c5@6 [d5,f#5]@5 ~, b4 ~, ~ g5@2 ~", Y: "[g5,b5] [d5,g5] [d5,f#5] [b4,e5]",
  Z: "[d5,g5] [c5,g5] [d5,g5] [e5,g5]", AA: "[d5,f#5]@11 ~ a4@2 d5@2 a4@2 a4 ~ a4 ~ a4 ~",
  AB: "d5@6 g5@3 f#5@2 ~ g5@6 f#5@6", AC: "g5 b5 f#5 d5", AD: "e5@12 g5@5 ~ g5@4 ~@2",
  AE: "f#4 a4@3 ~@2 a4 f#4@4 ~@2 d4@4 ~ f4@6, ~@6 f#4 ~@5", AF: "[e4,g4]@12 c4@5 b3@6 ~, ~ f4",
  AG: "[c4,e4]@2 d4 [c4,e4]", AH: "g4 f4 [e4,g4] f4", AI: "[d4,g4]@3 f4@5", AJ: "e4@11 f4@6 ~ d4@6", AK: "e4",
  AL: "g4 f4 [e4,g4] [f4,a4]", AM: "[g4,b4]@8 ~ [d4,g4]@10 ~@5", AN: "[b3@23 ~ a3@24 b3@24, d4@71 ~]/3", AO: "f4",
  AP: "[g4,b4]@8 ~ [d4,g4]@10 ~ f4@4", AQ: "[[g4,b4]@8 ~ [d4,g4]@10 ~ f4@28]/2",
})).s("gm_string_ensemble_2").gain(0.64).pan(0.4)

// chords · string ensemble 2
const string_ensemble_2_3 = note(`<
  A@3 ~@2 B C D@2 E F G@7 H I J K L M N@2 O P Q@2 R S T@2 U V W@3 X W@3 Y Z AA AB AC AD@2 AE AF AD@2 AG AH@4 AI AD@2 AE
  AF AD@2 AG AJ AD@2 AE AF AD@2 AG AK@2 ~@4
>`.pickRestart({
  A: "[~@6 [a1,e3]@2 [d2,f#3]@6 [a1,e3]@2 [d2,f#3]@5 ~@3, ~@6 a3@8 a3@7 ~@3]/3", B: "f#3 g3 a3 ~", C: "a3 c4 b3 d#4",
  D: "[d4@3 c4@3 [a3,c4]@2]/2", E: "a3 g3 f3@2, [a#3,d4]", F: "[e3,g3] [f3,a3], c4",
  G: "[c4@6 a#3@6 g3@24 [f3,a3]@17 ~ [f3,a3]@4 ~@2 [f#3,a3]@6 [f#3,a3]@6 [f#3,a3]@6 [f#3,a3]@6 [e3,a3]@18 e3@6 [f#3,a3]@6 [f#3,a3]@6 [f#3,a3]@6 [f#3,a3]@6 [e3,a3]@18 e3@6 ~@12, f3 ~@4 d2@2 e2@2 d2@2 e2@2 ~]/7", // F F#m A5 F#m A5
  H: "~@6 e3@5 ~@13", I: "~ e3 f#3 g3", J: "a3@11 ~ a3@6 c4@6", K: "b3 a3 g3@2", L: "g3@12 g3@11 ~", M: "g3 a3 a#3@2",
  N: "[a#3@12 c4@6 a#3@5 a3@12 ~ c4@6 a#3@6]/2", O: "g3", P: "f3@23 ~", Q: "[f#3@12 g3@5 ~ a3@18 a3@6 a3@6]/2",
  R: "b3@2 a3 b3", S: "a3@3 a#3", T: "f3@2 f3 ~", U: "g3@3 ~", V: "g3 ~",
  W: "[[b3,d4]@12 [c4,e4]@6 ~@30 c4@11 d4@6 ~ [c4,e4]@6, ~@3 d4@4 e4@3 ~@2, ~ b3 ~]/3", X: "[d4,f#4] [c4,d4]",
  Y: "[d4,f#4]@2 [a3,d4] [a3,d#4]", Z: "a#3@18 a#3 ~@5", AA: "a#3@3 g#3", AB: "g#3@17 ~ g#3@6", AC: "g#3",
  AD: "[e3@11 ~@19 c4@6 b3@6 c4@6, c4@3 d4@2 ~@3, ~ f3 e3@2]/2", AE: "f3@2 [g3,c4] a3, c4 ~@23",
  AF: "[g3,b3]@9 c4@8 ~ c4@6, ~@9 g3@14 ~", AG: "f3@12 g3@6 a3@5 ~, c4 ~@23",
  AH: "[b3@8 ~ c4@6 d4@4 ~@29 f3@12 f3@6 d3@6 g3@24, ~@5 g3@7 ~@12, ~@24 g2@71 ~]/4", AI: "a2 g2",
  AJ: "b3@8 ~ c4@6 d4@4 ~ g3@4", AK: "[b3@8 ~ c4@6 d4@4 ~ g3@28]/2",
})).s("gm_string_ensemble_2").gain(0.63).pan(0.7)

// chords · piano
const piano = note(`<
  ~@17 A@3 B C D E F G H I J K L M N O P Q R S T U V S W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AK AM AN AO AI AP AQ
  AH AI AR AN AO AI AP AQ AH AI AR AS@5
>`.pickRestart({
  A: "[~ [c3,e3,g3] [d3,f#3,a3] [d3,f#3,a3]@2 [e3,a3] [d3,f#3,a3] ~ [d5,f#5] [e3,a3] [d3,f#3] [d3,g3], ~@7 [d3,f#3,a3]@2 ~@3]/3", // C D A5 D A5 D G5 D
  B: "[d3,a3] e4", C: "e4 [f#3,d#4] [g3,d4]@2", D: "d4 c4 [c4,d#4,g4]@2, g3 ~",
  E: "g4 f#4 [a#3,d4,a4] [a#3,d4,g4], d4 ~", F: "[a#3,d4,a4] [a#3,d4,g4] c4!2, ~ [g3,g4]",
  G: "[a3,c4,g4] [a3,c4,f4] c4 a#3, ~ [f3,d4]", H: "f4 d#4 d4 c4, [g3,a#3]", I: "[f3,a3,c4]",
  J: "[a3,d4,f#4]@2 [g3,d4,g4] [a3,c#4,e4]", K: "[a3,d4,f#4]@2 [a3,c#4,e4] [a3,d4,f#4]",
  L: "[b3,d4,a4] [b3,d4,g4] [a3,d4,a4] [b3,d4,g4]", M: "[a3,c#4,e4]@3 [a#3,d4,f4,g4]", N: "[a3,c4,f4]@3 [a#3,e4,g4]",
  O: "[a3,c4,f4]@3 [g#3,c4,d#4]", P: "[g3,a#3,d#4]@3 [g#3,c4,d#4]", Q: "[g3,a#3,d#4]",
  R: "[g3,b3,d4]@2 [g3,c4,g4] [a3,d4,f#4]", S: "[g3,b3,d4]@2 [a3,d4,f#4] [b3,d4,g4]", T: "[g3,c4,e4]@2 [g3,d4] [a3,c4]",
  U: "[a3,d4,f#4]@2 [c4,e4,g4]!2", V: "[b3,d4,g4]@2 [c4,g4] [a3,d4,f#4]", W: "[d4,e4,g4]@2 [g3,d4,g4] [g3,c4,g4]",
  X: "[a3,d4,f#4]!2 [f#3,a3,d4] [f3,a3,c4,d#4]", Y: "[f3,a#3,d4]@3 [g3,a#3,d#4]", Z: "[f3,a#3,d4]@3 [g#3,c#4,f4]",
  AA: "[g#3,c4,d#4]@3 [g#3,c#4,f4]", AB: "[g#3,c4,d#4]@2 [g#3,c4,d#4]!2",
  AC: "[g3,c4,e4]@3 [c4,e4,g4]!3 [c4,f4]@3 [b3,d4,g4]@3", AD: "[c4,e4,g4] [g3,c4,e4] [b3,d4,g4] [g3,c4,e4]",
  AE: "[a3,c4,g4]@2 [a3,c4,f4]@2 [g3,c4,g4]@3 [a3,c4,f4]", AF: "[d4,g4]@3 [a3,c4,f4,g4]@3 [a3,c4,f4,g4]@2, b3 ~@3",
  AG: "[g3,c4,e4]@6 d4@2 ~@2 g4@2 [c4,f4]@6 ~@3 g4@3, ~ [g3,e4] ~@2, ~@4 c4@2 ~@3 [b3,d4]@3", // C F5 C Bm
  AH: "[d4,e4,g4] [c4,e4,g4] [b3,d4,g4] [g3,c4,e4]", AI: "[a3,c4,g4] [a3,c4,f4] [g3,c4,g4] [a3,c4,f4]",
  AJ: "[b3,d4]@3 [a3,c4,g4]@5, g4 ~@3", AK: "[b3,d4,f4]", AL: "[a3,c4,f4]", AM: "[f3,c4,f4]!2 [a3,c4,f4]!2",
  AN: "[e3,g3,c4]@2 [e3,g3,c4] [g3,c4,e4] [c4,f4]@2 [b3,d4,f4]@2", AO: "[d4,g4] [c4,g4] [b3,d4,g4] [g3,c4,e4], e4 ~",
  AP: "[b3,d4,g4]@9 [c4,d4,g4]@4 ~ [c4,d4,g4]@6 [c4,d4,g4]@4", AQ: "[e3,g3,c4] [g3,c4,e4] [f3,c4,f4] [b3,d4,g4]",
  AR: "[b3,d4,g4]@9 [c4,d4,g4]@7 [c4,d4,g4]@8", // G Csus2
  AS: "[~@17 [b4,d5,b5]@3 ~@6 d5@3 ~ [b4,b5]@3 ~@3 g5@2 ~ e5@3 e5@2 ~ c5@3 c5@3 ~@15 c2@38 ~@16, ~@20 [b4,b5]@9 d5@4 ~@5 c5@6 ~ e5@6 ~ c5@48 ~@20, ~@20 d5@6 [f5,d6]@7 c6@11 ~@13 g3@47 ~@16, ~@23 [c5,e5,c6]@10 [c5,e5]@6 [g4,g5]@5 [e4,g4]@7 [c4,e4,g4]@48 ~@21]/5", // Bm B Dm C G Em C
})).s("gm_piano").gain(0.4).pan(0.3)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note("<~@17 A B@2 C D E F G H I J@7 K@8 L@8 M@4 N@8 O@8 P@7 ~@4>".pickRestart({
  A: "~@12 [a3,d4,f#4]@6 [f#3,a3,d4]@5 [f#3,a3,d4]", // D
  B: "[[f#3,a3,d4]@2 [f#3,a3,d4]@4 [e3,a3,c#4]@6 [f#3,a3,e4]@6 [f#3,a3,d4]@5 [f#3,a3,e4]@7 [e3,a3,e4]@5 ~ d4@6 [d3,g3,d4]@6, ~@35 [d3,f#3]@7 ~@6]/2", // D A F#m7 D F#m7 A5 G5 D
  C: "[d3,a3,d4]@11 ~ [c4,e4]@11 [a3,c4,e4], ~@11 a3@12 ~", // D5 C Am
  D: "[a3,c4,e4]@2 [c4,e4,f#4]@4 [b3,d#4,f#4]@5 ~ [g3,d4]@11 [d#3,g3,d4], ~@11 d3@11 ~@2", // Am F#m7b5 B G5 D#maj7
  E: "[a#3,d4,g4]@6 [a#3,c4,g4]@5 c4 [d#4,g4]@11 [d#3,g3,c4]", // Gm C7 D# Cm
  F: "[a3,d4,g4] [a3,d4,g4]@2 [a3,d4,f#4]@3 [a#3,d4,a4]@3 [a#3,d4,g4]@3", // Dsus4 D A#maj7 Gm
  G: "[a#3,d4,a4]@6 [a#3,d4,g4]@5 ~ [g3,c4,g4]@6 [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 [g3,c4,g4]", // A#maj7 Gm C5
  H: "[g3,c4,g4]@6 [a3,c4,f4]@6 [f3,c4,f4]@3 [f3,c4,f4]@3 [a#3,d4,f4]@2 [a#3,d4,f4] [a#3,d4,f4]@2 [a#3,d4,f4]", // C5 F F5 A#
  I: "[g3,a#3,f4]@3 [g3,a#3,f4]@3 [g3,a#3,d#4]@3 [g3,a#3,d#4]@3 [g3,a#3,d4]@3 [g3,a#3,d4]@3 [d#3,g3,c4]@2 [d#3,g3,c4] [d#3,g3,c4]@2 [d#3,g3,c4]", // Gm7 D# Gm Cm
  J: "[[a3,f4]@3 [a3,c4,f4]@3 [a3,c4,f4]@5 [a3,c4,f4] [a3,c4,f4]@2 [a3,c4,f4]@9 a3 f#4@3 [a3,d4,f#4]@3 [a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4,f#4] [g3,b3,g4]@3 [g3,b3,g4]@2 [g3,b3,g4] [a3,c#4,e4]@2 [a3,c#4,e4] [a3,c#4,e4]@2 ~ f#4@3 [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4,f#4] [a3,c#4,e4]@3 [a3,c#4,e4]@2 [a3,c#4,e4] [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,b3,g4]@2 ~ a4@3 [a3,d4,a4]@2 [a3,d4,a4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [a3,c#4,e4]@2 [a3,c#4,e4] [a3,c#4,e4]@3 [a3,c#4,e4]@2 ~ e4@3 [a3,c#4,e4]@2 [a3,c#4,e4] [a#3,d4,f4]@2 [a#3,d4,f4] [a#3,d4,f4]@2 ~ f4@3 [a3,c4,f4]@3 [a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4,f4] [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@2 ~ f4@3 [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4,f4] [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@2 [a#3,d#4], c4 ~@22 d4@4 ~@20 [a3,d4]@4 ~@20 [g3,b3]@4 ~@8 [a3,d4]@4 ~@8 [a3,c#4]@4 ~@8 [a3,c#4]@4 ~@8 [a3,c4]@4 ~@20 [a3,c4]@4 ~@21]/7", // Dm F D G A D A D …
  K: "[g4@3 [a#3,d#4,g4]@2 [a#3,d#4,g4] [a#3,d#4,g4]@3 [a#3,d#4,g4]@2 ~ g4@3 [a#3,d#4,g4]@2 [a#3,d#4,g4] [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@2 ~ g4@3 [a#3,d#4,g4]@2 [a#3,d#4,g4] [a#3,d#4,g4]@3 [a#3,d#4,g4]@2 ~ g4@3 [a#3,d#4,g4]@2 [a#3,d#4,g4] [a#3,d#4,g4]@2 [a#3,d#4,g4] [a#3,d#4,g4]@2 ~ g4@3 [g3,b3,g4]@3 [g3,b3,g4]@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,c4,g4]@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,b3,g4]@2 [g3,b3,g4] [a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4,f#4] [b3,d4,g4]@2 [b3,d4,g4] [b3,d4,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 ~ f#4@3 [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@3 [a3,d4,f#4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@2 ~ g4@3 [g3,b3,g4]@3 [g3,b3,g4]@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,c4,g4]@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,b3,g4]@2 [g3,b3,g4] [a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4,f#4] [b3,d4,g4]@2 [b3,d4,g4] [b3,d4,g4]@2 [g3,c4], ~@11 [a#3,d#4]@4 ~@8 [a#3,d#4]@4 ~@8 [a#3,d#4]@4 ~@8 [g3,b3]@4 ~@20 [g3,b3]@4 ~@20 [g3,c4]@4 ~@8 [g3,b3]@4 ~@8 [a3,d4]@4 ~@8 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,b3]@4 ~@21]/8", // D# G# D# G C5 D G D …
  L: "[e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 ~ f#4@3 [a3,d4,f#4]@2 [a3,d4,f#4] [a3,d4,f#4]@3 [a3,d4,f#4]@2 ~ f#4@3 [a3,d4,f#4]@2 [a3,d4,f#4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ f4@3 [a#3,d4,f4]@3 [a#3,d4,f4]@3 [a#3,d4,f4]@2 [a#3,d4,f4]@4 [a#3,d4,f4]@2 [a#3,d4,f4] [a#3,d#4,f4]@2 [a#3,d#4,f4] [a#3,d#4,f4]@2 ~ f4@3 [a#3,d4,f4]@2 [a#3,d4,f4] [a#3,d4,f4]@3 [a#3,d4,f4]@2 [a#3,d4,f4] [a#3,d4,f4]@3 [a#3,d4,f4]@2 [a#3,d4,f4] [c#4,f4,g#4]@2 [c#4,f4,g#4] [c#4,f4,g#4]@2 ~ g#4@3 [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@3 [c4,d#4,g#4]@2 ~ g#4@3 [c4,d#4,g#4]@2 [c4,d#4,g#4] [c#4,f4,g#4]@2 [c#4,f4,g#4] [c#4,f4,g#4]@2 ~ g#4@3 [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@3 [c4,d#4,g#4]@2 ~ g#4@3 [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@2 [c4,d#4,g#4] [c4,d#4,g#4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 [a3,c4], ~@11 [g3,b3]@4 ~@8 [a3,d4]@4 ~@8 [a3,d4]@4 ~@8 [a#3,d4]@4 ~@20 [a#3,d4]@4 ~@20 [c4,d#4]@4 ~@8 [c4,d#4]@4 ~@8 [c4,d#4]@4 ~@8 [c4,d#4]@4 ~@8 [g3,c4]@4 ~@20 [g3,c4]@4 ~@21]/8", // C G Am7 D F A# A#sus4 A# …
  M: "[g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [a3,c4,g4]@6 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 [a3,c4], ~@11 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,c4]@4 ~@20 [g3,c4]@4 ~@21]/4", // Am7 F C5 F G Am7 C F5 …
  N: "[g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [a3,c4,g4]@6 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,g4]@2 ~ f4@6 [g3,b3,f4]@6 [g3,b3,f4]@3 [g3,b3,f4]@2 [g3,b3,f4] [g3,b3,f4]@2 [g3,b3,f4] [g3,b3,f4]@2 ~ f4@6 [a3,d4,f4]@6 [a3,d4,f4]@3 [a3,d4,f4]@2 [a3,d4,f4] [a3,d4,f4]@2 [a3,d4,f4] [a3,d4,f4]@2 ~ f4@6 [g3,b3,f4]@6 [g3,b3,f4]@3 [g3,b3,f4]@2 [g3,b3,f4] [g3,b3,f4]@2 [g3,b3,f4] [g3,b3,f4]@2 ~ f4@3 [f3,c4,f4]@2 [f3,c4,f4] [f3,c4,f4]@3 [f3,c4,f4]@2 ~ f4@3 [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 [a3,c4], ~@11 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,b3]@7 ~@17 [a3,d4]@7 ~@17 [g3,b3]@7 ~@17 [f3,c4]@4 ~@8 [a3,c4]@4 ~@8 [g3,c4]@4 ~@20 [g3,c4]@4 ~@21]/8", // Am7 F C5 F G Am7 G7 Dm …
  O: "[g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,c4,g4]@6 [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 c4 g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,c4,g4]@6 [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 [a3,c4], ~@11 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,c4]@4 ~@20 [g3,c4]@4 ~@20 a3@4 ~@8 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,c4]@4 ~@20 [g3,c4]@4 ~@21]/8", // Am7 F C5 F G C5 C F5 …
  P: "[g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,c4,g4]@6 [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 ~ e4@3 [g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [f3,c4,f4]@3 [f3,c4,f4]@2 [f3,c4,f4] [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@2 ~ e4@3 [g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4] [b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4,g4] [a3,c4,e4]@2 [a3,c4,e4] [a3,c4,e4]@2 c4 g4@3 [a3,c4,g4]@2 [a3,c4,g4] [a3,c4,f4]@3 [a3,c4,f4]@2 ~ g4@3 [g3,c4,g4]@2 [g3,c4,g4] [a3,c4,f4]@2 [a3,c4,f4] [a3,c4,f4]@2 ~ g4@3 [g3,b3,g4]@2 [g3,b3,g4] [g3,b3,g4]@3 [g3,c4,g4]@6 [g3,c4,g4]@2 [g3,c4,g4] [g3,c4,g4]@2 [g3,c4,g4] [c4,g4]@27, ~@11 [g3,c4]@4 ~@8 [g3,b3]@4 ~@20 [g3,c4]@4 ~@20 [g3,c4]@4 ~@20 a3@4 ~@8 [g3,c4]@4 ~@8 [g3,b3]@4 ~@18 g3@25 ~@2]/7", // Am7 F C5 F G C5 C F5 …
})).s("gm_acoustic_guitar_steel").gain(0.17).pan(0.9)

// other · french horn
const french_horn = note(`<
  A B C D@2 E@2 F@2 G H I J K@3 L M@3 ~@7 N@2 ~@3 O P Q R S T@2 U V W X Y Z AA AB@2 AC AD@2 AE AF@2 AG AH@2 AI AJ AK AC
  AL AG AE AM AJ AN AO AC AL AG AE AM AJ AN AP@2 ~@4
>`.pickRestart({
  A: "~@3 [e3,a3]", B: "[f#3,a3,d4]@3 [e3,a3]", C: "[f#3,a3,d4]@2 [f#3,a3] [e3,a3]", D: "[f#3,a3]@3 [e3,a3]", E: "a3",
  F: "[d4@3 c4@3 a3@2]/2", G: "d4", H: "g4@3 f4", I: "d4@2 f4 d#4", J: "d4 c4 c4@2",
  K: "[f3@12 ~@5 d4@6 c#4@6 a3@6 ~ c4@17 ~@13 d4@6]/3", L: "c#4@6 a3@6 c4@11 ~",
  M: "[g3@6 [e3,g3]@6 a3@17 ~ a3@5 ~ a3@16 ~@20]/3", N: "[~@11 c4@6 f4@6 f#4@12 ~ g4@6 ~@6]/2", O: "c4@3 g4",
  P: "f4@3 d#4", Q: "d#4@6 g4@6 g4@6 d#4@5 ~", R: "d#4 g4@3", S: "~ a4 g4 f#4 g4@2 f#4@2",
  T: "[a4@5 ~ g4@6 f#4@6 e4@18 d4@6 g4@6]/2", U: "f#4@6 f#4@3 a4@3 d4@11 ~", V: "b4 a4 g4 f#4 g4@2 f#4@2",
  W: "a4@6 g4@6 f#4@6 e4@5 ~", X: "e4@11 ~ d4@6 c4@6", Y: "a3@18 a3@5 ~", Z: "a#3@3 a#3",
  AA: "f4@3 d4@3 ~@12 g#3@5 ~, a#3@3 ~, ~ f4@3", AB: "[g#4@6 d#4@6 g#4@18 g#4@5 g#4!2 ~@5 g#4!6]/2", AC: "g4 f4",
  AD: "[e4@2 ~@2 g4 f4 g4 a4, ~ g4 ~@2, ~@3 c4@5]/2", AE: "g4@9 g4@14 ~",
  AF: "[e5@3 d5@3 c5@3 b4@2 ~ c5@6 ~@3 g4@27]/2", AG: "g4 f4 g4 a4", AH: "[g4@8 ~ g4@5 ~ g4@33]/2", AI: "a4", AJ: "g4",
  AK: "f4@6 f4@5 ~ f4@12", AL: "e4@2 d4 e4", AM: "g4@2 c5 b4", AN: "g4@2 f4@2 g4@2 f4 a4", AO: "g4@8 ~ g4@11 f4@4",
  AP: "[g4@8 ~ g4@11 f4@28]/2",
})).s("gm_french_horn").gain(0.36).pan(0.3)

// chords · pad warm
const pad_warm = note("<A@3 B@2 C D E@2 F G H@7 ~@63>".pickRestart({
  A: "[~@3 [a1,e3] [d2,f#3]@3 [a1,e3] [d2,f#3]@3 [a1,e3,a3], ~@3 a3@4 a3@4 ~]/3", B: "[d2,f#3,a3]@3 [a1,e3,a3]",
  C: "[d2,f#3] [e2,g3] ~ d4, a3 [f#2,d3,a3]", D: "[c2,f#3] [f#1,f#2,e3,c4] e3 d#3, a3 [b1,a3]",
  E: "[d4 ~ [a1,a2,g3] [d2,d3,f#3,a3], [a#1,a#2,g3] ~, ~ d#4@2 ~, ~@18 c4@29 ~]/2", F: "[g1,g2] [f1,f2], [g3,a#3,d4]",
  G: "[e1,e2,g3] [f1,f2,f3,a3], c4", // Em F
  H: "[c4@6 ~@6 [d#2,d#3,g3]@24 [f3,a3]@24 d4@12 c#4@6 a3@6 [e2,e3,c4]@24 ~@6 d4@6 c#4@6 ~@6 a1@11 ~ g2@5 ~ [c2,e3,g3]@6 ~@12, [a#1,a#2,d3,f3]@12 ~@48 [d2,d3,f#3]@24 ~@24 [d2,d3,f#3]@24 [e3,c4]@17 ~@19, ~@6 a#3@30 ~@48 a3@30 ~@12 a3@23 ~@19]/7", // D# F C A# D C
})).s("gm_pad_warm").gain(0.29)

// chords · trombone
const trombone = note("<A B C ~@14 D E ~@14 F ~ G ~@9 H I J ~@15 K L ~@2 M N O P Q N O P R@2 ~@4>".pickRestart({
  A: "~@3 a1", B: "d2@3 a1", C: "d2@3 ~", D: "~ d2", E: "~@6 a1@5 ~@13", F: "~@9 [f3,a3]!4 ~@11",
  G: "~@9 [g4,a#4]!4 ~@11", H: "~@9 [d4,f4,a#4]!4 ~@11",
  I: "[c4,d#4] ~@2 [c4,d#4]!4 ~@2 [c4,d#4]!4 ~@2 [c4,d#4]!3 [a#3,c#4]@6", // Cm A#m
  J: "[c4,d#4] ~@2 [c4,d#4]!4 ~@2 [c4,d#4]!4 ~@2 [c4,d#4]!9", // Cm
  K: "g4@6 g2@2 ~ g2@5 ~ [g2,f3,g3]@4 ~ g3@4, ~@19 [g2,f3]@4 ~", L: "[c3,e3,g3] f3", M: "[g3,d4]@8 [g2,g3]@15 ~",
  N: "g3@2 a3 g3", O: "e3@2 d3 c3", P: "c3@11 ~ c3@5 ~ c3@6",
  Q: "b4@2 ~ d5@2 ~ d5@2 ~ g4@5 [f3,g4]@5 ~ [f3,g4]@4, d3@7 ~@5", // Fsus2
  R: "[b4@2 ~ d5@2 ~ d5@2 ~ g4@5 [f3,g4]@5 ~ [f3,g4]@28, d3@7 ~@17]/2", // Fsus2
})).s("gm_trombone").gain(0.64).pan(0.3)

// other · overdriven guitar
const overdriven_guitar = note("<~@28 A B C D ~@37 E F G H I F G ~@5>".pickRestart({
  A: "f#4@11 ~ d4@6 c#4@2 d4 e4@2 c#4", B: "c#4@2 a3@16 d4@2 e4 f#4@2 a4",
  C: "d4@3 d4@3 d4@3 d4@2 d4@3 d4@3 a3 d4@2 e4@2 e4@2", D: "e4@2 ~", E: "~@18 c4@2 d4 e4@2 g4",
  F: "c4@3 c4@3 c4@3 c4@2 c4@3 c4@3 g3 c4@2 d4@2 d4@2", G: "d4@2 ~",
// … 109 more lines

More by Zero