Strudelify
KeyG minorTempo119 bpm
0:00/0:00
// Passacaglia — George Frideric Handel
// 119 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 73 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(119/4)

// 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 · "A.PIANO"
const piano = note(`<
  A B C D A B C D E F G H E F G H I J K L M N O P Q R S T U V W X Y Z AA AB A AC C AD A AC C AD AE AF AG AH AI AJ AK AL
  AM AN AO AP AM AQ AR AS AT AU AV AW AX AY AZ AD BA BB BC BD@2
>`.pickRestart({
  A: "[g3,bb3,d4] [eb3,g3,c4]", B: "[f3,a3,c4] [bb2,d3,f3,bb3]", C: "[eb3,g3,bb3] [c3,eb3,a3]", D: "d3 d2 g2@2",
  E: "[g2,g3] [f2,f3] [eb2,eb3] [d2,d3] [c2,c3] [d2,d3] [eb2,eb3] [c2,c3]", // G F Eb D C D Eb C
  F: "[f2,f3] [eb2,eb3] [d2,d3] [c2,c3] [bb1,bb2] [c2,c3] [d2,d3] [bb1,bb2]", // F Eb D C Bb C D Bb
  G: "[eb3,eb4] [d3,d4] [c3,c4] [bb2,bb3] [a2,a3] [bb2,bb3] [c3,c4] [a2,a3]", // Eb D C Bb A Bb C A
  H: "[d3,d4] [c3,c4] [bb2,bb3] [a2,a3] [g2,g3] d3 bb2 d3", I: "g3 bb3 c4 eb3", J: "f3 a3 bb3 d3", K: "eb3 g3 a3 c3",
  L: "d3 gb3 g3 g2", M: "bb2@2 d3 ~ g3 ~ f3 ~ eb3 ~ d3 ~ c3 ~ bb2 ~", N: "a2@2 c3 ~ f3 ~ eb3 ~ d3 ~ c3 ~ bb2 ~ a2 ~",
  O: "g2@2 bb2 ~ eb3 ~ d3 ~ c3 ~ bb2 ~ a2 ~ g2 ~", P: "gb2@2 a2 ~ d3 ~ c3 ~ bb2 ~ a2 ~ g2@4",
  Q: "g2 g3 a3 bb3 c2 c3 d3 eb3", R: "f2 f3 g3 a3 bb2 bb3 c4 d4", S: "eb2 eb3 f3 g3 a2 a3 bb3 c4",
  T: "d4 d3 e3 gb3 g3 bb2 c3 d3", U: "[g2,bb2,d3,g3] [c3,eb3,g3]", V: "[f3,a3] [bb2,f3,bb3]",
  W: "[eb3,g3,bb3]@2 a2 c3, ~ g3", X: "d3@4 d2@4 g2@4 bb2 ~ c3 d3", Y: "g2 d4 ~ c4 bb3 c4 ~ d4 eb3 f3 ~ g3 c3 d3 ~ eb3",
  Z: "a2 ~ bb2 c3 f2 f3 ~ eb3 d3 eb3 ~ f3 bb2 c3 ~ d3", AA: "eb3 f3 ~ g3 c3 d3 ~ eb3 d3 e3 ~ gb3 g3 a3 ~ bb3",
  AB: "c4 bb3 ~ a3 d4 c4 ~ d4 bb3 c4 ~ d4 g3 a3 ~ bb3", AC: "[f3,a3,c4] [d3,f3,bb3]", AD: "[d3,gb3,a3] [g2,bb2,d3,g3]",
  AE: "g2 a2 bb2 c3 d3 e3 gb3 g3 c3 d3 eb3 f3 g3 a3 bb3 c4", AF: "f2 g2 a2 bb2 c3 d3 eb3 f3 bb2 c3 d3 eb3 f3 g3 a3 bb3",
  AG: "c3 d3 eb3 f3 g3 a3 bb3 c4 d4@2 gb3@2 g3@2 bb2@2", AH: "c3 a2 d3 d2 g3 bb2 c3 d3", AI: "[g3,bb3,d4] [c3,g3,c4]",
  AJ: "[f3,a3,c4] [bb2,f3,bb3]", AK: "[eb3,g3,bb3] [a2,c3,a3]", AL: "d3 d2 g2 g1", AM: "[g3,bb3,d4] [e3,g3,bb3]",
  AN: "[eb3,f3,a3] [d3,f3,ab3]", AO: "[db3,e3,g3]@2 [c3,d3,gb3] [bb2,d3,g3]",
  AP: "[c2,c3]@4 [d2,d3]@4 [g2,g3]@4 ~ c4 bb3 a3", AQ: "[eb3,f3,a3] [d3,f3,b3]", AR: "[db3,e3,bb3]@2 [c3,a3] [bb2,g3]",
  AS: "[c3,eb3,a3] [d3,a3] [g2,bb2,d3,g3]@2", AT: "g2 bb2 d3 g3 g2 bb2 d3 g3 c3 eb3 g3 c4 c3 eb3 g3 c4",
  AU: "f2 a2 c3 f3 f2 a2 c3 f3 bb2 d3 f3 bb3 bb2 d3 f3 bb3", AV: "c3 eb3 g3 c4 c3 eb3 g3 c4 d3@2 gb3@2 g3@2 bb2@2",
  AW: "c3@2 a2@2 d3@2 d2@2 g2 g3 gb3 g3 d3 g3 bb2 d3", AX: "[g2,d3,g3] [c3,eb3,g3]", AY: "[f2,c3,f3] [bb2,d3,f3]",
  AZ: "[eb3,g3] [c3,eb3,a3]", BA: "bb2 d3 g3 bb3 bb2 d3 g3 bb3 c3 eb3 g3 c4 c3 eb3 g3 c4",
  BB: "a2 c3 eb3 f3 a2 c3 eb3 f3 bb2 d3 f3 bb3 bb2 d3 f3 bb3",
  BC: "eb3 g3 bb3 eb4 eb3 g3 bb3 eb4 c3 eb3 g3 c4 c3 eb3 g3 ~",
  BD: "[c4 d3 g3 bb3 d4 d3@2 d2@2 ~ [g2,bb2,d3,g3]@12 ~@10]/2", // Gm
})).s("gm_piano").gain(0.5)

stack(piano)

More by George Frideric Handel