Strudelify

Rainbow Blues

Jethro Tull

KeyG minorTempo120 bpm
0:00/0:00
// Rainbow Blues — Jethro Tull
// 120 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (12/8 at bar 1, 4/4 at bar 7, 12/8 at bar 86) are rendered on a constant 4/4 grid of one bar per cycle
// note: ch 1 "Vocals/Flute" named as a pipe, played on flute (its piano patch is not one)
// note: Full arrangement: all 91 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
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 · acoustic guitar steel · "Guitar"
const acoustic_guitar_steel = note(`<
  A@3 B C@2 D E F G@2 H F I@2 J K@2 L M N@2 O P O Q R P S@2 D E F G@2 H F I@2 J K@2 L M N@2 O P O Q R P S@2 D E F G@2 H
  F I@2 J K@2 L M N@2 O P O Q R P S@2 O P O Q R P T@4 B U@2
>`.pickRestart({
  A: "[[gb4,a4,d5]@19 ~@5 [e4,c5]@19 ~@5, ~ g4]/3", B: "[d4,g4,b4]@2 ~ [d4,g4,b4]@2 ~ [e4,g4,c5]@2",
  C: "[~@2 [eb4,g4,c5]@4 ~@2 [gb4,a4,d5]@11 ~ [gb4,a4,d5]@2 ~@10]/2", D: "[d4,g4,bb4]@3 ~ [c4,f4,a4]@3 ~",
  E: "[eb4,g4,bb4]@5 ~@3 [d4,f4]@3 ~ [c4,f4,a4]@3 ~, ~ bb4", F: "[d4,g4,bb4]@5 ~@3 [c4,f4,a4]@5 ~@3",
  G: "[[d4,f4,bb4]@4 ~@2 [eb4,g4,bb4]@5 ~@3 [d4,bb4]@7 ~@3 [c4,f4,a4]@5 ~@3, ~@7 f4@5 ~@4]/2", // Bb Eb Gm F
  H: "[eb4,g4,bb4]@5 ~@3 [d4,f4,bb4]@3 ~ [c4,f4,a4]@3 ~", // Eb Bb F
  I: "[[d4,f4,bb4]@4 ~@2 [d4,f4]@5 ~@3 [eb4,g4,c5]@7 ~@3 [eb4,g4,bb4]@5 ~@3, ~@3 bb4@5 ~@8]/2", // Bb Dm Cm Eb
  J: "[c4,f4,a4]@5 ~@3 [c4,f4,a4]@5 ~@3", // F
  K: "[[d4,g4,bb4]@5 ~@3 [d4,f4,bb4]@4 ~@2 [eb4,g4,c5]@7 ~@3 [eb4,g4,c5]@5 ~@3]/2", // Gm Bb Cm
  L: "[f4,a4,c5]@5 ~@3 [eb4,g4,bb4]@5 ~@3", M: "[f4,a4,c5]@2 ~ [eb4,g4,bb4]@2 ~ [f4,a4,c5]@2",
  N: "[[g4,bb4,d5]@12 ~@2 [a4,d5]@13 ~@5, ~@7 gb4@8 ~]/2", O: "[d4,f4,bb4]@5 ~@3 [f4,a4,c5]@4 ~@4",
  P: "~@2 [c4,f4] ~ [d4,g4] ~ [c4,f4] ~ [eb4,g4,bb4]@3 ~ [f4,a4,c5]@3 ~", // F5 G5 F5 Eb F
  Q: "~@2 [c4,f4] ~ [d4,g4] ~ [c4,f4] ~ [c4,f4,a4]@3 ~ [c4,f4,a4]@3 ~", R: "[d4,g4,bb4]@5 ~@3 [c4,f4,a4]@4 ~@4",
  S: "[[g4,bb4,d5]@6 ~ [gb4,a4,d5]@8 ~]/2", // Gm D
  T: "[[g4,d5]@6 ~ [gb4,a4,d5]@5 ~@2 [f4,a4,d5]@4 ~@2 [e4,c5]@8 ~@4, ~@5 g4@3]/4", // G5 D Dm C
  U: "[~ [eb4,g4,c5]@2 ~ [gb4,a4,d5]@8 ~@4]/2", // Cm D
})).s("gm_acoustic_guitar_steel").gain(0.31)

// bass · fretless bass · "Bass"
const bass = note(`<
  A B C D E F G H G I@2 J G K@2 L M N O P Q R S T S U V W Q R G H G I@2 J G K@2 L M N O P Q R S T S U V W Q R G H G I@2
  J G K@2 L M N O P Q R S T S U V W Q R S T S U V W X@2 Y Z AA AB@2
>`.pickRestart({
  A: "d2@3 ~ d2@2 d3@3 ~ d3@2 c3@3 ~", B: "c3@2 ab2@2 a2@2 c3@2 c2@3 ~ c2@2 c3@2",
  C: "~@2 bb2@3 ~ f2@3 ~ gb2@2 g2@2 bb2@2", D: "g2@3 ~ g2@2 f3@3 ~ f3@2 ~@2 e3@2", E: "~@2 eb3@3 ~ eb3 f3 d3@6 ~@2",
  F: "c3 db3 d3 f3 ~@2 d3@2 g2@2 c3!4 bb2 a2", G: "g2@3 ~ g3@3 ~ f3@3 ~ c3@3 ~",
  H: "eb3 ~ bb2 ~ g3 ~ eb3 ~ bb2 ~ d3 ~ c3 ~ f2 ~",
  I: "[bb2 ~ c3 ~ d3 ~ eb3@3 ~ d3 ~ c3 ~ bb2@5 ~ f2@3 ~ f3 ~ f2 ~ c3@3 ~]/2",
  J: "eb3 ~ bb2 ~ g3 ~ eb3 ~ bb2@3 ~ f3@3 ~",
  K: "[bb2 ~ c3 ~ d3 ~ eb3@3 ~ d3 ~ c3 ~ bb2@5 ~ c3 ~ f2 ~ g2@3 ~ g2 ~ bb2 ~]/2",
  L: "c3@3 ~ c3 ~ c3@3 ~ bb2 ~ a2 ~ f2 ~", M: "d3@3 ~ d3@2 c3@2 bb2 ~ d3 ~ g3 ~ f2 ~",
  N: "g2 ~ c4 ~ c4 ~ g3 ~ g3 ~ c3 ~ c3 ~ eb3 ~", O: "f3 ~ f3 ~ f3 ~ c3 ~ eb3 ~ eb3 ~ eb3 ~ d3 ~",
  P: "c3 ~ c3 ~ c3 ~ bb2 ~ bb2 ~ bb2 ~ c3 ~ f2 ~", Q: "g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ bb2 ~ c3 ~ d3@2",
  R: "~@2 d3@3 ~ d3@3 ~ c3 ~ bb2 ~ g2 ~", S: "bb2@5 ~@3 c3@4 ~@2 bb3@2", T: "~@2 f2 ~ g2 ~ f2 ~ bb2@3 ~ c3@3 ~",
  U: "~@2 f2 ~ g2 ~ f2 ~ f2@3 ~ f2@3 ~", V: "g2@4 ~@2 bb2 ~ c3@4 ~@2 bb3@2",
  W: "~@2 f3 ~ g3 ~ d3 ~ eb3 ~ bb2 ~ c3 ~ f2 ~",
  X: "[g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ bb2 ~ c3 ~ d3@5 ~ d3 ~ d3@3 ~ d3 ~ c3@3 ~]/2",
  Y: "c3 ~ ab2 ~ a2 ~ c3 ~ c2@3 ~ c2 ~ c3@2", Z: "~@2 bb2@3 ~ f2@3 ~ gb2 ~ g2 ~ bb2 ~",
  AA: "g2@3 ~ g2 ~ f3@3 ~ f3 ~ e3@3 ~", AB: "[e3 ~ eb3@3 ~ eb3 ~ d3@20 ~@4]/2",
})).s("gm_fretless_bass").gain(0.51)

stack(acoustic_guitar_steel, bass)

More by Jethro Tull