Strudelify
On And On And On cover art

1981 · Super Trouper

On And On And On

ABBA

KeyC majorTempo127 bpm
0:00/0:00
// On And On And On — Abba
// 127 bpm, 4/4, key C major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(127/4)

const chords = arrange(
  // intro (16 bars)
  [16, "<C!4 F7!2 C7!6 F7!2 C7!2>"],
  // verse (23 bars)
  [23, "<C [Bb@2 C@2] C [Bb@2 C@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] Cadd9!2 C [Bb@2 C@2] C [Bb@2 C@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] F>"],
  // chorus (16 bars)
  [16, "<C7!4 F7!2 C7!6 F7!2 C7!2>"],
  // verse (23 bars)
  [23, "<C [Bb@2 C@2] C [Bb@2 C@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] Cadd9!2 C [Bb@2 C@2] C [Bb@2 C@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] [C@2 Fsus F] [Fsus F C@2] [Bb@2 Csus C] [Bb@2 F@2] F>"],
  // chorus (16 bars)
  [16, "<C7!4 F7!2 C7!6 F7!2 C7!2>"],
  // instrumental (8 bars)
  [8, "<C7!4 F7!2 C7!2>"],
  // chorus (16 bars)
  [16, "<C7!4 F7!2 C7!6 F7!2 C7!2>"],
)
const bassline = arrange(
  [16, "<c2!4 f2!2 c2!6 f2!2 c2!2>"],
  [23, "<c2 [bb2@2 c2@2] c2 [bb2@2 c2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] c2!3 [bb2@2 c2@2] c2 [bb2@2 c2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] f2>"],
  [16, "<c2!4 f2!2 c2!6 f2!2 c2!2>"],
  [23, "<c2 [bb2@2 c2@2] c2 [bb2@2 c2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] c2!3 [bb2@2 c2@2] c2 [bb2@2 c2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] [c2@2 f2@2] [f2@2 c2@2] [bb2@2 c2@2] [bb2@2 f2@2] f2>"],
  [16, "<c2!4 f2!2 c2!6 f2!2 c2!2>"],
  [8, "<c2!4 f2!2 c2!2>"],
  [16, "<c2!4 f2!2 c2!6 f2!2 c2!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 ABBA