Strudelify

Der Lindenbaum

Franz Schubert

KeyE majorTempo112 bpm
0:00/0:00
// Der Lindenbaum — Franz Schubert
// 112 bpm, 3/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/1019686; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 82 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(112/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@2 B@2 C D E ~@12 F G H I J K@2 L@2 M@2 N O M@2 N P Q R S T Q R U V W X W Y Z@2 AA@2 AB AC AD AE E ~ AF@2 AG AF@2 AH
  AG AH AI AJ AK AL AI AJ AM AN U AO A@2 AP AQ AR AS
>`.pickRestart({
  A: "[g#3 e4 ~ g#3 f#3 d#4 ~ f#3 g#3 e4 ~ g#3 b3 g#4 ~ b3 a3 f#4 ~ a3 g#3 e4 ~ g#3 [b1,f#3,b3]@6 c#5@2 b4@16, b2@7 ~@5, e2 ~]/2", // B5
  B: "[g#4 e5 ~ g#4 f#4 d#5 ~ f#4 g#4 e5 ~ g#4 b4 g#5 ~ b4 a4 f#5 ~ a4 g#4 e5 ~ g#4 f#4 d#5 ~ f#4 e4 c#5 ~ e4 d#4 b4 ~ d#4 c#4 a4 ~ c#4 b3 g#4 ~ b3 a3 f#4 ~ a3, b3@7 ~@5, e3@12 b2@2 ~ c#3 b2@6 c3@2]/2",
  C: "g#3 e4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3 d4 f4 ~ d4, c#3 c3 c#3 c3 c#3 b2",
  D: "c#4 f#4 ~ c#4 [f4,g#4] c#4 ~ [f4,g#4] [f#2,f#4,a4]@4 [e2,c#4,f#4,a4]@4 [d#2,d#4,f#4,a4]@4 [c#2,e4,f#4,a4]@4, a2 g#2 ~@4", // Fm F#m F#m7 D#dim F#m7
  E: "[f#4,a4]@6 [e4,g#4] [b3,f#4] [b3,f#4]@16, b1", F: "~@4 [b3,b4]@3 [e3,g#3,e4,g#4] [b2,f#3,d#4,b4]@4",
  G: "[a#2,f#3,c#4,e4,f#4]@3 [a#2,f#3,c#4,e4,f#4] [a2,b2,f#3,b3,d#4,f#4]!2", // F#7 B7
  H: "[g#2,b2,e3,b3,e4,g#4]@3 [f#2,f#4,a4] [e2,b2,e3,b3,g#4,b4]@6 [g#3,b3,g#4,b4]@2", // E F#m E G#m
  I: "[b3,b4]@2 [g#3,e4,g#4,e5]@2 [g#3,b3,g#4,b4]@2 [e3,g#3,e4,g#4]@2 [f#3,a3,f#4,a4]@3 [b2,f#3,b3,f#4]", // B C#m G#m E F#m B5
  J: "[e2,g#2,e3,g#3,e4]@6 [g#3,g#4] [c#4,c#5] [b3,b4]@6 [b2,a3,f#4,d#5]@2 [e3,g#3,e4,e5]@8", // E G# C# B B7 E
  K: "[g3 e4 ~ g3 f#3 d#4 ~ f#3 g3 e4 ~ g3 b3 g4 ~ b3 a3 f#4 ~ a3 g3 e4 ~ g3 [b1,f#3,b3]@6 c5@2 b4@16, b2@7 ~@5, e2 ~]/2", // B5
  L: "[g4 e5 ~ g4 f#4 d#5 ~ f#4 g4 e5 ~ g4 b4 g5 ~ b4 a4 f#5 ~ a4 g4 e5 ~ g4 [b2,f#4,d#5]@6 c2@2 b1@16, b3@5 ~@3, e3 ~]/2", // B
  M: "[e2,b2,g3,b3]@3 [e3,e4]@2 [f#3,f#4]@3 [g3,g4]@6 [b2,b3]@2 [g3,g4]@4 ~@4", // Em E F# G B G
  N: "[b2,b3]@3 [e3,e4]@2 [f#3,f#4]@3 [c3,c4]@3 [e3,e4]@2 [f#3,f#4]@3 [b2,b3]@3 [d#3,d#4]@2 [f#3,f#4]@3", // B E F# C E F# B D# …
  O: "[e2,b2,g3,b3]@3 [e3,e4]@2 [g3,g4]@3 [b3,b4]@6 [g3,g4]@2 [e3,e4]@4 ~@4", // Em E G B G E
  P: "[e2,b2,e3,g3,b3,e4]@3 [g3,g4]@2 [b3,b4]@3 [e4,e5]@6 [b3,b4]@2 [e4,e5]@4 ~@4", // Em G B E B E
  Q: "[b2,b3]@3 [f#3,d#4,f#4]@2 [e3,g#3,e4,g#4]@3 [f#3,a3,f#4,a4]@8 [b2,f#3,b3,f#4]@4 ~@4", // B D#m E F#m B5
  R: "[b2,b3]@3 [e3,g#3,e4,g#4]@2 [f#3,a3,f#4,a4]@3 [g#3,b3,g#4,b4]@8 [e3,g#3,e4,g#4]@4 ~@4", // B E F#m G#m E
  S: "[b2,b3]@3 [e3,e4]@2 [g#3,g#4]@3 [a3,c#4,a4,c#5]@4 [g#3,b3,f#4,b4]@4 [e3,g#3,e4,g#4]@4 [g#2,e3,b3,e4]@4", // B E G# A G#m7 E
  T: "[b2,f#3,b3,d#4,f#4]@6 [b3,b4] [c#4,c#5] [b3,b4]@6 [e3,g#3,e4,g#4]@2 [b2,f#3,d#4,b4]@4 ~@4", // B C# B E B
  U: "[e3,g#3,e4,g#4]@3 [g#3,b3,g#4,b4]@2 [b3,e4,b4,e5]@3 [g#3,b3,g#4,b4]@4 [e3,g#3,e4,g#4]@4 [f#3,a3,f#4,a4]@6 [b2,f#3,b3,f#4]@2", // E G#m E5 G#m E F#m B5
  V: "[e2,g#2,e3,g#3,e4]@6 [g#3,g#4] [c#4,c#5] [b3,b4]@6 [b2,a3,f#4,d#5]@2 [e3,g#3,e4,e5]@4 ~@4", // E G# C# B B7 E
  W: "g3 e4 ~ g3 f#3 d#4 ~ f#3 g3 e4 ~ g3 a#3 g4 ~ a#3 b3 f#4 ~ b3 c4 e4 ~ c4, c2",
  X: "b3 b4 ~ b3 ~ c5 ~ c4 ~ b4 ~ b3 ~ a4 ~ a3 ~ f#4 ~ f#3 ~ d#4 ~ d#3, b1 c3 b2 f#2 d#2 b1",
  Y: "b3 b4 ~ b3 ~ c5 ~ c4 ~ b4 ~ b3 ~ f#4 ~ f#3 ~ d#4 ~ d#3 ~ b3 ~ b2, b1 c3 b2 f#2 d#2 b1",
  Z: "[g3 e4 ~ g3 f#3 d#4 ~ f#3 g3 e4 ~ g3 f#3 d#4 ~ f#3 g3 e4 ~ g3 f#3 d#4 ~ f#3 g3 e4 ~ g3 g#3 f4 ~ g#3 g3 e4 ~ g3 g#3 f4 ~ g#3 g3 e4 ~ g3 g#3 f4 ~ g#3, c2@7 c2!5]/2",
  AA: "[g3 e4 ~ g3 g#3 f4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3 a3 f#4 ~ a3 a#3 g4 ~ a#3 a3 f#4 ~ a3 a#3 g4 ~ a#3 a3 f#4 ~ a3 a#3 g4 ~ a#3, c2@7 c2!5]/2",
  AB: "b3 g#4 ~ b3 c4 a4 ~ c4 c#4 a#4 ~ c#4 d4 b4 ~ d4 d#4 b4 ~ d#4 e4 c5 ~ e4, b1@2 b1",
  AC: "d#4 b4 ~ d#4 e4 c5 ~ e4 d#4 b4 ~ d#4 c#4 a#4 ~ c#4 c4 a4 ~ c4 b3 g#4 ~ b3, b1@2 b1",
  AD: "c4 a4 ~ c4 b3 g#4 ~ b3 a3 f#4 ~ a3 g#3 f4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3, b1@2 b1",
  AE: "a3 f#4 ~ a3 a#3 f#4 ~ a#3 b3 f#4 ~ b3 c4 f#4 ~ c4 b3 f#4 ~ b3 [e4,g#4] b3 ~ [e4,g#4], b1@3 b1!3", // E
  AF: "[e3,g#3,g#4]@3 [b3,b4]@2 [e4,e5]@3 [b3,b4]@6 [g#3,g#4]@2 [e3,b3,b4]@4 b2@4", // E B E B G# E5
  AG: "[b2,a3,a4]@3 [b3,b4]@2 [d#4,d#5]@3 [b3,b4]@6 [a3,a4]@2 [b2,b3,b4]@4 b2@4", // B7 B D# B A B
  AH: "[e3,g#3,g#4]@3 [b3,b4]@2 [e4,e5]@3 [b3,b4]@6 [g#3,g#4]@2 [e3,b3,b4]@4 g#2@4", // E B E B G# E5
  AI: "[b3,b4]@3 [d#4,d#5]@2 [f#4,f#5]@3 [d#4,d#5]@6 [b3,b4]@2 [d#4,d#5]@4 b2@4, [a2,b2,d#3,f#3]@2 ~", // B D# F# D# B D# B7
  AJ: "[b3,b4]@3 [e4,e5]@2 [g#4,g#5]@3 [e4,e5]@6 [b3,b4]@2 [e4,e5]@4 g#2@4, [g#2,b2,e3,g#3]@2 ~", // B E G# E B E
  AK: "[b2,b3]@3 [e3,e4]@2 [g#3,g#4]@3 [a3,c#4,a4,c#5]@4 [g#3,b3,g#4,b4]@4 [e3,g#3,e4,g#4]@4 [g#2,e3,b3,e4]@4", // B E G# A G#m E
  AL: "[b2,f#3,b3,d#4,f#4]@6 [b3,b4] [c#4,c#5] [b3,b4]@6 [e3,g#3,e4,g#4]@2 [b2,f#3]@8, ~@4 [d#4,b4] ~", // B C# B E B5 G#m
  AM: "[b2,e3,g#3,e4,g#4]@3 [g#3,b3,g#4,b4]@2 [b3,e4,b4,e5]@3 [g#3,b3,g#4,b4]@4 [e3,g#3,e4,g#4]@4 [f#3,a3,f#4,a4]@4 [a2,b2,d#3,f#3,b3,d#4,f#4]@4", // E G#m E5 G#m E F#m B7
  AN: "[g#2,b2,e3,g#3]@8 [g#2,b2,e3,g#3]@3 [b3,b4]@2 [e4,e5]@3 [g#4,g#5]@3 [e4,e5]@2 [b3,b4]@3, [b3,e4,g#4,b4]@11 ~@13", // E B E G# E B E
  AO: "[e2,g#2,e3,e4]@6 [g#3,g#4] [c#4,c#5] [b3,b4]@6 [b2,a3,f#4,d#5]@2 [e3,g#3,e4,e5]@4 ~@4", // E G# C# B B7 E
  AP: "g#4 e5 ~ g#4 f#4 d#5 ~ f#4 g#4 e5 ~ g#4 b4 g#5 ~ b4 a4 f#5 ~ a4 g#4 e5 ~ g#4, [e3,b3]", // E5
  AQ: "f#4 d#5 ~ f#4 e4 c#5 ~ e4 d#4 b4 ~ d#4 c#4 a4 ~ c#4 b3 g#4 ~ b3 a3 f#4 ~ a3, [b2,b3]@3 c#3 b2@6 c3@2", // B
  AR: "g#3 e4 ~ g#3 a3 f#4 ~ a3 g#3 e4 ~ g#3 [d#4,f#4] b3 ~ [d#4,f#4] [e4,g#4] b3 ~ [e4,g#4] [d#4,f#4] a3 ~ [d#4,f#4], c#3 c3 c#3 b2 g#2 b2", // D#m E D#m
  AS: "[b2,a3,d#4,f#4] [e3,g#3,b3,e4]@2", // B7 E
})).s("gm_piano").gain(0.15)

// chords · piano · soft notes
const piano_soft = note("<~@7 A B C D E F C D G H I J K ~@37 L ~@24>".pickRestart({
  A: "[f#4,a4]@6 [e4,g#4] [b3,f#4] [b3,f#4]@12 [e2,e3,b3,g#4,b4]@4, b1@5 ~", // F#m E B5 E
  B: "[e2,e3,b3,g#4,b4]@3 [e2,b3,e4,g#4] [g#2,b3,e4,g#4] [b2,b3,e4,g#4]", // E
  C: "[b3,e4,g#4]@2 [g#3,b3,e4]@2 ~ [g#2,b3,e4], e3@2 ~", D: "[b2,b3,e4,f#4]@2 [b2,b3,d#4,f#4]",
  E: "[e2,g#3,b3,e4] [g#3,b3,g#4,b4] [e3,g#3,e4,g#4] [g#3,b3,g#4,b4] [f#3,a3,f#4,a4] [b2,f#3,b3,f#4]", // E G#m E G#m F#m B5
  F: "[e2,g#2,e3,g#3,e4] [e3,g#3,g#4,b4]@2 [e2,b3,e4,g#4] [g#2,b3,e4,g#4] [b2,b3,e4,g#4]", // E
  G: "[e2,g#3,b3,e4] [g#3,b3,g#4,b4] [e3,g#3,e4,g#4] [g#3,b3,g#4,b4] [f#3,a3,f#4,a4] [e3,g#3,e4,g#4]", // E G#m E G#m F#m E
  H: "[a#2,f#3,c#4,e4,f#4]@3 [a#2,f#3,c#4,e4,f#4] [a2,b2,f#3,b3,d#4,f#4]!2", // F#7 B7
  I: "[g#2,b2,e3,b3,e4,g#4]@3 [f#2,f#4,a4] [e2,b2,e3,b3,g#4,b4]@6 [g#3,b3,g#4,b4]@2", // E F#m E G#m
  J: "[a3,c#4,a4,c#5]@3 [g#3,b3,g#4,b4] [e3,g#3,e4,g#4] [g#2,e3,b3,e4]", // A G#m E
  K: "[b2,f#3,b3,d#4,f#4]@6 [b3,b4] [c#4,c#5] ~@16", L: "[f#4,a4]@6 [e4,g#4] [b3,f#4] [b3,f#4]@12 ~@4, b1@5 ~",
})).s("gm_piano").gain(0.05)

stack(piano, piano_soft)

More by Franz Schubert