Strudelify
KeyE♭ majorTempo140 bpm
0:00/0:00
// Tank! — The Seatbelts
// 140 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Transcription provider: pdmx. https://musescore.com/score/5219881; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 44 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(140/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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 · pizzicato strings
const pizzicato_strings = note("<~ [g4@2 g3 ~@5] ~@42>").s("gm_pizzicato_strings").gain(0.3)

// bass · contrabass
const bass = note("<A ~@39 B@4>".pickRestart({
  A: "g2 g2@2 g2 g2@2 g2!2 ~ g2 g2@2 bb2@2 b2@2", B: "[c2@7 ~]/4",
})).s("gm_contrabass").gain(0.3)

// bass · acoustic bass
const bass_2 = note("<~ A B@8 C@2 B@2 D E B F@2 G H I J K L M B@4 C@2 B@2 D E N@2 O ~@5>".pickRestart({
  A: "~@2 g2 ~", B: "c2@3 g2@3 gb2@2 f2@3 eb2 ~ c2 bb1@2", C: "f2@3 c3@3 b2@2 bb2@3 ab2 ~ f2 eb2@2",
  D: "g2@3 g1 ~@2 g2@2 ~ g1@3 a2@2 a1@2", E: "a2@3 a1 ~@2 a2@2 ~ a1@3 b2@2 b1@2",
  F: "[c2@4 g2@4 bb2@2 b2@2 ~@2 c2@4 c2@3 g2@3 c3@3 c3@2 g2@3]/2", G: "c2@3 c2@2 g2@3 c3@3 c2@2 e2@3",
  H: "c2@3 c2@3 g2@2 c3@3 c3@3 e2@2", I: "c2@3 f2@3 c3@4 f2@2 ab2@2 c2@2", J: "e2@3 e2@3 ab1@2 e2@3 a2@2 e2@3",
  K: "e2@3 e2@2 ab1@3 e2@3 ab1@2 e2@3", L: "[a1,a2]@2 ~ [a1,a2]@5 [ab1,ab2]@2 ~ [ab1,ab2]@5",
  M: "[g1,g2]@2 ~ [g1,g2] ~@12", N: "[c2@3 b1@3 bb1@5 a1@3 ab1@5 g1@3 a1@5 eb2@3 e2@2]/2", O: "c2 ~@3",
})).s("gm_acoustic_bass").gain(0.3)

stack(pizzicato_strings, bass, bass_2)