Strudelify

Rock My World (Little Country Girl)

Brooks & Dunn

KeyE majorTempo120 bpm
0:00/0:00
// Rock My World (Little Country Girl) — Brooks & Dunn
// 120 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 23, 4/4 at bar 23, 2/4 at bar 38, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: duplicate parts dropped: ch 6 "woodblock" acoustic bass (copy of ch 5 "woodblock" electric bass finger)
// note: Full arrangement: all 105 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): woodblock.
setcpm(120/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 · piano · "woodblock"
const piano = note(`<
  ~@6 A B@2 C ~@11 D@5 E@4 F@2 G@2 H I J K@2 L@2 M@2 L N O P Q R S T ~@8 U V@2 W X Y Z W AA AB ~ AC AD AE AF AG AH AI AJ
  AK AL AM@7 AN@16 AO@2
>`.pickRestart({
  A: "[e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!4, ~@3 g#3@3 ~@2, ~@2 [b3,e4] ~", // E5 E E5
  B: "[[e2,b2]!8 [e2,b2] [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!4, [e3,g#3,b3,e4]@2 ~ e3@7 ~@2 [e3,b3,e4]@2 ~@2, ~@3 [g#3,b3,e4]@6 ~@2 g#3@3 ~@2]/2", // E5 E E5 E E5 E
  C: "[e2,b2]!6 ~ [a2,e3], [e3,g#3,b3,e4]@2 ~ [g#3,b3,e4]@5, ~@3 e3@4 ~, ~@3 [g2,d3]", // E5 A5 E G5
  D: "[~@4 [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!5 [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!2 ~ [a2,e3] [e2,b2] [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,g#3], ~@7 g#3@3 ~@2 [e3,g#3,b3,e4]@2 ~ e3@7 ~@2 [e3,b3,e4]@2 ~@2 [e3,g#3,b3,e4]@2 ~ e3@4 ~@5, ~@8 [b3,e4]@2 ~@5 [g#3,b3,e4]@6 ~@2 g#3@3 ~@5 [g#3,b3,e4]@5 ~@4, ~@17 [g2,d3] ~@2]/5", // E5 E E5 E E5 A5 E5 E …
  E: "[[e2,b2]!8 [e2,b2]!5 [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,g#3] [e2,b2]!8 [e2,b2]!4 [a2,e3] [a2,e3,c#4,e4,a4] [a2,e3]!2, [g#3,b3,e4]@2 ~@2 [g#3,b3,e4]@3 [g#3,b3,e4]@6 ~@3 [g#3,b3,e4]@4 [g#3,b3,e4]@2 ~ [g#3,b3,e4]@5 ~@4, ~@6 e3@2 ~@7 e3@5 ~@12]/4", // E5 E E5 E E5 A5 A A5 …
  F: "[[a2,e3]!8 [a2,e3]!4 [e2,b2] [e2,b2,g#3,b3,e4] [e2,b2]!2, [c#4,e4,a4]@2 ~@2 [c#4,e4,a4]@2 ~ [c#4,e4,a4]@5 ~@4]/2", // A5 E5 E E5 A
  G: "[[e2,b2]!8 [e2,b2]!4 [b2,f#3] [b2,f#3,b3,d#4] [b2,f#3]!2, [g#3,b3,e4]@2 ~@2 [g#3,b3,e4]@2 ~ [g#3,b3,e4]@5 ~@4]/2", // E5 B5 B B5 E
  H: "b2 [b2,d#4] [b2,f#3]!5 [b2,f#3,f#4,b4], [f#3,b3] ~ [d#4,f#4,b4] ~", // B B5 B
  I: "[b2,f#4,b4] [b2,f#3,f#4,b4] [f#4,b4] [e4,g#4,b4] ~@4, ~@6 e3 ~@9", J: "~@5 [a2,e3] [g2,d3]@2, ~@2 [b2,f#3] ~",
  K: "[[e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,e3] [e2,b2]!4 [e2,b2]!4 [f#2,c#3]!2 [g#2,d#3]!2, ~@4 [g#3,b3,e4]@2 ~ [e3,g#3,b3,e4]@3 ~@6]/2", // E5 E E5 F#5 G#5 E
  L: "[a2,e3]!2 a2 [a2,e3]!2 [a2,e3,a3] ~ [e3,a3], ~ c#3 ~ [a2,c#4]", // A5 A
  M: "[e2,b2]!2 e2 [e2,b2]!3 e2 [e2,b2], e3 g#2 f#3 [c#3,g#3]", // E5 C#5
  N: "[a2,e3] [a2,e3,e4,a4] [e4,a4] [a2,e3,e4,a4] [e3,e4,a4] [a2,e3,e4,a4] [e4,a4] [e3,b3,e4,a4], ~ [c#3,g#3] b3 [f#3,c#4]", // A5 Esus4 C#5 F#5
  O: "[b2,f#3] [b2,f#3,f#4,b4] [f#4,b4] [b2,f#3,f#4,b4] [f#3,f#4,b4] [b2,f#3,f#4,b4] [f#4,b4] [f#3,f#4,b4], ~@3 d#4", // B5
  P: "[d#4,f#4,b4] [f#4,b4]!2 [d#4,f#4,b4] [f#4,b4]!2 [d#4,f#4,b4]!2, b3!2 [b3,d#4] b3, ~ d#4@2 ~@5", Q: "[e2,b2,e3]",
  R: "[e2,b2]", S: "~ e4 ~@2 [e3,b3]!4, [e2,b2,e3,g#3,b3] ~@3",
  T: "[e3,b3]!4 ~ [d3,a3] ~ [b2,f#3], ~ [e3,b3], ~@3 [c#3,g#3]", // E5 D5 B5 E5 C#5
  U: "[e2,b2] [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,g#3] [e2,b2]!4, ~@2 [g#3,b3,e4] ~", // E5 E E5 E E5 E
  V: "[[e2,b2]!8 [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,g#3] [e2,b2]!4, [g#3,b3,e4]@3 [g#3,b3,e4]@6 ~@3 [g#3,b3,e4]@4, ~@2 e3@2 ~@7 e3@5]/2", // E5 E E5 E E5 E
  W: "[e2,b2]!8, [g#3,b3,e4]@2 ~ [g#3,b3,e4]@5", X: "[a2,e3] [a2,e3,c#4,e4,a4] [a2,e3]!6, ~@2 [c#4,e4,a4] ~",
  Y: "[a2,e3]!8, [c#4,e4,a4]@2 ~ [c#4,e4,a4]@5", Z: "[e2,b2] [e2,b2,g#3,b3,e4] [e2,b2]!6, ~@2 [g#3,b3,e4] ~",
  AA: "[b2,f#3] [b2,f#3,b3,d#4] [b2,f#3]!2 b2 [b2,d#4] [b2,f#3]!2, ~@2 [f#3,b3] ~", // B5 B B5 B B5
  AB: "[b2,f#3]!3 [b2,f#3,f#4,b4] [b2,f#4,b4] [b2,f#3,f#4,b4] [f#4,b4] [e4,g#4,b4], [d#4,f#4,b4]@4 ~@10 e3 ~", // B5 E B
  AC: "~ [a2,e3] [g2,d3]@2 [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,e3], [b2,f#3] ~@3", // A5 G5 E5 E E5 B5
  AD: "[e2,b2]!8, [g#3,b3,e4]@2 ~ [e3,g#3,b3,e4]@3 ~@2", AE: "[f#2,c#3]!2 [g#2,d#3]!2 [a2,e3]!2 a2 [a2,e3], ~@3 c#3",
  AF: "[a2,e3] [a2,e3,a3] ~ [e3,a3] [a2,e3]!2 a2 [a2,e3], ~ [a2,c#4] ~ c#3", // A5 A
  AG: "[a2,e3] [a2,e3,a3] ~ [e3,a3] [e2,b2]!2 e2 [e2,b2], ~ [a2,c#4] e3 g#2", // A5 E5 A
  AH: "[e2,b2]!2 e2 [e2,b2]!3 e2 [e2,b2], f#3 [c#3,g#3] e3 g#2", // E5 C#5
  AI: "[e2,b2]!2 e2 [e2,b2] [a2,e3]!2 a2 [a2,e3], f#3 [c#3,g#3] ~ c#3", // E5 A5 C#5
  AJ: "[a2,e3] [a2,e3,a3] ~ [e3,a3] [a2,e3] [a2,e3,e4,a4] [e4,a4] [a2,e3,e4,a4], ~ [a2,c#4] ~ [c#3,g#3]", // A5 A C#5
  AK: "[e3,e4,a4] [a2,e3,e4,a4] [e4,a4] [e3,b3,e4,a4] [b2,f#3] [b2,f#3,f#4,b4] [f#4,b4] [b2,f#3,f#4,b4], b3 [f#3,c#4] ~@2", // A5 Esus4 B5 F#5
  AL: "[f#3,f#4,b4] [b2,f#3,f#4,b4] [f#4,b4] [f#3,f#4,b4] [d#4,f#4,b4] [f#4,b4]!2 [d#4,f#4,b4], ~ d#4 b3!2, ~@5 d#4@2 ~", // B5 B B5 B
  AM: "[[f#4,b4]!2 [d#4,f#4,b4]!2 [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!5 [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!2 ~ [a2,e3] [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!5 [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,g#3,b3], [b3,d#4]@2 b3@2 ~@3 g#3@3 ~@2 [e3,g#3,b3,e4]@2 ~ e3@7 ~@2 [e3,b3,e4]@2 ~@2 [e3,g#3,b3,e4]@2 ~ e3@4 ~@5 [b3,e4]@2 ~@5 [g#3,b3,e4]@6 ~@3, ~@8 [b3,e4]@2 ~@5 [g#3,b3,e4]@6 ~@2 g#3@3 ~@5 [g#3,b3,e4]@5 ~@3 g#3@3 ~@2 [e3,g#3,b3,e4]@2 ~ e3@7 ~@2, ~@17 [g2,d3] ~@10]/7", // B5 B E5 E E5 E E5 A5 …
  AN: "[[e2,b2]!8 [e2,b2]!2 ~ [a2,e3] [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!5 [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!2 ~ [a2,e3] [e2,b2] [e2,b2,e3,g#3,b3,e4] [e2,b2] [e2,b2,b3] [e2,b2]!8 [e2,b2]!5 [e2,b2,g#3,b3,e4] [e2,b2] [e2,b2,g#3,b3], [e3,b3,e4]@2 ~@2 [e3,g#3,b3,e4]@2 ~ [g#3,b3,e4]@5 ~@3 g#3@3 ~@2 [e3,g#3,b3,e4]@2 ~ e3@7 ~@2 [e3,b3,e4]@2 ~@2 [e3,g#3,b3,e4]@2 ~ e3@4 ~@5 [b3,e4]@2 ~@5 [g#3,b3,e4]@6 ~@3, ~@7 e3@4 ~@5 [b3,e4]@2 ~@5 [g#3,b3,e4]@6 ~@2 g#3@3 ~@5 [g#3,b3,e4]@5 ~@3 g#3@3 ~@2 [e3,g#3,b3,e4]@2 ~ e3@7 ~@2, ~@5 [g2,d3] ~@15 [g2,d3] ~@10]/8", // E5 A5 E5 E E5 E E5 A5 …
  AO: "[[e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [e2,b2]@2 [g2,d3] ~ e3@2 ~@8, [e3,b3,e4]@2 ~@2 [e3,g#3,b3,e4]@2 ~ [g#3,b3,e4]@5 ~@4, ~@14 e3@8 a2 ~@9]/2", // E5 G5 E5 E
})).s("gm_piano").gain(0.64).pan(0.7)

// chords · electric guitar muted · "woodblock"
const electric_guitar_muted = note(`<
  ~@6 A@3 B A@4 C@2 A@2 D E ~ F A G A H A@3 I C J A K D L M A N O@2 P@2 O@2 Q R S@2 T@2 U@2 A V W X Y Z A@3 AA C@2 A@2 D
  E ~ F A AB AC AD AE AF AG AH AI AJ A@23 AK
>`.pickRestart({
  A: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", // E5
  B: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [g2,d3] ~ [a2,e3] ~", // E5 G5 A5
  C: "[a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~", // A5
  D: "[b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~", // B5
  E: "[b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [d3,a3] ~ [e3,b3] ~", // B5 D5 E5
  F: "[b2,f#3]@2 [a2,e3]@2 [g2,d3]@4 [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", // B5 A5 G5 E5
  G: "[e2,b2] ~ [e2,b2] ~ [a2,e3] ~ [g2,d3] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", // E5 A5 G5 E5
  H: "[e2,b2] ~ [e2,b2] ~ [a2,e3]@2 [e3,b3]@2 [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", // E5 A5 E5
  I: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~", // E5 A5
  J: "[a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", // A5 E5
  K: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~ [b2,f#3] ~", // E5 B5
  L: "[b2,f#3] ~ [b2,f#3] ~ [d3,a3] ~ [e3,b3] ~@9", M: "~@4 [b2,f#3] [a2,e3] [g2,d3]@2",
  N: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [f#2,c#3] ~ [f#2,c#3] ~ [g#2,d#3]@2 [g#2,d#3]@2", // E5 F#5 G#5
  O: "[a2,e3]!2 [c#3,g#3] [a2,e3] [e3,b3] [a2,e3] [f#3,c#4] [e3,b3]", // A5 C#5 A5 E5 A5 F#5 E5
  P: "[e2,b2]!2 [g#2,d#3] [e2,b2] [b2,f#3] [e2,b2] [c#3,g#3] [b2,f#3]", // E5 G#5 E5 B5 E5 C#5 B5
  Q: "[b2,f#3]!2 [d#3,a#3] [b2,f#3] [f#3,c#4] [b2,f#3] [g#3,d#4] [f#3,c#4]", // B5 D#5 B5 F#5 B5 G#5 F#5
  R: "[b3,f#4] [a3,e4] [b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@2", S: "[e2,b2]",
  T: "[~@4 [e3,b3]!4 [e3,b3]!5 [d3,a3] [c#3,g#3] [b2,f#3], [e2,b2]@15 ~]/2", U: "[a2,e3]!3 [g2,d3] [a2,e3]!3 [g2,d3]",
  V: "[e2,b2]!2 [b2,f#3] [c#3,g#3] [g#2,d#3] [f#2,c#3] [e2,b2]!2", // E5 B5 C#5 G#5 F#5 E5
  W: "[a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [g2,d3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [g2,d3] ~", // A5 G5 A5 G5
  X: "[a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [g2,d3] ~ [a2,e3] ~ [a2,e3] ~ [a2,e3] ~ [a#2,f3] ~", // A5 G5 A5 A#5
  Y: "[b2,f#3] [a#2,f3] [b2,f#3]!2 [d#3,a#3] [d3,a3] [d#3,a#3]!2", // B5 A#5 B5 D#5 D5 D#5
  Z: "[f#3,c#4] [f3,c4] [f#3,c#4]!2 [a3,e4] [g#3,d#4] [a3,e4]!2", // F#5 F5 F#5 A5 G#5 A5
  AA: "[e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2]@2 [d2,a2]@2 [c#2,g#2]@2 [b1,f#2]@2", // E5 D5 C#5 B5
  AB: "[f#2,c#3] ~ [f#2,c#3] ~ [g#2,d#3]@2 [g#2,d#3]@2 [a2,e3]@4 [c#3,g#3]@2 [a2,e3]@2", // F#5 G#5 A5 C#5 A5
  AC: "[e3,b3] [a2,e3] [f#3,c#4] [e3,b3] [a2,e3]@2 [c#3,g#3] [a2,e3]", // E5 A5 F#5 E5 A5 C#5 A5
  AD: "[e3,b3] [a2,e3] [f#3,c#4] [e3,b3] [e2,b2]@2 [g#2,d#3] [e2,b2]", // E5 A5 F#5 E5 G#5 E5
  AE: "[b2,f#3] [e2,b2] [c#3,g#3] [b2,f#3] [e2,b2]@2 [g#2,d#3] [e2,b2]", // B5 E5 C#5 B5 E5 G#5 E5
  AF: "[b2,f#3] [e2,b2] [c#3,g#3] [b2,f#3] [a2,e3]!2 [c#3,g#3] [a2,e3]", // B5 E5 C#5 B5 A5 C#5 A5
  AG: "[e3,b3] [a2,e3] [f#3,c#4] [e3,b3] [a2,e3]!2 [c#3,g#3] [a2,e3]", // E5 A5 F#5 E5 A5 C#5 A5
  AH: "[e3,b3] [a2,e3] [f#3,c#4] [e3,b3] [b2,f#3]!2 [d#3,a#3] [b2,f#3]", // E5 A5 F#5 E5 B5 D#5 B5
  AI: "[f#3,c#4] [b2,f#3] [g#3,d#4] [f#3,c#4] [b3,f#4] [a3,e4] [b3,f#4]@2", // F#5 B5 G#5 F#5 B5 A5 B5
  AJ: "[b3,f#4]@4 [b3,f#4]@4 [e2,b2] ~ [e2,b2] ~ [e2,b2] ~ [e2,b2] ~", AK: "[e2,b2] ~ [e2,b2] ~ [g2,d3] ~ [a2,e3] ~@9",
})).s("gm_electric_guitar_muted").gain(0.56).pan(0.6)

// chords · distortion guitar · "woodblock"
const distortion_guitar = note(`<
  A B C D@2 E@2 D@2 F@2 ~@10 G H I J K@2 L@4 M@2 N@3 ~ O P Q@2 R@2 S@2 T U@2 D@2 V W@2 R@2 S@2 T X@2 Y Z@3 AA@2 AB@3 ~
  AC AD AE AF AG AH AI AJ AK@3 ~@19 G H I J AL
>`.pickRestart({
  A: "a#4@3 g4 [e4,g4]@4 f4@3 d4 [b3,d4]@4", B: "a#3@3 g3 [e3,g3]@4 b2@3 a2 f#2@4", C: "e2@2 [b3,d4]!4 ~@2",
  D: "[[b3,d4]!2 a3 g3 e3 d3 g2 e3@3 [b3,d4]!4 ~@2]/2", // Bm
  E: "[b3!2 a3 g3 e3 ~ g2 e3@3 [b3,d4]!4 ~@2, d4@2 ~@3 d3@2 ~@9]/2", // Bm
  F: "[b3!2 a3 g3 e3 ~ g2 e3@7 ~@2, d4@2 ~@3 d3@2 ~@9]/2", G: "~@6 [b3,d4]!2", H: "[b3,d4]!2 ~@2 [b3,d4]!2 a3 g3",
  I: "e3 d3 g2 e3@3 [b3,d4]!2", J: "[b3,d4]!2 ~@2 b3!2 a3 g3, ~@2 d4 ~", K: "[e3 ~ g2 e3@7 ~@6, ~ d3@2 ~@13]/2",
  L: "[~ d5 ~ b4 [b4,d5]@9 ~@2 a4@2 a4 g4 e4@7 ~@6, ~ b4@2 ~@29, ~ d5 ~@14]/4", M: "[[g#3,b3] d4 b3 b3@8 ~@5]/2",
  N: "[f#4@3 e4 d4@2 ~ b3@27 ~@14]/3", O: "~@4 d4@4 d4 e4@3 e4@4, ~@12 d4 ~@3",
  P: "~@2 d4 e4 b3@3 ~ [d3,b3,d4]@2 [a3,c#4] [b3,d4] c#4 ~ b2@2, [e4,b4]@2 ~@2 d4 ~@8 g3@3, ~ g4@3 ~@12", // G A Bm E5
  Q: "[[a2,e3]!2 [a2,f#3] e3 [a2,e3]@2 [a2,e3] [a2,e3]@3 [a2,f#3] e3 [a2,e3]@2 [a2,e3]!2]/2", // A5 D A5 D A5
  R: "[[e2,b2]@2 [e2,c#3] b2 [e2,b2,e3]@5 [e2,b2,c#3]@2 e2 [e2,b2]@2 [e2,b2]@2]/2", // E5 C#m E5 C#m7 E5
  S: "[[a2,e3]@2 [a2,f#3] e3 [a2,e3]@5 [a2,e3]@2 a2 [a2,e3]@4]/2", // A5 D A5
  T: "[b2,f#3] b2 [b2,f#3] [b2,f#3]@2 [b2,f#3] f#3 [b2,f#3]", // B5
  U: "[b2!2 [b2,f#3] [b2,f#3]@2 f#3!2 ~@3 [b3,d4]!4 ~@2, f#3@2 ~@3 b2@2 [b2,f#3]@9]/2", // B5 Bm B5
  V: "b3!2 a3 g3 e3 ~ g2 e3, d4@2 ~@3 d3@2 ~",
  W: "[[a2,e3] a2 [a2,f#3] e3 [a2,e3]@2 [a2,e3] [a2,e3]@3 [a2,f#3] e3 [a2,e3]@2 [a2,e3]!2, ~ e3@2 ~@13]/2", // A5 D A5 D A5
  X: "[b2!2 [b2,f#3] [b2,f#3]@2 f#3!2 [b2,f#3]@9, f#3@2 ~@3 b2@2 ~@9]/2", Y: "~@5 d5 ~ b4, ~@5 b4@2 ~, ~@3 d5",
  Z: "[[b4,d5]@9 ~@2 a4@2 a4 g4 e4@7 ~@2]/3", AA: "[~@4 [g#3,b3] d4 b3 b3@8 ~]/2",
  AB: "[~@8 f#4@3 e4 d4@2 ~ b3@27 ~@6]/3", AC: "~@3 d4",
  AD: "d4 e4@3 e4@4 ~@2 d4 e4 b3@3 ~, ~@4 d4 ~@3 [e4,b4]@2 ~@2 d4 ~@3, ~@9 g4@3 ~@4", // E5
  AE: "[d3,b3,d4]@2 [a3,c#4] [b3,d4] c#4 ~ b2@2 [a2,e3]@2 [a2,e3]@2 [a2,f#3]@2 e3@2, ~@5 g3@3 ~@8", // G A Bm A5 D
  AF: "[a2,e3]@2 [a2,e3] [a2,e3]@3 f#3 e3, ~@3 a2", AG: "[a2,e3]@2 [a2,e3]!2 [e2,b2]@2 c#3 b2, ~@3 e2",
  AH: "[e2,b2]@5 e2@2 e2, e3 ~@4 b2@3, ~@5 c#3 ~@2", AI: "[e2,b2]@2 e2@2 [a2,e3]@2 f#3 e3, ~@2 b2 ~@3 a2@2",
  AJ: "[a2,e3]@5 a2@2 a2, ~@5 e3@3", // A5
  AK: "[[a2,e3]@3 ~ b2!2 [b2,f#3] [b2,f#3]@2 f#3!2 [b2,f#3]@9 ~@4, ~@4 f#3@2 ~@3 b2@2 ~@13]/3", // A5 B5
  AL: "e3 ~ [g1,g2] [e2,e3] ~@4, ~ d3@2 ~@5", // G E
})).s("gm_distortion_guitar").gain(0.64).pan(0.7)

// chords · violin · "woodblock"
const violin = note("<~@51 A@4 B@2 C@2 ~@46>".pickRestart({
  A: "[[g#5,c#6]@8 [e5,a5]@3 ~ [b4,e5]@2 [d5,g5]@4 [b4,e5] ~ [b4,e5] [a4,d5]@3 [e4,a4]@5 ~ [a4,d5]@5 ~ [g#4,c#5]@2 [f#4,b4]@2 [f#4,b4]@4 [g#4,c#5]@2 [g#4,c#5]@4 [g#4,c#5]@2 [f#4,b4]@4 [g#4,c#5] [f#4,b4]@4 ~@3]/4", // C#5 A5 E5 G5 E5 D5 A5 D5 …
  B: "[[g#5,c#6]@8 [e5,a5]@3 ~ [b4,e5]@2 [d5,g5]@4 [b4,e5] ~ [b4,e5] [a4,d5]@3 [e4,a4]@5 ~@3]/2", // C#5 A5 E5 G5 E5 D5 A5
  C: "[~@2 [c5,f5]@5 ~ f#5@6 [c#5,f#5]@4 [b4,e5]@2 [a4,d5]@2 [b4,e5]@2 [f#4,b4]@8, ~ b5 ~@2]/2", // F5 F#5 E5 D5 E5 B5
})).s("gm_violin").gain(0.64).pan(0.6)

// bass · electric bass finger · "woodblock"
const bass = note(`<
  ~@6 A@3 B A@4 C@2 A@2 D E ~ F A G A H A@3 I C J A K D L M A N O@2 P@2 O@2 Q R S@2 T@2 U@2 A V W X Y Z AA@3 AB C@2 A@2
  D E ~ F A AC AD AE AF AG AH AI AJ AK A@6 AL AM A@6 AL AN A@7 AO
>`.pickRestart({
  A: "e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~", B: "e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ e1 ~ g1 ~ a1 ~",
  C: "a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~ a1 ~", D: "b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~",
  E: "b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 ~ d2 ~ e2 ~", F: "b1@2 a1@2 g1@4 e1 ~ e1 ~ e1 ~ e1 ~",
  G: "e1 ~ e1 ~ a1 ~ g1 ~ e1 ~ e1 ~ e1 ~ e1 ~", H: "e1 ~ e1 ~ a1@2 e2@2 e1 ~ e1 ~ e1 ~ e1 ~",
  I: "e1 ~ e1 ~ e1 ~ e1 ~ a1 ~ a1 ~ a1 ~ a1 ~", J: "a1 ~ a1 ~ a1 ~ a1 ~ e1 ~ e1 ~ e1 ~ e1 ~",
  K: "e1 ~ e1 ~ e1 ~ e1 ~ b1 ~ b1 ~ b1 ~ b1 ~", L: "b1 ~ b1 ~ d2 ~ e2 ~@9", M: "~@4 b1 a1 g1@2",
  N: "e1 ~ e1 ~ e1 ~ e1 ~ f#1 ~ f#1 ~ g#1@2 g#1@2", O: "a1!2 c#2 a1 e2 a1 f#2 e2", P: "e1!2 g#1 e1 b1 e1 c#2 b1",
  Q: "b1!2 d#2 b1 f#2 b1 g#2 f#2", R: "b2 a2 b2@2 b2@2 b2@2", S: "e1", T: "[~@4 e2!4 e2!5 d2 c#2 b1, e1@15 ~]/2",
  U: "a1!3 g1 a1!3 g1", V: "e1!2 b1 c#2 g#1 f#1 e1!2", W: "a1 ~ a1 ~ a1 ~ g1 ~ a1 ~ a1 ~ a1 ~ g1 ~",
  X: "a1 ~ a1 ~ a1 ~ g1 ~ a1 ~ a1 ~ a1 ~ a#1 ~", Y: "b1 a#1 b1!2 d#2 d2 d#2!2", Z: "f#2 f2 f#2!2 a2 g#2 a2!2",
  AA: "e2 ~ e2 ~ e2 ~ e2 ~ e2 ~ e2 ~ e2 ~ e2 ~", AB: "e2 ~ e2 ~ e2 ~ e2 ~ e2@2 d2@2 c#2@2 b1@2",
  AC: "f#1 ~ f#1 ~ g#1@2 g#1@2 a1@4 c#2@2 a1@2", AD: "e2 a1 f#2 e2 a1@2 c#2 a1", AE: "e2 a1 f#2 e2 e1@2 g#1 e1",
  AF: "b1 e1 c#2 b1 e1@2 g#1 e1", AG: "b1 e1 c#2 b1 a1!2 c#2 a1", AH: "e2 a1 f#2 e2 a1!2 c#2 a1",
  AI: "e2 a1 f#2 e2 b1!2 d#2 b1", AJ: "f#2 b1 g#2 f#2 b2 a2 b2@2", AK: "b2@4 b2@4 e1 ~ e1 ~ e1 ~ e1 ~",
  AL: "e1 ~ e1 ~ e1 ~ e1 ~ e1@2 b1@2 e1@2 e1@2", AM: "g1@2 g1@2 g1@4 e1@2 e1 ~ e1 ~ e1 ~",
  AN: "g1@2 g1@2 g1@2 g1@2 e1 ~ e1 ~ e1 ~ e1 ~", AO: "e1 ~ e1 ~ g1 ~ e1@2 ~@8",
})).s("gm_electric_bass_finger").gain(0.56).pan(0.6)

// chords · electric guitar clean · "woodblock"
const electric_guitar_clean = note("<~@25 A@2 ~@6 B@3 ~@3 C ~@26 D@3 ~@3 E ~@32>".pickRestart({
  A: "[~@2 g3@4 ~ [e4,g#4]@20 ~@5]/2", B: "[~ e4 ~ b3@14 ~@7]/3", C: "b2@7 ~@9", D: "[~@5 e4 ~ b3@14 ~@3]/3",
  E: "~@8 b2@7 ~",
})).s("gm_electric_guitar_clean").gain(0.72)

// chords · electric guitar clean · "woodblock"
const electric_guitar_clean_2 = note(`<
  ~@2 A B@2 C@2 B@2 D@2 ~@2 E@7 ~ F G H I J K@2 L@4 M@2 N@2 ~ O P ~@8 A B@2 D@2 ~@7 Q R S T U V W X Y Z ~ AA AB ~@28 AC
  G H I AD
>`.pickRestart({
  A: "~@2 [b3,d4]!4 ~@2", B: "[[b3,d4]!2 a3 g3 e3 d3 g2 e3@3 [b3,d4]!4 ~@2]/2",
  C: "[b3!2 a3 g3 e3 ~ g2 e3@3 [b3,d4]!4 ~@2, d4@2 ~@3 d3@2 ~@9]/2", // Bm
  D: "[b3!2 a3 g3 e3 ~ g2 e3@7 ~@2, d4@2 ~@3 d3@2 ~@9]/2",
  E: "[~@5 e2 g2 a2@14 e3 g2 e3@13 ~ a2 a#2 [b2,f#3,d#4]@16 ~]/7", F: "b2 a2 g2@2 e2@2 [b3,d4]!2",
  G: "[b3,d4]!2 ~@2 [b3,d4]!2 a3 g3", H: "e3 d3 g2 e3@3 [b3,d4]!2", I: "[b3,d4]!2 ~@2 b3!2 a3 g3, ~@2 d4 ~",
  J: "e3 ~ g2 e3@2 [b2,g#3,b3] ~@2, ~ d3@2 ~@2 e3@3", // E
  K: "[[g#3,b3] ~@3 [e3,g#3,b3] ~@2 [e3,g#3,b3]@5 ~ [b2,e3,g#3,b3] ~ [e2,a2], e3 ~@7]/2", // G#m E A5
  L: "[[b2,e3,g#3,b3] ~@2 e2 [b2,e3,g#3,b3] ~ e2 [b2,e3,g#3,b3]@5 ~ [a2,e3,a3] ~@2 [e3,a3,c#4] ~@3 [e3,a3,c#4] ~ a2 [e3,a3]@5 ~ [e3,g#3,b3] ~ [e2,b2], ~@15 a2@2 ~@6 c#4 ~@8]/4", // E A5 A A5 E E5
  M: "[[b2,e3,g#3,b3] ~@3 [b2,e3,g#3,b3] ~@2 [b2,e3,g#3]@3 ~@3 [b2,f#3,b3,d#4] ~ b2, ~@7 b3@4 ~@5]/2", // E B
  N: "[[b2,f#3,b3,d#4] ~@2 b2 [b2,f#3,b3] ~ b2 [b2,b3]@3 ~@6, ~@7 d#4 ~@8, ~@14 f#3 ~@17]/2", // B B5 B
  O: "~@4 d4@4 d4 e4@3 e4@4, ~@12 d4 ~@3", P: "~@2 d4 e4 b3@3 ~@9, [e4,b4]@2 ~@2 d4 ~@11, ~ g4@3 ~@12",
  Q: "~ [b2,e3,g#3,b3] ~@2 [e3,g#3,b3] ~@3", R: "[e3,g#3,b3] ~@2 [e3,g#3,b3]@5",
  S: "~ [b2,e3,g#3,b3] ~ [e2,a2] [b2,e3,g#3,b3] ~@2 e2", T: "[b2,e3,g#3,b3] ~ e2 [b2,e3,g#3,b3]@5",
  U: "~ [a2,e3,a3] ~@2 [e3,a3,c#4] ~@3, ~@3 a2@2 ~@3", V: "[e3,a3,c#4] ~ a2 [e3,a3]@5, ~@3 c#4 ~@4",
  W: "~ [e3,g#3,b3] ~ [e2,b2] [b2,e3,g#3,b3] ~@3", X: "[b2,e3,g#3,b3] ~@2 [b2,e3,g#3]@3 ~@2, ~@3 b3@4 ~",
  Y: "~ [b2,f#3,b3,d#4] ~ b2 [b2,f#3,b3,d#4] ~@2 b2", Z: "[b2,f#3,b3] ~ b2 [b2,b3]@3 ~@2, ~@3 d#4 ~@4, ~@6 f#3 ~@9",
  AA: "~@3 d4", AB: "d4 e4@3 e4@4 ~@2 d4 e4 b3@3 ~, ~@4 d4 ~@3 [e4,b4]@2 ~@2 d4 ~@3, ~@9 g4@3 ~@4", AC: "~@6 [b3,d4]!2",
  AD: "e3 ~ g2 e3 ~@4, ~ d3@2 ~@5",
})).s("gm_electric_guitar_clean").gain(0.8)

// drums · kick
const kick = s("bd").struct(`<
  ~ A B@3 C D@13 E A C@4 F C@9 G H D I D@2 E D@4 E D@3 I D@17 E A C@2 J C F@3 C F C B C@23 K
>`.pickRestart({
  A: "~@5 x ~@2", B: "x!2", C: "x!2 ~@2 x ~@3", D: "x ~@3 x!2 ~@2", E: "x ~@3 x!2 ~ x", F: "x!2 ~ x!2 ~@3",
  G: "x!2 ~ x ~@4", H: "~ x ~@2 x!2 ~@2", I: "x ~@4 x ~ x", J: "~ x", K: "x!2 ~@6",
})).gain(0.8)

// drums · snare
const snare = s("sd").struct(`<
  ~ A ~@3 B C@3 D C@10 E@2 C@3 F C@9 D@2 C B C@11 B C@11 D C@6 E@2 D G C@7 H C@15 B I@3 J C@3 K
// … 40 more lines

More by Brooks & Dunn