Strudelify

Pachelbels canon in D

Johann Pachelbel

KeyD majorTempo40 bpm
0:00/0:00
// Pachelbels canon in D — Johann Pachelbel
// 40 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5170721; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 33 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(40/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · viola
const viola = note("<A B C D E F G H I J K L M N O P Q R S T U V W X Y Z W X Y Z W AA AB>".pickRestart({
  A: "d4 a3 b3 f#3", B: "g3 d3 g3 a3", C: "f#4 e4 d4 c#4", D: "b3 a3 b3 c#4", E: "d4 c#4 b3 a3", F: "g3 f#3 g3 e3",
  G: "d3 f#3 a3 g3 f#3 d3 f#3 e3", H: "d3 e3 d3 a3 g3 b3 a3 g3", I: "f#3 d3 e3 c#4 d4 f#4 a4 a3",
  J: "b3@2 g3@2 a3@2 f#3@2 d3@2 d4@2 [d4,e4] d4@2 c#4", K: "d4 c#4 d4 d3 c#3 a3 e3 f#3 d3 d4 c#4 b3 c#4 f#4 a4 b4",
  L: "g4 f#4 e4 g4 f#4 e4 d4 c#4 b3 a3 g3 f#3 e3 g3 f#3 e3", M: "d3 e3 f#3 g3 a3 e3 a3 g3 f#3 b3 a3 g3 a3 g3 f#3 e3",
  N: "d3 e3 b3 c#4 d4 c#4 b3 a3 g3 f#3 e3 b3 a3 b3 a3 g3", O: "f#3 f#4 e4@2 ~ d4 f#4@2", P: "b4 a4 b4 c#5",
  Q: "d5 d4 c#4@2 ~ b3 d4@2", R: "d4@3 d4!2 g4 e4 a4", S: "d4 ~ c#4 ~ b3 ~ d4 ~", T: "d3 ~ d3 ~ d3 ~ e3 ~",
  U: "~ a3 ~ a3 ~ f#3 ~ a3", V: "~ g3 ~ f#3 ~ g3 ~ e3", W: "f#3@3 f#4!2 g4 f#4 e4 d4@3 d4!2 e4 d4 c#4",
  X: "b3@4 d4@4 d4 c4 b3 c4 a3@3 a3", Y: "a3@3 a4!2 b4 a4 g4 f#4@3 f#4!2 g4 f#4 e4",
  Z: "d4 c4 b3 c4 a3@3 a3 g3@2 d4@2 c#4@3 c#4", AA: "b3@4 d4@4 d4 c4 b3 c4 a3@4", AB: "g3 f#3",
})).s("gm_viola").gain(0.3)

stack(viola)

More by Johann Pachelbel