Strudelify
Have You Ever Loved Somebody cover art

1987 · Just Like The First Time

Have You Ever Loved Somebody

Freddie Jackson

KeyE minorTempo89 bpm
0:00/0:00
// Have You Ever Loved Somebody — Freddie Jackson
// 89 bpm, 4/4, key E minor. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(89/4)

const chords = arrange(
  // intro (10 bars)
  [10, "<~ Esus [Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D>"],
  // verse (8 bars)
  [8, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] [D@2 F G]>"],
  // pre-chorus (6 bars)
  [6, "<[C^7@3 D] [Am7@2 D9sus@2] [G^7@2 G^9@2] [Dm7@2 G9sus@2] [Am7@2 Gadd9@2] [C^7@2 D9sus@2]>"],
  // chorus (8 bars)
  [8, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D>"],
  // verse (8 bars)
  [8, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] [D@2 F G]>"],
  // pre-chorus (6 bars)
  [6, "<[C^7@3 D] [Am7@2 D9sus@2] [G^7@2 G^9@2] [Dm7@2 G9sus@2] [Am7@2 Gadd9@2] [C^7@2 D9sus@2]>"],
  // chorus (8 bars)
  [8, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D>"],
  // bridge (16 bars)
  [16, "<[Am7@2 Bm7@2] Esus [Am7@2 Bm7@2] Esus [Cm7@2 Dm7@2] Bb^7 Asus D9sus Em!2 [Am7@2 Bm7@2] [C^7@2 D9sus@2] Em!2 [Am7@2 Bm7@2] [C^7@2 D9sus@2]>"],
  // pre-chorus (6 bars)
  [6, "<[C^7@3 D] [Am7@2 D9sus@2] [G^7@2 G^9@2] [Dm7@2 G9sus@2] [Am7@2 Gadd9@2] [C^7@2 D9sus@2]>"],
  // chorus (16 bars)
  [16, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D>"],
  // fadeout (12 bars)
  [12, "<[Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D [Em Bm7@3] Am7 [C^7@2 C@2] D>"],
)
const bassline = arrange(
  [10, "<~ e2 [e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2>"],
  [8, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] [e2@2 g2@2]>"],
  [6, "<[c2@3 b2] [a2@2 d2@2] g2 [d2@2 g2@2] [a2@2 b2@2] [c2@2 d2@2]>"],
  [8, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2>"],
  [8, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] [e2@2 g2@2]>"],
  [6, "<[c2@3 b2] [a2@2 d2@2] g2 [d2@2 g2@2] [a2@2 b2@2] [c2@2 d2@2]>"],
  [8, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2>"],
  [16, "<[a2@2 b2@2] e2 [a2@2 b2@2] e2 [c2@2 d2@2] bb2 a2 d2 e2!2 [a2@2 b2@2] [c2@2 d2@2] e2!2 [a2@2 b2@2] [c2@2 d2@2]>"],
  [6, "<[c2@3 b2] [a2@2 d2@2] g2 [d2@2 g2@2] [a2@2 b2@2] [c2@2 d2@2]>"],
  [16, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2>"],
  [12, "<[e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2 [e2 b2@3] a2 [c2@2 d2@2] e2>"],
)

// 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 Freddie Jackson