Strudelify
Ik wil niet dat je liegt cover art

1994 · ParaCDmol

Ik wil niet dat je liegt

Paul de Leeuw

KeyC minorTempo130 bpm
0:00/0:00
// Ik wil niet dat je liegt — Paul de Leeuw
// 130 bpm, 4/4, key C minor. 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 128 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: The whole transcription plays 11 ms ahead of the beat; the grid follows it, so its parts stay together.
setcpm(130/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 · piano · "A.PIANO 1"
const piano = note(`<
  ~ A B C@2 D E F G A H I@2 D J K@2 A H I@2 D L F M N@4 O@2 P@2 N@4 Q@2 P@2 R@4 S@4 T@2 U@2 V@2 W@2 X@2 Y@2 Z@2 AA AB AC
  AD AE AF AG AH AI AJ AC AD AE AF AG AH AI AK AL AM AN AO AP AM AQ AR AS AT AU AV AW AX AY AZ BA BB BC AV AW AX AY BD
  BE BB BC AV AW AX AY BF BG BB BC AV AW AX AY BH BI BJ BK BL BM BN@2
>`.pickRestart({
  A: "c5@6 c5@5 ~ c5@4", B: "d5@15 ~", C: "b4@5 ~ c5@5 ~ e4@4", D: "g4@5 ~ g4@5 ~ g4@4", E: "a4@15 ~",
  F: "d5@3 e5@3 a4@2", G: "d5@6 e5@5 ~ g4@4", H: "d5@11 ~ e4@4", I: "b4@3 c5@3 e4@2",
  J: "~@12 d4@3 ~, a4@15 ~, ~@8 g3@7 ~, ~@5 c4@3",
  K: "[d5@6 e5@5 ~ a4@3 ~ d5@6 e5@5 ~ g4@4, [e3,g3,a3,d4]@14 ~ g3@13 ~@4, ~@4 [a3,c4]@3 ~]/2", L: "a4@11 ~ d4@4",
  M: "d5@3 ~ e5@2 f5@4 g5@6", N: "[g5@4 c5@2 g5@4 c5@4 d5@6 e5@2 f5@4 g5@5 ~]/2",
  O: "[g5@4 c5@2 g5@3 ~ g5@4 g5@5 ~ c5@2 d5@4 e5@6]/2", P: "[f5@4 e5@2 f5@4 e5@4 f5@6 e5@2 f5@4 g5@5 ~]/2",
  Q: "[g5@4 c5@2 g5@4 c5@4 c5@5 ~ c5@2 d5@4 e5@6]/2", R: "[g5@2 g4 ~ c5@2 g5@4 c5@3 ~ d5@5 ~ e5@2 f5@4 g5@5 ~]/2",
  S: "[g5@2 g4 ~ c5@2 g5@4 c5@3 ~ d5@5 ~ e5@2 f5@4 g5@5 ~ g5@2 g4 ~ c5@2 g5@4 c5@3 ~@7 d4 eb4 ~@8 g5 ab5, ~@31 bb2@14 ~ bb2@9 g4 ab4 bb4 c5 d5 eb5 f5@2 ~, ~@32 [f3,bb3]@13 ~@2 f3@16 ~, ~@48 [bb3,ab5]@15 ~, ~@54 f4@9 ~]/4", // Bb5 Bb7
  T: "[bb5@5 ~@5 [g4,eb5,eb6]@14 ~@8, eb3@29 ~@3]/2", U: "[c3@19 ~ [c3,d5,eb5,bb5]@12, [bb3,eb4,g4]@15 ~]/2",
  V: "[g4@8 ~ ab4@5 c4 eb4, [ab2,bb3]@31 ~, [c4,eb4]@7 ~, ~@18 [c5,g5,eb6]@13 ~]/2", // Absus2 Cm
  W: "[[c3,bb3,c4,eb4,f4]@12 ~ [d3,bb3,d4,f4]@3]/2", X: "[[bb3,g4]@13 ~ [bb3,g4,eb5]@14 g4@3 ~, [eb3,eb4]@29 ~@3]/2",
  Y: "[bb3@28 bb3@3 ~, [c3,eb4,g4]@15 ~]/2", Z: "[[bb3,c4,eb4,g4]@15 ~ [ab3,g4,ab4,eb5]@15 ~, ab2@31 ~]/2",
  AA: "[ab3,c4,eb4,f4]@7 ~ [c4,eb4,ab4,c5]@7 ~, bb2@15 ~", AB: "[eb4,f4,ab4,eb5] [c4,eb4,ab4,c5], bb2@15 ~",
  AC: "[bb3,eb4,g4]@7 ~ [bb3,eb4,g4]@7 ~, eb3@15 ~", AD: "[bb3,d4,f4,g4]@7 ~ [d4,f4,bb4]@8, d3@15 ~",
  AE: "[bb3,eb4,g4]@7 ~ [bb3,eb4,g4]@8, c3@15 ~", AF: "[bb3,eb4,f4,g4]@7 ~ [bb3,eb4,g4]@8, bb2@15 ~",
  AG: "[c4,eb4,ab4]@7 ~ [c4,eb4,ab4]@8, ab2@7 ~", AH: "[bb3,eb4,g4]@7 ~ [bb3,eb4,g4]@7 ~, g2@15 ~",
  AI: "[c4,eb4,ab4]@7 ~ [c4,eb4,ab4]@8, [f2,ab3]@15 ~", // Ab Fm
  AJ: "~@3 eb4 ~@2 c4 ab3, [bb2,ab4,c5], [eb4,f4]@6 ~@2 f4@7 ~, ~@2 ab3@7 ~@7, ~@4 c4@4 ~@2 eb4@5 ~", // Fm Ebsus2
  AK: "~@6 eb4@2 ~@4 c5@3 ~, bb2@15 ~, [ab4,c5]@8 f4@7 ~, [eb4,f4]@4 c4@4 ~@2 ab4@5 ~, ~@2 ab3@7 ~@7", // Ab Ebsus2
  AL: "[ab3,c4,eb4]@7 ~ [c4,eb4]@8, ~@4 ab3@3 ~", AM: "[g3,bb3,eb4]@7 ~ [g3,bb3,eb4]@8, g2@7 ~",
  AN: "[ab3,c4,eb4]@7 ~ [ab3,c4,eb4]@8, f2@15 ~", AO: "[g2,bb3,eb4,f4,bb4]@4 ~ [g2,bb3,eb4,f4,bb4]@3",
  AP: "[ab3,c4,eb4]@7 ~ [ab3,c4,eb4]@7 ~, ab2@15 ~", AQ: "[ab3,c4,eb4]@7 ~ [ab3,c4,eb4]@3 ~ [ab3,c4,eb4]@3 ~, f2@15 ~",
  AR: "f4 ~ f3@2 ab3@2 c5@2 eb5@2 [f4,f5] ~ [ab4,ab5] ~ [c5,c6]@2, bb2@15 ~, [bb3,c4,eb4]@5 ~ c4 ~ eb4 ~@7, ~@2 f4 ~ ab4 ~@11", // F Ab C Cm7
  AS: "[eb2,eb3]@6 ~@8 eb2 ~, [eb5,eb6] [eb3,g4,bb4,eb5,g5], ~@6 eb2@7 ~@3", // Eb
  AT: "[d3,f4,bb4,d5,f5]@6 ~@8 d2 ~, d2@5 ~ d2@7 ~@3, ~ [d3,f4,bb4,d5,f5]", // Bb
  AU: "[c3,eb4,g4,bb4,eb5]@6 ~@8 c2 ~, c2@5 ~ c2@7 ~@3, ~ [c3,eb4,g4,bb4,eb5]", // Cm7
  AV: "[bb2,bb3,eb4,f4,g4]@6 ~@8 bb1 ~, bb1@5 ~ bb1@7 ~@3, ~ [bb2,bb3,eb4,g4]", // Eb
  AW: "[ab2,c4,eb4,ab4]@6 ~@8 ab1 ~, ab1@5 ~ ab1@7 ~@3, ~ [ab2,c4,eb4,ab4]", // Ab
  AX: "[g2,bb3,eb4,g4]@3 ~ [g2,bb3,eb4,g4]@3 g1, g1@5 ~ g1@7 ~@3", // Eb
  AY: "[f2,c4,eb4,ab4]@3 ~ [f2,c4,eb4,ab4]@4, ab3@15 ~, f1@5 ~ f1@9 ~", // Fm7
  AZ: "[bb1,bb2,eb4,f4,ab4,c5]@2 [c4,c5]@2 [f2,eb4,eb5] ~ [g2,f4,f5] ~ [ab2,ab4,ab5] ~ [c5,c6] ~ [c3,eb5,eb6] ~ [d3,f5,f6]@2, ~@2 eb2 ~@7 bb2@2 ~@4", // Fm7 C F7 G7 Ab C Cm Dm
  BA: "[eb2,eb3]@6 ~@6 [bb4,eb5]@2 eb2 ~, [g5,g6] [eb3,g4,g5], ~@6 eb2@7 ~@3", // Eb Eb5 G Eb
  BB: "[d3,bb3,d4,f4,g4]@6 ~@8 d2 ~, d2@5 ~ d2@7 ~@3, ~ [d3,d4,f4,bb4]", // Gm7 Bb
  BC: "[c3,bb3,eb4,g4]@6 ~@8 c2 ~, c2@5 ~ c2@7 ~@3, ~ [c3,bb3,eb4,g4]", // Cm7
  BD: "[bb1,bb2,eb4,f4,ab4,c5]@2 [eb2,f5] ~ [f2,g5] ~ [g2,ab5] ~ [ab2,bb5] ~ [c5,c6] ~ c3 ~ d3@2, ~ f4 g4 ab4 bb4 bb2 [eb5,eb6]@2", // Fm7 Ebsus2 Fsus2 Abmaj7 Absus2 C Eb
  BE: "[eb2,eb3]@6 ~@8 eb2 ~, [g5,g6] [eb3,g4,bb4,g5], ~@6 eb2@7 ~@3", // Eb G Eb
  BF: "[bb1,bb2]@2 eb2 ~ f2 ~ eb4@2 ab2 ~ bb2@2 c4@2 [d3,ab3]@2, [ab4,c5], [eb4,f4]@6 g2 ~@5 c3 ~@3, ~@2 ab3@7 ~ eb4@5 ~, ~@4 c4@4 f4@7 ~", // Bb Ddim Ab Ebsus2
  BG: "[eb3,bb3,eb4,g4]@6 ~@8 eb2 ~, eb2@5 ~ eb2@7 ~@3, ~ [eb3,bb3,eb4,g4]", BH: "[bb1,bb2,c4,eb4,f4,ab4]@15 ~",
  BI: "[bb4,bb5]@4 [eb3,eb5] ~ ab3@2 ~@2 [bb4,bb5]@5 ~, ab2@15 ~, ~@2 eb4 [eb4,eb5]@2 ~@3, ~@8 bb3@7 ~", // Bb Eb Bb Eb
  BJ: "[eb4,bb4,bb5]@4 [eb4,eb5]@2 [eb4,eb5]@9 ~, [bb3,c4,g4]", // Eb5 Eb C7
  BK: "[f3,eb4,bb4,bb5]@6 [ab4,ab5]@6 [g4,g5]@3 ~, ~@6 c4@9 ~", // Ebsus2 Ab G
  BL: "[ab4,ab5]@5 ~ [g4,g5]@4 [eb4,eb5]@6, [ab3,bb3,c4]@15 ~", // Ab G Eb Ab
  BM: "[eb3,g3]@6 g3@2 eb3@2 [eb3,ab3,c4]@5 ~, [bb3,eb4,eb5]@9 ~@7", BN: "[[eb3,g3,bb3]@15 ~]/2",
})).s("gm_piano").gain(0.37)

// bass · electric bass finger · "FINGERDBA"
const bass = note(`<
  ~ A@2 B@2 C@2 D@2 A@2 B@2 C@2 E F A@2 B@2 C@2 D@2 G H I J K L M J G H I J N L M O P Q R O K L S T U V W X Y Z AA AB AC
  V AD AE Y AF AG AH AI M AJ AK AL AM AN AO AI M AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM
  BF BN BO BP BQ BR BS BT BU BV BW BX BY BZ CA CB CC CD BW CE CF CG CH CI CJ CK CL CM@2
>`.pickRestart({
  A: "[c1@7 ~]/2", B: "[g1 a1@30 ~]/2", C: "f1/2", D: "g1/2", E: "e2, d2 ~@15", F: "a1@12 e1 g1@3", G: "c2@15 ~",
  H: "b1@15 ~", I: "a1", J: "g1", K: "f2", L: "e2", M: "d2", N: "f1@7 ~", O: "g2@15 ~", P: "c3@15 ~", Q: "b2@15 ~",
  R: "a2@15 ~", S: "bb1@7 bb2", T: "bb1@7 ~ ab2 ~ bb1 ~ c2 ~ [ab1,a1] [gb1,g1]", U: "eb1 ~@3", V: "eb1@4 ~@10 g1 ~",
  W: "c2@4 ~@10 g1 ~", X: "c2@4 ~@10 bb1 ~", Y: "ab1@4 ~@10 ab1 ~", Z: "ab1@2 ~@5 c1", AA: "c2@4 ~@10 c1 ~",
  AB: "c1@2 ~@3 d2@3", AC: "eb1@4 ~@10 eb1 ~", AD: "c2@4 ~@10 c2 ~", AE: "c1@4 ~@10 g1 ~", AF: "ab1@4 ~@10 f1 ~",
  AG: "bb1@4 ~@10 bb1 ~", AH: "bb1@4 ~@4 bb2@2 bb1 ~ bb1 ~ c2@2", AI: "eb2@6 ~ eb2", AJ: "c2@8 c3@7 ~", AK: "bb1@7 ab1",
  AL: "ab2@15 ~", AM: "g2@7 ~ g2@7 ~", AN: "f2@6 ~ f2", AO: "bb2@5 ~ bb1@2 bb2@2 bb1 ~ bb1@2 c2@2", AP: "c2@6 ~ c2",
  AQ: "bb1@6 ~ bb1", AR: "ab2@13 ~ ab2 ~", AS: "g2@12 ~@2 g2 ~", AT: "f2@7 ~ f2@7 ~", AU: "bb2@5 ~ bb2@6 bb1@4",
  AV: "ab1@4 ~@4 ab1@3 ~@5", AW: "g1@2 ~ g2 g1@2 ~ g1", AX: "f1@4 ~@4 f1@4 ~@2 eb2 ~", AY: "g2@4 ~@4 g2 ~ g1@6",
  AZ: "ab1@4 ~@4 ab1@4 ~@2 ab1 ~", BA: "g1 ~ g1 ~", BB: "f1@4 ~@2 ab1@2 f1@3 ~ ab1@2 ~@2",
  BC: "bb2@5 ~ bb1 ~ bb1@4 bb2@4", BD: "eb2@5 ~ c2 ~ bb1@3 ~ bb1@2 eb2@2", BE: "d2@5 ~ d2@2 d3@8",
  BF: "c2@4 ~@2 c2@2 c2@5 ~ c2 ~", BG: "bb1@4 ~@2 bb1 ~ bb2@4 bb1@4", BH: "ab1@3 ~ ab1 ~ ab1@6 ab1 ~ ab1@2",
  BI: "g1@5 ~ g1 ~ g1 ~ g1@4 g1 ~", BJ: "f1@4 ab1@4 ab1@2 f1 ~ ab1@2 bb1@2", BK: "bb2@6 ~@2 bb1@2 f1@2 ab1 ~ bb1@2",
  BL: "eb2@5 ~ bb1 ~ eb2@5 ~ bb1@2", BM: "d2@6 bb1@2 d3@7 ~", BN: "bb1@2 ~ bb1 bb2 bb1 bb2@2",
  BO: "ab1@7 ~ ab1@4 ab1@3 ~", BP: "g1@5 ~ g1@2 g2@4 g1@4", BQ: "f1@2 ab1 f1 ab1@2 f1@2",
  BR: "bb1@4 f1@2 g1 ~ ab1@2 bb1@2 c2@2 d2@2", BS: "eb2@6 eb1@2 g2 [f2,gb2] e2 ~ bb1 ~ eb2@2",
  BT: "d2@6 ~@2 d2@3 ~ d2@4", BU: "c2@5 ~ c3@2 c3@6 c2@2", BV: "bb1@3 ~ bb1@4 bb2@2 bb1@2 bb1@2 bb1@2",
  BW: "ab1@5 ~ ab1 ~ ab1@4 ~@2 ab1@2", BX: "g1@5 ~ g1 ~ g2@4 ~@2 g1@2", BY: "f1@4 f1@3 ~ f1@4 f1@2 ab1@2",
  BZ: "bb2@3 f2 bb2@4", CA: "eb2@2 g1 c2 bb1@2 bb1 eb2", CB: "d2@5 ~ d2 ~ d2@4 bb1@4", CC: "c2@5 ~ c2 ~ c2@4 g1@2 c2@2",
  CD: "bb1@5 ~ bb1@2 g2@2 bb1 ~ bb1@4", CE: "g1!2 g2 g1", CF: "f1@7 ~ f1@3 ~ f1@2 ab1@2", CG: "bb1",
  CH: "ab1@12 ab1@2 g1 ~", CI: "c1", CJ: "f2@7 ~", CK: "bb2", CL: "eb2@5 ab1@3", CM: "eb1/2",
})).s("gm_electric_bass_finger").gain(0.46)

// bass · electric bass finger · "FINGERDBA" · soft notes
const bass_soft = note(`<
  ~@2 A ~@7 A ~@7 A ~@18 B ~@10 C ~@4 D ~ E ~@5 D ~@17 F G ~@6 H ~@8 I ~@8 J I ~@14 K L M ~@4
>`.pickRestart({
  A: "~@14 g1 ~", B: "~@13 a1 [bb1,b1] [c2,db2,d2,eb2]", C: "~@7 [e2,f2,gb2] g2 ~@4 [bb1,b1] ~ f1", D: "~@2 ab2 ~",
  E: "~@13 eb1 ~@2", F: "~@15 ab2", G: "a2 ~@15", H: "~@7 f1", I: "~@6 bb1 ~@9", J: "~@10 [db2,d2,eb2] c2 ~@4",
  K: "~@15 [f1,gb1]", L: "e1 ~@15", M: "~@13 gb2 g2 [ab2,a2]",
})).s("gm_electric_bass_finger").gain(0.26)

// other · trumpet
const trumpet = note("<~@58 A ~ A ~ A ~ A ~@63>".pickRestart({
  A: "~@2 bb4 ~ bb4 ~@3",
})).s("gm_trumpet").gain(0.25).pan(0.3)

// chords · pad warm · "WARM PAD"
const pad_warm = note(`<
  ~ A@2 B@2 C@2 D@2 A@2 E@2 F@2 G@2 H@2 I@2 J@2 K@2 L@2 M@2 N@2 O@2 P@2 M@2 Q@2 O@2 L@2 M@2 N@2 R@2 S@2 T@2 U@2 V@2 S@2
  W@2 X@2 Y@2 Z@2 AA@2 AB@2 AC@2 AD@2 AE@2 AB@2 AF@2 AG@2 AH AI AG@2 AH@2 AJ@2 AA@2 AB@2 AC@2 AD@2 AE@2 AB@2 AF@2 Z@2
  AA@2 AB@2 AC@2 AD@2 AE@2 AB@2 AF@2 AK@2 AL@2 AM@3
>`.pickRestart({
  A: "[g3,c4,d4,e4]/2", B: "[[b3,d4]@3 [c4,e4]@5 [b3,d4]@3 [c4,e4]@5, [g3,a3]]/2", C: "[f3,a3,c4,e4]/2",
  D: "[d4@5 e4@10 ~ [a3,d4]@15 ~, f3, a3@15 ~@17, ~@5 c4@26 ~]/2", E: "[g3,b3,c4,e4]/2", F: "[a3,c4,e4,g4]/2",
  G: "[[b3,d4] [a3,c4], [e3,g3]]/2", H: "[c4,d4,e4,g4]/2", I: "[b3@3 a3, [c4,e4,g4]]/2", J: "[e4 d4, [f3,c4,a4]]/2",
  K: "[g3,c4,d4,f4,a4]/2", L: "[[c4,g4] [b3,g4], [d4,e4]]/2", M: "[[a3,e4] [g3,e4], [c4,g4]]/2",
  N: "[[f3,e4,a4]@2 ~ g3, c4, ~ [d4,g4]]/2", O: "[[a3,g4] [g3,a4], [c4,f4]]/2", P: "[[c4,d4] [b3,d4], [e4,g4]]/2",
  Q: "[[f3,a3,e4]@2 ~ g3, c4, ~ [d4,g4]]/2", R: "[bb3,c4,eb4,ab4]/2", S: "[bb3,eb4,f4,g4]/2", T: "[bb3,d4,eb4,g4]/2",
  U: "[bb3,c4,eb4,g4]/2", V: "[bb3,c4,d4,eb4,f4,g4]/2", W: "[d4@3 c4, [bb3,eb4,g4]]/2", X: "[g4@3 f4, [ab3,c4,eb4]]/2",
  Y: "[bb3,c4,eb4,f4,ab4]/2", Z: "[[bb3,eb4] [bb3,d4], [f4,g4]]/2", AA: "[[bb3,c4,g4] [bb3,f4,g4], eb4]/2",
  AB: "[[ab3,c4,ab4] [bb3,g4], eb4]/2", AC: "[[c4,ab4] [f4,ab4,c5], eb4]/2", AD: "[[eb4,f4] [d4,f4], [g4,bb4]]/2",
  AE: "[[c4,g4] [bb3,g4], [eb4,bb4]]/2", AF: "[[eb4,c5] [eb4,c5], [f4,ab4]]/2",
  AG: "[[ab3,g4,c5]@2 ~ bb3, eb4, ~ [f4,bb4]]/2", AH: "[c4,eb4,f4,ab4]", AI: "f4@8 eb4@7 ~, [bb3,g4,bb4]",
  AJ: "[[bb3,eb4,f4] [bb3,d4], g4]/2", AK: "[[ab3,c4,g4] [g3,bb3,c4], eb4]/2", AL: "[[f3,eb4] [eb4,f4], [ab3,c4]]/2",
  AM: "[[g3,bb3]@5 [ab3,c4]@3 [g3,bb3]@16, eb4]/3", // Gm Ab Gm
})).s("gm_pad_warm").gain(0.32)

// other · electric guitar muted · "MUTED GTR" · Eb5
const electric_guitar_muted = note(`<
  ~@49
  [eb4 ~ eb4 ~ d4 ~ eb4 ~@9]!7
  [eb4 ~ eb4 ~ d4 ~ eb4 ~@3 bb3@6]
  [eb4 ~ eb4 ~ d4 ~ eb4 ~@7 eb4 ~]
  [eb4 ~ eb4 ~ d4 ~ eb4 ~@9]!6
  [eb4 ~ eb4 ~ [eb4,bb4]@2 ~@2 [eb4,bb4]@2 eb4 ~@5]
  ~@63
>`).s("gm_electric_guitar_muted").gain(0.4).pan(0.8)

// other · electric guitar muted · "MUTED GTR" · soft notes
const electric_guitar_muted_2 = note("<~@49 A ~ A ~ A ~ A ~@3 A ~ A ~ A ~@64>".pickRestart({
  A: "~@7 bb3",
})).s("gm_electric_guitar_muted").gain(0.24).pan(0.8)

// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
  A@7 B@8 C D@8 E F G H I J K L M N O H I J K L P@2 Q R S T U@3 ~@16 V W X V X Y Z AA V AB AC Y X Y AD AE ~@47
>`.pickRestart({
  A: "[~@16 g3@30 ~@2 [g4,b4]@29 ~@3 [g3,c4,e4]@21 ~@11, ~@15 [c4,d4,g4]@31 ~ e4@29 ~@3 f3@22 ~@11]/7", // G C Csus2
  B: "[~@4 f4@2 ~@4 c4@6 d4@13 ~@3 [g3,c4]@28 ~@4 [g4,b4]@29 ~@3 [f3,g3]@21 ~@11, a4@7 ~@25, f4@2 ~ g4@10 ~@51, ~@2 c4@8 ~@21 [d4,g4]@29 ~@3 [c4,e4]@29 ~@3 [c4,e4]@22 ~@11]/8", // C5 G Fsus2 G5 C
  C: "[g3,b3,d4]@15 ~", // G
  D: "[[a3,c4]@15 ~ [g3,c4]@28 ~@4 g3@30 ~@2 [f3,g3]@21 ~@11 c4@4 ~@6 c4@6, ~@15 [d4,g4]@29 ~@3 [b3,e4]@30 ~@2 [c4,e4]@22 ~@10 d4@16 ~, ~@56 a3@7 ~, ~@59 g4@5]/8", // Am C5 Fsus2 G5 E5 C
  E: "d4@13 ~@3", F: "~@7 c4, c4@7 ~, ~ d4@7, ~ g4@3", G: "~ g4@3, b3, ~ d4@7", H: "~ e4@3, a3@7 ~, ~ c4@7",
  I: "~ e4@3, g3, ~ c4@7", J: "~ g3@3, g4@7 ~, ~ c4@7", K: "~ c4@3, e3, ~ g3@7", L: "f4@2 ~ g4@5",
  M: "~@6 g4@2 ~@2 c4@5 ~, f3@15 ~, ~ c4 g4@2", N: "~ e4@3, g3@7 ~, ~ c4@7", O: "~ d4@3, g3, ~ b3@7",
  P: "[~@5 c4@2 ~ g3@8, f3@15 ~@17, ~@4 c4@5 ~@6 [c4,d4,g4]@17, ~@3 g4@4 ~@9]/2", Q: "[g3,d4]@7 ~", R: "c4@7 ~",
  S: "[e3,c4]@7 ~", T: "~@6 a3@9 ~, e4@7 ~",
  U: "[c4@3 ~@3 e4@9 ~ [c4,eb4,g4]@14 ~@2 [eb4,ab4]@14 ~@2, e3@5 ab3@5 ~@6, ~@4 c4@10 ~@17 c4@15 ~@2]/3", // Cm Ab5
  V: "~@4 [g3,bb3,eb4] ~@3", W: "~@4 [f3,bb3,d4] ~@3", X: "~@4 [g3,c4,eb4] ~@3", Y: "~@4 [bb3,eb4,g4] ~@3",
  Z: "~@4 [ab3,c4,eb4,f4] ~@3", AA: "~@7 ab3, ~@3 ab3@2 eb4@3, ~@8 f4@7 ~, ~@3 c4", AB: "~@4 [bb3,d4,f4] ~@3",
  AC: "~@4 [g4,c5,eb5] ~@3", AD: "c4@8 ~@4 ab3@3 ~, ~ f4, ~@5 eb4@3", AE: "[ab3,c4,eb4] [f3,ab3,bb3,eb4]",
})).s("gm_electric_guitar_clean").gain(0.32).pan(0.8)

// chords · electric guitar clean · "CLEAN GTR" · soft notes
const electric_guitar_clean_2 = note(`<
  ~@2 A@3 ~ B@2 C ~@5 D@3 ~@5 E@2 F ~@2 G ~@3 H I ~@2 G ~@3 H I ~ J K L M N O@2 ~@79
>`.pickRestart({
  A: "[~@15 c4@29 ~@4]/3", B: "[~@15 c4@2 ~@15]/2", C: "~@5 g4 ~@2", D: "[~@15 e3@16 ~ g3@15 ~, ~@31 e3@16 ~]/3",
  E: "[~@15 g4@5 c4@6 ~@4 a3@2]/2", F: "[c4,g4]@13 ~@3", G: "~@7 a3", H: "~ a3@3", I: "~@2 a3@13 ~", J: "b3@7 ~",
  K: "[e3,a3]@7 ~", L: "g3@15 ~", M: "~@4 f3@11 ~, c4@7 ~, a3@5 ~@11, ~@2 c3@13 ~", N: "g3@2 g3@13 ~",
  O: "[~@15 bb3@15 ~@2]/2",
})).s("gm_electric_guitar_clean").gain(0.16).pan(0.8)

// other · string ensemble 2 · "SLOWSTRIN"
const string_ensemble_2 = note(`<
  ~@41 A@7 B C@16 D E F@2 G H I@3 E F@2 G H J@2 G K@2 H G H B H D L@7 M@8 N@8 O@3 P@7 Q R@4
>`.pickRestart({
  A: "[g5@89 e5@2 f5@2 g5@19]/7", B: "ab5", C: "[bb5@127 ~]/8", D: "g5", E: "f5", F: "eb5/2", G: "c6", H: "bb5",
  I: "[ab5@31 g5@16 ~]/3", J: "ab5/2", K: "[bb5@15 ab5@16 ~]/2",
  L: "[~@15 eb5@32 c6@16 bb5@16 ab5@16 bb5@17, f5@17 ~@95]/7",
  M: "[g5@15 f5@16 eb5@14 ~@2 g5@8 bb5@8 c6@16 bb5@16 ab5@16 bb5@17, ~@23 f5 ~@40]/8",
  N: "[g5@15 f5@16 eb5@32 c6@16 bb5@16 ab5@16 bb5@17]/8", O: "[g5@15 f5@16 eb5@14 ~@2 g5, ~@23 f5]/3",
  P: "[~@7 bb5@8 c6@16 bb5@16 ab5@16 eb5@48 ~]/7", Q: "bb5@5 ab5@7 g5@4", R: "[ab5@6 g5@3 eb5@6 eb5@48 ~]/4",
})).s("gm_string_ensemble_2").gain(0.4).pan(0.3)

// other · string ensemble 2 · "SLOWSTRIN" · soft notes
const string_ensemble_2_soft = note("<~ A@8 ~@6 B@2 ~@5 A@8 ~@3 A@8 ~@87>".pickRestart({
  A: "[g5@127 ~]/8", B: "g5/2",
})).s("gm_string_ensemble_2").gain(0.24).pan(0.3)

// drums · kick
const kick = s("bd").struct(`<
  ~@6 A ~@2 B ~ B ~ B ~ B ~ B ~ B ~ B ~ B ~ B@23 C B D B D B D B E B D B D B D@2 F D B D@2 B D@2 G D@7 H B I@2 J I@3 K I
  L M N M I O P M I M I M L Q I R L M S M I M T M U M S M I V B@5 E B ~
>`.pickRestart({
  A: "~ x", B: "x", C: "x!2 ~@2", D: "x ~@6 x", E: "x ~@4 x ~@2", F: "x!2", G: "x ~@2 x ~@4", H: "x ~@2 x ~@4 x ~@7",
  I: "x ~@2 x ~@3 x", J: "x ~@4 x ~ x", K: "~ x ~@2 x ~@3", L: "x ~@2 x ~@2 x!2", M: "x ~ x ~@4 x",
  N: "x ~@5 x ~@5 x ~@2 x", O: "x ~ x ~@3 x!2", P: "x!2 ~ x ~ x!3", Q: "x!2 ~ x", R: "x ~ x ~@2 x ~ x",
  S: "x!3 ~@3 x ~", T: "x!2 ~@2 x ~@3", U: "x ~@2 x ~ x!3", V: "x ~@2 x",
})).gain(0.48)

// … 119 more lines

More by Paul de Leeuw