Strudelify

Warmups

Hunter Moss

KeyB♭ minorTempo70 bpm
0:00/0:00
// Warmups — Hunter Moss
// 70 bpm, 4/4, key A# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/48588; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 26 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(70/4)

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

// chords · trumpet · "Bb Trumpet"
const trumpet = note("<A@2 ~ A@2 ~ A@2 ~ A@2 ~ A B C@2 D C D E F G H@2 I J>".pickRestart({
  A: "f4", B: "g4 a4", C: "bb4", D: "[f4,g4,a4,bb4,c5]", E: "[db4,db5,f5,bb5]", F: "[db4,db5,gb5,bb5]",
  G: "[db5,f5,ab5]", H: "[db5,f5,bb5]", I: "[db5,gb5,bb5]", J: "[f4,bb4,db5,f5]",
})).s("gm_trumpet").gain(0.4)

// chords · french horn · "F Mellophone"
const french_horn = note("<A@2 ~ A@2 ~ A@2 ~ A B C@3 ~ C D C D E F G H I E J>".pickRestart({
  A: "c4", B: "d4 e4", C: "f4", D: "[c4,d4,eb4,f4,g4]", E: "[f4,bb4]", F: "[gb4,bb4]", G: "ab4 bb4", H: "~ c5",
  I: "bb4", J: "[db4,bb4,db5]",
})).s("gm_french_horn").gain(0.3)

// chords · trombone
const trombone = note("<A@2 ~ A@2 ~ A B C@3 ~ C@2 ~ C D C E ~ F G H@2 I J>".pickRestart({
  A: "f2", B: "g2 a2", C: "bb2", D: "[a2,bb2,c3,d3,eb3]", E: "[g2,a2,bb2,c3,d3]", F: "[gb2,db3]", G: "[ab2,db3]",
  H: "[bb2,db3]", I: "gb3", J: "[bb2,f3]",
})).s("gm_trombone").gain(0.3)

// chords · tuba · "Euphonium"
const tuba = note("<A@2 ~ A B C@3 ~ C@2 ~ C@2 ~ C D C E ~ F G H I J K>".pickRestart({
  A: "f2", B: "g2 a2", C: "bb2", D: "[f2,g2,a2,bb2,c3]", E: "[eb2,f2,g2,a2,bb2,c3]", F: "[gb2,db3]", G: "[ab2,db3]",
  H: "[bb2,b2,db3]", I: "[bb2,db3]", J: "gb3", K: "[bb2,f3]",
})).s("gm_tuba").gain(0.3)

// bass · tuba · "Bb Tuba"
const bass = note("<A B C@3 ~ C@2 ~ C@2 ~ C@2 ~ C D C D E F G C@2 F H>".pickRestart({
  A: "f2", B: "g2 a2", C: "bb2", D: "[f2,g2,a2,bb2,c3]", E: "~ gb2", F: "gb2", G: "ab2", H: "[bb1,bb2]",
})).s("gm_tuba").gain(0.3)

stack(trumpet, french_horn, trombone, tuba, bass)