Strudelify

I Walk The Line

Johnny Cash

KeyF majorTempo105 bpm
0:00/0:00
// I Walk The Line — Cash Johnny
// 105 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 70 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(105/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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 · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
  A B C D E F G@4 H G H I J G H I K@4 G K G L M N G L M@4 O M O M P Q O R O@4 G O G S M T G U G@4 H G H I K G V G@4 W
>`.pickRestart({
  A: "~@2 f2 ~ g2 ~ a2 ~ bb2@4 f2@4", B: "bb2 ~ bb2@2 c3@2 d3@2 eb3@4 bb2@4", C: "eb3!2 d3 c3 bb2@2 f3@2",
  D: "bb2!2 a2 g2 f2@2 c3@2", E: "c3 f2 g2 f2 c3@2 g2@2", F: "c3 bb2 a2 g2 f2@2 c3@2", G: "f2 c3 f2 c3",
  H: "c3 g2 c3 g2", I: "f2@2 c3@2 f2!2 g2 a2", J: "bb2 f2 bb2 f3", K: "bb2 f2 bb2 f2", L: "bb2@2 f2@2 bb2!2 c3 d3",
  M: "eb3 bb2 eb3 bb2", N: "f3@2 bb2@2 f3@2 a2 g2", O: "bb2 f3 bb2 f3", P: "ab2 eb2 ab2 c3",
  Q: "eb3@2 bb2@2 eb3@2 d3 c3", R: "eb3@2 bb2@2 eb3 bb2 d3 c3", S: "bb2@2 f3@2 bb2!2 c3 d3",
  T: "bb2@2 f3@2 bb2@2 c3 bb2", U: "bb2@2 f3@2 bb2!2 a2 g2", V: "c3 e3 c3 g2", W: "f2 ~@7",
})).s("gm_electric_guitar_clean").gain(0.43).pan(0.3)

// chords · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note("<A@8 B@8 C@8 D@6 E@8 F@4 G@8 H@4 I@8 J@8>".pickRestart({
  A: "[~@8 bb2@2 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [eb3,g3,bb3,eb4] [eb3,g3,bb3,eb4]@3 [eb3,g3,bb3,eb4] [eb3,g3,bb3,eb4]@3 [eb3,g3,bb3,eb4] [eb3,g3,bb3,eb4]@3 [eb3,g3,bb3,eb4] [eb3,g3,bb3,eb4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4]!2]/8", // Bb Eb Bb F C F
  B: "[~@2 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4]!2]/8", // F C F C F Bb F
  C: "[~@2 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4]!2]/8", // C F Bb F Bb
  D: "[~@2 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4]!2]/6", // F Bb Eb Bb F Bb
  E: "[~@2 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4]!2]/8", // Eb Bb Eb Bb Eb
  F: "[~@2 [c3,eb3,ab3,c4] [c3,eb3,ab3,c4]@3 [c3,eb3,ab3,c4] [c3,eb3,ab3,c4]@3 [c3,eb3,ab3,c4] [c3,eb3,ab3,c4]@3 [c3,eb3,ab3,c4] [c3,eb3,ab3,c4]@2 ~ [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4]!2]/4", // Ab Eb Bb Eb
  G: "[~@2 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4]!2]/8", // Bb F Bb F Bb
  H: "[~@2 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@3 [bb2,g3,bb3,eb4] [bb2,g3,bb3,eb4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4]!2]/4", // Eb Bb F Bb
  I: "[~@2 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4]!2]/8", // F C F C F
  J: "[~@2 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@3 [bb2,f3,bb3,d4] [bb2,f3,bb3,d4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@2 ~ [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@3 [c3,e3,g3,c4] [c3,e3,g3,c4]@2 ~ [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 [c3,f3,a3,c4] [c3,f3,a3,c4]@3 ~@14]/8", // Bb F C F
})).s("gm_acoustic_guitar_steel").gain(0.24).pan(0.6)

// drums · shaker
const shaker = s("sh").struct("<[~@8 x ~ x!3 ~ x!2] [x ~ x!3 ~ x!3 ~ x!3 ~ x!2]!68 ~>").gain(0.11)

// drums · shaker · soft notes
const shaker_soft = s("sh").struct("<[~@9 x ~@3 x ~@2] [~ x ~@3 x ~@3 x ~@3 x ~@2]!68 ~>").gain(0.08)

// drums · guiro
const guiro = s("guiro:0").struct("<[~@10 x!2 ~@2 x!2] [x ~ x!3 ~ x!3 ~ x!3 ~ x!2]!68 ~>").gain(3.22)

stack(electric_guitar_clean, acoustic_guitar_steel, shaker, shaker_soft, guiro)

More by Johnny Cash