Strudelify

Trumpet Trio

Jilli Hickman

KeyF majorTempo100 bpm
0:00/0:00
// Trumpet Trio — Jilli Hickman
// 100 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5833874; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 28 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(100/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 · trumpet · "B♭ Trumpet"
const trumpet = note("<~ A B C D E F G H I J K H L H M N O P O D E F G H I J Q>".pickRestart({
  A: "d4@4 d4!2 ~ d4 d4@4 d4@4", B: "f4@4 f4!2 ~ f4 f4@4 f4@4", C: "bb4@3 f4",
  D: "eb4 ~ eb4!3 ~ eb4 ~ f4 ~ f4 ~ g4@3 f4", E: "eb4 ~ eb4 ~ eb4@3 eb4 f4@8", F: "g4@6 f4 eb4",
  G: "eb4@2 eb4@2 eb4!2 f4@2 f4@2 f4@6", H: "eb4 ~ eb4!3 ~ eb4 ~ f4 ~ g4 ~ bb4@3 ab4", I: "g4@4 f4@3 f4 eb4@8",
  J: "eb4@4 f4 g4 eb4@2 eb4@4 c4@4", K: "c4@2 d4@2 eb4 ~ ab4 ~ g4@6 ~@2", L: "g4@4 f4@3 eb4 g4@8",
  M: "g4@4 g4@3 f4 g4@8", N: "bb4@2 bb4@2 bb4@2 bb4@2 bb4@2 bb4 ab4 ab4@2 ab4@2", O: "g4@2 g4!2 g4@2 g4@2 g4@8",
  P: "c5@2 c5@2 c5@2 c5@2 d5@2 ab4 bb4 ab4@2 ab4@2", Q: "c4@2 d4@2 eb4 ~ ab4 ~ g4@8",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "B♭ Trumpet"
const trumpet_2 = note("<~@2 A B C D E F G H I J G H G H K L K M C D E F G H N O>".pickRestart({
  A: "d4@4 d4!2 ~ d4 c4@4 d4@4", B: "g4@3 ~", C: "c4@2 bb3!2", D: "c4@4 bb3@3 bb3 c4@8", E: "eb4@6 bb3 c4",
  F: "c4@2 c4@2 c4!2 c4@2 d4@2 d4@6", G: "c4 ~ c4!3 ~ c4 ~ d4 ~ eb4 ~ g4@3 f4", H: "eb4@4 d4@3 c4 c4@8",
  I: "ab3@2 ab3@2 bb3@2 c4 ~ bb3 ~ bb3 ~ ab3 ~ g3 ~", J: "ab3@4 c4 ~ c4 ~ eb4@6 ~@2",
  K: "f4@2 f4@2 d4@2 d4@2 bb3@2 bb3!2 c4@2 d4@2", L: "eb4@2 eb4!2 eb4@2 eb4@2 d4@8", M: "eb4@2 eb4!2 eb4@2 eb4@2 bb3@8",
  N: "ab3@2 ab3@2 bb3@2 c4@2 bb3 ~ bb3 ~ ab3 ~ g3 ~", O: "ab3@4 c4 ~ c4 ~ eb4@8",
})).s("gm_trumpet").gain(0.4)

stack(trumpet, trumpet_2)

More by Jilli Hickman