Strudelify

Chorale From Jupiter Tuba 2

Gustav Holst

KeyE♭ majorTempo68 bpm
0:00/0:00
// Chorale From Jupiter Tuba 2 — Gustav Holst
// 68 bpm, 3/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3677076; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 42 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(68/3)

// 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 · tuba · "Euphonium"
const tuba = note("<~ A B C D E F G H I J K L M N O P Q R S T ~@3 U I J K L M N O P V W X Y ~ Z AA AB AC>".pickRestart({
  A: "eb3 ab3 f3", B: "g3 bb3 eb3", C: "eb3@2 eb3 c3 d3 f3", D: "g3 c4@2 c4 g3 f3", E: "eb3@4 d3 f3",
  F: "g3@6 eb3 g3 bb3@4", G: "eb3@2 f3@2 f3 ab3", H: "g3@4 bb3 g3", I: "f3@3 f3 eb3 g3", J: "f3@2 bb2@2 bb3 g3",
  K: "f3@3 f3 g3 bb3", L: "c4@4 c4 d4", M: "eb4 d4 c4", N: "bb3 eb4 g3", O: "f3 eb3 f3@2 g3@2", P: "bb3@2 d3",
  Q: "eb3 eb3@2 eb3 f3@2", R: "g3 g3@2 bb3 bb3@2", S: "c4 ab3 c4 ab3 d4@2", T: "c4@2 ~", U: "~@4 bb3 g3", V: "eb3 ~ f3",
  W: "g3 ~ g3", X: "eb3 ~ d3", Y: "c3@2 ~", Z: "~@2 bb3", AA: "c4@2 bb3", AB: "bb3@2 ab3", AC: "g3",
})).s("gm_tuba").gain(0.3)

// other · tuba · "Euphonium" · soft notes
const tuba_soft = note("<~@20 A B C@2 D ~@17>".pickRestart({
  A: "~@2 f3", B: "eb3@2 f3", C: "[g3 eb3 f3]/2", D: "g3@2 ~",
})).s("gm_tuba").gain(0.2)

// bass · tuba · "Bb Tuba"
const bass = note("<~ A B A C A D A B E F G H I J K L M N M O P D Q R E S G H I J T L U V U W ~ X A Y Z>".pickRestart({
  A: "ab2@2 bb2", B: "eb3 eb2 g2", C: "c3@2 bb2", D: "eb3@4 eb2 g2", E: "bb2@2 c3", F: "d2@2 g1", G: "bb1@4 eb2 g2",
  H: "ab2 g2 f2", I: "c3 bb2 ab2", J: "g2 f2 eb2", K: "ab1 f2 eb2", L: "d2 c2 bb1", M: "ab1@2 bb1", N: "eb2@2 bb1",
  O: "c2@2 eb2", P: "c3@2 d3", Q: "ab2 bb2@2", R: "eb2@2 g2", S: "c2@2 g2", T: "bb2 f2 eb2", U: "ab1 ~ bb1",
  V: "eb2 ~ g2", W: "c2@2 ~", X: "~@4 eb2 g2", Y: "bb1", Z: "bb2",
})).s("gm_tuba").gain(0.3)

// bass · tuba · "B♭ Tuba"
const bass_2 = note("<~ A B C@2 D E F G ~@7 H I J K@2 ~@3 L M N O P Q R S T U V W X ~@2 Y Z AA>".pickRestart({
  A: "c3!2 d3", B: "bb2 g2 bb2", C: "[c3@2 c3 eb3 f3@4 eb3@2 d3@2]/2", D: "c3 ab2 eb3 ab2 f2@2",
  E: "bb2@4 eb3@2 g2 bb2 d3@4", F: "c3@2 c3 eb3 d3@2", G: "bb2@2 ~", H: "~@4 g2 f2", I: "eb3 c3 ab2 c3 bb2 d3",
  J: "eb3 bb2 g2 eb3@3", K: "[eb3 d3 eb3 c3 f3@3 ~ eb2@2 ~@2]/2", L: "~@2 bb2", M: "bb2 bb2@2 ab2 g2@2",
  N: "bb2 bb2@2 ab2 bb2@2", O: "d3 d3@2 d3 g2 bb2", P: "eb2@2 f2", Q: "eb2 g2 ab2", R: "bb2 ab2 g2",
  S: "f2 eb2 f2@2 g2@2", T: "bb2@4 g2 bb2", U: "c3@4 c3@2 eb3@2 d3@3 bb2", V: "eb3 ~ eb3@2 d3@2", W: "c3 d3 c3@2 bb2@2",
  X: "eb2@2 ~", Y: "g2 f2 eb2@2 f2@2", Z: "f2", AA: "eb2",
})).s("gm_tuba").gain(0.3)

// bass · tuba · "B♭ Tuba" · soft notes
const bass_soft = note("<~@8 A B C D E F G H I ~@3 J K L M I ~@17>".pickRestart({
  A: "~@4 eb3 bb2", B: "d3 bb2 d3 f3 eb3@2", C: "f2@2 eb2", D: "d2 bb1 d2 f2 bb1 eb2", E: "eb2@2 f2", F: "eb2 g2 ab2",
  G: "bb2 ab2 g2", H: "f2 eb2 f2@2 g2@2", I: "bb2@2 ~", J: "~@2 d2", K: "c2 eb2 d2", L: "eb2@2 d2", M: "c2@2 d2",
})).s("gm_tuba").gain(0.2)

stack(tuba, tuba_soft, bass, bass_2, bass_soft)

More by Gustav Holst