Strudelify

Megalovania for Trombone

Dylan Layton

KeyF majorTempo240 bpm
0:00/0:00
// Megalovania for Trombone — Dylan Layton
// 240 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3016961; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 88 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(240/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.

// other · trombone
const trombone = note(`<
  A B C B D B E B A B C B D B E B A B C B D B E B ~@32 A B C B D B D B A B C B F G F G A B C B D B D B A B C B F G F G
>`.pickRestart({
  A: "d3@2 d4@2 a3@2 ~ ab3", B: "~ g3 ~ f3@2 d3 f3 g3", C: "c3@2 d4@2 a3@2 ~ ab3", D: "b2@2 d4@2 a3@2 ~ ab3",
  E: "bb2@2 d4@2 a3@2 ~ ab3", F: "~@2 f3@2 e3@2 ~ c3", G: "~ e3 ~ d3@4 ~",
})).s("gm_trombone").gain(0.3)

// other · trombone
const trombone_2 = note(`<
  ~@16 A B C B D@2 E@2 F@2 G@2 H@2 I@2 F@2 G@2 H@2 J G I@2 G@2 F@2 K@2 F L@2 K M@2 N@2 O@2 P@2 Q@4 O@2 P@2 R S R S O@2
  P@2 Q@4 O@2 P@2 R S R S
>`.pickRestart({
  A: "d3", B: "g3", C: "f3", D: "[a3@3 g3]/2", E: "db4/2", F: "d3!2", G: "c3!2", H: "b2!2", I: "bb2!2", J: "a2!2",
  K: "e3!2", L: "c3 d3", M: "f3/2", N: "g3/2", O: "bb2/2", P: "c3/2", Q: "b2/2", R: "d3@2 d3@2 d3!2 ~ d3",
  S: "~ d3 ~ d3@4 ~",
})).s("gm_trombone").gain(0.3)

// bass · trombone · "Bass Trombone"
const bass = note(`<
  ~@8 A@2 B@2 C@2 D@2 A@2 B@2 C@2 D@2 E@2 F@2 G@2 H@2 E@2 F@2 G@2 I F H@2 F@2 E@2 J@2 E K@2 J L@2 M@2 D@2 B@2 C@4 D@2
  B@2 A@4 D@2 B@2 C@4 D@2 B@2 A@4
>`.pickRestart({
  A: "d2/2", B: "c2/2", C: "b1/2", D: "bb1/2", E: "d2!2", F: "c2!2", G: "b1!2", H: "bb1!2", I: "a1!2", J: "e2!2",
  K: "c2 d2", L: "f2/2", M: "g2/2",
})).s("gm_trombone").gain(0.3)

stack(trombone, trombone_2, bass)