Strudelify
Non e cover art

1995 · Mondo

Non e

Carboni

KeyF majorTempo125 bpm
0:00/0:00
// Non e — Carboni
// 125 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 119 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(125/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 · clavinet
const clavinet = note(`<
  ~@2 A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C B D E F B D A@2 B C A@2 B C A@2 B C A@2 B C A@2 B C B D E F B D E
  F B D G@2 D H G@2 D H G@2 D H G@2 D H D I J K D I J K D I J K D I J K D I J K D I J K D I J K D I J K D I J K D I J K
  ~
>`.pickRestart({
  A: "~@2 [bb3,eb4,g4] ~@2 [bb3,eb4,g4] ~@2 [bb3,eb4,g4] ~@2 [bb3,eb4,g4]", // Eb
  B: "~@2 [c4,eb4,ab4] ~@2 [c4,eb4,ab4] ~@2 [c4,eb4,ab4] ~@2 [c4,eb4,ab4]", // Ab
  C: "~@2 [b3,eb4,ab4] ~@2 [b3,eb4,ab4] ~@2 [b3,eb4,ab4] ~@2 [b3,eb4,ab4]", // Abm
  D: "~@2 [d4,f4,bb4] ~@2 [d4,f4,bb4] ~@2 [d4,f4,bb4] ~@2 [d4,f4,bb4]", // Bb
  E: "~@2 [bb3,eb4,g4,bb4] ~@2 [bb3,eb4,g4,bb4] ~@2 [bb3,eb4,g4,bb4] ~@2 [bb3,eb4,g4,bb4]", // Eb
  F: "~@2 [c4,eb4,g4] ~@2 [c4,eb4,g4] ~@2 [c4,eb4,g4] ~@2 [c4,eb4,g4]", // Cm
  G: "~@2 [c4,f4,a4] ~@2 [c4,f4,a4] ~@2 [c4,f4,a4] ~@2 [c4,f4,a4]", // F
  H: "~@2 [db4,f4,bb4] ~@2 [db4,f4,bb4] ~@2 [db4,f4,bb4] ~@2 [db4,f4,bb4]", // Bbm
  I: "~@2 [e4,g4,c5] ~@2 [e4,g4,c5] ~@2 [e4,g4,c5] ~@2 [e4,g4,c5]", // C
  J: "~@2 [c4,f4,a4,c5] ~@2 [c4,f4,a4,c5] ~@2 [c4,f4,a4,c5] ~@2 [c4,f4,a4,c5]", // F
  K: "~@2 [d4,f4,a4] ~@2 [d4,f4,a4] ~@2 [d4,f4,a4] ~@2 [d4,f4,a4]", // Dm
})).s("gm_clavinet").gain(0.2).pan(0.6)

// bass · fretless bass
const bass = note(`<
  ~@2 A B C D E F C D G H I J E F C D G H I J E F C D K L M N O P E F C D G H I J E F C D G H I J E F C D K L M N K L M
  N O P Q R S T U V W X Q R S T U V W X Y Z AA AB Y Z AA AB Y Z AA AB Y Z AA AB Y Z AA AB Y Z AA AB Y Z AA AB Y Z AA AB
  Y Z AA AB Y Z AA AB ~
>`.pickRestart({
  A: "eb2@4 ~@2 g1@4 ~@2 bb1@4 ~@2 eb2@3 ~@3", B: "~@3 eb2@2 ~ g2@2 ~@3 eb2", C: "ab1@4 ~@2 c2@3 ~@3 eb2@3 ~@9",
  D: "ab1@3 ~@3 b1@3 ~@13 bb1 ~", E: "eb2 ~ g1 ~ bb1 ~ eb2 ~", F: "~@6 eb2@3 ~@3 g2@3 ~@7 eb2@2",
  G: "eb2@4 ~@2 bb1@3 ~@3 g1@4 ~@8", H: "g1@3 ~@3 bb1@3 ~@13 eb2 ~", I: "ab2@3 ~@3 f2@3 ~@3 eb2@4 ~@8",
  J: "ab1@3 ~@9 eb2@3 ~@7 bb1 ~", K: "eb3@4 ~@2 c3@4 ~@2 ab2@5 ~@7", L: "bb1@4 ~@2 bb1@4 ~@2 f2@5 ~@7",
  M: "eb2@4 ~@2 eb2@5 ~ bb2@4 ~@6 eb2 ~", N: "c2@4 ~@2 c2@5 ~ g2@5 ~@5 ab2 ~", O: "ab1@6 c2@6 eb2@4 ~@6 f2 ~",
  P: "bb1@6 d2@6 f2@5 ~@7", Q: "f2 ~ a1 ~ c2 ~ f2 ~", R: "~@6 f2@3 ~@3 a2@3 ~@7 f2@2", S: "bb1@4 ~@2 d2@3 ~@3 f2@3 ~@9",
  T: "bb1@3 ~@3 db2@3 ~@13 c2 ~", U: "f2@4 ~@2 c2@3 ~@3 a1@4 ~@8", V: "a1@3 ~@3 c2@3 ~@13 f2 ~",
  W: "bb2@3 ~@3 g2@3 ~@3 f2@4 ~@8", X: "bb1@3 ~@9 f2@3 ~@7 c2 ~", Y: "f3@4 ~@2 d3@4 ~@2 bb2@5 ~@7",
  Z: "c2@4 ~@2 c2@4 ~@2 g2@5 ~@7", AA: "f2@4 ~@2 f2@5 ~ c3@4 ~@6 f2 ~", AB: "d2@4 ~@2 d2@5 ~ a2@5 ~@5 bb2 ~",
})).s("gm_fretless_bass").gain(0.25)

// chords · electric guitar jazz
const electric_guitar_jazz = note(`<
  ~@2 A B C ~ D E@2 F G H@2 I@2 J K L@2 M@2 N@2 J K O@2 P Q R S T U V@2 ~ W@3 X@4 Y Z@3 AA@2 AB@2 Y S P AC@2 S P AD AE S
  T AF@2 AG AH AI@3 AJ AK AL@2 AM@4 AN@3 AO AP AQ@2 AR AS AT@2 AU AV AW AX@2 AY@2 ~@15 AW AZ BA BB T ~@4
>`.pickRestart({
  A: "~@6 [g3,g4]@3 ~ [g3,g4]@2 ~ [g3,g4]@2 ~ [f3,f4]@2 ~@4 eb4 ~", // G F
  B: "~@4 eb4@2 ~ g4@3 ~ g3 ~ [g3,g4]@3 f3@2 eb4@3 ~@3, ~@3 g3 ~ g4 ~@6", C: "~@3 eb4@10 ~@11",
  D: "~@6 g4@3 ~ [g3,g4]@2 ~ [g3,g4]@3 [f3,f4]@3 ~@3 [eb3,eb4]@2", // G F Eb
  E: "[~@6 [g3,g4]@2 ~@2 [g3,g4]@2 ~ [g3,g4]@3 [f3,f4]@2 eb4@3 ~ f3@6 ~@14 eb4@3 ~ f4@2]/2", // G F
  F: "~ gb4@3 ~ gb4@3 ~ gb4@3 f4@6 eb4@3 ~ eb4@2", G: "~@6 g4@3 ~ g4@2 ~ g4@3 f4@3 eb4@2 ~ eb4@2",
  H: "[~@3 g4 ~@2 g4@2 ~@2 g4@2 ~ g4@2 f4@3 eb4@3 ~ f4@5 eb4@9 ~@6 eb4@3 ~ f4@2]/2",
  I: "[~ gb4@4 ~ gb4@5 ~ f4@4 ~@2 eb4@2 ~@2 eb4@8 g4@3 ~ g4@2 ~ g4@2 ~ f4@2 ~@6]/2",
  J: "~@6 g4@3 ~ g4@2 ~ g4@3 f4@2 eb4@2 ~@2 f4@2", K: "~@4 eb4@10 ~@4 eb4@3 ~ f4@2",
  L: "[~ gb4@2 ~ gb4@2 ~ gb4@3 f4@6 ~@6 eb4@4 ~@4 g4@3 ~ g4@2 ~ g4@3 f4@3 eb4@2 ~ eb4@2]/2",
  M: "[~@4 c4 ~ g4@2 ~@2 g4@2 ~ g4@2 ~ f4@2 ~@4 f4@6 ~@14 eb4@4 f4 ~]/2",
  N: "[~ gb4@2 ~ gb4@2 gb4@2 ~@2 f4@5 ~ eb4@4 ~@2 eb4@6 ~@2 g4@2 ~@2 g4@2 ~ g4@2 ~ f4@2 ~ eb4@2 ~ eb4@2]/2",
  O: "[~ gb4@2 ~ gb4@2 gb4@2 ~@2 f4@5 ~ eb4@4 ~@2 eb4@6 ~@8 [c4,eb4]@10 [d4,f4]@2]/2", P: "~@6 [d4,f4]@5 [eb4,g4]",
  Q: "~@4 [eb4,g4]@4 ~@2 [eb4,g4]@2 eb4 g4@2 ~ [f4,ab4]@2 [g4,bb4]@3 ~ eb4@2", // Eb Fm Gm
  R: "~@4 [c4,eb4]@3 ~@3 [c4,eb4] ~ [c4,eb4]@4 [d4,f4]@2 [eb4,g4]@3 ~ [c4,eb4]@2", S: "~@6 [c4,eb4]@5 [d4,f4]",
  T: "~@6 [d4,f4]@5 ~", U: "~@4 g4 ~ g4 ~ g4 ~ g4 ~ g4@3 ~ f4@2 eb4@3 ~@3",
  V: "[~@6 g4@3 ~ g4@2 ~ g4@3 f4@2 ~ eb4@2 ~ f4@6 eb4@8 ~@12]/2",
  W: "[~@4 g4 ~ g4 ~ g4 ~ g4 ~ g4@3 ~ f4@2 ~ eb4@3 f4@5 ~@3 g4@3 ~ g4@2 ~ g4@3 f4@2 ~ eb4@2 ~ f4@6 ~@14 f4@3 ~ eb4@2]/3",
  X: "[~ gb4@3 gb4@2 ~ gb4@2 ~@2 f4@4 ~ eb4@3 ~@3 eb4@5 ~@4 g4@2 ~ g4@2 ~ g4@2 ~ f4@2 eb4@3 ~ f4@6 eb4@2 ~ g4@3 g4@2 ~ g4@2 ~ f4@2 ~ eb4@2 ~ f4@6 eb4@11 ~ eb4@2 f4@3 ~ eb4@2]/4",
  Y: "gb4@3 ~ gb4@2 ~ gb4@2 ~ f4@6 eb4@5 ~ eb4@2",
  Z: "[~@4 c4 ~ g4@3 ~ g4@2 ~ g4@2 ~ f4@2 ~ eb4@2 ~ eb4@5 ~@3 g4@3 ~ g4@2 ~ g4@2 ~ f4@2 ~ eb4@3 f4@5 ~ eb4@7 ~@7 f4@3 eb4 ~@2]/3",
  AA: "[gb4@2 ~@2 gb4@2 ~ gb4@2 ~ f4@5 ~ eb4@5 ~ eb4@4 ~@4 g4@3 ~ g4@2 ~ g4@3 f4@3 eb4@2 ~ eb4@2]/2",
  AB: "[~@4 g4 ~ g4@2 ~@2 g4@2 ~ g4@2 ~ f4@2 ~ eb4@3 f4@5 ~ eb4@8 ~@4 eb4@2 f4@2 ~@2 eb4 ~]/2",
  AC: "[~@4 [eb4,g4]@3 ~@3 [eb4,g4] ~ [eb4,g4]@3 ~ [f4,ab4]@2 [g4,bb4]@3 ~@2 [c4,eb4]@3 ~@2 [c4,eb4]@3 ~@3 [c4,eb4] ~ [c4,eb4]@4 [d4,f4]@2 [eb4,g4]@4 [c4,eb4]@2]/2", // Eb Fm Gm Cm Dm Eb Cm
  AD: "~@4 [eb4,g4]@2 ~@4 [eb4,g4] ~ [eb4,g4]@3 ~ [f4,ab4]@2 [g4,bb4]@3 ~ [c4,eb4]@2", // Eb Fm Gm Cm
  AE: "~@4 [c4,eb4]@2 ~@4 [c4,eb4] ~ [c4,eb4]@4 [d4,f4]@2 [eb4,g4]@3 ~ [c4,eb4]@2", // Cm Dm Eb Cm
  AF: "[~@6 a4@2 ~@2 a4@2 ~ a4@2 ~ g4@2 ~ f4@3 g4@6 f4@2 ~ a4@3 a4 ~@2 a4@2 ~ g4@2 f4@3 ~ g4@2]/2",
  AG: "~@4 f4@7 ~@5 f5@3 ~ d5@2 ~@2", AH: "c5@3 ~ d5@3 ~@2 ab4@3 g4@2 ~@2 f4@4 ~@4",
  AI: "[~@6 a4@3 ~ a4@2 ~ a4@2 ~ g4@2 ~ f4@3 ~ f4@2 ~@5 a4@2 ~@2 a4@2 ~ a4@2 ~ g4 ~@2 f4@3 ~ g4@4 ~ f4@3 ~@11 g4@2 ~@2 f4@2]/3",
  AJ: "ab4@3 ~ ab4 ~@2 ab4@2 ~ g4@3 ~@3 f4@4 ~@2 f4@2", AK: "~@6 a4@3 ~ a4@2 ~ a4@2 ~ g4@2 ~ f4@3 f4@2",
  AL: "[~@6 a4@2 ~@2 a4@2 ~ a4@2 ~ g4@2 ~ f4@3 g4@6 ~@14 g4@3 ~@3]/2",
  AM: "[ab4@3 ~@2 ab4@3 ~@2 g4@5 ~ f4@3 ~@3 f4@8 a4@3 ~ a4@2 ~ a4@2 ~ g4@2 ~ f4@3 ~ f4@2 ~@5 a4@2 ~@2 a4@2 ~ a4@2 ~@2 g4@2 f4@2 ~@2 g4@5 f4@3 ~@11 g4@3 ~ f4 ~]/4",
  AN: "[ab4@3 ~ ab4@3 ~@2 g4@7 ~@7 f4@2 ~@11 f4@10 ~ [e4,g4]@2 ~@11 [e4,g4]@10 [f4,a4]@2]/3", // Em F
  AO: "~@5 a4@2 ~@3 f4 a4 [f4,a4]@3 ~ [g4,bb4]@2 [a4,c5]@3 ~ [d4,f4]@2, ~@2 f4 ~@9", // F Gm Am Dm
  AP: "~@4 [d4,f4]@2 ~@4 f4 d4 [d4,f4]@4 [e4,g4]@2 [f4,a4]@4 f4@2, ~@22 d4 ~", // Dm Em F
  AQ: "[~@12 [d4,f4]@10 ~ [e4,g4]@2 ~@4 g4@2 ~@5 [e4,g4]@10 [f4,a4]@2]/2", // Dm Em F
  AR: "~@5 a4 ~@4 [f4,a4] ~ [f4,a4]@4 [g4,bb4]@2 [a4,c5]@4 d4 f4, ~@2 f4 ~@9", // F Gm Am
  AS: "~@4 [d4,f4]@2 ~@4 [d4,f4] ~ [d4,f4]@4 [e4,g4]@2 [f4,a4]@4 [d4,f4]@2", // Dm Em F Dm
  AT: "[~@12 [d4,f4]@10 ~ [e4,g4]@2 ~@11 [e4,g4]@10 [f4,a4]@2]/2", // Dm Em F
  AU: "~@4 [f4,a4]@2 ~@4 [f4,a4] ~ [f4,a4]@4 [g4,bb4]@2 [a4,c5]@4 [d4,f4]@2", // F Gm Am Dm
  AV: "~@4 [d4,f4]@2 ~@4 f4 d4 [d4,f4]@4 [e4,g4]@2 [f4,a4]@4 [d4,f4]@2", AW: "~@6 [d4,f4]@5 [e4,g4]",
  AX: "[~@12 [e4,g4]@10 ~ f4@2 ~@4 [f4,a4] ~@4 f4 a4 [f4,a4]@4 [g4,bb4]@2 [a4,c5]@4 [d4,f4] ~, ~@11 a4 ~@12]/2", // Em F Gm Am Dm
  AY: "[~@4 [d4,f4]@2 ~@4 [d4,f4] ~ [d4,f4]@4 [e4,g4]@2 [f4,a4]@4 f4@13 ~ [d4,f4]@10 ~ [e4,g4], ~@22 d4@3 ~@23]/2", // Dm Em F Dm Em
  AZ: "~@12 g4@10 [f4,a4] ~, ~@3 e4@2 ~", BA: "~@4 [f4,a4]@2 ~@4 [f4,a4] ~ [f4,a4]@4 [g4,bb4]@2 [a4,c5]@3 ~ [d4,f4] ~",
  BB: "~@4 [d4,f4] ~@5 [d4,f4] ~ [d4,f4]@4 [e4,g4]@2 [f4,a4]@4 [d4,f4] ~", // Dm Em F Dm
})).s("gm_electric_guitar_jazz").gain(0.22).pan(0.4)

// chords · electric guitar jazz · soft notes
const electric_guitar_jazz_2 = note(`<
  ~@2 A@3 ~ B C@2 ~@5 D E ~ F ~ G H ~@7 I ~@3 J@2 ~@3 K L ~@7 M ~@24 N O ~@2 P Q R ~@36 S T U V ~
>`.pickRestart({
  A: "[~@18 [eb3,eb4]@3 ~ eb3@5 ~ eb3@3 ~@9 f4@2 eb3@3 ~ [f3,f4]@5 ~ eb3@9 ~@11]/3", B: "~@6 g3@3 ~@10 [eb3,eb4]@2 ~@3",
  C: "[~@19 eb3@3 f4@6 [eb3,eb4]@7 ~@13]/2", D: "~@19 eb4@2 ~ eb4 ~", E: "~@4 c4 ~@19", F: "~@4 eb4 ~",
  G: "~@9 eb4 ~@2", H: "~@4 eb4@7 ~@13", I: "~@11 c4", J: "[~@22 f4@5 ~ eb4@2 ~@18]/2", K: "~@2 eb4 ~@9",
  L: "~@2 eb4@5 ~@5", M: "~@16 eb4 ~@7", N: "~@2 f4 ~@9", O: "~@2 f4@2 ~@7 f4", P: "~@4 f4 ~@19", Q: "~@16 f4 ~@7",
  R: "~@16 f4@5 ~@3", S: "~@11 [e4,g4]", T: "~@6 [e4,g4]@5 [f4,a4]",
  U: "~@4 [f4,a4]@2 ~@4 [f4,a4] ~ [f4,a4]@4 [g4,bb4]@2 [a4,c5]@4 [d4,f4] ~", // F Gm Am Dm
  V: "~@4 [d4,f4]@2 ~@4 [d4,f4] ~ f4@4 [e4,g4]@2 a4@4 [d4,f4]@2, ~@4 d4 ~ f4 ~", // Dm Em Dm
})).s("gm_electric_guitar_jazz").gain(0.13).pan(0.4)

// other · guitar harmonics
const guitar_harmonics = note(`<
  ~@8 A ~@5 B ~ C ~@5 B ~ C ~@14 D ~@3 E@2 ~@2 F ~@2 G@2 ~@12 H I ~@2 J ~@5 K L M ~@42
>`.pickRestart({
  A: "c3@5 ~ ab2@6 f2@6 eb2@6", B: "g3@5 ~ eb3@6 a2@6 bb2@6", C: "c3@5 ~ ab2@6 d2@6 eb2@6", D: "~@6 ab3@2 ~ eb3@2 ~",
  E: "[eb3@17 ~@7]/2", F: "eb3", G: "[c3@6 ab2@5 ~ d2@5 eb2@10 ~@21]/2", H: "~@16 a2@3 bb2@4 ~",
  I: "f5@5 ~ d5@6 f4@5 ~ eb3@6", J: "d5@5 ~ bb4@5 ~ e3@6 f3@6",
  K: "g5 ~@11 c3@6 f4@3 ~@3, f3@4 c5@3 ~, f4 a3@2 ~, ~ f5@20 ~@3, ~@2 d5@5 ~", L: "~@23 bb2",
  M: "d3@6 bb2@5 ~ e2@6 f2@6",
})).s("gm_guitar_harmonics").gain(0.2)

// other · pad new age
const pad_new_age = note(`<
  ~@26 A B ~@2 A B ~@20 A B ~@2 A B ~@2 A B ~@16 C D ~@2 C D ~@2 C D ~@2 C D ~@2 C D ~@2 C D ~@2 C D ~@2 C D ~@2 C D ~@2
  E ~@4
>`.pickRestart({
  A: "eb6 ~@5 c6 ~@5 bb5 ~@5 eb5 ~@5", B: "f5 ~@11 f6 ~@11", C: "f6 ~@5 d6 ~@5 c6 ~@5 f5 ~@5", D: "g5 ~@11 g6 ~@11",
  E: "f6 ~@23",
})).s("gm_pad_new_age").gain(0.22).pan(0.4)

// other · pad new age · soft notes
const pad_new_age_soft = note("<~@114 [~@6 d6 ~@5 c6 ~@5 f5 ~@5] [g5 ~@11 g6 ~@11] ~@3>")
  .s("gm_pad_new_age").gain(0.13).pan(0.4)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  ~@26 A B C D E B F@2 G H F@2 I J F@2 K H F@2 L J F@2 K H A B C D A B C D E B M N O P Q R S T M N O P Q R S T U V W X U
  V W X U V W X U V W X U V W X U V W X U V W X U V W X U V W Y ~@5
>`.pickRestart({
  A: "~@4 [ab4,c5] ~@5 [ab4,c5] ~@5 [ab4,c5] ~@5 [ab4,c5]@2", // Ab
  B: "~@4 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5] ~", // Bb
  C: "~@4 [eb5,g5] ~@5 [eb5,g5] ~@5 [eb5,g5] ~@5 [eb5,g5] ~", // Eb
  D: "~@4 [bb4,eb5] ~@5 [bb4,eb5] ~@5 [bb4,eb5] ~@5 [bb4,eb5] ~", // Eb5
  E: "~@4 [ab4,c5] ~@5 [ab4,c5] ~@5 [ab4,c5] ~@5 [ab4,c5] ~", F: "~@2 [eb4,bb4] ~@3 [eb4,bb4] ~",
  G: "g3@2 ab3 ~ ab3@2 [c4,ab4]@2 ab3 ~ ab3@2 ~@6 [c4,ab4]@3 ~@3, ~@6 g3 ~@17", // Fm
  H: "g3@2 ab3 ~ ab3@2 g3 ~ ab3 ~ ab3 ~@7 [b3,eb4,ab4]@3 ~@3, ~@3 [b3,eb4,ab4]@2 ~@7", // Abm
  I: "g3@2 ab3 ~ ab3@2 [g3,c4,eb4,ab4]@2 ab3 ~ [c4,eb4,ab4]@2 g3@2 ab3@2 ab3@2 [c4,eb4,ab4]@2 ~@4", // Abmaj7 Ab
  J: "g3 ~@2 [g3,b3,eb4,ab4] ~ [b3,eb4,ab4] g3 ~ ab3 [b3,eb4,ab4] ~@2", K: "~@2 [c4,ab4] ~@3 [c4,ab4] ~",
  L: "~@3 [c4,eb4,ab4] ~ [c4,eb4,ab4] ~@3 [c4,eb4,ab4] ~@2", M: "~@3 [f4,c5] ~ c4 ~@2 c4 f4 ~ c4",
  N: "~@3 [f4,c5] ~ c4 ~@2 c4 [f4,c5] ~ c4", O: "~@2 bb3 d4 ~ bb3 ~@2 bb3 d4 ~ bb3",
  P: "~@2 db4 [f4,bb4] ~ db4 ~@2 db4 f4 ~ db4", Q: "~@2 c4 f4 ~@5 [f4,c5] ~ c4",
  R: "~@2 c4 [f4,c5] ~ c4 ~@3 [g4,c5] ~ c4", S: "~@2 bb3 [d4,bb4] ~ bb3 ~@2 bb3 [d4,bb4] ~ bb3",
  T: "~@2 db4 [f4,bb4] ~@5 [f4,bb4] ~ db4", U: "~@4 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5]@2",
  V: "~@4 [c5,e5] ~@5 [c5,e5] ~@5 [c5,e5] ~@5 [c5,e5] ~", W: "~@4 [f5,a5] ~@5 [f5,a5] ~@5 [f5,a5] ~@5 [f5,a5] ~",
  X: "~@4 [c5,f5] ~@5 [c5,f5] ~@5 [c5,f5] ~@5 [c5,f5] ~", Y: "~@4 [c5,f5] ~@5 [c5,f5] ~@5 [c5,f5] ~@7",
})).s("gm_electric_guitar_clean").gain(0.22).pan(0.4)

// chords · electric guitar clean · soft notes
const electric_guitar_clean_2 = note(`<
  ~@38 A B ~@7 B ~@14 C@2 D E F G ~ H C@2 D E F G ~ H ~@35 I J K L M ~
>`.pickRestart({
  A: "~@5 ab3 ~@6", B: "~@2 ab3@4 ~@2 ab3@3 ~@3 ab3 ~@9", C: "~@2 c4 ~@9", D: "~@3 bb4 ~@5 bb4 ~@2", E: "~@9 bb4 ~@2",
  F: "~@3 c5 ~ c4 ~@2 c4 ~@3", G: "~@8 c4 ~@3", H: "~@5 db4 ~@2 db4 ~@3", I: "~@22 [c5,f5] ~",
  J: "~@4 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5] ~@5 [bb4,d5]@2", K: "~@4 [c5,e5] ~@5 [c5,e5] ~@5 [c5,e5] ~@5 [c5,e5] ~",
  L: "~@4 [f5,a5] ~@5 [f5,a5] ~@5 [f5,a5] ~@5 [f5,a5] ~", M: "~@4 [c5,f5] ~@5 [c5,f5] ~@5 [c5,f5] ~@7",
})).s("gm_electric_guitar_clean").gain(0.09).pan(0.4)

// chords · distortion guitar
const distortion_guitar = note("<~@12 A B@2 ~@19 C D ~@2 E@2 ~@30 F ~@48>".pickRestart({
  A: "~@11 c3", B: "[[eb3,ab3,f4]@3 ~@3 [eb3,ab3,f4]@3 ~@3 [eb3,ab3,f4]@3 ~@3 [eb3,ab3,f4]@3 ~ [eb3,g3,eb4]@8 ~@18]/2",
  C: "[ab2,eb3,ab3]@3 ~@3 [ab2,eb3,ab3]@4 ~@14", D: "[ab2,eb3,ab3] ~ [ab2,eb3,ab3] ~@5",
  E: "[ab2,eb3,ab3]@3 ~@3 [ab2,eb3,ab3]@3 ~@3 [ab2,eb3,ab3]@4 ~@8", F: "[f2,f3]@13 ~@11",
})).s("gm_distortion_guitar").gain(0.19)

// chords · pad warm
const pad_warm = note(`<
  ~@26 A B@4 C ~@20 A D@3 E B@4 C F@2 G@4 H ~ F@2 G@4 H ~ C I@3 J I@3 J I@3 J I@3 J I@3 J I@3 J I@3 J I@3 J K@3 ~@5
>`.pickRestart({
  A: "[ab3,c4,eb4]", B: "[[d4,f4]@8 ~@16 ab3@7 ~, bb3@35 ~@13, ~@8 eb4@23 ~, ~ g4@2 ~, ~ c4]/4", C: "[bb3,d4,f4]",
  D: "[[d4,f4] ~ c4, bb3@35 ~, ~ [eb4,g4]@2]/3", E: "[ab3,c4], eb4@7 ~", F: "[a3, c4@15 ~]/2",
  G: "[~@24 db4@25 ~@2 a3@41 ~@4, bb3@49 ~@47]/4", H: "d4", I: "[[e4,g4] ~ d4, c4@35 ~, ~ [f4,a4]@2]/3",
  J: "[bb3,d4], f4@7 ~", K: "[[e4,g4] [f4,a4]@2, c4@35 ~]/3",
})).s("gm_pad_warm").gain(0.16)

// chords · pad warm · soft notes
const pad_warm_soft = note("<~@62 A ~ B ~ C@4 D@8 ~@35 B E F@3 ~>".pickRestart({
  A: "f4 ~@23", B: "d4", C: "[~@3 db4, c4 ~, ~@23 bb3@24 ~]/4",
  D: "[~@2 d4 ~@4 db4, f4@191 ~, ~@2 c4 ~, ~@71 bb3@24 ~]/8", E: "[bb3,d4], f4@7 ~",
  F: "[[e4,g4] ~ d4, c4@35 ~, ~ [f4,a4]@2]/3", // Em F
})).s("gm_pad_warm").gain(0.08)

// other · orchestra hit
const orchestra_hit = note("<~@36 [eb3 ~@5] ~@3 [~@3 eb3@2 ~@7] ~@78>").s("gm_orchestra_hit").gain(0.4).pan(0.3)

// drums · kick
const kick = s("bd").struct("<~ [x ~@7 x!2 ~@2] [x!4]!116 ~>").gain(0.31)

// drums · rim
const rim = s("rim").struct("<~@2 [~@3 x]!116 ~>").gain(0.46)

// … 70 more lines

More by Carboni