Strudelify

Piano Sonata No.16 in C major K.545

W. A. Mozart

KeyG majorTempo70 bpm
0:00/0:00
// Piano Sonata No.16 in C major K.545 — W.A. Mozart
// 70 bpm, 3/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/4346361; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 74 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(70/3)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// 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 B D E F G H I C B J K L M N O P Q R S T U H I C B J K L M V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AM
  AO AP AQ AR H I C B J K L AS AT AU AV AS AW AX AY AZ BA BB
>`.pickRestart({
  A: "g3 d4 b3 d4 g3 d4 b3 d4 a3 d4 b3 d4", B: "g3 d4 b3 d4 g3 d4 b3 d4 g3 d4 b3 d4",
  C: "g3 e4 c4 e4 g3 e4 c4 e4 g3 c#4 a#3 c#4", D: "a3 d4 c4 d4 a3 d4 c4 d4 a3 d4 c4 d4",
  E: "g3 d4 b3 d4 g3 d4 b3 d4 b2 g3 d3 g3", F: "e3 ~ e3, c3@5 ~@3, ~@8 g3@15 ~", G: "g3 f#3 ~, d3@5 ~@3",
  H: "g3 d4 b3 d4 g3 d4 b3 d4 a3 d4 c4 d4",
  I: "g3 d4 b3 d4 a3 d4 b3 d4 g3 d4 b3 d4, ~@8 g4 ~ g4 ~ a4 ~ b4 ~ c5 ~ d5 ~ e5 ~ f#5 ~",
  J: "[a3,c5] [d4,a4] [c4,c5] [d4,a4] a3 [d4,a4] [c4,g#4] [d4,a4] [a3,a#4] [d4,b4] [c4,c5] [d4,c#5], ~@8 f#4 ~@15", // Am D5 C D5 Fm D5 A#maj7 G …
  K: "[g3,d5] [d4,b4] [b3,d5] [d4,b4] e3 b3 g3 b3 b2 g3 d3 g3, ~ g5 ~", // G5 G Bm G
  L: "c3 a3 e3 a3 d3 b3 g3 b3 b2 c4 a3 c4, ~@2 f#4", M: "[c4,f#4] b3 ~, g3@2 ~",
  N: "d4 a4 f#4 a4 d4 a4 f#4 a4 d4 a4 f#4 a4", O: "e4 a4 g4 a4 e4 a4 g4 a4 e4 a4 g4 a4",
  P: "c#4 a4 g4 a4 c#4 a4 g4 a4 c#4 a4 g4 a4", Q: "d4 a4 f#4 a4 c#4 a4 d4 a4 b3 g4 d4 g4",
  R: "a3 f#4 d4 f#4 g3 e4 c#4 e4 f#3 d4 a3 d4", S: "b3 g4 e4 g4 a3 f#4 d4 f#4 g3 e4 b3 e4",
  T: "a3 f#4 d4 f#4 a3 f#4 d4 f#4 a3 g4 e4 g4, ~@2 c#5", U: "[g4,c#5]@4 d5 d#5 e5 d#5 f#5 e5 d5 c5, d4@5 ~@3, ~ f#4 ~",
  V: "g3 d4 a#3 d4 g3 d4 a#3 d4 a3 d4 c4 d4", W: "g3 d4 a#3 d4 g3 d4 a#3 d4 g3 d4 a#3 d4",
  X: "f#3 d4 a3 d4 f#4 d4 a3 d4 d3 d4 f#3 d4", Y: "g3 d4 a#3 d4 g3 d4 a#3 d4 g3 d#4 a#3 d#4",
  Z: "a3 f4 c4 f4 a3 f4 c4 f4 a3 f4 c4 f4", AA: "a#3 f4 d4 f4 a3 f4 c4 f4 a3 f4 c4 f4",
  AB: "d#3 c4 g3 c4 f3 d4 a#3 d4 f3 d#4 c4 d#4, ~@2 a4", AC: "[d#4,a4]@4 a#4 a4 c5 a#4 d5 c5 d#5 d5, a#3@5 ~@3, ~ d4 ~",
  AD: "g#3 f4 c4 f#4 g3 d4 b3 d4 f3 d4 g3 d4", AE: "d#3 c4 g3 c4 d3 b3 f3 b3 c3 c4 d#3 c4",
  AF: "c#3 a#3 e3 a#3 d3 a#3 g3 a#3 d#3 a#3 g3 a#3", AG: "d3 a#3 g3 a#3 d3 a#3 f#3 a#3 d3 a3 f#3 a3",
  AH: "c3 a3 f#3 a3 c3 a3 f#3 a3 c3 a3 f#3 a3", AI: "a#2 g3 d3 g3 a#2 g3 d3 g3 a#2 g3 d3 g3",
  AJ: "c3 a3 d#3 a3 d3 a#3 g3 a#3 d3 c4 a3 c4", AK: "[c4,f#4]@4 g4 f#4 g4 g#4 a4 g#4 a4 a#4, g3@5 ~@3, ~ a#3 ~",
  AL: "g3 d4 b3 d4 g3 d4 b3 d4 [a3,d5] [d4,c5] [c4,b4] [d4,c5], b4@2 ~", // D5 D7 Cmaj7 D7
  AM: "g3 d4 b3 [d4,b4] g3 d4 b3 d4 g3 d4 b3 d4, d5@3 ~ g4@4 ~@4", // G
  AN: "g3 e4 c4 e4 g3 e4 [c4,a5] [e4,g5] [g3,f#5] [c#4,e5] [a#3,d5] [c#4,c#5], g5 ~", // F Em Gmaj7 C#m A# C#
  AO: "a3 d4 c4 [d4,a4] a3 d4 c4 d4 a3 d4 c4 d4, c5@6 ~@2 f#4 ~@3 a4 ~@3 b4 ~@3 c5 ~@3", // D5
  AP: "g3 d4 b3 [d4,b4] g3 d4 b3 d4 b2 g3 d3 g3, d5@3 ~ g5@4 ~@4", // G
  AQ: "a5 g5 f#5 g5 f#5 e5 d#5 e5 d5 c5 b4 c5, c3@15 ~ e3@8, e3@8 g3@15 ~",
  AR: "[g3,b4]@6 c5 b4 a4@4 d5@4 c#5@4 c5@4, d3@5 ~@3, ~ f#3 ~", // G
  AS: "g4 f#4 a4 g4 b4 a4 c5 b4 d5 c5 e5 d5, [g3,b3] ~@2", AT: "a3 f4 c4 f4 a3 f4 c4 f4 b3 g4 d4 g4",
  AU: "c4 g4 e4 g4 c4 g4 e4 g4 c4 g4 e4 g4", AV: "b3 d4 c4 e4 d3 b3 g3 b3 d3 c4 a3 c4, ~@2 f#4",
  AW: "a2 f3 c3 f3 b2 g3 d3 g3 g2 g3 b2 g3", AX: "c3 g3 e3 g3 c3 a3 d#3 a3 c#3 a#3 e3 a#3",
  AY: "d3 b3 g3 b3 d3 b3 g3 b3 d3 c4 a3 c4, ~@2 f#4", AZ: "[g3,b3]@2 ~@3 [d3,c4]",
  BA: "g4@2 d4@2 b4@2 b4 ~ b4@2 g4@2 d5@2 d5 ~ d5@2 b4@2 a4@2 b4@2, [g3,b3]@2 ~@3 [d3,c4]", // G D7
  BB: "[g3,b3,g4] ~ [g2,b3,g4] ~@3", // G
})).s("gm_piano").gain(0.3)

stack(piano)

More by W. A. Mozart