Strudelify
Like A Rock cover art

1986

Like A Rock

Bob Seger

KeyA♭ majorTempo83 bpm
0:00/0:00
// Like A Rock — Bob Seger
// 83 bpm, 4/4, key Ab major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(83/4)

const chords = arrange(
  // intro (4 bars)
  [4, "<[Ab@3 Db] Ab [Ab@3 Db] Ab>"],
  // verse (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // verse (8 bars)
  [8, "<Ab!2 Db!2 Gbsus Db [Ab@3 Db] Ab>"],
  // verse (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // chorus (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // bridge (8 bars)
  [8, "<Fm!2 Ab!2 Db!2 Bbm Eb>"],
  // solo (16 bars)
  [16, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab!3 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // interlude (4 bars)
  [4, "<[Ab@3 Db] Ab [Ab@3 Db] Ab>"],
  // verse (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // verse (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // chorus (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // chorus (8 bars)
  [8, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab>"],
  // outro (24 bars)
  [24, "<Ab!2 Db!2 Gb Db [Ab@3 Db] Ab!3 Db!2 Gb Db [Ab@3 Db] Ab!3 Db!2 Gb Db [Ab@3 Db] Ab>"],
)
const bassline = arrange(
  [4, "<ab2!4>"],
  [8, "<ab2!8>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<f2!2 ab2!2 db2!2 bb2 eb2>"],
  [16, "<ab2!2 db2!2 gb2 db2 ab2!4 db2!2 gb2 db2 ab2!2>"],
  [4, "<ab2!4>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [8, "<ab2!2 db2!2 gb2 db2 ab2!2>"],
  [24, "<ab2!2 db2!2 gb2 db2 ab2!4 db2!2 gb2 db2 ab2!4 db2!2 gb2 db2 ab2!2>"],
)

// chords · gm_piano
const keys = chord(chords).voicing().s("gm_piano").gain(0.8)
// bass · gm_electric_bass_finger
const bass = note(bassline).s("gm_electric_bass_finger").gain(0.9)
// drums
const drums = s("[bd hh] [sd hh] [bd hh] [sd hh]").gain(0.8)

stack(keys, bass, drums)

More by Bob Seger