Strudelify
Alive Again cover art

1978 · Hot Streets

Alive Again

Chicago

KeyB♭ majorTempo126 bpm
0:00/0:00
// Alive Again — Chicago
// 126 bpm, 4/4, key Bb major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(126/4)

const chords = arrange(
  // intro (21 bars)
  [21, "<Bb5!4 Bb Ab Eb Ab Bb Ab Eb!2 Bb!6 [Bb@2 F@2] F [F@2 ~@2]>"],
  // verse (11 bars)
  [11, "<Bb!6 [Bb@2 F@2] [F@2 F6@2] [F6@2 F9@2] F9 [F9@2 ~@2]>"],
  // chorus (16 bars)
  [16, "<Bb!2 Dm7 [Dm7@2 Dbm7@2] Cm7 Eb F7!2 Bb!2 Gm7 [Gm7@2 F@2] Eb!2 F!2>"],
  // interlude (6 bars)
  [6, "<[Ab@2 Eb@2] [Bb@2 Ab@2] [Eb@2 Bb@2] [Ab@2 Eb@2] F7sus!2>"],
  // verse (11 bars)
  [11, "<Bb!6 [Bb@2 F@2] [F@2 F6@2] [F6@2 F9@2] F9 [F9@2 ~@2]>"],
  // chorus (16 bars)
  [16, "<Bb!2 Dm7 [Dm7@2 Dbm7@2] Cm7 Eb F7!2 Bb!2 Gm7 [Gm7@2 F@2] Eb!2 F!2>"],
  // interlude (6 bars)
  [6, "<[Ab@2 Eb@2] [Bb@2 Ab@2] [Eb@2 Bb@2] [Ab@2 Eb@2] F7sus!2>"],
  // solo (9 bars)
  [9, "<Bb!6 [Gm7@2 F@2] F [F@2 ~@2]>"],
  // verse (21 bars)
  [21, "<Bb!6 [Gm7@2 F@2] F [F@2 Bb@2] Bb!5 [Bb@2 Gm7@2] F!2 Bb!4>"],
  // fadeout (13 bars)
  [13, "<Bb!2 [Gm7@2 F@2] F [F@2 Bb@2] Bb!5 [Bb@2 Gm7@2] F!2>"],
)
const bassline = arrange(
  [21, "<bb2!5 ab2 g2 ab2 bb2 ab2 g2 eb2 bb2!6 [bb2@2 f2@2] f2 [f2@2 ~@2]>"],
  [11, "<bb2!6 [bb2@2 f2@2] f2!3 [f2@2 ~@2]>"],
  [16, "<bb2!2 d2 [d2@2 db2@2] c2 eb2 f2!2 bb2!2 g2 [g2@2 f2@2] eb2!2 f2!2>"],
  [6, "<[ab2@2 g2@2] [bb2@2 ab2@2] [g2@2 bb2@2] [ab2@2 g2@2] f2!2>"],
  [11, "<bb2!6 [bb2@2 f2@2] f2!3 [f2@2 ~@2]>"],
  [16, "<bb2!2 d2 [d2@2 db2@2] c2 eb2 f2!2 bb2!2 g2 [g2@2 f2@2] eb2!2 f2!2>"],
  [6, "<[ab2@2 g2@2] [bb2@2 ab2@2] [g2@2 bb2@2] [ab2@2 g2@2] f2!2>"],
  [9, "<bb2!6 [g2@2 f2@2] f2 [f2@2 ~@2]>"],
  [21, "<bb2!6 [g2@2 f2@2] f2 [f2@2 bb2@2] bb2!5 [bb2@2 g2@2] f2!2 bb2!4>"],
  [13, "<bb2!2 [g2@2 f2@2] f2 [f2@2 bb2@2] bb2!5 [bb2@2 g2@2] f2!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 Chicago