Strudelify

Toss the Feathers

The Corrs

KeyC majorTempo83 bpm
0:00/0:00
// Toss the Feathers — The Corrs
// 83 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 91 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(83/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.

// other · piano · "Lead (honky-tonk)"
const piano = note(`<
  A B@2 C@2 D@2 E@2 F G H I J K L M ~ N ~ O ~ P Q R B@2 C@2 D@2 E@2 S T U V W X L Y ~ Z Q R B@2 AA@4 AB@2 AC@2 AD@2 AE@2
  AF ~ AG@2 ~ AH@2 AI AJ AK@2 ~@2 AL@2 ~@2 AH@2 AM AN AO@2 AP AN AQ AR ~@5
>`.pickRestart({
  A: "~@2 e4 f4", B: "[g4@2 c4 c4@2 c4@2 ~ c4@2 e4@2 d4@2 e4@10 f4@4 e4@3 g4]/2",
  C: "[g4@2 c4!2 ~ c4 ~ c4@3 e4@2 d4@2 c4@7 ~@9 e4 f4]/2",
  D: "[g4 c4 ~ c4 ~ c4@2 c4@3 e4@2 d4@2 e4@8 ~@2 f4@4 e4@3 g4]/2", E: "[g4@2 c4!2 ~ c4 ~ c4@3 e4@2 d4@2 c4@4 ~@14]/2",
  F: "a4@7 e4@2 d4@3 c4@3 d4", G: "e4!2 ~ e4@2 g4@3 e4@6 c4@2", H: "a4 ~ a4 b4@2 c5@3 e4@2 d4 c4@3 ~ c4",
  I: "g4@2 f4 f4@2 e4@3 d4@6 ~@2", J: "~@4 a4 ~ a4 e4@2 d4@3 c4@3 d4", K: "e4 ~ e4 d4@2 c4@2 e4@5 ~@2 c4@2",
  L: "a4 a4@2 b4@2 c5@3 e4@2 d4 c4@3 ~ c4", M: "g4@2 f4 f4@2 e4@3 d4@4 c4@2 ~@2", N: "f4@3 e4@2 f4@3 g4@2 c4@2 d4@3 ~",
  O: "a4@2 g4 g4@2 f4@2 ~ f4@2 e4@2 d4@4", P: "f4@3 e4@2 f4@3 g4@2 f4 e4 d4@4", Q: "~@14 a4 ~",
  R: "a4@2 g4 ~ g4@2 f4@2 e4@2 d4@2 e4@2 f4@2", S: "a4@7 e4@2 d4@3 c4@2 ~ d4", T: "e4@2 e4 e4@2 g4@3 e4@5 ~ c4@2",
  U: "a4@2 a4 b4@2 c5@3 e4@6 c4@2", V: "g4@2 f4 f4@2 e4@3 d4@5 ~@3", W: "~@2 a4!2 a4@3 e4@3 d4@2 c4 ~ c4 d4",
  X: "e4@2 e4 e4@2 g4@3 e4@4 ~@2 c4@2", Y: "g4@2 f4 f4@2 e4@3 d4@4 c4@3 ~", Z: "f4@3 e4@2 f4@3 g4@2 c4@2 d4@4",
  AA: "[g4@2 c4!2 ~ c4 ~ c4@3 e4@2 d4@2 c4@7 ~@8 c4 e4 f4@2 c4 ~ c4 ~ c4@2 c4@3 e4@2 d4@2 e4@8 ~@2 f4@4 e4@3 g4]/4",
  AB: "[g4@2 c4!2 ~ c4 ~ c4@3 e4@2 d4@2 c4@5 ~@9 a4@2 g4 ~]/2",
  AC: "[g4@2 c4!2 ~ c4@2 ~ c4@2 e4@2 d4@2 e4@10 f4@4 e4@2 ~ g4]/2",
  AD: "[g4@2 c4 c4@2 g4 ~ g4@3 f4 e4 d4@2 c4@5 ~@7 c4@2 e4@2 f4@2]/2",
  AE: "[g4 c4 ~ c4 ~ c4@2 ~ c4@2 e4@2 d4@2 e4@10 f4@4 e4@2 ~ g4]/2", AF: "g4@2 c4 c4@2 c4 ~ c4@3 e4@2 d4@2 c4@2",
  AG: "[~@8 f4@2 e4 ~ b3 b3@2 d4@2 c4@3 ~@12]/2", AH: "[~@7 e4@2 d4@2 f4@2 b3@2 c4@7 ~@10]/2",
  AI: "~@7 e4@2 d4@2 f4@2 b3@3", AJ: "c4@4 b3@3 a3@6 ~@3", AK: "[~@4 e4@2 ~ e4@2 d4@2 f4@2 b3@2 c4@4 ~@13]/2",
  AL: "[~@7 e4@2 d4@2 f4@2 b3@2 c4@5 ~@12]/2", AM: "c5@9 b4 a4 b4 a4@2 e4 ~", AN: "g4@3 a4",
  AO: "[e4@5 ~@2 e4@2 d4@2 f4@2 b3@2 c4@5 ~@12]/2", AP: "c5@9 b4 a4 b4 a4@2 e4@2", AQ: "e4@5 ~@2 e4@2 d4@2 f4@3 b3@2",
  AR: "c4@3 ~@13",
})).s("gm_piano").gain(0.48)

// other · epiano2 · "Backup I (chor. piano)"
const epiano2 = note(`<
  ~ A@2 ~@2 B@2 ~@10 C ~ D ~ E ~ F ~ A@2 ~@2 B@2 ~@5 G H ~@3 C ~ F ~ A@2 ~@2 B@2 ~@2 A@2 ~@2 B@2 ~@11 I@2 ~@2 I@2 ~@2
  J@2 K L@2 M N O ~@5
>`.pickRestart({
  A: "[c4 ~ c4 c4@2 c4@2 ~ c4 ~ c4@2 b3@2 c4@6 g4@4 a4@4 g4@4]/2",
  B: "[c4 c4@2 c4 ~ c4@2 ~ c4 ~ c4@2 b3@2 c4@6 g4@4 a4@4 g4@4]/2", C: "d4@3 c4@3 d4@2 e4@4 c4@4",
  D: "d4@3 c4@3 d4@2 e4@4 f4@4", E: "~@3 c4@3 d4@2 e4@4 c4@4", F: "d4@3 c4@2 ~ d4@2 e4@4 f4@4",
  G: "~@8 d4@2 c4 d4@3 f4@2", H: "e4@3 ~@5", I: "[c4 ~ c4!2 ~ c4 ~ c4 ~ c4@2 b3@2 a3 b3 c4@5 g3@4 a3@4 g3@4]/2",
  J: "g4 ~ g4!2 ~ g4@5 ~@6", K: "g4@2 g4!2 ~ g4@2 ~@9", L: "g4 ~ g4!2 ~ g4@2 ~@9", M: "g4 ~ g4!2 ~ g4 ~@10",
  N: "g4 ~@2 g4 ~ g4@2 ~@9", O: "g4 ~@15",
})).s("gm_epiano2").gain(0.3).pan(0.3)

// other · epiano2 · "Backup I (chor. piano)" · soft notes
const epiano2_soft = note(`<
  ~@84
  [~@2 g4 ~@13]
  [~@2 g4!2 ~ g4@2 ~@9]
  [g4 ~ g4!2 ~ g4 ~@10]
  [g4 ~ g4!2 ~ g4@2 ~@9]
  [g4 ~ g4!2 ~ g4 ~@10]
  ~@2
>`).s("gm_epiano2").gain(0.15).pan(0.3)

// chords · synth strings 1 · "Syn strings"
const synth_strings_1 = note(`<
  ~ A B A C A C A D E F E G E H E I J@2 K@2 L@2 M N A B A C A C A D E F E G E H E I K@2 O P A Q A R A C A S A B A C A C
  A T U@2 V@18 W@2 X Y ~@6
>`.pickRestart({
  A: "[g3,c4,e4]@2 [f3,a3,c4] [g3,b3,d4]", B: "[g3,c4,e4]@2 [f3,a3,c4] [g3,c4,e4]",
  C: "[a3,c4,e4]@2 [f3,a3,c4] [g3,c4,e4]", D: "[a3,c4,e4]@4 [f3,a3,c4]@2 [g3,c4] b3", E: "[a3,c4,e4] [f3,a3,c4]",
  F: "[g3,c4,e4] [f3,a3,c4]", G: "[g3,c4,e4] [a#3,d4,f4]", H: "[g3,c4,e4]@8 [f3,a3,c4]@7 ~",
  I: "[c4,e4]@2 [a#3,d4,f4] [f3,a3,c4]", J: "[[g3,b3,d4]@8 [g3,c4,e4]@4 [f3,a3,c4]@12 [g3,c4,e4]@4 [g3,b3,d4]@3 ~]/2",
  K: "[[g3,b3,d4]@2 [g3,c4,e4] [f3,a3,c4]@3 [g3,c4,e4] [g3,b3,d4]]/2", // G C F C G
  L: "[[g3,b3,d4]@4 [g3,c4,e4]@2 [f3,a3,c4]@6 [g3,c4,e4]@2 [g3,b3,d4] ~]/2", // G C F C G
  M: "[g3,b3,d4]@7 ~ [g3,c4,e4]@4 [f3,a3,c4]@4", N: "[f3,a3,c4]@2 [a3,c4,e4] [g3,b3,d4]",
  O: "[g3,b3,d4]@3 ~ [g3,c4,e4] ~ [f3,a3,c4] ~", P: "[f3,a3,c4] ~ [a3,c4,e4] [g3,b3,d4]",
  Q: "[g3,c4,e4]@4 [f3,a3,c4]@2 [g3,c4,e4] ~", R: "[a3,c4,e4]@4 [f3,a3,c4]@2 [g3,c4,e4] ~",
  S: "[a3,d4,f4]@2 [a3,c4,e4] [g3,b3,d4]", T: "[a3,c4,f4] [g3,c4,e4]",
  U: "[[g3,b3,d4]@8 [f3,a3,c4]@4 [g3,b3,d4]@3 [a3,c4,e4]@5 [g3,b3,d4]@4 [f3,a3,c4]@4 [g3,b3,d4]@4]/2", // G F G Am G F G
  V: "[a3,e4] [g3,b3,d4] [f3,a3,c4] [g3,b3,d4], c4 ~@7", W: "[a3,e4] [g3,b3,d4] [f3,c4] [g3,b3,d4], c4 ~@7",
  X: "[a3,e4] [g3,b3,d4] [f3,c4] [b3,d4], c4 ~@7", Y: "e4 ~ c4 d4, c4 ~@7",
})).s("gm_synth_strings_1").gain(0.2)

// chords · synth strings 1 · "Syn strings" · soft notes
const synth_strings_1_soft = note("<~@16 A ~@23 A ~@40 B@2 C D E@3 F G ~>".pickRestart({
  A: "g3 ~", B: "~@2 a3 ~", C: "~@2 a3 g3", D: "a3 [g3,b3,d4] [f3,a3] [g3,b3]",
  E: "[a3,e4] [g3,b3,d4] [f3,a3,c4] [g3,b3,d4], c4 ~@7", F: "[a3,e4] [g3,b3,d4] [f3,c4] [g3,b3,d4], c4 ~@7",
  G: "[a3,e4] [g3,b3,d4] [f3,c4] [b3,d4], c4 ~@7", // A5 G F5 Bm
})).s("gm_synth_strings_1").gain(0.1)

// chords · piano
const piano_2 = note(`<
  ~ A B C D E F G H ~@4 I J K L M ~@7 E B C D E F G H ~@4 I J K L M ~@3 E B C D E F N@3 B C D E F O@3 ~@29
>`.pickRestart({
  A: "~@5 c4@3 ~@3 c4 ~@2 d3@2, c3@2 f2 [g2,b3], g4@2 c4@3 ~@5 a3@2 ~@4, ~ g3@7 ~ c3@3 ~@4, ~@3 g4@5 ~@8", // G
  B: "~@2 c4 ~@2 e4@2 [c4,e4] [c4,f4]@2 [c4,f4]@2 [c3,c4,e4]@4, c3@2 f2 ~, e4@5 ~@11, ~ g3@7 ~@8, ~@3 [c4,g4]@5 ~@8", // C F5 C C5
  C: "~@6 c4 ~@3 c4@2 ~@2 [d3,a3]@2, c3@7 ~ f2@4 [g2,b3]@4, g4 c4@2 ~@5, ~ g3@4 g3@2 ~@2 c3@3 ~@4, ~@3 g4@4 ~@9", // D5 G
  D: "c4 b3 ~ e4@2 e4@2 e4 [c4,f4]@2 [c4,f4]@2 c4 ~@2 c4, a2@2 f2 ~, ~ e3@7 ~@4 [c3,e4]@4, ~ b3@3 ~@3 g3", // F5 C
  E: "g4 ~ c4 g4 ~ c4 ~@5 c4 ~@2 d3@2, c3 ~@3 f2@2 [g2,b3]@2, ~ g3@2 ~@6 c3@3 ~@4, ~@5 a3 ~@2", // G
  F: "c4@2 ~ c4@2 [c4,e4]@2 [c4,e4] [c4,f4]@2 [c4,f4]@2 [g3,c4,e4]@4, ~ c3@3 c3@2 ~@2, ~@3 [g3,g4]@5 ~@8", // C F5 C G
  G: "~@5 c4@3 ~@2 [f3,c4]@2 ~@2 d3@2, c3@2 f2 [g2,b3], g4@2 c4@3 ~@11, ~ g3@7 ~ c3@3 ~@4, ~@3 g4@5 ~@8", // F5 G
  H: "~ b3 ~ e4@2 e4@2 e4 [c4,f4]@2 [c4,f4]@2 [c3,c4]@3 ~, [a2,c4]@2 f2 ~, ~ e3@7 ~@8, ~@2 b3@6 ~@4 e4 ~@3", // F5 C Am
  I: "~@3 [e3,a4] ~@2 c4@2, a2 f2, ~ e3@5 ~@3 c3@7, ~ a3@3 ~ f3@3, ~@3 c4@5 ~@3 a3@5", // A5
  J: "~@6 c4@2 ~@3 c4@3 c3 ~, c3@8 f2@7 ~, ~ g3@4 g3@3 ~ c3@5 ~@2, ~@2 c4@4 ~@4 f3@5 ~, ~@3 d4@5 ~@8",
  K: "~@3 [e3,e4] ~@3 c3, a2 f2, ~ e3@5 ~@3 c3@5 ~@2, ~ a3@3 ~ f3@3, ~@3 c4@5 ~@3 c4@5", // E
  L: "[c3,g3,c4,g4]@6 [g4,c5] ~ [a#3,a#4,d5]@4 [f3,g4,c5]@2 f4@2", M: "g4 ~@3",
  N: "[~@5 c4@3 ~@2 [f3,c4]@2 ~@25 c4@3 ~@3 c4 ~@2 d3@2, c3@8 f2@4 [g2,b3]@22 c4 g4@5 ~@8, g4@2 c4@3 ~@27 c3@8 f2@4 [g2,b3]@4, ~ g3@7 ~ c3@3 ~@2 d3@26 ~ c3@3 ~@4, ~@3 g4@5 ~@24 g4 g3@7 ~@2 a3@2 ~@4]/3", // F5 G
  O: "[~@5 c4@3 ~@2 [f3,c4]@2 ~@2 d3@32 ~@2, c3@2 f2 [g2,b3]@8 ~, g4@2 c4@3 ~@43, ~ g3@7 ~ c3@3 ~@36, ~@3 g4@5 ~@40]/3", // F5 G
})).s("gm_piano").gain(0.33).pan(0.2)

// chords · acoustic guitar steel · "Steel guitar"
const acoustic_guitar_steel = note(`<
  ~ A B C D C D E F G H I@2 J K L M N O P Q R S T U A B C D C D E F G H I@2 J K L M N V@2 U A B C D C D E W A B C D C D
  E ~@2 X Y Z AA AB AC AD AE AA AF AG AA AH Z AB AI AC AJ AK AC AL AM AN AO ~@5
>`.pickRestart({
  A: "[g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@2 [g3,c4,e4]@3 [f3,a3,c4]@2 [f3,a3,c4]@2 [g3,b3,d4]@2 [g3,b3,d4]@2", // C F G
  B: "[g3,e4]@3 [g3,c4,e4]@2 [g3,c4,e4]@2 [g3,c4,e4] [f3,a3,c4]@2 [f3,a3,c4]@2 [g3,c4,e4]@4, c4 ~@15", // C F C
  C: "[g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4]@3 [f3,a3,c4]@4 [g3,b3,d4]@4", // C F G
  D: "[a3,c4,e4]@3 [a3,c4,e4]@2 [a3,c4,e4]@2 [a3,c4,e4] [f3,a3,c4]@2 [f3,a3,c4]@2 [g3,c4,e4]@4", // Am F C
  E: "[g3,c4,e4]@2 [g3,c4,e4] [g3,c4,e4]@2 [g3,c4,e4]@3 [f3,a3,c4]@4 [g3,b3,d4]@4", // C F G
  F: "[a3,c4,e4]@3 [a3,c4,e4]@2 [a3,c4,e4]@2 [a3,c4,e4] [f3,a3,c4]@2 [f3,a3,c4]@2 [g3,c4,e4]@2 ~@2", // Am F C
  G: "[a3,c4,e4]@2 ~ [a3,c4,e4] ~ [a3,c4,e4] ~@2 [f3,a3]@3 [f3,a3,c4]@3 [f3,a3,c4]@2, ~@8 c4 ~@7", // Am F
  H: "[g3,c4,e4]@3 [g3,c4,e4]@3 [g3,c4,e4]@2 [f3,a3,c4]@3 [f3,a3,c4]@2 [f3,a3,c4]@2 [f3,a3,c4]", // C F
  I: "[[a3,c4,e4]@3 [a3,c4,e4]@3 [a3,c4,e4]@2 [f3,a3,c4]@3 [f3,a3,c4]@2 [a3,c4]@2 ~ [c4,e4] ~@2 [g3,c4,e4]@3 [g3,c4,e4]@2 [a#3,d4,f4]@3 [a#3,d4,f4]@2 [a#3,d4,f4]@2 [a#3,d4,f4], ~@13 f3@3 g3@3 ~@13, ~@15 [a3,c4]@2 ~@15]/2", // Am F Am C A# Am
  J: "[a3,c4,e4]@3 [a3,c4,e4]@3 [a3,c4,e4]@2 [f3,a3,c4]@2 [f3,a3,c4]@2 [f3,a3,c4] [f3,a3,c4]@3", // Am F
  K: "[g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4]@3 [f3,a3,c4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3", // C F
  L: "[a3,c4,e4]@3 [a3,c4,e4]@2 [a3,c4,e4]@3 [f3,a3,c4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3", // Am F
  M: "[g3,c4,e4]@3 [g3,c4,e4]@2 [g3,c4,e4]@3 [a#3,d4,f4]@4 [f3,a3,c4]@3 ~", // C A# F
  N: "~@5 c4@3 ~@2 e4@2 ~@2 c4@2, g3@2 g3 f3, ~ c4@4 ~@4 c4@3 ~ a3@3, ~ d4@3 ~@4, ~@3 g4@5 ~@8",
  O: "~@6 c4@2 ~ c4@2 g4 [g3,d4]@4, f3@2 g3 ~, ~ a3@4 a3@3 ~@8, ~ c4@2 ~@5, ~@3 g4@5 ~@8", // G5
  P: "~@7 g4 ~@3 e4 ~@3 c4, g3@5 g3@3 g3@4 f3@4, ~ c4@5 c4@2 ~@2 c4@2 ~@2 a3@2, ~ d4@3 ~@4, ~@3 g4@4 ~@9",
  Q: "~@3 c4@2 ~ c4@2 ~@3 g4 ~@2 d4@2, f3@2 g3!2, ~ a3@3 ~ c4 ~@2, ~@5 g4@3 ~@8",
  R: "~@7 c4 ~@2 c4@2 ~@2 a3@2, g3@2 g3 f3, ~ c4@4 c4@2 ~@9, ~ d4@2 d4 ~@4, ~@3 g4@5 ~@8",
  S: "~@5 g4@2 a3 ~@3 g4 ~@2 d4@2, f3@2 g3!2, ~@2 a3@5 ~@9, ~@3 c4@5 ~@2 c4@2 ~@4",
  T: "~@7 c4 ~@3 e4 ~@3 c4, g3@2 g3 f3, ~ c4@4 c4@2 ~@3 c4@2 ~@2 a3@2, ~ d4@2 d4 ~@4, ~@3 g4@5 ~@8",
  U: "[f3,a3,c4]@8 [a3,c4,e4]@4 [g3,b3,d4]@3 ~", // F Am G
  V: "[~@6 c4@2 ~ c4@2 g4 g3@4 ~@7 c4 ~@3 e4 ~@3 c4, f3@2 g3 ~ g3@2 g3 f3, ~ a3@4 a3@3 ~@9 c4@4 c4@2 ~@3 c4@2 ~@2 a3@2, ~ c4@2 ~@3 d4@3 d4@2 d4 ~@4, ~@3 g4@5 ~@11 g4@5 ~@8]/2",
  W: "[a3,d4,f4]@8 [a3,c4,e4]@4 [g3,b3,d4]@3 ~", // Dm Am G
  X: "[a3,c4,e4,g4]@4 [g3,b3,d4]@3 [f3,a3,c4]@3 [f3,a3,c4] ~ [g3,b3,d4]@4", // Am7 G F G
  Y: "[c4,e4,g4]@2 [c4,e4,g4]@2 [b3,d4]@3 [f3,a3,c4] ~@2 [f3,a3,c4]@2 [g3,b3,d4]@3 [g3,b3,d4], a3@4 g3 ~@11", // C Bm F G
  Z: "[a3,c4,e4,g4]@2 [a3,c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3 [g3,b3,d4]@4", // Am7 G F G
  AA: "[a3,c4,e4,g4]@2 [a3,c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4]@2 [f3,a3,c4] [g3,b3,d4]@4", // Am7 G F G
  AB: "[c4,e4,g4]@2 [c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3 [g3,b3,d4]@4, a3 ~@3", // C G F G
  AC: "[a3,c4,e4,g4]@2 [a3,c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4]@3 [g3,b3,d4]@4", // Am7 G F G
  AD: "[c4,e4,g4] ~ [c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@2 [g3,b3,d4]@3 [g3,b3,d4]@2, a3 ~@3", // C G F G
  AE: "[c4,e4,g4]@2 [c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4]@3 [g3,b3,d4]@2 [g3,b3,d4]@2, a3 ~@3", // C G F G
  AF: "[c4,e4,g4]@2 [c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4]@3 [g3,b3,d4]@4, a3 ~@3", // C G F G
  AG: "[c4,e4,g4] ~ [c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4]@3 [g3,b3,d4]@4, a3 ~@3", // C G F G
  AH: "[a3,c4,e4,g4]@2 [a3,c4,e4,g4]@2 [g3,b3,d4]@3 c4@2 c4@3 [g3,b3,d4]@4, ~@7 [f3,a3]@5 ~@4", // Am7 G F
  AI: "[a3,c4,e4,g4]@2 [a3,c4,e4,g4]@2 [g3,b3,d4]@3 c4 ~ c4@3 [g3,b3,d4]@4, ~@7 [f3,a3]@5 ~@4", // Am7 G F
  AJ: "[a3,c4,e4,g4] ~ [a3,c4,e4,g4]@2 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@2 ~ [g3,b3,d4]@4", // Am7 G F G
  AK: "[c4,e4,g4] ~@3 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3 [g3,b3,d4]@4, a3@7 ~@9, ~@2 [c4,e4,g4]@5 ~@9", // C G F G C
  AL: "[a3,e4]@2 [a3,c4,e4,g4] ~ [g3,b3,d4]@2 d4 [f3,a3]@3 [f3,a3,c4]@2 [g3,b3,d4]@4, ~@7 c4 ~@8", // A5 Am7 G F G
  AM: "[a3,e4]@2 [a3,e4] ~ [g3,b3,d4]@3 [f3,a3,c4]@2 ~ [f3,a3,c4]@2 [g3,b3,d4]@4", // A5 G F G
  AN: "e4 ~ e4@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [a3,c4]@3 [g3,b3,d4]@4, a3 ~@3", // G F Am G
  AO: "a3 ~ [a3,e4]@2 [g3,d4]@3 [a3,c4] ~ a3@2 ~ d4@2 [g3,b3,d4] ~", // A5 G5 Am G
})).s("gm_acoustic_guitar_steel").gain(0.29).pan(0.8)

// chords · acoustic guitar steel · "Steel guitar" · soft notes
const acoustic_guitar_steel_2 = note("<~@82 A B C D E F G H ~>".pickRestart({
  A: "[c4,g4] ~@7", B: "[c4,g4]@2 [c4,g4] ~@13", C: "[c4,g4] ~ [c4,g4]@2 ~@5 f3@4 ~@3",
  D: "[c4,e4,g4] ~ [c4,g4]@2 b3@3 f3 ~ [f3,c4]@2 [f3,a3,c4] [g3,b3]@2 ~@2", // C C5 F5 F G
  E: "[c4,e4,g4]@2 [c4,e4,g4]@2 d4 ~ d4@2 [f3,a3,c4] ~ [f3,a3,c4]@2 [g3,b3,d4]@4, a3 [g3,b3] ~@2", // C F G
  F: "[a3,c4,e4] ~ [a3,e4]@2 [g3,b3,d4]@3 [f3,a3,c4] ~ [f3,a3,c4] ~ [f3,a3,c4] [g3,b3,d4]@4", // Am A5 G F G
  G: "~@2 [a3,e4] ~ [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@3 [g3,b3,d4]@2 [g3,b3,d4]@2", // A5 G F G
  H: "a3@2 a3@2 [g3,b3,d4]@3 [f3,a3,c4]@2 [f3,a3,c4]@2 [f3,a3,c4] [g3,b3,d4] ~ [g3,b3,d4]!2, e4 ~@3", // G F G
})).s("gm_acoustic_guitar_steel").gain(0.1).pan(0.8)

// chords · overdriven guitar · "Driven guitar"
const overdriven_guitar = note("<~@16 A B C@2 D E D F G ~@15 A B H F G ~@7 I ~@38>".pickRestart({
  A: "~@2 [a#3,d4,f4] [f3,a3,c4]", B: "[g3,b3,d4]@7 ~@9", C: "[~@2 [g3,c4,e4] [g3,b3,d4]@3 ~@2]/2",
  D: "~@8 [g3,c4,e4]@4 [g3,b3,d4]@3 ~", E: "[g3,b3,d4]@9 ~@7", F: "[g3,b3,d4]@8 ~@6 [f3,c4]!2",
  G: "[f3,c4]@2 [a3,c4,e4] [g3,b3,d4]", H: "~@2 [g3,c4,e4] [g3,b3,d4]",
  I: "[a3,d4,f4]@6 [a3,d4,f4]!2 [a3,c4,e4]@4 [g3,b3,d4]@4", // Dm Am G
})).s("gm_overdriven_guitar").gain(0.21).pan(0.2)

// bass · electric bass finger · "Fingered bass"
const bass = note(`<
  ~ A B A C D E F G H I J K L I M N O P Q R S T S U A B A C D E F G H I J K L I M N O P S U A B A C D E F V A B A C D E
  F ~ W@2 X Y Z@19 AA AB@2 ~@4
>`.pickRestart({
  A: "c2@5 ~@2 f1 f1@2 ~@2 g1@3 ~", B: "c2@5 ~@2 c2 f1 ~ f1@2 c2@3 ~", C: "a1@6 ~ a1 f1 ~ f1@2 c2@2 ~@2",
  D: "c2@5 ~@2 c2 f1@3 ~ g1@3 ~", E: "a1@6 ~ a1 f1 ~ f1@2 c2@3 ~", F: "c2@5 ~@2 f1 f1@3 ~ g1@2 ~@2",
  G: "a1@5 ~@2 a1 f1 ~ f1@2 c2@2 b1@2", H: "a1@5 ~@3 f1@5 ~ c2 ~", I: "c2@6 ~@2 f1@5 ~ f1@2",
  J: "a1@5 ~ f1 ~ f1@6 ~ f1", K: "c2@8 d2@3 c2 a#1@3 g1", L: "a1@5 ~ f1 ~ f1@5 ~ c2 ~", M: "a1@7 ~ f1@5 ~ c2 ~",
  N: "c2@6 ~@2 a#1@4 f1@3 ~", O: "g1@3 ~ c2@2 f1 ~", P: "f1@7 ~ c2@3 ~ g1@3 ~", Q: "g1@7 ~ c2@3 ~ f1@3 ~",
  R: "f1@6 ~@2 c2@2 ~@2 g1 ~ g1 ~", S: "g1@8 c2@4 f1@3 ~", T: "f1@7 ~ c2@3 ~ g1 ~ g1 ~", U: "f1@6 ~@2 a1@4 g1@3 ~",
  V: "d2@8 a1@4 g1@3 ~", W: "[~@8 f1@3 ~ g1@2 ~ a1@4 ~ g1@3 f1@4 ~ g1@3 ~]/2", X: "a1@4 g1@3 f1@4 ~ g1@4",
  Y: "a1@3 ~ g1@3 f1@4 ~ g1@3 ~", Z: "a1@4 g1@3 f1@5 g1@3 ~", AA: "a1@4 g1@3 ~@9", AB: "a1 ~@3",
})).s("gm_electric_bass_finger").gain(0.48)

// bass · electric bass finger · "Fingered bass" · soft notes
const bass_soft = note("<~@84 [~@7 f1@5 g1@3 ~] [~@4 g1@3 f1@5 g1@3 ~]!2 [a1@4 g1@3 f1@5 g1@3 ~]!3 ~>")
  .s("gm_electric_bass_finger").gain(0.24)

// other · violin
const violin = note("<~@33 A B A C A B A D E ~@20 F G F G F G F G F G F G F G F G F G H G H I J K ~@5>".pickRestart({
  A: "e4 c4", B: "g4@8 c4@7 d4", C: "g4@3 c5 d5@2 c5@2", D: "g4@3 c5 d5@2 c5 a4", E: "g4@7 ~@9",
  F: "~ d5 c5 a4 b4 a4 b4 c5@2 d5 c5 a4 b4 a4 g4@2", G: "~ d5 c5 a4 b4 a4 b4 c5@2 d5 c5 a4 b4@4",
  H: "~ d5 ~ a4 b4 a4 b4 c5@2 d5 c5 a4 b4 a4 g4@2", I: "~ d5 c5 ~ b4 a4 ~ c5@2 d5 c5 a4 b4@4",
  J: "~@3 a4 ~ a4 ~@3 d5 ~@3 a4 g4@2", K: "~@11 a4 ~@4",
})).s("gm_violin").gain(0.27).pan(0.2)
// … 86 more lines

More by The Corrs