Strudelify

Falling Down X Ripped My Pants

richardgonzalezxd

KeyG majorTempo120 bpm
0:00/0:00
// Falling Down X Ripped My Pants — richardgonzalezxd
// 120 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5979000; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 69 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · epiano1 · "Electric Piano"
const epiano1 = note(`<
  A B C@2 A B C@2 A B C@2 A B C D A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B C@2 A B
  C@2 A B C@2 A B C@2 ~
>`.pickRestart({
  A: "~ g3 c4 [g3,b3,e4]@2 b3 g3 c4, c3", B: "~ g3 c4 [g3,b3,e4]@2 b3 g3 c4, a2",
  C: "~ b2 e3 [g3,b3,e4]@2 [g3,b3,e4] [g3,b3,e4]@2, e2", D: "~ b2 e3 [g3,b3,e4] ~@4, e2 ~",
})).s("gm_epiano1").gain(0.3)

// other · alto sax · "Alto Saxophone"
const alto_sax = note("<~@54 A B C ~ A B C ~ A B C ~ A B C>".pickRestart({
  A: "d4 e4", B: "f4 d4", C: "e4",
})).s("gm_alto_sax").gain(0.3)

stack(epiano1, alto_sax)