Strudelify

Ghoersch ds Echo vom Zauberberg

Urs Holdener

KeyF majorTempo120 bpm
0:00/0:00
// Ghoersch ds Echo vom Zauberberg — Urs Holdener
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (3/4 at bar 1, 4/4 at bar 13, 3/4 at bar 46) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5456925; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 54 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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 · french horn · "Horn"
const french_horn = note(`<
  A@2 B C@2 D A@2 B E@3 F G F H F I J K F G F H F I J K L ~ M N O@2 P@3 ~ M N O@2 Q@2 L A@2 B E@6
>`.pickRestart({
  A: "[f3@4 f3@2 a3@3 f3 a3@2 c4@4]/2", B: "f4 a4@3", C: "[c4@2 c4 c4@2 c4 a3@2]/2", D: "c4 f4@3",
  E: "[c4@2 c4 c4@2 c4 a3@6]/3", F: "~ c4", G: "~ f4@3", H: "~ c4@3", I: "~ c4@2 c4", J: "~@2 c4 f4", K: "a4", L: "a3",
  M: "a3 c4 f3 a3", N: "c4 a3@2 f3", O: "[c4 f4 a3 c4@5]/2", P: "[c4@2 c4@5 a3@5]/3", Q: "[c4@2 c4@5 a3]/2",
})).s("gm_french_horn").gain(0.15)

// other · french horn · "Horn"
const french_horn_2 = note(`<
  A@2 B C@2 D A@2 B C@2 E F G H I H I J K F G H I H I J K L ~ M@4 N@2 O ~ M@4 N@2 O A@2 B C@2 D C@2 E
>`.pickRestart({
  A: "[f3@2 c3 f2@2 c3 f3 a3]/2", B: "c4 f4@3", C: "[~@3 c3@3 f3@2]/2", D: "c3 f3@3", E: "c3 f2@3", F: "~ f3@2 a3",
  G: "~@2 c4 a3", H: "~ c3@2 c3", I: "~ c3", J: "~ a3@2 c4", K: "f4", L: "f3 c3 f2@2", M: "[f2@3 ~]/2",
  N: "[~ c3@2 c3@3 ~@2]/2", O: "f3 c3 f3 f2",
})).s("gm_french_horn").gain(0.25)

stack(french_horn, french_horn_2)