Strudelify

Salut d'amour Op.12

Edward Elgar

KeyD majorTempo96 bpm
0:00/0:00
// Salut d'amour Op.12 — Edward Elgar
// 96 bpm, 2/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Transcription provider: pdmx. https://musescore.com/score/5871639; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 113 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(96/2)

// 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 · acoustic guitar nylon · "Gitarre"
const acoustic_guitar_nylon = note(`<
  A@3 B C D E F G H@4 I@5 J@8 K@2 L@2 M@4 N@4 O@8 P Q R S@6 T U V@2 W X Y@7 Z@2 AA@6 AB AC AD AE@7 AF@5 AG@4 AH@7 AI@2
  AJ AK AL@7
>`.pickRestart({
  A: "~ [a3,d4,f#4]@2 [a3,d4,f#4], d2", B: "~ [a3,d4,a4]@2 [a3,d4,a4], f#2", C: "~ [g3,d4,g4]@2 [g3,d4,g4], e2",
  D: "~ [a3,c#4,g4]@2 [a3,c#4,g4], a2", E: "~@3 [e4,f#4], d3 c#3, ~ [d4,f#4]@2 ~", F: "~ [d4,f#4]@2 [a3,d4,f#4], b2",
  G: "~ [a3,d4,e4]@2 [g#3,d4,e4], e2", // Asus4 E7
  H: "[~@5 [a3,c#4,e4]@9 [a3,c#4,g4]@5 ~@4 [a3,d4,f#4]@8 [a3,d4,f#4]@4 ~@4 [a3,d4,a4]@8 [a3,d4,a4]@4 ~@9 f#2@4, a2@14 ~@5 d2@16 f#2@16 g2@9 ~@4, ~@7 [b3,d4,g4]]/4", // A A7 D D5 G
  I: "[[b3,d#4,a4]@4 ~@8 g4@5 f#4@4 [b3,e4]@5 [d4,f#4]@4 [f#3,a3]@4 ~ [g3,b3]@4 [b3,d4]@4 a2@4 e3@4 ~ [a2,a3,f#4]@4 [e4,g4]@4 ~ d2@5 ~@9 d3@5, ~@5 e2@22 ~@39 d3@9 ~@5, ~@12 b3@9 ~@5 a2@17 [b3,g4]@9 ~@9 [d4,f#4]@9 [b3,d4,g4]@10]/5", // B7 E5 D F#m G Bm D Em …
  J: "[~@5 d3@5 ~ c#3@5 a2@5 ~@5 [a3,d4,f#4]@9 [a3,d4,f#4]@4 ~@5 [a3,d4,a4]@9 [a3,d4,a4]@4 ~@5 [g3,d4,g4]@8 [g3,d4,g4]@4 ~@5 [a3,c#4,g4]@9 [a3,c#4,g4]@4 ~@14 [e4,f#4]@4 ~@5 [d4,f#4]@9 [a3,d4,f#4]@4, [b3,f4,g#4]@11 [a3,e4,a4]@10 d2@18 f#2@18 e2@18 a2@18 d3@9 c#3@9 b2@17, ~@97 [d4,f#4]@9 ~@22]/8", // D D5 G5 A7 Esus2 D Fdim A5 …
  K: "[~@5 [a3,d4,e4]@9 [g#3,d4,e4]@4 ~@5 [a3,c#4,e4]@9, e2@9 a2@7]/2", // Asus4 E7 A
  L: "[~ [a3,c#4,g4]@5 ~@4 [a3,d4,f#4]@8 [a3,d4,f#4]@4 ~@4 [a3,d4,a4]@6, ~@3 d2@8 f#2@5]/2", // A7 D D5
  M: "[~@2 [a3,d4,a4]@4 ~@13 [b3,d#4,a4]@4 ~@7 g4@5 f#4@5 [b3,e4]@5 [d4,f#4]@4 [f#3,a3]@4 [g3,b3]@4 [b3,d4]@4 [a2,b3,g4]@3, ~@6 g2@8 f#2@9 e2@22 a2@16 ~@3, ~@10 [b3,d4,g4]@9 ~@11 b3@10 ~@24]/4", // D5 B7 E5 D F#m G Bm Em …
  N: "[~@2 e3@4 [a2,a3,f#4]@4 ~ [e4,g4]@4 d3@5 ~@30 d3@5 ~ [a3,c4,f4]@4 [c4,f4]@4, ~@15 [d4,f#4]@10 [a3,d4,f#4]@9 [a#3,e4,g4]@11 [b3,f4,g#4]@11 ~@8, ~@10 d3@5 d3@5 d3@5 ~@3 c3@4]/4", // D Em F F5 D Edim Fdim
  O: "[~@4 [c4,f4]@4 [a#3,d4,f4]@4 [a#3,d4,f4]@8 [a#3,d4,f4]@4 [a#3,c4,e4]@4 [a#3,c4,e4]@8 [c4,e4]@4 [a3,c4,e4]@4 [a3,c4,e4]@8 [a3,c4,e4]@4 [a#3,d4,a4]@4 [a#3,d4,g4]@8 [a#3,d4,g4]@4 [a#3,c4,e4]@4 [a#3,c4,e4]@8 [a#3,c4,e4]@4 g4@5 ~@9 f4@5 [a#3,f4]@5 ~@11 [g3,d4]@5, ~@8 c3@16 c3@16 c3@16 c3@16 c3@16 [c3,a3,c4]@9 ~ [c3,g#3,b3]@9 c3@10 c3@11, ~@93 f4@9 ~@10 [a#3,e4]@11 ~@5]/8", // F5 A# C7 C Am A#maj7 Gm C7 …
  P: "[a3,c4]@4 [a3,c4,f4]@8 ~ [a3,c#4]@3, f2", Q: "~ [a3,d4]@4 [a3,d4]@8 [a3,d4]@3, ~ f2@15",
  R: "~ [a#3,d4,g4]@4 [a#3,d4,g4]@8 [a#3,d4,g4]@3, ~ e2@15", // Gm
  S: "[~ [a3,c#4,g4]@4 [a3,c#4,g4]@9 [a3,c#4,g4]@5 [d4,f4,a4]@5 ~ [d4,a4]@11 [d4,f4,a4]@5 [d4,f4,a#4]@6 ~ [d4,f4,a#4]@38 [c#4,g4,a4]@10, ~ a2@18 a2@22 a2@55]/6", // A7 Dm D5 Dm A# A7
  T: "~@5 [a3,d4,f#4]@8 [a3,d4,f#4]@3, ~ a2@15", U: "~@5 [g3,c#4,e4]@8 [g3,c#4,e4]@3, ~ a2@15",
  V: "[~@5 [f#3,b3,d4]@8 f#3@4 ~@4 [g3,a3,c#4]@8 [g3,a3,c#4]@3, ~ a2@16 a2@15, ~@13 [b3,d4]@8 ~@11]/2", // Bm A7 Bm
  W: "~@9 d#4@4 [g3,d4,e4]@3, ~ e2@15, ~@5 [g3,a#3]@8 ~@3", X: "~@5 [g3,c#4]@8 [g3,c#4]@3, ~ [a2,g4]@15",
  Y: "[~@10 d#4@4 [g3,b3,e4]@5 ~@11 c#5@5 [g3,c#4,b4]@5 ~@4 [a3,d4]@8 [a3,d4]@4 ~@4 [a3,d4]@8 [a3,d4]@4 ~@4 [d4,g4]@4 a#3@4 [d4,g4]@4 f#4@4 e4@4 d#4@4 [g3,e4]@4 ~@4 [d4,f#4]@4, ~ e2@18 a2@21 [d2,a4]@16 f#2@16 e2@16 a2@16 d3@8, ~ g4@9 ~@9 d5@11 ~@82, ~@5 [g3,b3]@9 ~@10 [a3,g4]@11 ~@57 g3@8 ~@12]/7", // Em C#m7b5 D5 G5 C D D5 G …
  Z: "[~ [e4,f#4] ~ [d4,f#4]@2 [a3,d4,f#4] ~ [g#3,d4], c#3 b2@2 e2, ~@6 e4 ~, ~@25 e5@7]/2", // Esus2 D G#dim
  AA: "[~@4 d4@4 c#4@5 [g3,b3]@5 a3@5 g3@4 ~@4 [a3,d4]@8 [a3,d4]@4 ~@4 [a3,d4,f#4]@8 [a#3,d4]@4 d4@4 ~ b3@4 [b3,d#4]@4 b4@4 ~ [b3,a4]@5 g4@5 e4@5 b3@4, e3@8 a2@19 d2@16 f#2@16 g2@9 f#2@9 e2@10 ~@9, ~@9 f#4@4 ~@19]/6", // G D5 D A# B B7
  AB: "~@5 [a#3,d4,g4]@4 [a#3,d4,g4]@4 [a#3,d4,g4]@3, ~ e2@15", // Gm
  AC: "~ [g3,d4,g4]@4 [g3,d4,g4]@4 [a2,a3,c#4]@4 [g2,a3,c#4]@3, ~ e2@8 ~@7", // G5 A A7
  AD: "~@5 [a3,d4]@3 [a3,d4]@4 [a3,d4]@4, ~ f#2@15", // D5
  AE: "[~@4 [a3,d4]@4 [a3,d4]@3 [a3,d4]@4 [a#3,d4,g4]@4 [a#3,d4,g4]@4 [a#3,d4,g4]@3 [a#3,d4,g4]@4 [g3,d4,g4]@4 [g3,d4,g4]@3 [a2,a3,c#4]@4 [g2,a3,c#4]@4 ~@5 [a3,d4]@4 [a3,d4,a4]@4 [a3,d4,f#4]@4 e4@5 d4@4 ~@4 [b3,d4]@4 ~@4 [d3,g3,b3]@4 ~@4 [d#3,a3,b3]@4 ~@3 [e3,g3,b3]@4 e4@3 [b3,g4]@4 b2@3, f#2@15 e2@15 e2@7 ~@9 f#2@16 [b2,f#3,b3]@9 f#2@8 g2@8 f#2@7 ~ e2@14 ~@3]/7", // D5 Gm G5 A A7 D5 D Bm …
  AF: "[[f#3,d4,f#4]@4 ~@3 [f#3,b3,f#4]@4 [g#2,f3,b3,d4]@17 [g2,a3,e4]@8 [f#2,a3,d4]@9 ~ [e2,g3,c#4]@10 [d#2,f#3,a3,c4]@24, ~@4 a2@7 ~@69]/5", // D B5 G#dim A7 D C#dim D#dim
  AG: "[[e2,e3,g3,b3]@19 [g3,b3,f#4]@11 [c#4,e4]@10 d4 ~@7 a3@4 f#4@4 e4@4 [a3,d4]@4, ~@19 a2@21 d2@16 f#2@8, ~@41 f#4@7 ~@16, ~@11 d3@3 ~@2]/4", // Em Gmaj7 C#m D5
  AH: "[c#4@4 [a3,d4]@4 ~@13 [g3,d4]@4 ~@9 f#4@4 ~ [g3,c#4,e4]@4 d4 ~@7 a3@4 f#4@4 e4@4 d4@4 c#4@4 [a3,d4]@4 ~@15 [g3,d4]@5 ~@10 f#4@6 ~, ~@8 e2@17 ~ a2@17 d2@16 f#2@17 e2@19 a2@17, ~@8 g4@9 g4@9 g4@9 ~@9 f#4@7 ~@25 g4@9 g4@10 g4@11 ~@6, ~@13 [g3,d4]@8 ~@9 [g3,c#4]@9 ~@8 d3@12 ~@4 a3@8 ~@9 [g3,d4]@9 ~@11 [g3,c#4]@12]/7", // D5 G5 C#dim D5 G5 Gdim G5 Gdim
  AI: "[[g3,e4]@3 d4@2 [f#3,a3,d4]@4 [f#3,a3,d4]@2 [a3,d4,f#4]@2 [a3,d4,f#4]@3, ~@3 d2@8 ~@5]/2", // C D
  AJ: "~ [d4,f#4,a4]@2 [f#4,a4,d5]@4 ~", AK: "~@10 f#4@5 ~, ~@3 [d2,a2]@4 ~, ~@7 f#3@7 ~@2, ~@4 a3@3 ~, ~@9 d4@5 ~@2",
  AL: "[~@6 d2@9 a2@9 d2@10 a2@10 [d2,f#3,a3,d4]@58 ~@10, ~@3 [f#3,d4]@9 [f#3,d4]@10 ~@34]/7", // D
})).s("gm_acoustic_guitar_nylon").gain(0.26)

stack(acoustic_guitar_nylon)

More by Edward Elgar