Strudelify
KeyC majorTempo130 bpm
0:00/0:00
// Disarm — The Smashing Pumpkins
// 130 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 105 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/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.

// other · tubular bells
const tubular_bells = note("<A ~@2 B C ~@14 B C ~ D@2 E ~@5 E ~@5 E ~@26 B C ~ D@2 E ~@36>".pickRestart({
  A: "[b3,e4,g4]@29 ~@3", B: "~@8 g4 ~ f#4 ~@5", C: "e4 ~@15", D: "[~@7 d5@2 ~@7]/2", E: "c5 ~@3",
})).s("gm_tubular_bells").gain(0.45)

// other · timpani
const timpani = note(`<
  ~@3 A@2 ~@14 B ~@4 C D ~@4 C D ~@4 C D ~@9 D ~@15 B ~@4 C D ~@13 D ~@3 D ~@3 D ~@3 D ~@5 D ~@3
>`.pickRestart({
  A: "[~@32 e2@25 ~@7, ~@7 b1@2 ~@7]/2", B: "~@5 f#2@2 ~, ~@2 g2 ~", C: "c3 ~@31", D: "c3 ~ c3!30",
})).s("gm_timpani").gain(0.02)

// other · viola
const viola = note(`<
  ~@26 A@3 B C@2 A@3 D E F G@2 H I J K L@2 M@2 N O P Q R ~@17 S@2 T U V@3 W X@3 Y Z@2 AA@2 Z@2 AA@2 Z@2 AA@2 Z@2 AB AC
  AD AE AF@4 ~
>`.pickRestart({
  A: "[e3@48 f#3@15 g3@32 ~]/3", B: "b3", C: "[g4@15 f#4@16 e4@17 d4@16]/2", D: "g4 b3", E: "g3", F: "f#3 e3@2 d3",
  G: "[e3@3 b3]/2", H: "g4 f#4 g4 f#4", I: "d4", J: "e4 f#4", K: "g4 a3", L: "[e3@4 b3@3 a3@9]/2",
  M: "[b4@8 a4@8 g4@8 e4@5 a3@35]/2", N: "e3 f#3", O: "g3 a3", P: "b3 c4", Q: "~ d4@15 e4@16", R: "~ g3@27 ~@4",
  S: "g3/2", T: "~ e3@16 f#3@15", U: "~ g3@16 a3@15", V: "[~ g3@63 e4@16 f#4@16]/3", W: "g4@17 a4@8 b4@7",
  X: "[c4@4 d4 e4]/3", Y: "~ f#4@15 g4@16", Z: "[~ g3@47 e4@16]/2",
  AA: "[d4@17 a4@3 g4@4 ~ f#4@4 g4@11 f#4@8 ~ e4@7 d4@8]/2", AB: "d4 e4", AC: "b3 a4", AD: "d5 b4", AE: "a4 g4",
  AF: "[d4@27 ~ e4@33 c4@67]/4",
})).s("gm_viola").gain(0.27).pan(0.4)

// other · violin
const violin = note(`<
  ~@26 A@6 B@2 C D E F G@3 H I J K@2 C L M N O P Q ~@17 R S T U V W X@4 Y@3 Z AA@3 AB AC@3 AB AD@2 AE AF AG AH AI T AJ@4
  ~
>`.pickRestart({
  A: "[c4@48 d4@15 e4@32 d4@33 b4@15 a4@16 g4@16 f#4@17]/6", B: "[c4@3 d4]/2", C: "e4", D: "d5 e5", E: "c5",
  F: "~ b4@8 a4@15 g4@8", G: "[c4@48 d4@15 g5@9 f#5@8 g5@8 f#5@8]/3", H: "~ d5@31", I: "c5@17 d5@15",
  J: "~ e5@16 f#5@15", K: "[e5@17 b4@10 d5@21 a4@8 f#4@8]/2", L: "d5@8 a4@8 f#4@9 d4@7", M: "c4 d4",
  N: "~ e4@15 f#4@16", O: "g4 a4", P: "b4 c5", Q: "~ b4@31", R: "e4 f#4", S: "~ g4@16 a4@15", T: "b4", U: "d5",
  V: "c5 d5", W: "e5 f#5", X: "[g5@80 a5@13 b5@20 c6@15]/4", Y: "[d6@5 e6]/3", Z: "f#6@17 g6@15",
  AA: "[~ f#6@15 e6@48 d5@16 ~ g5@8 f#5@7]/3", AB: "~ a5@8 g5@7 f#5@8 ~ d5@7", AC: "[~ e5@63 d5@16 ~ g5@8 f#5@7]/3",
  AD: "e5/2", AE: "d5@16 ~ g5@8 f#5@7", AF: "~ a5@8 g5@7 d6@8 ~ b5@7", AG: "~ a5@15 g5@16", AH: "~ f#5@15 e5@16",
  AI: "~ d5@15 e5@16", AJ: "[a5@20 b5@4 g5@4 f#5@8 e5@8 d5@8 b4@7 c5@69]/4",
})).s("gm_violin").gain(0.32).pan(0.7)

// bass · acoustic bass
const bass = note(`<
  ~@52 A@2 B@2 A@2 C D A@2 B@2 A@2 E F G@4 H F G@2 H F G@2 H F G@2 H F G@2 H F G@2 H F G@2 H F H F H F I@3
>`.pickRestart({
  A: "[~ e2@8 e2@8 e2@4 e2@7 c2@8 c2@4 c2@4 c2@4 c2@4 c2@4 c2@4 c2@4]/2",
  B: "[g1@4 g1@4 g1@4 g1@4 g1@4 g1@4 g1@4 g1@19 ~@2 g1@4 f#1@11]/2", C: "g1!8", D: "g1!4 f#1@4", E: "g1!7 d2",
  F: "d2!8", G: "c2!8", H: "e2!8", I: "c2/3",
})).s("gm_acoustic_bass").gain(0.4)

// drums · crash
const crash = s("cr").struct("<~@25 A ~@57 A ~@3 A ~@3 A ~@3 A ~@5 B ~@3>".pickRestart({
  A: "~@3 x!3 ~ x!25", B: "x ~@2 x!3 ~ x!25",
})).gain(0.02)

stack(tubular_bells, timpani, viola, violin, bass, crash)

More by The Smashing Pumpkins