Strudelify

Dies ist die Nacht da mir erschienen

Johann G. Schicht

KeyC majorTempo100 bpm
0:00/0:00
// Dies ist die Nacht da mir erschienen — Johann G. Schicht
// 100 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 3/4 at bar 5, 1/4 at bar 6, 4/4 at bar 6, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5806773; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 15 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(100/4)

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

// chords · piano · "Bright Piano"
const piano = note("<A B C D E F B C D E G H I J K>".pickRestart({
  A: "~@3 [c4,g4]", B: "[d4,g4] [c4,e4] [e4,c5] [e4,b4]", C: "[c4,a4]@2 [c4,g4]@2 [d4,g4]@2 ~ b3, ~@3 [a3,f4]",
  D: "[c4,e4]@2 ~ d4 [d4,d5]@2 [e4,c5]@2, ~ [e4,a4] ~@2", E: "[d4,b4]@2 c5 a4 ~ c4 [d4,f#4]@2, ~ c4 [b3,g4] ~",
  F: "[d4,g4]@3 [c4,g4]", G: "[d4,g4]@3 [c4,e4]", H: "[c4,f4] [d4,f4] [d4,g4] [c4,g4]",
  I: "[c4,c5] [c4,a#4] [c4,a4] [d4,d5]", J: "[d4,b4]@2 [b3,g4]@2 [c4,c5]@2 a4 f4, ~@3 c4",
  K: "[c4,e4] [b3,d4] [g3,c4] ~", // C Bm C5
})).s("gm_piano").gain(0.35)

// chords · piano · "Bright Piano"
const piano_2 = note("<A B C D E F B C D E G H I J K>".pickRestart({
  A: "~@3 [c3,e3]", B: "[b2,g3] [c3,g3] [a2,a3] [e3,g3]", C: "f3 [c3,e3] [b2,d3] [d3,f3]",
  D: "[c3,g3]@2 e3 f#3 [b2,g3]@2 [c3,g3]@2, ~ c3 ~@2", E: "[g2,g3] [a2,e3] [e3,g3] [d3,a3]", F: "[g2,b3]@3 [c3,e3]",
  G: "[g2,b3]@3 [c3,g3]", H: "[a2,a3] [d3,a3] [b2,g3] [c3,e3]",
  I: "~@3 e3 [f2,f3]@2 [f3,a3]@2, [a2,e3] g2 ~@2, ~ f3@3 ~@4", J: "g3@2 ~ f3 [e3,g3]@2 [f3,a3]@2, ~ g3 ~@2",
  K: "g3@2 g3 f3 [c3,e3]@2 ~@2, ~ g2 ~@2", // C
})).s("gm_piano").gain(0.3)

stack(piano, piano_2)