Strudelify

Not Evil

Tiffany Haddish

KeyB majorTempo130 bpm
0:00/0:00
// Not Evil — Tiffany Haddish
// 130 bpm, 4/4, key B major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5833264; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 43 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(130/4)

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

// other · trombone
const trombone = note(`<
  A B A B A B A C D B E F@4 B A B A C D B E G H I J G H I J K L B A B M B A B A ~@2
>`.pickRestart({
  A: "b2 ~@2 b2 ~@2 f#3 d3", B: "b2 ~@2 b2 ~@4", C: "g2 ~@2 g2 ~@4", D: "a2 ~@2 d3 ~@4", E: "g2 ~ f#2@6",
  F: "b2@3 b2@5", G: "f#3@3 ~@3 f#3@10", H: "b3@3 ~@3 b3@10", I: "d3@3 ~@3 d3@9 ~", J: "a3@3 ~@3 a3@10",
  K: "g3@3 ~@3 g3@10", L: "f#3@3 b3", M: "b2 ~@7",
})).s("gm_trombone").gain(0.2)

// other · flute
const flute = note("<~@11 A B A B ~@18 A B A B ~@6>".pickRestart({
  A: "d5@2 b4@2 b4@2 d5@2 b4@2 b4@2 e5@3 c#5", B: "d5 b4!2 d5 b4!2 e5@2",
})).s("gm_flute").gain(0.4)

// other · flute · soft notes
const flute_soft = note("<~@38 [~@6 d5!2] [d5!8] [d5!5 ~@3] ~@2>").s("gm_flute").gain(0.2)

// drums · kick
const kick = s("bd").struct("<~@3 [x ~@2 x ~@4]!7 [x!2 ~@2] ~@4 [x ~@2 x ~@4]!7 [x!2 ~@2] ~@20>").gain(0.3)

// drums · rim
const rim = s("rim").struct("<~@11 [x!8]!4 ~@8 [x!8]!10 [x!4]!4 ~@6>").gain(0.3)

// drums · snare
const snare = s("sd").struct("<~@23 [~ x ~ x]!10 ~@10>").gain(0.3)

// drums · pedal hat
const pedal_hat = s("hh").struct("<~@3 A B A B A B@2 C D@3 E B@7 C ~@14 F@4 ~@2>".pickRestart({
  A: "~@4 x ~@2 x", B: "~ x", C: "~@2 x!2", D: "~@2 x ~@3 x!2", E: "~@2 x ~@4 x", F: "~@3 x",
})).gain(0.3)

// drums · mid tom
const mid_tom = s("mt").struct("<~@11 [x!2 ~ x ~ x ~@2]!3 [x!2 ~ x ~ x!2 ~] ~@8 [x!2 ~@2 x ~@3]!10 ~@10>").gain(0.3)

stack(trombone, flute, flute_soft, kick, rim, snare, pedal_hat, mid_tom)