Strudelify
The Humpty Dance cover art

1990 · Sex Packets

The Humpty Dance

Digital Underground

KeyE♭ majorTempo51 bpm
0:00/0:00
// The Humpty Dance — Digital Underground
// 51 bpm, 4/4, key Eb major. Source: mcgill.
// Generated by strudelify. One cycle = one bar.
setcpm(51/4)

const chords = arrange(
  // intro (2 bars)
  [2, "<Eb!2>"],
  // verse (14 bars)
  [14, "<Eb!14>"],
  // chorus (5 bars)
  [5, "<Eb!5>"],
  // verse (10 bars)
  [10, "<Eb!10>"],
  // chorus (5 bars)
  [5, "<Eb!5>"],
  // interlude (2 bars)
  [2, "<Eb!2>"],
  // verse (7 bars)
  [7, "<Eb!7>"],
  // chorus (9 bars)
  [9, "<Eb!9>"],
  // chorus (8 bars)
  [8, "<Eb!7 [Eb@2 ~@2]>"],
  // interlude (5 bars)
  [5, "<Eb!5>"],
  // outro (8 bars)
  [8, "<Eb!8>"],
  // outro (1 bars)
  [1, "<Eb>"],
  // outro (6 bars)
  [6, "<Eb!6>"],
)
const bassline = arrange(
  [2, "<eb2!2>"],
  [14, "<eb2!14>"],
  [5, "<eb2!5>"],
  [10, "<eb2!10>"],
  [5, "<eb2!5>"],
  [2, "<eb2!2>"],
  [7, "<eb2!7>"],
  [9, "<eb2!9>"],
  [8, "<eb2!7 [eb2@2 ~@2]>"],
  [5, "<eb2!5>"],
  [8, "<eb2!8>"],
  [1, "<eb2>"],
  [6, "<eb2!6>"],
)

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