Strudelify

Non sono un cantautore

Fiorella Mannoia

KeyC♯ minorTempo140 bpm
0:00/0:00
// Non sono un cantautore — Fiorella Mannoia
// 140 bpm, 4/4, key C# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 147, 4/4 at bar 148) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: Full arrangement: all 151 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 27.
setcpm(140/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.

// bass · electric bass finger
const bass = note(`<
  ~@8 A@2 B@4 C@2 A@2 B@4 C@2 A@2 B@4 C@2 A@2 D@2 E F G H I F J K A@2 B@4 C@2 A@2 B@4 C@2 E F G H I F J L A@2 B@4 C@2
  A@2 B@4 C@2 A@2 B@4 C@2 E F G H I F M N E F G H I F J O P Q R S T U V W A@2 B@4 C@2 A@2 X@2 D@2 Y@2 A@2 X@2 D@2 Z@2
  A@2 X@2 AA@2 AB AC AD@2 AE
>`.pickRestart({
  A: "[c#2@5 ~ a1@7 ~ e2@8 b1@7 ~ b1@2]/2", B: "[c#2@5 ~ a1@7 ~ e2@8 b1@6 b1@2 c2@2]/2",
  C: "[c#2@5 ~ a1@7 ~ e2@8 b1@8 b1@2]/2", D: "[c#2@5 ~ a1@7 ~ e2@8 b1@6 f#2@2 b1@2]/2",
  E: "c#2@2 ~@4 c#2@2 g#2 ~ g#2@2 c#2@2 a1@2", F: "~@3 a1 e2!2 a1!2", G: "e1@2 ~@4 e1@2 b1 ~ b1@2 e1@2 b1@2",
  H: "~@6 b1@2 f#2 ~ f#2@2 b1@2 b1@2", I: "c#2@4 ~@2 c#2@2 g#2 ~ g#2@2 c#2@2 a1@2",
  J: "e1@4 ~@2 e1@2 b1 ~ e1@2 b1@2 e1@2", K: "c#2@5 ~ b1@8 ~@2", L: "c#1@2 g#1 ~ c#2@2 b1@4 f#1@2 g#1@2 b1@2",
  M: "e1@4 ~@2 e1@2 b1 ~ b1@2 e1@2 b1 ~", N: "~@6 b1@2 f#2@2 f#2 ~ b1@2 c2@2",
  O: "c#1@2 g#1 ~ c#2@2 b1@4 g#1@2 b1@2 g#1@2", P: "f#1@2 f#1@2 ~@2 f#1@4 c#2@2 e2@2 c#2 ~",
  Q: "f#2@2 c#2@2 a1@2 f#1@5 ~ f#2@2 b1@2", R: "c#2!2 ~ c#2@3 ~ g#1", S: "c#2!2 ~ c#2@3 e2@2", T: "a1!2 ~ a1@3 e2 a2",
  U: "a1!2 e2@4 a1@2", V: "g#1@2 g#1@3 ~ g#1@6 d#2@4", W: "g#2@2 g#2@2 g#2@2 g#2@2 g#2@2 f#2 [c#2,d#2] ~@4",
  X: "[c#2@5 ~ a1@7 ~ e2@8 b1@4 g#1@2 b1@2 e2@2]/2", Y: "[c#2@5 ~ a1@7 ~ e2@8 f#1@2 g#1@2 b1 ~ b1@2 e2@2]/2",
  Z: "[c#2@5 ~ a1@7 ~ e2@8 a2@2 g#2@2 e2@2 b1@2 g#1 ~]/2", AA: "[c#2@5 ~ a1@7 ~ e2@8 b1@3 ~ b1 ~ b1 ~ b1 ~]/2",
  AB: "b1 ~ b1 ~ b1 ~ b1@2 ~@8", AC: "~@6 a1@3 ~ a1 ~ a1 ~ a1 ~", AD: "a1 ~ a1 ~ a1 ~ g#1@2 a1 ~ a1 ~ a1 ~ a1 ~",
  AE: "a1 ~ a1 ~ a1 ~ a1@2 ~@8",
})).s("gm_electric_bass_finger").gain(0.72)

// chords · electric guitar clean
const electric_guitar_clean = note(`<
  ~@36 A@2 B C A@2 D@2 ~@16 A@2 B C A@2 D@2 ~@24 A@2 B C A@2 E@2 A@2 B C A@2 F@4 G H I@4 ~@31 J K L M
>`.pickRestart({
  A: "[d#4@2 e4@3 ~ e4@6 ~@2 d#4@4 ~@2 a4@11 ~]/2", B: "d#4@2 e4@3 ~ e4@6 ~@4",
  C: "~@2 e4@2 ~@2 e4@7 ~ e4@2, ~@4 a4@11 ~",
  D: "[d#4@2 e4@3 ~ e4@4 e4@2 ~@4 b3@2 ~@2 b3@2 ~@2 b3@2 d#4@2 b3@2 d#4@2, ~@7 e4@2 e4@2 ~@5]/2",
  E: "[d#4@2 e4@3 ~ e4@4 e4@2 ~@2 d#4@4 ~@2 a4@5 ~@3 e4@2 b3@2]/2",
  F: "[d#4@2 e4@3 ~ e4@4 e4@2 ~@4 b3@2 ~@2 b3@2 d#4@2 b3@2 d#4@2 b3@3 a3@18 ~@5 a3@8 ~@2, ~@7 e4@2 e4@2 ~@21]/4",
  G: "g#3", H: "~@2 [g#3,c#4,e4] ~@3 g#3@9 ~",
  I: "[[c#4,f#4]@18 [a3,c#4,f#4] ~@3 [c#4,f#4]@6 ~@3 g#3@18 ~ c4 ~ c4 ~ [g#3,c4,f#4] ~ [g#3,f#4]@5 ~@3, ~@56 c4@3 ~@5]/4", // F#5 F#m F#5 G#7
  J: "~@10 [a3,e4,a4] ~@3 [e4,a4] ~", K: "~@2 [a3,e4,a4] ~ [a3,e4,a4] ~@5 [a3,e4,a4] ~@3 [a3,e4,a4] ~",
  L: "~@2 e4 ~ [a3,e4,a4] ~@5 [a3,e4,a4] ~@3 [e4,a4] ~", M: "~@4 [a3,e4,a4] ~@11",
})).s("gm_electric_guitar_clean").gain(0.48)

// chords · electric guitar clean · soft notes
const electric_guitar_clean_2 = note("<~@115 [~@2 g#3 ~ g#3 ~@11] ~@31 [~@14 a3 ~] ~ [~@14 a3 ~] ~>")
  .s("gm_electric_guitar_clean").gain(0.32)

// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
  A B A C A B A C A D A E A D A E A D A E A D A E A D A E A D A E A D A D F G H I J K L M A D A E A D A E A D A E A D A
  E F G H I J K L M A D A E A D A E A D A E A D A E A D A E A D A E F G H I J K N O F G H I J K L P Q@2 R@2 S T U@2 A D
  A E A D A E A D A E A D A E A D A E A D A E A D A E A V W X Y Z AA
>`.pickRestart({
  A: "[e4,c#5]@2 [g#4,c#5]@2 [e4,g#4,c#5] ~ [e4,a4]@4 [e4,a4] ~ [e4,a4] ~ [e4,f#4,b4]@2, g#4 ~@15", // C#m C#5 C#m A5 Esus2
  B: "~@2 [e4,b4] ~ [e4,f#4,b4] ~ [d#4,f#4,b4]@3 ~ [d#4,f#4,b4] ~ [f#4,b4] ~ [e4,g#4,c#5] ~", // E5 Esus2 B B5 C#m
  C: "~@2 [e4,f#4,b4] ~ [e4,f#4,b4] ~ [d#4,f#4,b4]@3 ~ [d#4,f#4,b4] ~ [f#4,b4] ~ [e4,g#4,c#5] ~", // Esus2 B B5 C#m
  D: "~@2 [e4,b4] ~ [e4,f#4,b4] ~ [d#4,f#4,b4]@3 ~ [d#4,f#4,b4] ~ [f#4,b4] ~ [d#4,f#4,b4] ~", // E5 Esus2 B B5 B
  E: "~@2 [e4,f#4,b4] ~ [e4,f#4,b4] ~ [d#4,f#4,b4]@3 ~ [d#4,f#4,b4] ~ [f#4,b4] ~ [d#4,f#4,b4] ~", // Esus2 B B5 B
  F: "[b3,g#4] ~ [b3,g#4] ~ [b3,e4,g#4]@2 [b3,g#4] ~ [b3,e4,f#4]@2 [b3,f#4] ~ [b3,e4,f#4]@2 [b3,e4,f#4] ~, e4 ~@7", // E Bsus4 B5 Bsus4
  G: "[b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4] ~ [b3,e4] ~ [b3,e4] ~ [b3,e4]@2 [b3,e4]@2", // E5
  H: "[b3,g#4] ~ [b3,g#4] ~ [e4,g#4]@2 [b3,g#4] ~ [b3,e4]@2 [b3,f#4] ~ [b3,e4,f#4]@2 [b3,d#4,f#4]@2, e4@2 ~@2 b3 ~@3 f#4 ~@7", // E E5 B5 Bsus4 B
  I: "f#4 ~ [b3,d#4,f#4] ~ [b3,f#4] ~ [b3,d#4]@2 f#4 ~ [b3,d#4,f#4]@2 [b3,f#4]@2 [b3,d#4,f#4] ~, ~@6 f#4 ~@9", // B B5 B B5 B
  J: "[b3,g#4] ~ [b3,g#4]@2 [b3,e4,g#4]@2 [b3,g#4] ~ [b3,e4,f#4]@2 [b3,f#4] ~ [b3,e4,f#4]@2 e4@2, e4 ~@7", // E Bsus4 B5 Bsus4
  K: "b3 ~ [b3,e4]@2 [b3,e4] ~ [b3,e4] ~ [b3,e4] ~ [b3,e4] ~ [b3,e4] ~ [b3,e4] ~", // E5
  L: "[b3,e4,g#4] ~ [b3,g#4] ~ [b3,e4,g#4]@2 [b3,g#4]@2 [b3,e4,f#4]@2 [b3,f#4] ~ [b3,e4,f#4]@2 b3 ~", // E Bsus4 B5 Bsus4
  M: "[c#4,e4,g#4]@5 ~ [b3,d#4,f#4]@6 ~@4", // C#m B
  N: "[b3,e4,g#4] ~ [b3,g#4] ~ [b3,e4,g#4]@2 [b3,g#4]@2 [b3,e4,f#4]@2 [b3,f#4] ~ [b3,e4,f#4]@2 [f#3,b3,e4]@2", // E Bsus4 B5 Bsus4 Esus2
  O: "~@2 [f#3,b3,e4]@3 ~ [f#3,b3,e4]@3 ~ [f#3,b3,e4]@6", P: "[c#4,g#4]@5 ~ [b3,f#4]@6 ~@4",
  Q: "[f#4,c#5]@5 ~ [f#4,c#5]@9 ~", R: "[e4,c#5]@5 ~ [e4,c#5]@9 ~", S: "[e4,a4]@5 ~ [e4,a4]@10",
  T: "[e4,a4]@5 ~ [e4,a4]@9 ~", U: "[[c4,f#4]@5 ~ c4@17 ~@9, ~@6 f#4@15 ~@11]/2",
  V: "~@2 [e4,b4] ~ [e4,f#4,b4] ~ [b3,f#4,b4]@3 ~ [b3,f#4,b4] ~ [b3,f#4,b4]@2 [b3,f#4,b4] ~", // E5 Esus2 B5
  W: "[b3,f#4,b4] ~ [b3,f#4,b4] ~ [f#4,b4] ~ [b3,f#4,b4]@2 ~@8", X: "~@6 [a3,e4]@5 ~ [a3,e4]@3 ~",
  Y: "[a3,e4]@5 ~ [a3,e4]@5 ~ [a3,e4]@4", Z: "e4@2 a3 ~@3 [a3,e4]@5 ~ [a3,e4]@3 ~, a3 ~@15",
  AA: "[a3,e4] ~ [a3,e4]@2 ~@2 [a3,e4]@2 ~@8", // A5
})).s("gm_acoustic_guitar_steel").gain(0.4).pan(0.7)

// chords · acoustic guitar steel
const acoustic_guitar_steel_2 = note(`<
  A@2 B@2 A@2 B@2 C D C E C D C E C D C E C D C E C D C E C D C E C D F@2 G@4 H@3 I C D C E C D C E C D C E C D C E G@4
  H@3 I C D C E C D C E C D C E C D C E C D C E C D C E G@4 J@3 K G@4 H@3 L@2 M N O P@2 Q@2 C D C E C D C E C D C E C D
  C E C D C E C D C E C D C E C R S T U V W
>`.pickRestart({
  A: "[[c#4,e4]@2 c#4@2 ~@2 [c#4,e4]@3 ~ c#4@2 ~@2 [g#3,b3,e4]@3 ~ [g#3,b3,e4] ~ [g#3,e4]@2 [b2,f#3,b3,d#4]@5 ~ [b2,f#3,b3,d#4]@2 [c#4,e4] ~, c#3@6 a2@7 ~@19, g#3@4 ~@2 a3@4 ~@4 e3@7 ~@11]/2", // C#m E C#m B C#m
  B: "[[c#4,e4]@2 c#4@2 ~@2 [c#4,e4]@3 ~ c#4@2 ~@2 [g#3,b3,e4]@3 ~ [g#3,b3,e4] ~ [g#3,e4]@2 [b2,f#3,b3,d#4]@5 ~ [b2,f#3,b3,d#4]@2 c#4 ~, c#3@6 a2@7 ~@19, g#3@4 ~@2 a3@4 ~@4 e3@7 ~@11]/2", // C#m E C#m B
  C: "[c#4,e4]@2 c#4@2 ~@2 [c#4,e4]@3 ~ c#4@2 ~@2 [g#3,b3,e4]@2, g#3@2 ~ a3@2 ~@3", // C#m E
  D: "~@2 [g#3,b3,e4] ~ [g#3,e4]@2 [f#3,b3,d#4]@5 ~ [f#3,b3,d#4]@2 [b3,d#4] ~", // E C#m B
  E: "~@2 [g#3,b3,e4] ~ [g#3,e4]@2 [f#3,b3,d#4]@5 ~ [f#3,b3,d#4]@2 b3 ~", // E C#m B
  F: "[[g#3,c#4]@4 ~@2 [c#4,e4]@3 ~ c#4@2 ~@2 [e3,g#3,b3]@5 ~ [g#3,e4]@2 [f#3,b3,d#4]@5 ~ [f#3,b3,d#4]@2 [b3,d#4] ~, e4 ~@2 a3@3 ~@10]/2", // C#5 C#m E C#m B
  G: "[~ g#3 e4 g#3 d#4 b3 f#3 c#4@2 ~ e3 e4@2 c#4 a3 e4@2 g#3 e4@2 ~ e4@2 d#4@2 b3@2 ~@4 f#3, ~@9 a3@2 ~@9 b3@3 ~@6 d#4@2 ~, ~@15 b3]/4",
  H: "[~ g#3 e4 g#3 d#4 b3 f#3 c#4@2 ~ e3 e4@2 c#4 a3 e4@2 g#3 e4@2 ~ e4@2 ~, ~@9 a3@2 ~@9 b3@3 ~]/3",
  I: "[g#3,e4]@5 ~ f#3@9 ~, ~@6 d#4@7 ~@3", // C#m
  J: "[~ g#3 e4 g#3 d#4 b3 f#3 c#4@2 ~ e3 e4@2 c#4 a3 e4@2 g#3 e4@2 ~ e4@2 b3, ~@9 a3@2 ~@9 b3@3 ~]/3",
  K: "~@8 b4@4 f#4@3 ~, f#4 b3 ~@2, ~ b4@2 f#4@2 ~@3",
  L: "[[g#3,e4]@5 ~ f#3@9 ~@5 f#3@2 [a3,c#4,f#4]@8 f#3@2, ~@6 d#4@7 ~@2 a3@5 ~@12, ~@8 [c#4,f#4]@3 ~@5]/2", // C#m F#m F#5
  M: "a3@4 f#3@2 a3@4 f#3@2 [a3,c#4,f#4]@3 ~, [c#4,f#4]@3 [c#4,f#4]@3 ~@2", // F#m F#5
  N: "[c#4,e4]@2 c#3 [g#3,c#4,e4]@4 c#3, g#3@3 ~@13", O: "[g#3,c#4,e4]@2 c#3 [g#3,c#4,e4]@2 c#3 [g#3,c#4,e4] ~",
  P: "[[a3,c#4,f#4]@6 f#4@8 ~@2 f#4@6 [c#4,f#4]@8 a3 ~, ~@3 c#4@8 ~@5, ~@6 a3@7 ~ a3@8 a3@4 ~@6]/2", // F#m F#5
  Q: "[[g#3,c4,f#4]@5 ~ [g#3,c4,f#4]@23 ~@3]/2", // G#7
  R: "~@2 [g#3,b3,e4] ~ [g#3,e4]@2 [b2,f#3,b3]@3 ~ f#3 ~ [b2,b3]@4, ~@6 f#3 ~", S: "[b2,f#3,b3]@5 ~ [b2,f#3,b3]@2 ~@8",
  T: "~@6 [a2,e3]@5 ~ [a2,e3]@4", U: "[a2,e3]@5 ~ e3@4 a2 ~ [a2,e3]@4, ~@6 a2@3 ~@7",
  V: "[a2,e3]@5 ~ [a2,e3]@5 ~ [a2,e3]@4", W: "[a2,e3]!2 ~ [a2,e3] ~@4",
})).s("gm_acoustic_guitar_steel").gain(0.48).pan(0.4)

// chords · acoustic guitar steel · soft notes
const acoustic_guitar_steel_3 = note(`<
  A B A B A B A B A C A C A C A C A C A C A C A C A C A C A C A C A C A C ~@2 D E ~@2 D ~ A C A C A C A C A C A C A C A
  C ~@2 D E ~@2 D ~ A C A C A C A C A C A C A C A C A C A C A C A C ~@2 D E ~@2 D F ~@2 D E ~@2 D ~@9 A C A C A C A C A
  C A C A C A C A C A C A C A C A C A C A G ~@5
>`.pickRestart({
  A: "~ e4 ~@3 e4 ~@2", B: "~@14 [c#3,g#3] ~", C: "~@14 f#3 ~", D: "~@6 g#3@3 ~@7", E: "~@4 f#3@7 ~@5",
  F: "~@10 b3@5 ~", G: "~@10 [b2,b3] ~@3 f#3 ~",
})).s("gm_acoustic_guitar_steel").gain(0.24).pan(0.4)

// chords · lead 3 calliope
const lead_3_calliope = note(`<
  A B C D A B C E F G H I J K C L M G H I J K C L F G H I J K C L F G N O ~@96 P Q P Q P Q P R P Q P Q P S ~@5
>`.pickRestart({
  A: "[c#4,g#5] ~ [c#4,g#5] ~ [c#4,g#5]@2 [b3,f#5] ~ b3@2 b3@2 [b3,f#5]@2 [c#4,g#5] ~, ~@8 f#5 ~ f#5 ~@5", // C#5 B5 C#5
  B: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 d#4@2 d#4@2 [d#4,f#5]@2 c#4@2, ~@8 f#5 ~ f#5 ~@3 g#5 ~", // E D#m
  C: "[c#4,g#5] ~ [c#4,g#5] ~ [c#4,g#5]@2 [b3,f#5] ~ b3@2 b3@2 [b3,f#5]@2 e4@2, ~@8 f#5 ~ f#5 ~@3 g#5 ~", // C#5 B5
  D: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 [d#4,f#5] ~ d#4@2 f#5@2 [c#4,g#5]@2, ~@6 f#5 ~@3 f#5 ~@5", // E D#m C#5
  E: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 [d#4,f#5] ~ d#4@2 [d#4,f#5]@2 ~@2, ~@6 f#5 ~@3 f#5 ~@5", // E D#m
  F: "[c#4,g#5] ~ [c#4,g#5] ~ [c#4,g#5]@2 b3 ~@5 f#5@2 c#4 ~", // C#5
  G: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 d#4@2 d#4@2 f#5@2 ~@2, ~@8 f#5 ~ f#5 ~@5", // E
  H: "c#4 ~ [c#4,g#5] ~ [c#4,g#5]@2 ~@6 f#5@2 ~@2", I: "g#5 ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 ~@2 d#4@2 f#5@2 ~@2",
  J: "c#4 ~ c#4 ~ [c#4,g#5]@2 b3 ~@5 f#5@2 c#4 ~", // C#5
  K: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 d#4@2 d#4@2 f#5@2 [c#4,g#5] ~", // E C#5
  L: "[e4,g#5] ~ [e4,g#5] ~ [e4,g#5]@2 d#4@2 [d#4,f#5] ~ d#4@2 [d#4,f#5]@2 c#4@2, ~@6 f#5 ~@3 f#5 ~@3 g#5 ~", // E D#m
  M: "[c#4,g#5] ~ [c#4,g#5] ~ [c#4,g#5]@2 b3@2 ~@4 f#5@2 c#4 ~", N: "c#4 ~ c#4 ~ [c#4,g#5]@2 b3 ~@5 f#5@2 ~@2",
  O: "e4 ~ [e4,g#5] ~ [e4,g#5]@2 ~@4 d#4@2 ~@4", P: "g#5 ~ g#5 ~ g#5@2 f#5 ~ f#5 ~ f#5 ~ f#5@2 g#5 ~",
  Q: "g#5 ~ g#5 ~ g#5@2 ~@2 f#5 ~ f#5 ~ f#5@2 g#5 ~", R: "g#5 ~ g#5 ~ g#5@2 ~@2 f#5 ~ f#5 ~ f#5@2 ~@2",
  S: "g#5 ~ g#5 ~ g#5@2 ~@10",
})).s("gm_lead_3_calliope").gain(0.24).pan(0.6)

// chords · lead 3 calliope · soft notes
const lead_3_calliope_soft = note(`<
  ~ A ~@3 A ~@2 B C D E F G ~@2 B C D E F G ~@2 B C D E F G ~@2 B C H I ~@97 A ~ A ~ A ~ A ~ A ~ A ~ A ~@5
>`.pickRestart({
  A: "~@6 f#5 ~@9", B: "~@6 f#5 ~ b3@2 b3@2 b3@2 g#5 ~, ~@8 f#5 ~ f#5 ~@5", C: "~@6 f#5 ~@5 d#4@2 c#4@2, ~@14 g#5 ~",
  D: "g#5 ~@5 [b3,f#5] ~ b3@2 b3@2 b3@2 e4@2, ~@8 f#5 ~ f#5 ~@3 g#5 ~", // B5
  E: "e4 ~@5 f#5 ~ [d#4,f#5] ~ f#5 ~@3 [c#4,g#5]@2", F: "g#5 ~ g#5 ~@3 f#5 ~ b3@2 b3@2 b3@2 g#5 ~, ~@8 f#5 ~ f#5 ~@5",
  G: "~@6 f#5 ~ f#5 ~ f#5 ~ d#4@2 ~@2", H: "g#5 ~ g#5 ~@3 f#5 ~ b3@2 b3@2 b3@2 [c#4,g#5] ~, ~@8 f#5 ~ f#5 ~@5",
  I: "g#5 ~@5 d#4@2 d#4@2 f#5 ~ [d#4,f#5]@2 ~@2, ~@6 f#5 ~ f#5 ~@7", // D#m
})).s("gm_lead_3_calliope").gain(0.08).pan(0.6)

// chords · percussive organ
const percussive_organ = note(`<
  ~@36 A@4 B@3 C D E D E D E D E D E D E D E D E A@4 B@3 C D E D E D E D E D E D E D E D E D E D E D E D E F@4 G@4 A@4
  B@3 C H@2 I@2 J@2 K@2 D E D E D E D E D E D E D E D E D E D E D E D E D E D E D L ~@5
>`.pickRestart({
  A: "[g#5@8 f#5@8 a4@16 g#5@8 ~@8 d#5@15 ~, b4@31 ~, e5@3 ~, ~@5 f#5@3]/4", B: "[g#5 f#5 a4@2 g#5 f#5, [b4,e5]]/3",
  C: "[g#5,c#6,e6]@6 [f#5,b5,d#6]@7 f#5 [b4,c#5,d#5] [e4,f#4,g#4]", // C#m B E
  D: "~@2 c#4@2 [c#5,e5,b5]@2 ~@4 a3@2 [a4,c#5,e5]@3 ~", E: "~@2 e3@2 [e5,f#5,b5]@3 ~@3 b3 ~ [d#5,f#5,b5]@3 ~",
  F: "[g#5@8 f#5@8 a4@15 ~ g#5@8 ~@8 d#5@15 ~, b4@31 ~, e5@3 ~, ~@5 f#5@3]/4", G: "[g#5 f#5 a4@2 g#5 f#5@3, [b4,e5]]/4",
  H: "[f#5,a5,c#6]/2", I: "[e5,g#5,c#6]/2", J: "[c#5,f#5,a5]/2", K: "[[d#5,g#5,c6]@29 ~@3]/2",
  L: "~@2 e3@2 [e5,f#5,b5]@3 ~@9", // Esus2
})).s("gm_percussive_organ").gain(0.56).pan(0.6)

// other · distortion guitar
const distortion_guitar = note(`<
  ~@35 A B@4 C@3 D E@3 ~@12 A B@4 C@3 D E@3 ~@4 F G@2 ~@5 F G@2 ~@5 A B@4 C@3 H B@4 C@3 D I@2 J@2 K@2 L@2 M N O P M N O
  P M N O P M N O P M N O P M N O P Q N O P M R S T U V W
>`.pickRestart({
  A: "~ e4", B: "[b4@27 e4@5]/4", C: "[b4@13 a4@2 g#4@6 a4 b4@2]/3", D: "e4@6 d#4@9 ~", E: "[c#4@35 ~@13, c4 ~@47]/3",
  F: "~@2 e4@2 d#4@2 [b3,e4]@9 ~", G: "[c#4@7 ~]/2", H: "f#4@3 e4@5", I: "[c4 a4@29 ~@2, c#4@15 ~]/2",
  J: "[[c#4,g#4]@15 ~]/2", K: "[[c#4,f#4]@15 ~]/2", L: "[f#4@31 ~, c4@29 ~@3]/2",
  M: "c#4 ~ c#4 ~ b3 ~ c#4 ~ d#4 ~ d#4 ~ b3 ~ d#4 ~", N: "~@6 g#3 ~ a3 ~ a3 ~ g#3@2 e3 ~",
  O: "~@2 c#4 ~ b3 ~ c#4 ~ d#4 ~ d#4 ~@3 b3 ~", P: "b3 ~ a3 ~@3 a3 ~ a3 ~ a3@2 g#3@2 e3 ~",
  Q: "~@2 c#4 ~ b3 ~ c#4 ~ d#4 ~ d#4 ~ b3 ~ d#4 ~", R: "~@2 b3 ~@3 [b2,b3]@9 ~",
  S: "[b2,b3,f#4] [b2,b3] b3 [b2,b3,f#4] ~@4, ~@2 f#4 ~@13", T: "~@6 [a2,e3,a3]@4 e3 ~ [e3,a3] ~ [e3,a3]@2, ~@3 a2",
  U: "a3@2 [e3,a3]@2 [e3,a3]@2 [e3,a3]@3 ~ [e3,a3]@2 [e3,a3] ~ [e3,a3] ~, a2@5 ~ a2@4 ~@2 a2@4, e3 ~@15", // A5
  V: "[e3,a3] ~ [e3,a3]@2 [e3,a3] ~ [e3,a3]@3 ~ [e3,a3]@2 a3@2 [e3,a3]@2, a2@5 ~ a2@4 ~@2 a2@4, ~@12 e3 ~@3", // A5
  W: "[e3,a3] ~ e3 ~ e3 ~ [a2,e3,a3]@2 ~ [b2,c#3,d3,e3,f3] [g2,a2,b2,c3] f#2 ~@4, a2@5 ~@11", // A5 Bdim Cmaj7
})).s("gm_distortion_guitar").gain(0.56)

// other · distortion guitar · soft notes
const distortion_guitar_soft = note(`<
  ~@117 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A C ~@3 D
>`.pickRestart({
  A: "b3 ~@15", B: "~@12 b3 ~@3", C: "~@2 f#4 ~@5", D: "~@2 a3@3 ~@3 [e3,g3] ~@7",
})).s("gm_distortion_guitar").gain(0.32)

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

// drums · snare
const snare = s("sd").struct(`<
// … 74 more lines

More by Fiorella Mannoia