Strudelify

Beliver

Casey Liew

KeyD♭ majorTempo188 bpm
0:00/0:00
// Beliver — Casey Liew
// 187.5 bpm, 3/2, key Db major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (5/2 at bar 1, 3/2 at bar 3, 3/1 at bar 34, 3/2 at bar 36, ...) are rendered on a constant 3/2 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/6423475; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 212 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(187.5/6)

// 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@2 C D E@2 F G E@2 F G E@2 F G E@2 F G E@2 F H E@2 F I J E F G K L E F G K L E F M J E F G E@2 F G E@2 F G E@2 F G
  E@2 F I J E F G K L E F G K L E F M J E F G N O P Q R@2 S T U@2 V W X E F G K L E F G Y@2 Z AA AB AC AD AA AE@2 ~@100
>`.pickRestart({
  A: "~ [ab2,f4]@2", B: "[bb1,bb2]@3 bb2!3 bb2@3 bb1!3, ~ [bb3,f4,bb4]",
  C: "[gb1,gb2]@3 gb2!3 gb2@3 gb1!3, ~ [gb3,db4,gb4]", D: "[a1,a2]@3 a2!3 a2@3 f1 gb1 a1, ~ [a3,e4,a4]",
  E: "bb3@2 db4 bb2!2 [bb2,db4] bb3@2 db4 bb1!2 [bb1,db4], [bb1,bb2]@3 bb3@2 ~ bb2@3 bb3@2 ~", // Bbm Bb
  F: "gb3@2 db4 gb2!2 [gb2,db4] gb3@2 db4 gb1!2 [gb1,db4], [gb1,gb2]@3 gb3@2 ~ gb2@3 gb3@2 ~", // Gb5 Gb
  G: "a3@2 c4 a2!2 [a2,c4] a3@2 c4 a1!2 [a1,c4], [a1,a2]@3 a3@2 ~ a2@3 a3@2 ~", // Am A
  H: "a3@2 c4 a3@2 c4 a3@2 c4 a3@2 c4, [a1,a2] a2!3", I: "a3@2 c4 a3@2 c4 a2@3 f2 eb2 db2, [a1,a2] a2 ~@2",
  J: "[bb0,bb1]@3 bb1!3 bb3@2 db4 bb1!2 [bb1,db4], ~@6 [bb1,bb2]@3 bb3@2 ~", K: "[bb0,bb1] ~@3, bb4",
  L: "bb3@2 db4 bb1!2 [bb1,db4] bb3@2 db4 bb1!2 [bb1,db4], ~@3 bb3@2 ~ bb1@3 bb3@2 ~", // Bbm
  M: "a3@2 c4 a2!2 [a2,c4] a3@2 c4 f2 eb2 [db2,c4], [a1,a2]@3 a3@2 ~ a2@3 a3@2 ~", // Am Dbmaj7 A
  N: "bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4, [bb1,bb2]", O: "bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4",
  P: "gb3@2 db4 gb3@2 db4 gb3@2 db4 gb3@2 db4", Q: "a3@2 c4 a3@2 c4 a3@2 c4 a3@2 c4",
  R: "[bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4 bb3@2 db4, [bb0,bb1]]/2", // Bb
  S: "gb3@2 db4 gb3@2 db4 gb3@2 db4 gb3@2 db4, ~ [gb4,bb4]", T: "a3@2 c4 a3@2 c4 a3@2 c4 a3@2 c4, [f4,a4] [a4,c5]",
  U: "[[gb2,gb3]@9 gb2!3 [gb2,gb3]@9 gb2!3, [bb4,db5]@5 ~, c5 ~@2]/2", // Gb Bbm
  V: "[eb4,ab4,c5]@8 ~ ab2!3, bb4, [ab2,ab3]@7 ~@5", W: "[a2,a3,eb4,a4,c5] ~",
  X: "~@3 f1 gb1 ab1 bb3@2 db4 bb1!2 [bb1,db4], ~@6 [bb1,bb2]@3 bb3@2 ~", // Bbm Bb
  Y: "[~ bb4@12 bb3@2 [bb1,db4] bb1!2 db4 bb3@2 [bb1,db4] bb1!2, [bb0,bb1]@3 ~@13 bb3@2 bb1@3 ~ bb3@2]/2", // Bbm Bb
  Z: "db4 bb3@2 db4 bb2!2 [bb2,db4] bb3@2 db4 bb1!2, ~ [bb1,bb2]@3 bb3@2 ~ bb2@3 bb3@2", // Bbm Bb
  AA: "[bb1,db4] gb3@2 db4 gb2!2 [gb2,db4] gb3@2 db4 gb1!2, ~ [gb1,gb2]@3 gb3@2 ~ gb2@3 gb3@2", // Bbm Gb5 Gb
  AB: "[gb1,db4] a3@2 c4 a2!2 [a2,c4] a3@2 c4 f2 eb2, ~ [a1,a2]@3 a3@2 ~ a2@3 a3@2", // Gb5 Am A
  AC: "[db2,c4] [bb0,bb1]@3 bb1!3 bb3@2 db4 bb1!2, ~@7 [bb1,bb2]@3 bb3@2", // Dbmaj7 Bb
  AD: "[bb1,db4] bb3@2 db4 bb2!2 [bb2,db4] bb3@2 db4 bb1!2, ~ [bb1,bb2]@3 bb3@2 ~ bb2@3 bb3@2", // Bbm Bb
  AE: "[[gb1,db4] eb4@12 ~@11]/2", // Gb5
})).s("gm_piano").gain(0.29)

stack(piano)

More by Casey Liew