Strudelify

Pour remercier la pluie au matin 6 épigraphes antiques 6

Claude Debussy

KeyG majorTempo120 bpm
0:00/0:00
// Pour remercier la pluie au matin 6 épigraphes antiques 6 — Claude Debussy
// 120 bpm, 4/4, key G 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/5948357; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 64 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 · [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 · "Grand Piano"
const piano = note(`<
  A@4 B@6 C D E F G H I J I K ~ L M N M O P Q R S@2 B@2 A B A B T@3 U@4 B@9 V@4 W@3 X Y Z ~
>`.pickRestart({
  A: "b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4]", // G#sus2
  B: "b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4], g4@15 ~", // G#sus2
  C: "a#5 d#5!3 b4 d#5!3 b4 d#5!3 g#5 c#5!3, [a#4,d#6]@3 [g#4,c#6]", // D#5 C#5
  D: "a#5 d#5!3 c6 f5!3 d6 g5!3 c6 f5!3, [a#4,d#6] [c5,f6] [d5,g6] [c5,f6]", // D#5 F5 G5 F5
  E: "a#5 d#5!3 ~ d#5!3 ~ b4!3 ~ b4!3, d#6@2 f#4!2, a#4!2 [f#5,b5]@2", // B5
  F: "~ c5!3 ~ c5!3 ~ e5!3 d5 e5!3, [g5,c6] ~, g4!2 [b4,b5,e6]@2", // C5 E5
  G: "d6 g5 d5 g4 b4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4], g6@4 g4@11 ~", // G#sus2
  H: "b4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4], g4@15 ~", // G#sus2
  I: "b4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4], g4 ~ g4@2", // G#sus2
  J: "b4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4], g4 [g4,f5] [g4,e5] [g4,d#5]", // G#sus2 G7 C Cm
  K: "b4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4] a#4 [g#4,a#4] g#4 [g#4,a#4], g4 [g4,f#5] [g4,e5] [g4,d5]", // G#sus2 Gmaj7 C G5
  L: "[g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~", // C#m C5 C#m C5 C#m C5 C#m C5
  M: "[g#4,e5] ~ [c5,g5] ~ [g#4,e5,f6] e6 [c5,g5] d6 [g#4,e5] ~ [c5,g5] ~ [g#4,e5,d6] e6 [c5,g5] f6, ~@2 c6 ~", // C#m C5 C# C5 C#m C5 E7 C5
  N: "[g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~, g6@15 ~", // C#m C5 C#m C5 C#m C5 C#m C5
  O: "[g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5] ~ [c5,g5] ~ [g#4,e5,d6] e6 [c5,g5] f6, g6 f6 e6 d6 c6@2 ~@2", // C#m C5 C#m C5 C#m C5 E7 C5
  P: "[g#4,e5,g6] g#6 [c5,g5] g6 [g#4,e5,f6] e6 [c5,g5] d6 [g#4,e5,c6] [d6,e6] [c5,g5,f6] [g6,g#6] [g#4,e5,a#6] [g6,g#6] [c5,g5,f6] [d6,e6]", // C C5 C# C5 G#aug Dsus2 Csus4 G#maj7 …
  Q: "[g#4,e5,c6] [d6,e6] [c5,g5,f6] [g6,g#6] [g#4,e5,a#6] [g6,g#6] [c5,g5,f6] [d6,e6] [g#4,e5,c6] [d6,e6] [c5,g5,f6] [g6,g#6] [g#4,e5,a#6] [g6,g#6] [c5,g5,g#6] [a6,a#6]", // G#aug Dsus2 Csus4 G#maj7 A#m7b5 G#maj7 Csus4 Dsus2 …
  R: "b6 g6 b5 g5 b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4], ~@4 g4@11 ~", // G#sus2
  S: "b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4], g4", // G#sus2
  T: "b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4] b4 [g#4,a#4] a4 [g#4,a#4], g4 ~@3", // G#sus2
  U: "[g4,b4] [g#4,a#4] a4 [g#4,a#4] [g4,b4] [g#4,a#4] a4 [g#4,a#4] [g4,b4] [g#4,a#4] a4 [g#4,a#4] [g4,b4] [g#4,a#4] a4 [g#4,a#4]", // G G#sus2 G G#sus2 G G#sus2 G G#sus2
  V: "[b4 [g#4,a#4] ~ a4 [g#4,a#4] ~ b4 [g#4,a#4] a4 ~ [g#4,a#4] b4 ~ [g#4,a#4] a4 [g#4,a#4] ~ b4 [g#4,a#4] a4 ~ g#4 [g3,g4]@8 [a3,a4]@2 [c4,c5]@2 [d4,d5]@4 ~ [f4,f5] [g4,g5]@9 [f4,f5]@3 [d4,d5]@3 [f4,f5]@3 [d4,a4,d5]@6, g4@21 ~ d4@12 g4@5 ~ d5@12 b4@6 ~@6]/4", // G#sus2 G A C D F G F …
  W: "[[c4,c5] [a3,a4] [c4,c5] [a3,a4]@6 [g3,g4]@3 [f3,f4]@3 [g3,g4]@2 ~@7]/3", // C A C A G F G
  X: "~@10 [g5,b5] [g#5,a#5] a5 [g#5,a#5] ~@2", Y: "~@3 [g4,b4] [g#4,a#4] a4 [g#4,a#4] ~",
  Z: "~@3 b4@3 ~@8 [d3,d4]@2, ~ g4@2 ~@5", // D
})).s("gm_piano").gain(0.2)

// chords · piano · "Grand Piano"
const piano_2 = note(`<
  ~@2 A B C@3 D@2 E F G H I J@2 K L M N O P@3 Q P Q P R S T U V W V X Y Z AA AB AC@2 AD AE AF@2 AG AH AI AJ AK@2 AL@2
  AM@3 AN@2 AO@5
>`.pickRestart({
  A: "g4", B: "f#4 b3",
  C: "[~@4 f#5@2 ~@2 d#5@2 ~@2 f#5 ~ d#5 ~ f#5@2 ~@2 d#5@8 f#5@4 ~@4 c#4 d#4 ~ f#4 d#4 c#4 ~ a#3 d#3 a#3 ~ c#4, c#4@17 ~@7]/3",
  D: "[d#4 c#4 d#4 f#4 d#4@2 c#4@4 a#3@2 d#3@2 c#3@2]/2", E: "d#3 c#3@2 a#2",
  F: "a#3 ~ d#4 ~ d#3@2 [a#3,d#4,f4] ~ d#3@2 d#4 ~ c#3@2 [g#3,d#4,f4] ~, [d#1,d#3]@4 a#3 ~@3 a#3 ~@3 g#3 ~@3", // A#sus4 Fm7 D#
  G: "d#3@2 d#4 ~ f3@2 [c4,f4,g4] ~ g3@2 g4 ~ f3@2 [c4,f4,g4] ~, a#3 ~@3 c4 ~@3 d4 ~@3 c4 ~@3", // Csus4
  H: "a#3 ~ d#4 ~ a#3 ~ [a#3,d#4,f4] ~ f#3 ~ b3 ~ f#3 ~ [f#3,b3,c#4] ~, d#3 b2", // A#sus4 F#sus4
  I: "g3 ~ c4 ~ g3 ~ [g3,c4,d4] ~ b3 ~ e4 ~ b3 ~ [b3,e4,f#4] ~, c3 e3", // Gsus4 Bsus4
  J: "[~@4 f4@2 ~@2 d4@2 ~@2 f4 ~ d4 ~ f4@4 d4@8 f4@4, g1@5 ~@3]/2", K: "f#4 g4 f#4 f4", L: "e4 f4 e4 d#4",
  M: "f#4 g4 f#4 f4, g1 ~@7", N: "e4 f4 e4 d4",
  O: "c4 d#4 c4 d#4 e4 g4 e4 g4 [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4], g#1", // C D# C D# C D# C D#
  P: "[c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4]", // C D# C D# C D# C D# …
  Q: "[c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4] [c4,e4] [d#4,g4], g#1@15 ~", // C D# C D# C D# C D# …
  R: "~ e4 b3 d4, e1", S: "c#4@2 e4 f#4", T: "e4 c#4 b3 a3", U: "b3 g3 f#3 e3", V: "[d#2,a#2,d#3,g3,a#3,d#4]",
  W: "[f#2,c#3,f#3,a#3,c#4]@15 ~", X: "[f#2,c#3,f#3,a#3,c#4] [d#2,a#2,g3,a#3,d#4]",
  Y: "[c#4,f#4] c#4 ~ f#4, [a1,a2,g3,b3], ~ c#4", Z: "g2 d2!2 [f#2,e3,g#3,a#3,d#4], [f3,a3,b3,e4]@3 ~",
  AA: "a2 ~ e2 ~ e2 ~ [f#3,a#3,c4]@2, [g3,b3,c#4,f#4]@6 g#2 ~", // Cm7b5 Gmaj7
  AB: "g2 ~ d2 ~ d2 ~ [e3,g#3,a#3]@2, [f3,a3,b3,e4]@6 f#2 ~", // A#m7b5 Fmaj7
  AC: "[d#2 f2 d#2 f2 b2 c#3 b2 c#3 d#3 f3 d#3 f3 b3 c#4 b3 c#4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4, b1, ~@12 b5@3 ~]/2",
  AD: "d#2 f2 d#2 f2 b2 c#3 b2 c#3 d#3 f3 d#3 f3 b3 c#4 b3 c#4, a1",
  AE: "d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4 d#4 f4, g#1, ~@4 b5@3 ~", AF: "[g1,f#4] f4 d4 d#4 f4 e4 c4 d4",
  AG: "d#4@4 c#4 a#3 ~ c#4 a#3 d#3 ~ a#3 c#4 a#3 ~ c#4", AH: "d#4 c#4 d#4 f#4 d#4@2 c#4@2",
  AI: "[d#4,d#6] [c#4,c#6] ~ [d#4,d#6] [c#4,c#6] [a#3,a#5] ~ [c#4,c#6] [a#3,a#5] [d#3,d#5] ~ [a#3,a#5] [c#4,c#6] [a#3,a#5] ~ [c#4,c#6]", // D# C# D# C# A# C# A# D# …
  AJ: "[d#4,d#6] [c#4,c#6] ~ [d#4,d#6] [f#4,f#6] [d#4,d#6] ~ [c#4,c#6] [a#3,a#5]@4 [c#4,c#6]@4", // D# C# D# F# D# C# A# C#
  AK: "[[f4,f6]@4 ~@12 d#1@15 ~, ~ [c#4,c#6]@4 ~@3]/2", AL: "[[f4,f6] ~@3 d#1 ~@3, ~@4 [c#4,c#6]@17 ~@11]/2",
  AM: "[~@2 [g1,g2] [a1,a2] [b1,b2] ~ b3 [d2,d3,a3], ~@2 d4 ~, ~@5 [c2,c3]@2 ~]/3", // G A B D5 C
  AN: "[g4@2 f4 [f2,f3,d#4]@6 [d2,d3,c4]@6 d4, [d#2,d#3]@3 ~@13]/2", // F7 D7 D#
  AO: "[~@3 g2@3 ~ a2@3 ~ c3@3 ~ d3@3 g3 f3@2 c4 d4 g3@2 ~@2 g2@3 ~ a2@3 ~ c3@3 ~ d3@3 ~ f3@3 ~ d3@3 d4@2 f4@2 ~@8 [g4,b4]@4 ~@14, ~ g1@2 a1@2 c2@2 d2@2 f2@2 g2@2 g1@2 a1@2 c2@2 d2@2 f2@2 d2@2 ~@6 [g1,g2] ~@8, ~@19 a3 ~@3 f4 ~ g4@5 ~@50]/5", // G
})).s("gm_piano").gain(0.15)

stack(piano, piano_2)

More by Claude Debussy