Strudelify
Modern Love cover art

1983 · Let's Dance

Modern Love

David Bowie

KeyC majorTempo180 bpm
0:00/0:00
// Modern Love — David Bowie
// 180 bpm, 4/4, key C major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(180/4)

const chords = arrange(
  // intro (16 bars)
  [16, "<~!8 [D@2 Em@2] Em [D@2 C@2] C [C@2 Dsus@2] Dsus [D@2 Em@2] Em>"],
  // verse (12 bars)
  [12, "<C!4 G!2 Am7 Am E7!2 F!2>"],
  // refrain (6 bars)
  [6, "<C!2 G!2 [Em7@2 Em@2] Em>"],
  // verse (12 bars)
  [12, "<C!4 G!2 Am7 Am E7!2 F!2>"],
  // refrain (6 bars)
  [6, "<C!2 G!2 [Em7@2 Em@2] Em>"],
  // chorus (24 bars)
  [24, "<C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2>"],
  // interlude (8 bars)
  [8, "<[D@2 Em@2] Em [D@2 C@2] C [C@2 Dsus@2] Dsus [D@2 Em@2] Em>"],
  // solo (18 bars)
  [18, "<C!4 G!2 Am7 Am E7!2 F!2 C!2 G!2 [Em7@2 Em@2] Em>"],
  // verse (12 bars)
  [12, "<C!4 G!2 Am7 Am E7!2 F!2>"],
  // refrain (6 bars)
  [6, "<C!2 G!2 [Em7@2 Em@2] Em>"],
  // chorus (80 bars)
  [80, "<C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F!2>"],
  // fadeout (15 bars)
  [15, "<C!2 D!2 Em!2 F!2 C!2 D!2 Em!2 F>"],
)
const bassline = arrange(
  [16, "<~!8 e2!2 c2!2 d2!2 e2!2>"],
  [12, "<c2!4 g2!2 a2!2 e2!2 f2!2>"],
  [6, "<c2!2 g2!2 e2!2>"],
  [12, "<c2!4 g2!2 a2!2 e2!2 f2!2>"],
  [6, "<c2!2 g2!2 e2!2>"],
  [24, "<c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2>"],
  [8, "<e2!2 c2!2 d2!2 e2!2>"],
  [18, "<c2!4 g2!2 a2!2 e2!2 f2!2 c2!2 g2!2 e2!2>"],
  [12, "<c2!4 g2!2 a2!2 e2!2 f2!2>"],
  [6, "<c2!2 g2!2 e2!2>"],
  [80, "<c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2!2>"],
  [15, "<c2!2 d2!2 e2!2 f2!2 c2!2 d2!2 e2!2 f2>"],
)

// 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 David Bowie