Strudelify

handlebars

Flobots

KeyF majorTempo144 bpm
0:00/0:00
// handlebars — Flobots
// 144 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/51492; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 113 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(144/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.

// chords · piano
const piano = note(`<
  A B C D E F G H I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K
  L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P I J K L M N O P@2
>`.pickRestart({
  A: "d4 f4 a4 f4", B: "a3 c4 e4 c4", C: "f3 bb3 d4 f4", D: "c4 e4 g4 e4", E: "bb3 d4 f4 bb4", F: "g4 bb4 d5 bb4",
  G: "f4 a4 c5 a4", H: "e4 g4 a4 a3", I: "d4 f4 a4 f4, d2", J: "a3 c4 e4 c4, a1", K: "f3 bb3 d4 f4, f1",
  L: "c4 e4 g4 e4, c2", M: "bb3 d4 f4 [c2,bb4], bb1@3 ~", N: "g4 bb4 d5 bb4, g2", O: "f4 a4 c5 a4, f2",
  P: "e4 g4 a4 a3, e2",
})).s("gm_piano").gain(0.3)

// other · trumpet · "Bb Trumpet"
const trumpet = note("<~@13 A B@2 ~@21 A B@2 ~@22 C D E F G H I J K@2 L M@2 N L M@2 O ~@33>".pickRestart({
  A: "~@5 e4 a4@2 g4@8", B: "[~ g4 f4 e4 a4@3 g4 f4 e4 a4@10 ~@12]/2", C: "~@6 f4 g4 a4@2 g4 f4 c5@2 a4 e4",
  D: "e5@5 f5 g5 e5", E: "f5@4 e5@2 d5@2 ~@2 g4 a4 g4@2 f4@2", F: "e4@2 d4 c4@5", G: "~@6 c5 d5 a4@6 c5 d5",
  H: "a4@2 g4 f4@3 ~@2", I: "~@6 d4 e4 f4@2 e4@2 f4@2 g4@2", J: "a4@2 c5@2 d5@2 f5@2 a5@2 g5 f5 e5@2 d5@2",
  K: "[c5@3 bb4 ~@2 a4@2 d5@2 db5@2 b4@2 c5@14 ~@2 a4@2]/2", L: "f5!4 f5@2 f5 g5", M: "f5 e5 d5@4 f5 g5",
  N: "f5 e5 d5@4 ~ a4", O: "f5@3 e5@3 db5@10",
})).s("gm_trumpet").gain(0.12)

stack(piano, trumpet)