Strudelify
Non arriveranno I nostri cover art

1996 · L'Elefante E La Farfalla

Non arriveranno I nostri

Michele Zarrillo

KeyF majorTempo90 bpm
0:00/0:00
// Non arriveranno I nostri — Michele Zarrillo
// 90 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 114 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(90/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.

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  ~@4 A@2 B C A@2 B C A@2 B C D E F G H@5 I J K L M N K L M N O P Q R S T U O V W V X Y Z AA X Y Z AA AB AC AD AE AF AG
  AH AI AJ AK AJ AL AM AL AM AL AM AN AO X Y Z AA X Y Z AA AB AC AD AE AF AG AH AI AJ AK AJ AK AP AQ AR AS AT AU AV AS
  AT AU AV AS AT AU AV AS AT AU AW@3
>`.pickRestart({
  A: "~@4 bb3 ~@9 bb3 c4, f4@5 f4@3 f4@5 f4@3, ~@2 bb3@2 ~@2 bb3@3 ~ bb3@2 bb3@2 ~@2, ~@3 c4@4 c4@3 ~ c4@4 ~",
  B: "~@3 bb3@2 ~@6 bb3@2 ~ bb3 c4, eb4@5 c4@2 c4@3 ~@3 c4@2 ~, ~@6 bb3@2 eb4@5 ~@3",
  C: "~@3 c4@2 ~@8 f4 bb3 c4, f4@5 f4@2 c4@3 bb3@2 bb3@2 ~@2, ~@2 bb3@3 ~ bb3@2 f4@5 ~@3, ~@11 c4@3 ~@2",
  D: "~@4 a3 ~@9 a3 c4, f4@5 f4@3 f4@5 f4@3, ~@2 a3@2 ~@2 a3@3 ~ a3@2 a3@2 ~@2, ~@3 c4@4 c4@3 ~ c4@4 ~",
  E: "~@4 bb3 ~@9 bb3 c4, f4@5 f4@3 eb4@5 eb4@3, ~@2 bb3@2 ~@2 bb3@3 ~ g3@2 g3@2 ~@2, ~@3 c4@4 c4@3 ~ bb3@3 ~@2",
  F: "~@3 bb3@2 ~@6 c4@2 ~ a3 c4, eb4@5 g4@2 bb3@3 a3@3 ~@3, ~@2 g3@3 ~ eb4@2 g4@5 f4@2 ~",
  G: "~@3 c4@2 ~@8 f4 bb3 c4, f4@5 f4@2 c4@3 bb3@2 bb3@2 ~@2, ~@2 a3@3 ~ bb3@2 f4@5 ~@3, ~@11 c4@3 ~@2",
  H: "[~@5 f4@3 ~@4 g3 ~@9 a3 c4 ~@4 bb3 ~@9 bb3 c4 ~@3 bb3@2 ~@6 c4@2 ~ a3 c4 ~@3 c4@2 ~@8 f4 bb3 c4 ~@3 c4@3 f4@2, f4@5 ~@3 eb4@5 eb4@3 f4@5 f4@3 f4@5 f4@3 eb4@5 eb4@3 eb4@5 g4@3 g4@5 f4@2 ~ f4@5 f4@2 ~ f4@5 ~@3 f4@5 ~@3, ~@2 bb3@2 bb3@2 ~@4 g3@2 ~@2 a3@3 ~ a3@2 a3@2 ~@4 bb3@2 ~@2 bb3@3 ~ g3@2 g3@2 ~@4 g3@3 ~@2 bb3@3 a3@3 ~@5 a3@3 ~ bb3@3 ~ bb3@2 bb3@2 ~@4 bb3@2 ~@4, ~@3 c4@3 ~@5 bb3@4 c4@3 ~ c4@4 ~@4 c4@4 c4@3 ~ bb3@3 ~@8 eb4@2 ~@15 c4@3 ~ c4@3 ~@10]/5",
  I: "~@4 g3 ~@9 a3 c4, eb4@5 eb4@3 f4@5 f4@3, ~@2 g3@2 ~@2 a3@3 ~ a3@2 a3@2 ~@2, ~@3 bb3@4 c4@3 ~ c4@4 ~",
  J: "[bb3,d4,f4]@15 ~", // Bb
  K: "[d4,f4]@2 [d4,f4] [bb3,d4] [bb3,d4,f4] bb2 [d4,f4] [f3,bb3,d4,f4] e3 bb3!2 [f3,bb3] [bb3,d4,f4]@2 [bb3,d4,f4]!2, ~@9 [d4,f4]@3 ~@4", // Dm Bb Dm Bb Bb5 Bb Dm
  L: "[g3,bb3,d4]@2 [g3,bb3] [g3,bb3,d4]!2 ~ [g3,d4] [bb3,d4] [g3,ab3] [bb3,d4] [g3,bb3] [g3,bb3,d4]!2 ~ [g3,bb3,d4]@2", // Gm G5 Bb Abmaj7 Bb Gm
  M: "[c4,eb4,ab4]@2 [eb4,ab4]!2 [c4,eb4,ab4] eb4 [eb4,ab4] [c4,eb4,ab4] ~ ab4!2 [eb4,ab4] [c4,eb4,ab4]@2 [c4,eb4,ab4]!2, ~@9 [c4,eb4]@3 ~@4", // Ab Ab5 Ab Ab5 Ab Ab5 Ab Cm
  N: "[bb3,eb4,g4]@2 [eb4,g4] [bb3,eb4,g4]!2 ~ [eb4,g4]!2 [bb3,eb4,g4] [eb4,g4]!2 [bb3,eb4,g4]!2 ~ [bb3,eb4,g4]@2", // Eb
  O: "[c4,f4]@2 [c4,f4]!2 [a3,c4,f4] f4 [c4,f4] [a3,c4,f4] c4 [a3,c4,f4] a3 [a3,c4] [a3,c4,f4]@2 [a3,c4,f4]!2", // F5 F F5 F Am F
  P: "[f3,bb3,d4]@2 [bb3,d4] [f3,bb3,d4]!2 ~ [bb3,d4]!2 [bb3,eb4]!3 [g3,bb3,eb4]!2 ~ [g3,bb3,eb4]@2", // Bb Eb5 Eb
  Q: "[c4,eb4,g4]@6 [eb4,g4] [c4,eb4,g4] [c4,f4]@2 [c4,f4]!2 [a3,c4,f4] f4 [c4,f4] [a3,c4,f4]", // Cm Eb Cm F5 F F5 F
  R: "c4 [a3,c4,f4] a3 [a3,c4] [a3,c4,f4]@2 [a3,c4,f4]!2 [bb3,d4,f4]@2 [d4,f4] [bb3,d4,f4]!2 ~ [d4,f4]!2", // F Am F Bb Dm Bb Dm
  S: "[d4,f4]!3 [bb3,d4,f4] [bb3,c4] ~ [bb3,c4]@2 [bb3,eb4]@2 [bb3,eb4]!2 [g3,bb3,eb4] eb4 [bb3,eb4] [g3,bb3,eb4]", // Dm Bb Bbsus2 Eb5 Eb Eb5 Eb
  T: "f4 [a3,c4,f4] f4 [c4,f4] [a3,c4,f4]@2 [a3,c4,f4]!2 [f3,bb3,d4]@2 [bb3,d4] [f3,bb3,d4]!2 ~ [bb3,d4]!2", // F F5 F Bb
  U: "[bb3,eb4]!3 [g3,bb3,eb4]!2 ~ [g3,bb3,eb4]@2 [c4,eb4,g4]@4 [eb4,g4]@4", // Eb5 Eb Cm Eb
  V: "[f3,bb3,d4]@2 [bb3,d4] [f3,bb3,d4]!2 ~ [bb3,d4]!2 ~ [bb3,d4]@2 [bb3,d4] [f3,bb3,d4] [bb3,d4] ~ [bb3,d4]", // Bb
  W: "[bb3,eb4]@2 [bb3,eb4]!2 [bb3,d4,eb4] eb4 [bb3,eb4]!2 c4 [a3,c4,f4] a3 [a3,c4] [a3,c4,f4]@2 [a3,c4,f4]!2", // Eb5 Ebmaj7 Eb5 F Am F
  X: "[e4,g4]@2 [e4,g4] [c4,e4] [c4,e4,g4] c3 [e4,g4] [g3,c4,e4,g4] gb3 c4!2 [g3,c4] [c4,e4,g4]@2 [c4,e4,g4]!2, ~@9 [e4,g4]@3 ~@4", // Em C Em C C5 C Em
  Y: "[a3,c4,e4]@2 [a3,c4] [a3,c4,e4]!2 ~ [a3,e4] [c4,e4] [a3,bb3] [c4,e4] [a3,c4] [a3,c4,e4]!2 ~ [a3,c4,e4]@2", // Am A5 C Bbmaj7 C Am
  Z: "[d4,f4,bb4]@2 [f4,bb4]!2 [d4,f4,bb4] f4 [f4,bb4] [d4,f4,bb4] ~ bb4!2 [f4,bb4] [d4,f4,bb4]@2 [d4,f4,bb4]!2, ~@9 [d4,f4]@3 ~@4", // Bb Bb5 Bb Bb5 Bb Bb5 Bb Dm
  AA: "[c4,f4,a4]@2 [f4,a4] [c4,f4,a4]!2 ~ [f4,a4]!2 [c4,f4,a4] [f4,a4]!2 [c4,f4,a4]!2 ~ [c4,f4,a4]@2", // F
  AB: "[d4,g4]@2 [d4,g4]!2 [b3,d4,g4] g4 [d4,g4] [b3,d4,g4] d4 [b3,d4,g4] b3 [b3,d4] [b3,d4,g4]@2 [b3,d4,g4]!2", // G5 G G5 G Bm G
  AC: "[g3,c4,e4]@2 [c4,e4] [g3,c4,e4]!2 ~ [c4,e4]!2 [c4,f4]!3 [a3,c4,f4]!2 ~ [a3,c4,f4]@2", // C F5 F
  AD: "[d4,f4,a4]@6 [f4,a4] [d4,f4,a4] [d4,g4]@2 [d4,g4]!2 [b3,d4,g4] g4 [d4,g4] [b3,d4,g4]", // Dm F Dm G5 G G5 G
  AE: "d4 [b3,d4,g4] b3 [b3,d4] [b3,d4,g4]@2 [b3,d4,g4]!2 [c4,e4,g4]@2 [e4,g4] [c4,e4,g4]!2 ~ [e4,g4]!2", // G Bm G C Em C Em
  AF: "[e4,g4]!3 [c4,e4,g4] [c4,d4] ~ [c4,d4]@2 [c4,f4]@2 [c4,f4]!3 f4 [c4,f4]!2", // Em C Csus2 F5
  AG: "g4 ~ g4 [d4,g4] [d4,g4]@2 [d4,g4]!2 [c4,e4]@2 [c4,e4]!3 ~ [c4,e4]!2, ~ [d4,g4]@2 ~@13", // G5 C G5
  AH: "[c4,f4]!5 ~ [c4,f4]@2 [f4,a4]@4 [f4,a4]@4", // F5 F
  AI: "[d4,g4]@2 [d4,g4]!3 g4 [d4,g4]!2 d4 [d4,g4]@2 d4 [d4,g4]@2 [d4,g4]!2", // G5
  AJ: "[c4,e4]@2 [c4,e4]!3 ~ [c4,e4]!2 ~ [c4,e4]@2 [c4,e4]!3 ~ [c4,e4]", // C
  AK: "[c4,f4]@2 [c4,f4]!2 [c4,e4,f4] f4 [c4,f4]!2 d4 [d4,g4]@2 d4 [d4,g4]@2 [d4,g4]!2", // F5 Fmaj7 F5 G5
  AL: "[eb4,ab4]@2 [eb4,ab4]!3 ab4 [eb4,ab4]!2 d4 f4@2 c4 [c4,f4]@2 [c4,f4]!2, ~@9 c4 ~@6", // Ab5 F5
  AM: "[d4,f4]@2 [d4,f4]!3 ~ [d4,f4]!2 ~ [eb4,g4]@2 [eb4,g4]!3 ~ [eb4,g4]", // Dm Eb
  AN: "[eb4,ab4]@2 [eb4,ab4]!3 ab4 [eb4,ab4]!2 ~ [eb4,ab4]!4 ab4 [eb4,ab4]!2", // Ab5
  AO: "[d4,eb4,ab4]@2 [eb4,ab4]!3 ~ [eb4,ab4]!2 ~ [eb4,ab4]@2 [eb4,ab4] [f4,bb4]!2 ~ [f4,bb4]", // Ab Ab5 Bb5
  AP: "[d4,g4]@2 [d4,g4]!3 ~ [d4,g4]!2 ~ [d4,g4]@2 [d4,g4]!3 ~ [d4,g4]", AQ: "[d4,g4]@2 [d4,g4]!3 ~ [d4,g4]!3 ~@7",
  AR: "~@8 [e4,g4]@2 [e4,g4] [c4,e4] [c4,e4,g4] c3 [e4,g4] [g3,c4,e4,g4]", // Em C Em C
  AS: "gb3 c4!2 [g3,c4] [c4,e4,g4]@2 [c4,e4,g4]!2 [a3,c4,e4]@2 [a3,c4] [a3,c4,e4]!2 ~ [a3,e4] [c4,e4], ~ [e4,g4]@3 ~@12", // C5 C Am A5 C Em
  AT: "[a3,bb3] [c4,e4] [a3,c4] [a3,c4,e4]!2 ~ [a3,c4,e4]@2 [d4,f4,bb4]@2 [f4,bb4]!2 [d4,f4,bb4] f4 [f4,bb4] [d4,f4,bb4]", // Bbmaj7 C Am Bb Bb5 Bb Bb5 Bb
  AU: "~ bb4!2 [f4,bb4] [d4,f4,bb4]@2 [d4,f4,bb4]!2 [c4,f4,a4]@2 [f4,a4] [c4,f4,a4]!2 ~ [f4,a4]!2, ~ [d4,f4]@3 ~@12", // Bb5 Bb F Dm
  AV: "[c4,f4,a4] [f4,a4]!2 [c4,f4,a4]!2 ~ [c4,f4,a4]@2 [e4,g4]@2 [e4,g4] [c4,e4] [c4,e4,g4] c3 [e4,g4] [g3,c4,e4,g4]", // F Em C Em C
  AW: "[[c4,f4,a4] [f4,a4]!2 [c4,f4,a4]!2 ~ [c4,f4,a4]@2 c4@29 ~@11, ~@8 e4@25 ~@15, ~@4 g4@11 ~@9]/3", // F
})).s("gm_acoustic_guitar_steel").gain(0.26).pan(0.4)

// chords · acoustic guitar nylon
const acoustic_guitar_nylon = note("<~@3 A@2 ~@109>".pickRestart({
  A: "[~@16 bb3@13 ~@3, ~@14 bb2@11 ~@7, ~@15 [d3,f3]@13 ~@4]/2", // Dm
})).s("gm_acoustic_guitar_nylon").gain(0.3)

// bass · electric bass finger
const bass = note(`<
  ~@3 A B C D E B F G H B C D I J K L M N O P Q R S T U V W X U V W Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AK AL
  AM AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BA BC BD BE BF BG AK AL AM AN AK AL AM AO AP AQ AR AS AT AU AV AW AX AY
  BH BI BJ@2 BK BL BM BN BO BL BM BP BQ BL BM BN BO BL BM BR BS@3
>`.pickRestart({
  A: "~ eb2", B: "bb1@15 ~", C: "g1@8 g2@6 f1 g1", D: "ab1 ab2", E: "eb1", F: "g1", G: "ab1!2", H: "eb2",
  I: "eb1@2 bb2 eb2", J: "f2 eb2", K: "bb1 eb2", L: "c2 f1", M: "eb1 bb1", N: "bb1@8 eb2@7 ~", O: "f1@2 bb1 ab1",
  P: "eb2 c2", Q: "f1@7 ~ eb1@8", R: "bb1!2", S: "eb2@7 ~ f1@8", T: "bb2", U: "bb1@5 ~ bb1!2 ~ bb1 bb1@4 bb1!2",
  V: "g1@2 ~ g1 ~ g1 f1 ~ g1@4 ~ eb1 g1 bb1", W: "ab1@5 ~ ab1!2 ~ ab1 ab1@4 ab1@2",
  X: "eb2@2 ~ eb2 ~ bb1 c2@2 eb2@4 ~ eb1 f2@2", Y: "eb2@2 ~ eb2 ~ bb1 c2@2 eb2@4 f2@2 bb2@2",
  Z: "f2@2 ~ f2 ~ c2 f2@2 eb2@4 eb2!2 eb2@2", AA: "bb1 ab1 eb2@2", AB: "c2@5 bb1 c2@2 f1@2 ~ f1 ~ eb1 f1@2",
  AC: "eb1@4 ~ eb1 eb1@2 bb1@4 ~ bb1!3", AD: "~ bb1 bb1@2 ab1!2 ab1@2 eb1@4 ~ eb1 ~ eb1",
  AE: "f1@3 ~ eb1@3 ~ bb1@3 ~ ab1@4", AF: "eb2@3 ~ d2@4 c2@3 ~ bb1@4", AG: "f2@2 ~ f2 ~ f2 ~ f2 eb1@4 ~ eb1 eb1@2",
  AH: "bb1@4 ~@2 bb1!2 ~ bb1 bb1@2 ab1!2 ab1@2", AI: "eb1@4 ~ eb1 ~ eb1 f1@4 ~ f1 f1@2", AJ: "bb1@3 bb1 bb1@4 bb2!8",
  AK: "c2@5 ~ c2!2 ~ c2 c2@4 c2!2", AL: "a1@2 ~ a1 ~ a1 g1 ~ a1@4 ~ f1 a1 c2", AM: "bb1@5 ~ bb1!2 ~ bb1 bb1@4 bb1@2",
  AN: "f2@2 ~ f2 ~ c2 d2@2 f2@4 ~ f1 g2@2", AO: "f2@2 ~ f2 ~ c2 d2@2 f2@4 g2@2 c3@2",
  AP: "g2@2 ~ g2 ~ d2 g2@2 f2@4 f2!2 f2@2", AQ: "c2 bb1 f2@2", AR: "d2@5 c2 d2@2 g1@2 ~ g1 ~ f1 g1@2",
  AS: "f1@4 ~ f1 f1@2 c2@4 ~ c2!3", AT: "~ c2 c2@2 bb1!2 bb1@2 f1@4 ~ f1 ~ f1", AU: "g1@3 ~ f1@3 ~ c2@3 ~ bb1@4",
  AV: "f2@3 ~ e2@4 d2@3 ~ c2@4", AW: "g2@2 ~ g2 ~ g2 ~ g2 f1@4 ~ f1 f1@2", AX: "c2@4 ~@2 c2!2 ~ c2 c2@2 bb1!2 bb1@2",
  AY: "f1@4 ~ f1 ~ f1 g1@4 ~ g1 g1@2", AZ: "c2@3 c2 c2@4 c3!8", BA: "ab1@2 ~ ab1 ~ ab1 ~ ab1 f1 ~ f1!2 ~ f1!2 ab1",
  BB: "bb1@5 ~ bb1!2 eb2@3 c2 eb2@2 c2 bb1", BC: "bb1@5 ~ bb1!2 eb2@4 d2@3 ~",
  BD: "c2@2 ~ c2 ~ f1 bb1@2 f1@3 f1 ~@2 ab1@2", BE: "bb1@5 ~ bb1!2 eb2 eb2@2 bb1 eb2@2 bb1@2", BF: "f2@4 f1@3 eb2",
  BG: "ab2@5 ~ bb2@2", BH: "c2@3 c2 c2@3 ~ c2 ~ c2!2 ~ c2 c2@2", BI: "f1@4 ~ f1 ~ f1 g1@8", BJ: "[g1@29 ~@3]/2",
  BK: "~@8 c2@5 ~ c2!2", BL: "~ c2 c2@4 c2!2 a1@2 ~ a1 ~ a1 g1 ~", BM: "a1@4 ~ f1 a1 c2 bb1@5 ~ bb1!2",
  BN: "~ bb1 bb1@4 bb1@2 f2@2 ~ f1@2 c2 d2@2", BO: "f2 g1 a1 c2!2 d2 f2 g2 c2@5 ~ c2!2",
  BP: "~ bb1 bb1@4 bb1@2 f3 e3 d3 c3 ~ c3 f3 e3", BQ: "d3 c3 bb2 a2 g2 f2 e2 d2 c2@5 ~ c2!2",
  BR: "~ bb1 bb1@4 bb1@2 f3 e3 d3 c3@2 c3 f3@2", BS: "[~ f3 e3 a2 f2 a2@3 c1@30 ~@10]/3",
})).s("gm_electric_bass_finger").gain(0.52)

// chords · pad halo
const pad_halo = note(`<
  A@16 B C@4 D E F G H I ~@8 B C@4 D E F G H J ~@8 K L@4 M B N O P Q R@2 S T U@2 ~@10 K L@4 M B N O P Q V@3 ~@19
>`.pickRestart({
  A: "[[f3,d4] [g3,d4,g4] [ab2,eb4,ab4] [eb2,eb4,g4], bb3@63 ~, d5@31 ~ eb5@31 ~]/4", B: "[c4,f4]",
  C: "[[d4,f4]@7 ~ [bb3,eb4]@16 [a3,c4,f4]@16 [bb3,d4]@12 [ab3,c4,eb4]@3 ~ [bb3,eb4]@8]/4", D: "[c4,f4] [bb3,d4,f4]",
  E: "[bb3,eb4]", F: "[a3,c4,f4]", G: "[bb3,d4]@12 [ab3,c4,eb4]@3 ~", H: "[bb3,eb4] [c4,f4]", I: "[bb3,d4,f4], bb6@7 ~",
  J: "[bb3,d4,f4]", K: "g2 f2, [b3,d4,g4]",
  L: "[[c4,e4,g4]@8 [c4,f4]@16 [b3,d4,g4]@16 [c4,e4]@12 [bb3,d4,f4]@3 ~ [c4,f4]@8]/4", M: "[d4,g4] [c4,e4,g4]",
  N: "[b3,d4,g4]", O: "[c4,e4]@3 [d4,f4]", P: "[c4,f4] [d4,g4]", Q: "[c4,e4,g4]", R: "[eb4 f4@2 [g4,bb4]]/2",
  S: "ab4@8 f4@7 ~", T: "f5 g5", U: "[eb5@4 f5@7 ~ g5@4]/2", V: "[[c4,f4] [d4,g4]@4 ~]/3",
})).s("gm_pad_halo").gain(0.16)

// other · pad new age
const pad_new_age = note(`<
  ~@30 A B C D A B ~ E ~@3 F G ~@6 H I ~ B H I ~ J ~@3 K L ~@25 K L ~@8 M ~@3 M ~@3 M ~@3 M ~ N@2 ~
>`.pickRestart({
  A: "~@8 eb6@3 ~ g6@2 ~@2", B: "f6 ~@7", C: "~@8 d6@3 ~ f6@2 ~@2", D: "eb6 ~@7", E: "~@4 g6@2 ~@2 f6@7 ~", F: "~@3 g6",
  G: "f6@3 ~@5", H: "~@8 f6@3 ~ a6@2 ~@2", I: "g6 ~@7", J: "~@4 a6@2 ~@2 g6@7 ~", K: "~@3 a6", L: "g6@3 ~@5",
  M: "e6 g6 f6@2", N: "[f6@4 a6@4 g6@19 ~@5]/2",
})).s("gm_pad_new_age").gain(0.43)

// chords · piano
const piano = note("<~@59 A B ~@8 C D E F G@2 ~@11 A H ~@11 I ~@3 J@3 ~@8>".pickRestart({
  A: "~@11 e4@5", B: "~ f4@4 a4@3 ~@8", C: "eb4 f4", D: "f4 g4", E: "[eb4,c5]@15 ~", F: "[eb4,b4]@5 ~@3",
  G: "[[g4,c5]@25 ~@7]/2", H: "~ f4@4 a4@7 ~@4", I: "[f4,c5]@3 ~ [a4,c5]@3 ~ [g4,c5]@8",
  J: "[[f4,c5]@3 ~ [a4,c5]@3 ~ [g4,c5]@25 ~@15]/3", // F5 Am C5
})).s("gm_piano").gain(0.05)

// chords · string ensemble 2
const string_ensemble_2 = note(`<
  ~@46 A B C D A B C D E F G@3 H I J K L M N O N O P O Q R A B C D A B C D E F G@3 H I J K L M ~@3 S@16 T@3
>`.pickRestart({
  A: "[c4,e4,g4]", B: "[a3,c4,e4]", C: "[bb3,c4,f4]", D: "[a3,c4,f4]", E: "[d4,g4]", F: "[c4,e4] f4, ~@8 c4 ~@7",
  G: "[[a3,d4]@8 g4@15 ~ [c4,e4]@12 [bb3,d4]@4 [c4,f4]@8, ~@8 d4 ~@39]/3", H: "[d4,g4] [c4,e4]", I: "[c4,f4] [a3,d4]",
  J: "[d4,g4]@15 ~", K: "[c4,e4]@3 [bb3,d4]", L: "[c4,f4] [d4,g4]", M: "[c4,e4]", N: "[ab3,c4,eb4]@8 [ab3,c4,f4]@7 ~",
  O: "[bb3,d4,f4] [bb3,eb4,g4]", P: "[c3,ab3,c4,eb4] [ab3,c4,f4]", Q: "[ab3,c4,eb4]", R: "[ab3,b3,eb4]@3 [bb3,d4,f4]",
  S: "[~ [c4,e4,g4]@2 [a3,c4,e4]@2 [bb3,c4,f4]@2 [a3,c4,f4]@2 [c4,e4,g4]@2 [a3,c4,e4]@2 [bb3,c4,f4]@2 [a3,c4,f4]]/8", // C Am Bbsus2 F C Am Bbsus2 F
  T: "[~ [c4,e4,g4]@4 ~]/3", // C
})).s("gm_string_ensemble_2").gain(0.39).pan(0.6)

// chords · piano
const piano_2 = note("<~@16 A B C D E F G H I C J K L M N K L M N O P Q R S F G H I C J ~@68>".pickRestart({
  A: "[c4,f4] [a3,c4,f4]", B: "[bb3,d4,f4] [g3,bb3,eb4]", C: "[g3,bb3,eb4] [a3,c4,f4]", D: "[a3,c4,f4] [f3,bb3,d4]",
  E: "[f3,bb3,d4] [c4,eb4] [g3,bb3,eb4]@2", F: "[a3,c4,f4] [bb3,d4,f4]", G: "[g3,bb3,eb4]!2",
  H: "[a3,c4,f4] [eb2,a3,c4,f4]", I: "[f3,bb3,d4]@2 [f3,bb3,d4] [ab3,c4,eb4], bb1@15 ~", J: "[bb3,d4,f4]", K: "[d4,f4]",
  L: "[bb3,d4]", M: "[bb3,eb4]", N: "eb4@8 eb4@4 g4@3 ~, g3", O: "[c4,f4]!2", P: "[d4,f4] [bb3,eb4]",
  Q: "[bb3,eb4] [c4,f4]", R: "[c4,f4] [bb3,d4]", S: "[bb3,d4] [c4,eb4] [g3,bb3,eb4]@2",
})).s("gm_piano").gain(0.3).pan(0.6)

// chords · synth strings 1
const synth_strings_1 = note(`<
  A@2 B C A@2 B C ~@2 D E ~@2 F G H@5 I J K L M N O@3 ~ O@3 ~ H@5 I J K L P@2 Q@3 ~ Q@3 ~ R@5 S K T U V@2 ~@8 Q@3 ~ Q@3
  ~ R@5 S K T U V@2 W@3 X@16 Y@3
>`.pickRestart({
  A: "[bb3,d4]/2", B: "[ab3,c4]@7 ~", C: "[eb3,g3]", D: "c4@7 ~", E: "~@8 g5@7 ~", F: "c4@15 ~", G: "~@3 g5",
  H: "[f5@24 eb5@15 ~ f5@15 ~ d5@8 d5@4 eb5@4 eb5@8, ~@14 f5@3 ~@3]/5", I: "f5", J: "eb5@15 ~", K: "f5@15 ~",
  L: "[d5,f5]@3 eb5", M: "eb5 f5", N: "[bb4,d5], f5 ~", O: "[bb3@23 ~]/3", P: "[eb5@8 f5@23 ~]/2", Q: "[c4@23 ~]/3",
  R: "[g5@24 f5@15 ~ g5@15 ~ e5@8 e5@4 f5@4 f5@8, ~@14 g5@3 ~@3]/5", S: "g5", T: "g5@15 ~", U: "[e5,g5]@3 f5",
  V: "[f5@8 g5@23 ~]/2", W: "[f5 g5@4 ~]/3", X: "[~@4 c4@23 ~@5]/4", Y: "[~@8 c4@31 ~@9]/3",
})).s("gm_synth_strings_1").gain(0.21).pan(0.4)

// chords · synth strings 1 · soft notes
const synth_strings_1_soft = note("<~@8 A@2 B C A@2 D C ~@98>".pickRestart({
  A: "[bb3,d4]/2", B: "ab3@7 ~", C: "[eb3,g3]", D: "ab3@15 ~",
})).s("gm_synth_strings_1").gain(0.1).pan(0.4)

// other · overdriven guitar
const overdriven_guitar = note(`<
  ~@27 A@3 ~@5 B C D ~ E F G H ~@2 I J@3 ~@5 K L M ~ N O P Q ~@2 R S ~@7 T U ~@6 K L M ~ N O P Q ~@3 V@3 W@3 ~@13 X@3
>`.pickRestart({
  A: "[[f3,bb3]@5 ~]/3", B: "f3@8 eb3@7 ~", C: "bb2 ab2 eb3@2", D: "c3@7 ~@9", E: "~ eb3", F: "f3 eb3 bb2 ab2",
  G: "eb3 d3 c3 bb2", H: "f3@5 ~@3", I: "~@12 bb3 [eb3,f3,ab3] [c3,d3] [g2,ab2,bb2]",
  J: "[[c3,g3] ~@2, c4@5 ~, db2 ~@47]/3", K: "g3@8 f3@7 ~", L: "c3 bb2 f3@2", M: "d3@7 ~@9", N: "~ f3",
  O: "g3 f3 c3 bb2", P: "f3 e3 d3 c3", Q: "g3@5 ~@3", R: "~@12 c4 [f3,g3,bb3] [d3,e3] [a2,bb2,c3]", S: "c3, ab2 ~",
  T: "[c3,g3], db2 ~@15", U: "a2", V: "[~ [g2,d3,g3]@4 ~]/3", W: "[~@8 c3@31 ~@9, ~@8 g3@15 ~@25]/3",
  X: "[~@8 [c3,g3]@31 ~@9]/3", // C5
})).s("gm_overdriven_guitar").gain(0.41).pan(0.4)

// drums · kick
const kick = s("bd").struct(`<
  ~@27 A@16 B A B A@14 B A B A C A@6 B A@4 D A@6 E A E A B A B A@3 F G H A@2 B H A@7 E A@2 I J ~@2
>`.pickRestart({
  A: "x!2", B: "x ~@7 x ~@2 x ~@4", C: "x ~@10 x ~@4", D: "~@2 x ~@2 x ~@2 x ~@7", E: "x ~@2 x ~@4 x ~@7",
  F: "x ~@5 x ~@8 x", G: "~@7 x!2 ~@7", H: "~ x", I: "x ~@7 x ~@2 x ~@2 x ~", J: "~ x ~@6 x ~@7",
})).gain(0.61)

// drums · snare
const snare = s("sd").struct(`<
  ~@27 A@26 B A@10 C A@7 D A@3 E A@3 B A@8 F A F A G H I A@2 J K A@6 L A@4 M ~@2
>`.pickRestart({
  A: "~ x ~ x", B: "~@4 x ~@7 x!2 ~@2", C: "~@4 x ~@3 x!2 ~@2 x ~@3", D: "~@2 x ~@2 x ~@2", E: "~@4 x ~@5 x ~ x!2 ~@2",
  F: "~@4 x ~@4 x ~@2 x ~@3", G: "~@3 x ~@4 x ~@2 x ~@4", H: "x!2", I: "~@4 x!2 ~@6 x ~@3", J: "~@2 x ~@2 x ~ x",
  K: "~ x ~@4 x ~", L: "~ x ~@2 x ~@7 x ~@3", M: "~ x ~@2",
})).gain(0.53)

// drums · hihat
const hihat = s("hh").struct(`<
  ~@27 A B@2 C A B@2 C A B@3 D@2 C A E F A@2 B@2 C A C B C A B@3 D@2 E A G F A@2 E A B H I J K A B@2 L A B A@3 B M B D@2
// … 44 more lines

More by Michele Zarrillo