Strudelify
Give It To Me Baby cover art

1981 · Street Songs

Give It To Me Baby

Rick James

KeyG majorTempo124 bpm
0:00/0:00
// Give It To Me Baby — Rick James
// 124 bpm, 4/4, key G major. Source: mcgill + midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 4 piano (copy of ch 3 alto sax)
// note: Full arrangement: all 109 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(124/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/2 spreads a riff over 2 bars.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// bass · electric bass pick
const bass = note(`<
  A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B ~@8 A B A B A B A B A B A B A
  B A B A B A B A B A B A B A B A B A B A B A B A B A B ~@8 A B A B A B A B ~
>`.pickRestart({
  A: "c#2@2 d#2@2 e2@2 f#2@2 e2@2 ~@5 e2", B: "c#2@2 d#2@2 e2@2 d#2@2 f#2@2 ~ f#2 ~ f#2!2 e2",
})).s("gm_electric_bass_pick").gain(0.51)

// other · electric guitar clean
const electric_guitar_clean = note(`<
  ~@4 A@2 B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A C ~@7 B A B A B A B A B A B A B A
  B A B A B A B A B A B A B A B A B A B A B A B A B A C ~@7 B A B A B A B A ~
>`.pickRestart({
  A: "~@2 e4 ~@2 e4 ~@2 e4 ~@2 e4 ~ e4!2 ~", B: "f#4 ~ e4 ~@2 e4 ~@2 e4 ~@2 e4 ~ e4!2 ~", C: "f#4 ~@15",
})).s("gm_electric_guitar_clean").gain(0.26)

// chords · tremolo strings
const tremolo_strings = note(`<
  ~@13 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@18 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2
  A B ~@2 A B ~@18
>`.pickRestart({
  A: "g#4 e4 c#4 b4", B: "a#4",
})).s("gm_tremolo_strings").gain(0.51)

// chords · tremolo strings · soft notes
const tremolo_strings_soft = note(`<
  ~@28 A B C@2 D B E@2 A B C@2 D B E@2 ~@32 A B C@2 D B E@2 A B C@2 D B E@2 ~@17
>`.pickRestart({
  A: "c#6!2", B: "e6 g#6", C: "c#6/2", D: "c#6", E: "f#6/2",
})).s("gm_tremolo_strings").gain(0.26)

// bass · brass section
const bass_2 = note(`<
  ~@4 A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D E ~@7 A B C D A B C D A B C D A B
  C D A B C D A B C D A B C D A B C D A B C D A B C D E ~@7 A B C D A B C D ~
>`.pickRestart({
  A: "c#2 ~ d#2 ~ e2 ~ f#2 ~ e2@3 ~ d#2 ~ c#2 d#2", B: "~@2 e2 ~@12 c2",
  C: "c#2 ~ d#2 ~ e2 ~ f#2 ~ g#2@3 ~ f#2 ~ e2 f#2", D: "~@15 c2", E: "c#2 ~@15",
})).s("gm_electric_bass_finger").gain(0.51)

// other · piano
const piano = note(`<
  ~@11 A B ~ C D B ~ C D B ~ C D B ~ C E F ~@3 F ~@3 F ~@3 F ~@19 B ~ C D B ~ C D B ~ C D B ~ C E F ~@3 F ~@3 F ~@3 F
  ~@20
>`.pickRestart({
  A: "~@11 f#5 ~ f#5!2 ~", B: "g#5 ~ e5 ~ c#5 ~@3", C: "~@8 c#5 ~ g#5 f#5 ~ e5 ~ f#5",
  D: "~ f#5 ~ f#5 ~@7 f#5 ~ f#5!2 ~", E: "~ f#5 ~ f#5 ~@12", F: "g#5!3 ~ e5!2 ~@10",
})).s("gm_piano").gain(0.51)

// drums · kick
const kick = s("bd").struct("<[x!4]!4 [x!2]!104 ~>").gain(0.51)

// drums · snare
const snare = s("sd").struct("<~@3 [~@3 x] [~ x ~ x]!104 ~>").gain(0.51)

// drums · clap
const clap = s("cp").struct("<~@4 [~ x ~ x]!40 ~@8 [~ x ~ x]!40 ~@8 [~ x ~ x]!8 ~>").gain(0.51)

// drums · hihat
const hihat = s("hh").struct("<~@4 [x!8]!40 [~ x ~ x]!8 [x!8]!40 [~ x ~ x]!8 [x!8]!8 ~>").gain(0.36)

// drums · mid tom
const mid_tom = s("mt").struct(`<
  ~@28 A B ~@2 A B ~@2 A B ~@2 A B ~@10 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@2 A B ~@10
  A B ~@2 A B ~@3
>`.pickRestart({
  A: "~@12 x!4", B: "x",
})).gain(0.51)

// drums · high tom
const high_tom = s("ht").struct(`<
  ~@28 A ~@3 A ~@3 A ~@3 A ~@11 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@11 A ~@3 A ~@4
>`.pickRestart({
  A: "~@9 x!3 ~@4",
})).gain(0.51)

// drums · tambourine
const tambourine = s("tb").struct("<~@44 [~ x ~ x]!8 ~@40 [~ x ~ x]!8 ~@9>").gain(0.51)

stack(
  bass, electric_guitar_clean, tremolo_strings, tremolo_strings_soft, bass_2, piano, kick, snare, clap, hihat, mid_tom,
  high_tom, tambourine
)

More by Rick James