Strudelify

8 Humoresques Op.101

A.Dvorak

KeyG majorTempo50 bpm
0:00/0:00
// 8 Humoresques Op.101 — A.Dvorak
// 50 bpm, 2/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5936751; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 64 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(50/2)

// 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 · pizzicato strings
const pizzicato_strings = note("<~@8 [g3 d4 g4 b4] [c4 e4 g4 c5] [g3 d4 g4 b4] ~ [g3 d4 g4 b4] [c4 e4 g4 c5] ~@50>")
  .s("gm_pizzicato_strings").gain(0.3)

// other · cello
const cello = note(`<
  ~@3 A ~@2 B C D E F G D E H I J K L M J K N ~@4 A ~@4 O P O Q O R O S O R O T O R O U ~@3 A ~@2 V W J K L M J K X W
>`.pickRestart({
  A: "~ d3@2 ~", B: "b2@2 e3 d#3 d3@4", C: "g2@3 d3 g3@3 d3 g2@8", D: "g3@3 a3 g3@3 a3 b3@3 d4 e4@3 d4",
  E: "g4@3 f#4 a4@3 g4 f#4@3 a4 g4@3 e4", F: "d4@3 d4 e4@3 d4 g4@3 e4 d4@3 b3", G: "a3@3 ~",
  H: "d4@3 d4 g4@3 g3 a3@4 d4@4", I: "g3@3 ~", J: "g3@2 d4 g4 f#4 b3 e4@2", K: "~ c3 g3 e4 g#4 e4 b3@2",
  L: "a2@2 e3 c4 d4@2 e4 f#4", M: "g4 d4 b3@6", N: "a2@2 e3 c4 d4@3 ~", O: "g3 d#3", P: "f3 a#2",
  Q: "c3@2 f3@2 a#2 c3 d3 f3", R: "f3@4 a#2@2 d3 f3", S: "a2 d3", T: "f3@4 a#3 f3 d3 a#2", U: "a2@2 a#2 c3 d3@4",
  V: "b2 e3 a2 d3", W: "g3 d3 g2@2", X: "a2@2 e3 c4 d4@4",
})).s("gm_cello").gain(0.3)

// other · pizzicato strings
const pizzicato_strings_2 = note("<A B A ~ A B ~@17 C A B A ~ A B D E ~@16 A B A ~ A B ~@10>".pickRestart({
  A: "g2 d3 g3 b3", B: "c3 e3 g3 c4", C: "d#3 e3 a2 d3", D: "b2 e3 a2 d3", E: "g3 d3 g2@2",
})).s("gm_pizzicato_strings").gain(0.3)

stack(pizzicato_strings, cello, pizzicato_strings_2)