Strudelify

Pilgerchoral - The Pilgrim's chorus (from Tannhäuser)

Richard Wagner

KeyE majorTempo70 bpm
0:00/0:00
// Pilgerchoral - The Pilgrim's chorus (from Tannhäuser) — RICHARD WAGNER
// 70 bpm, 3/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/195181; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 64 bars on a 32-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 · "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 · flute
const flute = note(`<
  A B C D E F G H I J K J L M N O P Q R S T U V W P Q R S T U V X Y Z AA AB AC@2 B C D E F G H I J K J L M N O AD AE AF
  AG F AH AI N AJ AK AL
>`.pickRestart({
  A: "~@21 b4@11", B: "e5@21 b4@11", C: "g#4@21 g#4@4 a4@3 b4@4", D: "b4@11 c#5@10 b4@11", E: "b4@11 a4@10 c#5@11",
  F: "f#5@21 e5@11", G: "d#5@21 b4@4 c#5@3 d#5@4", H: "e5@11 c#5@10 b4@8 g#4@3", I: "g#4@11 f#4@10 b4@8 c#5@3",
  J: "c#5@11 b4@10 c#5@11", K: "c#5@21 b4@8 c#5@3", L: "c#5@21 c#5@11", M: "b4@21 b4@4 c#5@3 d#5@4",
  N: "e5@11 d#5@10 c#5@11", O: "b4@11 c#5@15 ~ b4@5, ~@11 d#5 ~@20", P: "b4@21 b3@8 b4@3", Q: "b4@21 a#4@8 a4@3",
  R: "a4@21 d4@8 d5@3", S: "d5@21 c#5@8 c5@3", T: "c5@21 f4@8 f5@3", U: "f5@21 e5@8 d#5@3", V: "d#5@21 e5@11",
  W: "d5@11 c5@10 g4@5 ~ a4@5", X: "d#5@11 c#5@10 b4@5 ~ a4@5", Y: "g#4@11 f#4@5 ~@5 b4@11", Z: "b4@21 b4@8 c#5@3",
  AA: "d#5@21 d#5@11", AB: "d#5@21 d#5@8 e5@3", AC: "[f#5@53 b4@11]/2", AD: "b4@21 ~@8 e5@3", AE: "e5@21 e5@5 ~ d#5@5",
  AF: "d#5@21 ~@8 g#5@3", AG: "g#5@27 f#5@5", AH: "d#5@21 c#5@11", AI: "b4@21 b4@11", AJ: "b4@11 a4@10 g#4@11",
  AK: "f#4@21 f#4@11", AL: "g#4",
})).s("gm_flute").gain(0.3)

// 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 Q R S T U V Y P Z AA AB AC AD A B C D E F G H I J K L M N O AE AF AG
  AH AI L M AJ@2 AK AL
>`.pickRestart({
  A: "g#4@21 e4@11", B: "e4@21 e4@7 e4@4", C: "e4@11 e4@10 e4@11", D: "c#4@21 f#4@11", E: "c#4@21 c#4@11",
  F: "f#4@21 d#4@4 e4@3 f#4@4", G: "e4@21 e4@8 e4@3", H: "d#4@21 b4@8 d#4@3", I: "d#4@21 e4@11", J: "f#4@21 b4@8 d#4@3",
  K: "d#4@21 c#4@11", L: "g4@21 g4@11", M: "g#4@11 a4@10 f#4@11", N: "e4@11 f#4@10 e4@11", O: "d#4@11 e4@16 d#4@5",
  P: "d#4@21 f#4@11", Q: "g4@11 f#4@10 f#4@11", R: "f#4@11 a4@10 c5@11", S: "a#4@11 a4@10 a4@11",
  T: "a4@11 c5@10 d#5@11", U: "c#5@11 c5@10 c5@11", V: "b4@11 a4@10 g#4@11", W: "e4@21 e4@11", X: "d#4@11 f#4@10 a4@11",
  Y: "e4@21 c#4@11", Z: "g#4@4 g#4@3 g#4@4 g#4@3 g#4@4 g#4@3 g#4@4 g#4@3 g#4@4",
  AA: "f#4@4 f#4@3 f#4@4 f#4@3 f#4@4 f#4@3 f#4@4 f#4@3 f#4@4", AB: "b4@4 b4@3 b4@4 b4@3 b4@4 b4@3 b4@4 b4@3 b4@4",
  AC: "a#4@4 a#4@3 a#4@4 a#4@3 a#4@4 a#4@3 a#4@4 a#4@3 a#4@4", AD: "a4@4 a4@3 a4@4 a4@3 a4@4 a4@3 b4@11",
  AE: "d#4@21 ~@8 g#4@3", AF: "g#4@27 g#4@5", AG: "g#4@21 ~@8 b4@3", AH: "b4@27 b4@5", AI: "b4@21 g#4@11",
  AJ: "[e4@43 c#4@21]/2", AK: "e4@11 d#4@5 c#4@5 d#4@11", AL: "b3",
})).s("gm_viola").gain(0.3)

// bass · contrabass
const bass = note(`<
  ~ A B C D@2 E F G H I J K L M N O P Q R S T U V W P Q R S T U X O Y Z AA AB AC A B C D@2 E F G H I J K L M N AD AE AF
  AG AH AI L AJ AK AL AM
>`.pickRestart({
  A: "e3@21 g#2@11", B: "c#3@21 b2@4 c#3@3 g#2@4", C: "g#2@11 a2@10 g#2@11", D: "f#2@21 f#2@11", E: "a2@21 a2@7 a2@4",
  F: "g#2@11 e2@10 g#2@8 b2@3", G: "b2@21 b2@8 a2@3", H: "a2@21 g#2@11", I: "f#2@21 g#2@8 f#2@3", J: "f#2@21 e2@11",
  K: "d#2@21 d#3@11", L: "e3@11 f#3@10 d#3@11", M: "c#3@11 d#3@10 e3@11", N: "f#3@11 f#2@10 f#2@11", O: "b2@21 d#3@11",
  P: "e3@11 d3@10 c#3@11", Q: "d3@11 f#3@10 a3@11", R: "g3@11 f3@10 e3@11", S: "f3@11 a3@10 c4@11",
  T: "a#3@11 g#3@10 g3@11", U: "f#3@11 f3@10 e3@11", V: "a2@21 c3@11", W: "b2@11 d#3@10 f#3@11", X: "a2@21 a2@11",
  Y: "e3@4 e3@3 e3@4 e3@3 e3@4 e3@3 e3@4 e3@3 e3@4", Z: "b2@4 b2@3 b2@4 b2@3 b2@4 b2@3 b2@4 b2@3 b2@4",
  AA: "g#3@4 g#3@3 g#3@4 g#3@3 g#3@4 g#3@3 g#3@4 g#3@3 g#3@4",
  AB: "f#3@4 f#3@3 f#3@4 f#3@3 f#3@4 f#3@3 f#3@4 f#3@3 f#3@4", AC: "b2@4 b2@3 b2@4 b2@3 b2@4 b2@3 b2@11",
  AD: "b2@21 ~@8 c#3@3", AE: "c#3@27 g#3@5", AF: "g#3@21 ~@8 e3@3", AG: "e3@27 b2@5", AH: "b2@21 c#3@11",
  AI: "d#3@21 d#3@11", AJ: "c#3@11 b2@10 a2@11", AK: "g#2@11 a2@10 a#2@11", AL: "b2@21 b2@11", AM: "e2",
})).s("gm_contrabass").gain(0.3)

stack(flute, viola, bass)

More by Richard Wagner