Strudelify

Menuett

W. A. Mozart

KeyB♭ majorTempo165 bpm
0:00/0:00
// Menuett — W. A. Mozart
// 165 bpm, 3/4, key Bb 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/3509831; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 139 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(165/3)

// 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.

// other · piano
const piano = note(`<
  A B C D E F G H A B C D E F G H I J K L M N O ~ P Q C D E F R S E F T U I J K L M N O ~ P Q C D E F R S E F T U V@3 W
  X Y@4 Z@2 V@3 W X Y@4 Z@2 AA@3 AB AC AD@3 AE@3 AF@3 AG AH@5 AI@2 AJ@3 AK@2 AL@4 AM@2 A B C D E F G H I J K L M N O ~ P
  Q C D E F R S E F T U
>`.pickRestart({
  A: "bb4@10 ~ eb5 c5@2 bb4@2, ~@12 d5 ~@3", B: "e5@3 f5@2 f5@5 ~ f5@5", C: "a5@3 bb5@2 bb5@5 ~ bb5@5",
  D: "bb5@3 a5@2 f5@10 ~", E: "gb5 g5@4 b4 ~ c5@4 gb5 g5@4", F: "e5 f5@4 a4 ~ bb4@4 e5 f5@4",
  G: "[a4,c5]@3 [bb4,d5]@2 [c5,eb5]@5 ~ [bb4,d5]@5", H: "d5@11 [a4,c5]@5", I: "f5@10 ~ bb5 g5@2 f5@2, ~@12 a5 ~@3",
  J: "e5@5 e5@5 ~ eb5@5", K: "d5@3 f5@2 g5@5 ~ bb4@5", L: "bb4@3 a4@2 g4@3 f4@3 e4@2 f4@3",
  M: "f4@10 ~ bb4 g4@2 f4@2, ~@12 a4 ~@3", N: "e4@5 e4@5 ~ eb4@5", O: "d4@3 f4@2 g4@5 ~ bb3@5",
  P: "bb4@10 ~ d5 c5@2 bb4@2, ~@12 d5 ~@3", Q: "e5@3 f5@2 f5@3 ~@3 f5@3 ~@2",
  R: "c5@3 [c5,eb5]@2 [bb4,d5]@5 ~ [a4,c5]@5", S: "bb4@3 f4@2 d5@3 bb4@3 bb5@2 f5@3",
  T: "f5@3 [c5,eb5]@2 [bb4,d5]@5 ~ [a4,c5]@5", U: "[d4,f4,bb4]@15 ~",
  V: "[bb3@5 a3@2 bb3@5 ~ c4@2 db4@5 e4@2 f4@5 e4@2 f4@5 ~ g4@2 a4@5 bb4@2 c5@4]/3", W: "~ d5@2 eb5@5 ~ gb5@2 f5@5",
  X: "eb5@2 eb5@7 db5@7",
  Y: "[~ c5@7 [gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ [gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ c5@7 gb5@2 ~ f5@2]/4", // Ebm Db Ebm Db
  Z: "[eb5@2 ~ db5@2 c5@2 ~ bb4@2 bb4@15 a4@7]/2",
  AA: "[db4@5 c4@2 db4@5 ~ eb4@2 f4@5 gb4@2 ab4@5 g4@2 ab4@5 ~ bb4@2 c5@5 ab4@2 db5@4]/3",
  AB: "~ eb5@2 f5@5 ~ gb5@2 ab5@5", AC: "b4 b4@7",
  AD: "[~ bb4@7 f5 eb5 d5@2 ~ f5@2 eb5@12 ~ bb5@2 bb5@7 eb5@11, ~@6 eb5 ~@17]/3",
  AE: "[~@2 bb5@2 bb5@3 ~ g5@3 eb5@7 ~ db5@7 db5@15 c5@7]/3",
  AF: "[[gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ [gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ c5@2 gb5@2]/3", // Ebm Db Ebm Db
  AG: "~ eb5@2 db5@2 ~ f5@2 bb4@2 ~ c5@2 eb5@2 ~",
  AH: "[a4@2 bb4@21 ~ db4@5 c4@2 db4@5 ~ eb4@2 f4@5 gb4@2 ab4@5 g4@2 ab4@5 ~ bb4@2 c5@5 ab4@2 db5@5 eb5@2 f5@5]/5",
  AI: "[~ gb5@2 ab5@5 b4@2 b4@14 ~ bb4@7]/2",
  AJ: "[f5 eb5 d5@2 ~ f5@2 eb5@12 ~ bb5@2 bb5@7 eb5@12 ~ bb5@2 bb5@3 ~, ~@2 eb5 ~@21]/3",
  AK: "[g5@3 eb5@7 ~ db5@7 db5@14]/2",
  AL: "[~ c5@7 [gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ [gb4,eb5]@5 [f4,db5]@2 [f4,db5]@14 ~ c5@2 gb5@2 ~ eb5@2 db5@2 ~ f5@2]/4", // Ebm Db Ebm Db
  AM: "[bb4@2 ~ c5@2 eb5@2 ~ a4@2 bb4@21 ~]/2",
})).s("gm_piano").gain(0.3)

stack(piano)

More by W. A. Mozart