Strudelify

spongebob squarepants - ripped pants

Nicholas Reardon

KeyG majorTempo122 bpm
0:00/0:00
// spongebob squarepants - ripped pants — Nicholas Reardon
// 122 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (1/4 at bar 1, 4/4 at bar 2) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5986491; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 30 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(122/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 · violin · "Violin II"
const violin = note("<~ A B C D E F G H I J K L M J N O ~@2 A B C P E F Q R S T ~>".pickRestart({
  A: "e4 g4 e4 g4", B: "e4 g4 d4 c4", C: "a3 f4 a4!2", D: "a4 b4 c5 d5", E: "e4 g#4 a4 b4", F: "c#5!3 b4", G: "a4!4",
  H: "~ g4 d4!2", I: "e5!3 d5", J: "a4 g4 f4 e4", K: "d5 f4 e4 d4", L: "d5 ~@3", M: "e5!2 d5!2", N: "f4 a4 d4 ~",
  O: "b4!2 c5 d5@3 ~@2", P: "a4 b4 c5 a4", Q: "a4@2 a3@2 a3@2 a4!2", R: "d4 e4", S: "f4 d4", T: "c4",
})).s("gm_violin").gain(0.3)

// other · viola
const viola = note("<~ A@2 B C D E B F D E B C D E B C ~@2 A@2 B C D E B C@2 A ~>".pickRestart({
  A: "g3@2 g3!2 g3@2 g3!2", B: "a3@2 a3!2 a3@2 a3!2", C: "d4@2 d4!2 d4@2 d4!2", D: "b3@2 b3!2 b3@2 b3!2",
  E: "e4@2 e4!2 e4@2 e4!2", F: "~@2 d4!2 d4@2 d4!2",
})).s("gm_viola").gain(0.3)

// other · cello · "Violoncello"
const cello = note("<~ A@2 B C D E B F G E B C G E B C H@2 A@2 B C D E B C@2 A I>".pickRestart({
  A: "e3@2 e3!2 e3@2 e3!2", B: "f3@2 f3!2 f3@2 f3!2", C: "b3@2 b3!2 b3@2 b3!2", D: "g#3@2 g#3!2 g#3@2 g#3!2",
  E: "c#4@2 c#4!2 c#4@2 c#4!2", F: "g3 ~ b3!2 b3@2 b3!2", G: "g3@2 g3!2 g3@2 g3!2", H: "g3 ~@7", I: "c4 ~@7",
})).s("gm_cello").gain(0.3)

// bass · contrabass
const bass = note("<~ A@2 B C D E B F D E B C D E B C G@2 A@2 B C D E B C@2 A H>".pickRestart({
  A: "c2@2 c2!2 c2@2 c2!2", B: "d2@2 d2!2 d2@2 d2!2", C: "g2@2 g2!2 g2@2 g2!2", D: "e2@2 e2!2 e2@2 e2!2",
  E: "a2@2 a2!2 a2@2 a2!2", F: "g1 ~ g2!2 g2@2 g2!2", G: "g1 ~@7", H: "c2 ~@7",
})).s("gm_contrabass").gain(0.3)

stack(violin, viola, cello, bass)