Strudelify
Torn Between Two Lovers cover art

1976 · Torn Between Two Lovers

Torn Between Two Lovers

Mary MacGregor

KeyB♭ majorTempo132 bpm
0:00/0:00
// Torn Between Two Lovers — Mary MacGregor
// 132 bpm, 4/4, key Bb major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(132/4)

const chords = arrange(
  // intro (5 bars)
  [5, "<[F7@2 A@2] Cm F7 Bb!2>"],
  // verse (17 bars)
  [17, "<Cm F9 Bb!2 Cm F7 Bb [Bb^7@2 Bb6 Bb] Cm F9 Bb Gm Cm Eb Cm F7!2>"],
  // verse (17 bars)
  [17, "<Cm F9 Bb!2 Eb F7 Bb [Bb^7@2 Bb6 Bb] Cm F9 Bb Gm Cm Eb Cm F7!2>"],
  // chorus (16 bars)
  [16, "<Cm F7 Dm G7 Cm F7 Bb G7 Cm F7 Dm G7 Cm F7 Bb!2>"],
  // verse (17 bars)
  [17, "<Cm F9 Bb!2 Cm F7 Bb [Bb^7@2 Bb6 Bb] Cm F9 Bb Gm Cm Eb Cm F7!2>"],
  // chorus (16 bars)
  [16, "<Cm F7 Dm G7 Cm F7 Bb G7 Cm F7 Dm G7 Cm F7 Bb!2>"],
  // verse (9 bars)
  [9, "<Cm F9 Bb Gm Cm Eb Cm F7!2>"],
  // chorus (16 bars)
  [16, "<Cm F7 Dm G7 Cm F7 Bb G7 Cm F7 Dm G7 Cm F7 Bb G7>"],
  // fadeout (8 bars)
  [8, "<Cm F7 Dm G7 Cm F7 Bb G7>"],
)
const bassline = arrange(
  [5, "<a2 [c2@2 a2 g2] [f2@2 g2 a2] bb2!2>"],
  [17, "<c2 f2 bb2!2 c2 f2 bb2!2 c2 f2 bb2 g2 c2 eb2 c2 f2!2>"],
  [17, "<c2 f2 bb2!2 eb2 f2 bb2!2 c2 f2 bb2 g2 c2 eb2 c2 f2!2>"],
  [16, "<c2 f2 d2 g2 c2 f2 bb2 g2 c2 f2 d2 g2 c2 f2 bb2!2>"],
  [17, "<c2 f2 bb2!2 c2 f2 bb2!2 c2 f2 bb2 g2 c2 eb2 c2 f2!2>"],
  [16, "<c2 f2 d2 g2 c2 f2 bb2 g2 c2 f2 d2 g2 c2 f2 bb2!2>"],
  [9, "<c2 f2 bb2 g2 c2 eb2 c2 f2!2>"],
  [16, "<c2 f2 d2 g2 c2 f2 bb2 g2 c2 f2 d2 g2 c2 f2 bb2 g2>"],
  [8, "<c2 f2 d2 g2 c2 f2 bb2 g2>"],
)

// 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)