Strudelify

Lob der Tränen D.711

F. Schubert

KeyD majorTempo62 bpm
0:00/0:00
// Lob der Tränen D.711 — F. Schubert
// 62 bpm, 3/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (1/2 at bar 1, 1/4 at bar 1, 3/4 at bar 2, 1/2 at bar 23, ...) are rendered on a constant 3/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/6372708; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 94 bars on a 48-step grid, each part at one level. Source detail keeps the original performance.
setcpm(62/3)

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

// chords · piano
const piano = note(`<
  A B C D E F G H I F G H I J K J L M N O P Q R B C D E F G H I F G H I J K J L M N O P Q S B T D E F G H I F G H I J K
  J L M N O U Q V B T D E F G H I F G H I J K J L M N O U Q W@2 T X Y@2
>`.pickRestart({
  A: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d5@4, d3@43 d4@5, ~@8 [f#4,f#5]@3 ~", // F#
  B: "g3@5 a#3@5 ~ d4@5 g3@5 [a#3,g5]@5 ~ [d4,d5]@5 [g3,c#5,c#6]@5 [a3,a5]@5 ~ [c#4,e5]@5, d3@23 ~, [a#4,a#5]@5 ~@7", // D# D Gdim A C#m A#
  C: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d6@4, d3@23 ~, [d5,d6]@30 ~@2 [f#5,f#6]@11 d4@5", // D F#
  D: "g3@5 a#3@5 ~ d4@5 g3@5 [a#3,g6]@5 ~ [d4,d6]@5 [g3,c#6,c#7]@5 [a3,a6]@5 ~ [c#4,e6,e7]@5, d3@23 ~, [a#5,a#6]@5 ~@7", // D# D Gdim A C#m A#
  E: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5, d3@23 ~, [d6,d7]@5 ~@3", // D
  F: "g3@5 b3@5 ~ d4@5 g3@5 b3@5 ~ d4@5 a3@5 b3@5 ~ d#4@5, [g1,g2]@30 ~@2 [b1,b2]@15 ~", // G B
  G: "g3@5 b3@5 ~ e4@5 g3@5 b3@5 ~ e4@5 g3@5 a3@5 ~ e4@5, [e2,e3]@30 ~@2 [c#2,c#3]@15 ~", // E C#
  H: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 g3@5 a3@5 ~ c#4@5, [d2,d3]@15 ~ [f#1,f#2]@15 ~ [a1,a2]@15 ~", // D F# A
  I: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5, [d2,d3]@5 ~@3", // D
  J: "~@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [e3,a3,c#4]@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [e3,g#3,d4]@5 [e3,g#3,d4]@5 ~ [e3,g#3,d4]@5, [a1,a2]@5 ~@3", // A E7 A
  K: "~@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [e3,a3,c#4]@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [f#3,a3,d4]@5 [f#3,a3,d4]@5 ~ [f#3,a3,d4]@5, [a1,a2]@5 ~@3", // A D A
  L: "~@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [e3,a3,c#4]@5 [e3,a3,c#4]@5 ~ [e3,a3,c#4]@5 [f#3,a3,c#4]@5 [f3,a3,d4]@5 ~ [f#3,a3,d#4]@5, [a1,a2]@5 ~@3", // A F#m Dm D#dim A
  M: "[c#4,e4]@6 d4@2 [a1,a2,e4]@3 d4, [a1,a2,g3,a3]@5 ~@3", N: "d4@11 ~ c#4@4 c#4@15 ~@17, [a1,a2,g3,a3]@5 ~@3",
  O: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c#4@5 ~ f4@5, [f#1,f#2]@30 ~@2 [a1,a2]@15 ~", // F# A
  P: "f#3@5 c#4@5 ~ f#4@5 f#3@5 d4@5 ~ f#4@5 g3@5 b3@5 ~ d4@5, [a#1,a#2]@15 ~ [b1,b2]@15 ~ [g1,g2]@15 ~", // A# B G
  Q: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 g3@5 a3@5 ~ c#4@5, [a1,a2]@30 ~@2 [a1,a2]@15 ~", // A
  R: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d5@4, d3@43 d4@5, d2@15 ~ [f#4,f#5]@6 ~@2", // F#
  S: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d5@4, d3@23 ~, d2@30 ~@2 [f#4,f#5]@11 d4@5", // F#
  T: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d6@4, d3@43 d4@5, [d5,d6]@15 ~ [f#5,f#6]@6 ~@2", // D F#
  U: "f#3@5 c#4@5 ~ f#4@5 f#3@5 d4@5 ~ f#4@5 g3@5 b3@5 ~ d4@5, [a#1,a#2]@16 [b1,b2]@15 ~ [g1,g2]@15 ~", // A# B G
  V: "f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d5@4, d3, d2@30 ~@2 [f#4,f#5]@11 d4@5", // F#
  W: "[f#3@5 a3@5 ~ d4@5 f#3@5 a3@5 ~ d4@5 a3@5 c4@5 ~@2 d5@4 g3@5 a#3@5 ~ d4@5 g3@5 [a#3,g5]@5 ~ [d4,d5]@5 [g3,c#5,c#6]@5 [a3,a5]@5 ~ [c#4,e5]@5, d3@91 ~@5, d2@30 ~@2 [f#4,f#5]@11 d4@5 [a#4,a#5]@21 ~@27]/2", // D# D Gdim A C#m F# A#
  X: "g3@5 a#3@5 ~ d4@5 g3@5 [a#3,g6]@5 ~ [d4,d6]@5 [g3,c#6,c#7]@5 [a3,a6]@5 ~ [c#4,e6,e7]@5, d3@23 ~, [a#5,a#6]@7 ~@9", // D# D Gdim A C#m A#
  Y: "[[d3,f#3,a3,d4,d6,d7]@61 ~@35]/2", // D
})).s("gm_piano").gain(0.2)

stack(piano)

More by F. Schubert