Strudelify

Morceaux de fantaisie Op.3

Sergei Rachmaninoff

KeyE majorTempo56 bpm
0:00/0:00
// Morceaux de fantaisie Op.3 — Sergei Rachmaninoff
// 56 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (2/4 at bar 1, 4/4 at bar 1) are rendered on a constant 4/4 grid of one bar per cycle
// note: sustain pedal (CC 64) lengthens the held notes
// note: Transcription provider: pdmx. https://musescore.com/score/6177451; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 44 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(56/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 · "鋼琴"
const piano = note("<A@3 B@3 C@3 D E@2 F@3 G H@5 I J K L@7 M@4 N O P O Q R S@3>".pickRestart({
  A: "[~@11 [a1,a2,a3]@9 [g#1,g#2,g#3]@8 [c#1,c#2,c#3]@52 [a1,a2,a3]@9 [g#1,g#2,g#3]@7]/3", // A G# C# A G#
  B: "[~ [c#1,c#2,c#3]@17 ~ [a1,a2,a3]@8 [g#1,g#2,g#3]@9 [c#1,c#2,c#3]@17 [c2,c3,c4]@9 [b1,b2,b3]@8 [e1,e2,e3]@17 [e2,e3,e4]@9]/3", // C# A G# C# C B E
  C: "[[d#2,d#3,d#4]@9 ~@10 [c#4,a4,c#5]@4 ~@4 [b3,g#4,b4]@4 ~@5 [a3,f#4,a4]@4 ~@4 [g#3,b3,e4,g#4,b4,e5]@4 ~ [g#3,b3,e4,g#4,b4,e5]@4 [a3,c#4,f#4,a4,c#5,f#5]@4 [f#3,a3,d#4,f#4,a4,d#5]@4 ~ [g#3,b3,e4,g#4,b4,e5]@4 [e3,g#3,c#4,e4,g#4,c#5]@4 [f#3,a3,d#4,f#4,a4,d#5]@4 ~ [d#3,f#3,c4,d#4,f#4,c5]@4 [e3,g#3,c#4,e4,g#4,c#5]@4 ~@13, ~@9 [g#1,g#2]@31 [f#3,a3,d#4,f#4,a4,d#5]@9 ~@47, ~@9 g#3@14 [a3,c#4,f#4,a4,c#5,f#5]@4 [d#4,d#5]@4 [g#3,b3,e4,g#4,b4,e5]@5 [c#4,c#5,f#5]@13 ~@47, ~@14 [b3,d#4,g#4,b4,d#5,g#5]@5 [e4,e5]@8 g#5@22 ~@47, ~@19 a5@30 ~@47]/3", // D# F#m E D E F#m D#dim E …
  D: "[a1,a2,a3]@9 [g#1,g#2,g#3]@8 [c#1,c#2,c#3]@15", // A G# C#
  E: "[~@3 [a1,a2,a3]@8 [g#1,g#2,g#3]@9 [c#1,c#2]@40 ~@4, ~@20 c#3@23 ~@21]/2", // A G# C#
  F: "[~@9 [g1,g2,g3]@8 [g#1,g#2]@9 [c#1,c#2,c#3]@19 [a1,a2,a3]@8 [g#1,g#2,g#3]@9 [c#1,c#2,c#3]@17 [a1,a2,a3]@9 [g#1,g#2,g#3]@8, ~@17 g#3@4 ~@75]/3", // G G# C# A G# C# A G#
  G: "~@2 g#3@2 c#4@2 ~ g3 c#4 ~ f#3 c4 ~ e3 g#3 ~ g#3 c#4 ~ g3 c#4 f#3 c4 ~ e3 g#3 ~ g#3 c#4 ~ a3 c#4, [c#1,c#2,e4]@5 ~ [a#2,d#4]@3 [a2,d4]@3 [g#2,c#4]@3 c#2@11 [e2,g#4]@3 [d#2,f#4]@3, ~@15 [b2,e4]@3 [a#2,d#4]@3 [a2,d4]@2 [g#2,c#4]@3 ~@6", // C#m D#5 D5 C#5 E D#m E5 D#5 …
  H: "[~ [f#3,c#4] ~ g#3 c#4 ~ f#3 [c#4,e4] ~ f#3 c#4 ~ f#3 [c4,d#4] e3 c#4 ~ g#3 c#4 ~ g3 c#4 ~ f#3 c4 e3 g#3 ~ g#3 c#4 ~ g3 c#4 ~ f#3 c4 e3 g#3 ~ g#3 c#4 ~ a3 c#4 ~ f#3 c#4 ~ [g#3,c#4] ~ c#4 a4 ~ d4 a4 ~ d4 g#4 ~ c#4 a#4 a4 d#5 ~ g#4 c#5 ~ f4 b4 ~ f#4 a4 f4 b4 ~ f#4 a4 ~ d4 g#4 ~ c#4 f#4 ~ [c4,f#4] ~ c#4 e4 ~ a3 d#4 ~ g#3 c#4 ~ [a3,c#4] ~ a3 c#4 ~ a#3 c#4 ~ a#3 c#4 ~ b3 d4 b3 d4 ~ c4 f#4 ~ c#4 e4 c#2 g#4 c#5 g4 c#5 ~ f#4 c5 ~ e4 g#4 c#2 g#4 c#5 ~ [g4,c#5] ~ f#4 c5 ~ e4 g#4 ~ g#4 c#5 ~ [a4,c#5] ~ f#4 c#5 ~ g#4 c#5 ~ f#4 [c#5,e5] ~ f#4 c#5 f#4 [c5,d#5] ~ e4 c#5, [f#2,a4]@2 [e2,g#4]@3 [a2,f#4]@3 [d#2,f#4]@3 [g#2,e4]@2 c#2@14 c#2@11 [e2,g#4]@3 [d#2,f#4]@3 ~@3 [e2,g#4]@2 [e3,c#5]@3 [f#3,b4]@3 [f3,d5]@3 [e3,c#5]@3 ~@5 [g#3,b3,d5]@3 [a3,c#4,c#5]@3 [g#3,b3,d5]@3 ~@2 [f3,g#3,b4]@3 [f#3,a3,a4]@3 [d#3,f#3,a4]@3 ~@2 [c3,d#3,f#4]@3 [c#3,e3,e4]@3 f#2@5 d#4@3 [d#3,a#4]@3 e4@2 [e3,b4]@3 [d#3,c5]@3 [c#3,c#5]@3 [b3,e5]@3 [a#3,d#5]@3 ~@5 [b3,e5]@3 [a#3,d#5]@3 ~@5 c#4@11 [a3,f#5]@3 ~@2 [g#3,e5]@3 ~@3, ~@13 e4@3 [b2,e4]@3 [a#2,d#4]@3 [a2,d4]@3 [g#2,c#4]@2 [b2,e4]@3 [a#2,d#4]@3 [a2,d4]@3 [g#2,c#4]@3 ~@5 [f#2,a4]@3 ~@2 a2@11 [c4,d#4,f#5]@3 [c#4,e4,e5]@3 ~@8 [a3,c#4,c#5]@3 ~@8 [e3,g#3,g#4]@3 ~@6 d4@2 [d3,a4]@3 g2@6 g#2@8 ~@8 [a3,d5]@3 [g#3,c#5]@3 ~@5 [a3,d5]@3 [g#3,c#5]@3 [e3,g#5]@3 [d#3,f#5]@2 [f#3,a5]@3 [e3,g#5]@3 ~@3 [d#3,f#5]@3 ~@2 [c#3,e5]@3]/5", // F#5 C#m Cm C#5 Cdim A Gdim A …
  I: "c#2 g#4 c#5 ~ g4 c#5 f#4 c5 ~ e4 g#4 c#2 g#4 c#5 ~ g4 c#5 f#4 c5 ~ e4 g#4 ~ g#4 c#5 a4 c#5 ~ f#4 c#5 ~ g#4, e5@3 ~@5 [g#3,c#5]@3 ~ b3@2 [a#3,d#5]@3 ~@5 c#4@10, ~ b3@2 [a#3,d#5]@3 [a3,d5]@3 ~@2 e5@3 ~@2 [a3,d5]@3 [g#3,c#5]@3 [e3,g#5]@3 [d#3,f#5]@2 [f#3,a5]@3 [e3,g#5]@2", // C#5 D#5 D5 C#5 E D#m F#m E
  J: "c#5 d5 g#5 ~ c#5 f#5 f5 b5 ~ f#5 a5 ~ [a5,d#6] ~ g#5 c#6 [c6,f#6,a6] [d#5,f#5] [e5,g#5,c6,f#6,a6] [c#6,e6,g#6] [e5,g#5] [a5,d#6,f#6] [c5,d#5] [c#5,e5,a5,d#6,f#6] [g#5,c#6,e6] [c#5,e5] [f5,b5,d6] [g#4,b4] [a4,c#5,f5,b5,d6] [f#5,a5,c#6] [a4,c#5] [d5,g#5,b5], [f4,g#4,b5]@3 [f#4,a4,a5]@2 ~ [g#4,b4,d6]@2 [a4,c#5,c#6]@2 ~ [c5,d#5,f#6]@2 [c#5,e5,e6]@2 ~@17", // Adim F#dim D#m F#m7b5 C#m E D#dim Cm …
  K: "[f4,g#4] [f#4,a4,d5,g#5,b5] [c#5,f#5,a5] [f#4,a4] [c5,f#5,a5] [d#4,f#4] [c5,f#5,a5] [f4,g#4,c#5,e5,g#5] [f4,g#4] [a4,d#5,f#5] [c4,d#4] [a4,d#5,f#5] [c#4,e4,g#4,c#5,e5] [c#4,e4] [f4,b4,d5] [g#3,b3] [f4,b4,d5] [a3,c#4,f#4,a4,c#5] [a3,c#4] [d4,g#4,b4] [f3,g#3] [d4,g#4,b4] [f#3,a3,c#4,f#4,a4] [f#3,a3] [c4,f#4,a4] [d#3,f#3] [c4,f#4,a4] [f3,g#3,c#4,e4,g#4] [f3,g#3] [a3,d#4,f#4] [c3,d#3] [a3,d#4,f#4]", // Fm Bm7 F#m F#dim D#m F#dim C# Fm …
  L: "[[c#3,e3] [c#3,e3,g#3,c#4,e4] [c4,f#4,a4] [d#3,f#3] [c4,f#4,a4] [e3,g#3] [e3,g#3,c#4,e4,g#4] [a3,d#4,f#4] [c3,d#3] [a3,d#4,f#4] [c#3,e3] [g#3,c#4,e4] [c#3,e3,a3,d#4,f#4] [c3,d#3] [a3,d#4,f#4] [c#3,e3] [g#3,c#4,e4] [c#3,e3] [a3,d#4,f#4] [c3,d#3,a3,d#4,f#4] [c#3,e3] [g#3,c#4,e4] [c#3,e3] [a3,d#4,f#4] [c3,d#3] [a3,d#4,f#4] [c#3,e3] [g#3,c#4,e4] [c#3,e3] ~@6 [c#3,f#3,c#4,f#4,c#5,f#5]@6 g#4@6 [f#3,c4,d#4,f#4,g#4,c5,g#5]@8 ~@6 [e5,g#5]@4 ~@4 [d#5,g5,a#5,d#6]@4 ~@4 [d5,f#5,c6,d6]@4 ~@4 [c5,d#5,f#5,c6]@4 ~@4 [e5,g#5]@4 ~@4 [d#5,g5,a#5,d#6]@4 ~@4 [d5,f#5,c6,d6]@4 ~@4 [c5,d#5,f#5,c6]@4 ~@4 [g#5,c#6]@4 c#6@4 [f#5,c#6,f#6]@4 ~@4 [e5,f#5,a5,e6]@4 ~@4 [d#5,f#5,a5,d#6]@4 ~@4 [b5,e6]@4 e6@4 [a5,e6,a6]@4 ~@4 [g#5,a#5,c#6,g#6]@4 ~@4 [g5,a#5,c#6,g6]@4 ~@9 [a5,c#6]@4 ~@4 [g#5,b5]@4 ~@4 [f#5,a5]@4 ~@4 [e5,g#5,b5,e6]@4 [e5,g#5,b5,e6]@2, ~@29 [a1,a2,a3,a4]@12 [g#1,g#2,g#3]@14 [c#3,e3,g#3,c#4]@17 ~ [a3,a4]@8 [g#3,g#4]@8 [c#3,e3,g#3,c#4]@16 [a3,a4]@8 [g#3,g#4]@8 [c#3,e3,g#3,c#4]@16 [c4,c5]@8 [b3,b4]@8 [e3,g#3,b3,e4]@16 [e4,e5]@8 [d#4,d#5]@8 [g#3,b3,d#4,g#4]@29 [d#5,f#5,a5,d#6]@8 ~@2, ~@61 [c#5,c#6]@12 ~@20 [c#5,c#6]@12 ~@20 [c#5,e5]@12 ~@20 [e5,g#5]@12 ~@25 a6@28 ~@2, ~@65 [e5,g#5,b5,e6]@8 ~@24 [e5,g#5,b5,e6]@8 ~@24 [g#5,g#6]@8 ~@24 [b5,b6]@8 ~@21 [g#5,b5,d#6,g#6]@8 [f#5,a5,c#6,f#6]@4 d#6@4 [e5,g#5,b5,e6]@4 [c#6,f#6]@12 ~@2, ~@97 e6@4 g#6@10 ~]/7", // C#m F#dim D#m F#dim E C#m D#dim Cm …
  M: "[~@2 [f#5,a5,c#6,f#6]@4 [d#5,f#5,a5,d#6]@4 [e5,g#5,b5,e6]@4 [c#5,e5,g#5,c#6]@4 [d#5,f#5,a5,d#6]@4 [c5,d#5,f#5,c6]@4 ~@2 [c#5,e5,g#5,c#6]@5 [e5,g#5]@4 ~@4 [d#5,g5,a#5,d#6]@4 ~@4 [d5,f#5,c6,d6]@4 ~@4 [c5,d#5,f#5,c6]@4 ~@4 [g#5,c#6]@4 c#6@4 [f#5,c#6,f#6]@4 ~@4 [e5,f#5,c6,e6]@4 ~@4 [c5,d#5,f#5,c6]@4 ~@2 c#5@5 ~@12 [c#4,g#4,c#5]@4 [a3,e4,a4]@4 [b3,f#4,b4]@4 [g#3,d4,g#4]@4, ~@26 [c#3,c#4]@19 [a3,a4]@8 [g#3,g#4]@8 [c#3,e3,g#3,c#4]@16 [a3,a4]@8 [g#3,g#4]@8 c#3@23 ~@12, ~@33 [c#5,c#6]@12 ~@20 [c#5,e5]@12 ~@16 c#4@7 [c#4,g#4,c#5]@8 [b3,f#4,b4]@8 ~@12, ~@37 [e5,g#5,b5,e6]@8 ~@24 [g#5,g#6]@8 ~@18 [e5,g#5,c#6]@21 ~@12, ~@26 [d4,a4,d5]@3 ~@3]/4", // F#m D#dim E C#m D#dim Cdim C#m E …
  N: "[a3,f#4,a4]!2 [c#4,f#4,c#5] [b3,f#4,b4] ~ [a3,e4,a4] g#3 [g#3,f#4,g#4], ~@2 g3 ~", O: "~ [c#4,a4,c#5]@3, c#3",
  P: "~ [c#4,g#4,c#5]@3, c#3", Q: "~ [c#4,f#4,a#4,c#5]@3, c#3", R: "~ [c#4,f#4,a4,c#5]@3, c#3",
  S: "[~@16 [g#4,c#5]@12 [g#4,c#5,e5,g#5]@4 [g#4,c#5,e5,g#5]@45 ~@19, c#3@2 ~, ~@16 [c#4,e4]@61 ~@19]/3", // C#5 C#m
})).s("gm_piano").gain(0.35)

// chords · piano · "鋼琴" · soft notes
const piano_soft = note("<~@2 A B@2 C D ~ E F@3 G H I ~@29>".pickRestart({
  A: "~@3 [g#3,e4,g#4]@4 ~@5 [g3,a#3,d#4,g4,a#4,d#5]@4 ~@4 [f#3,c4,d4,f#4,a4,d5]@4 ~@5 [d#3,f#3,c4,d#4,f#4,c5]@3, ~@3 [e3,c#4,c#5]@13 ~@16, ~@7 [g#3,b3,e4,g#4,b4,e5]@9 ~@16", // C#m D# D7 Cdim C#m E
  B: "[~@6 [g#3,e4,g#4]@4 ~@4 [g3,a#3,d#4,g4,a#4,d#5]@4 ~@5 [f#3,c4,d4,f#4,a4,d5]@4 ~@4 [d#3,f#3,c4,d#4,f#4,c5]@4 ~@5 [c#4,g#4,c#5]@4 [c#4,c#5]@4 ~ [a3,c#4,f#4,a4,c#5,f#5]@4 ~@4 [f#3,a3,e4,f#4,a4,e5]@4 ~@3, ~@6 [e3,c#4,c#5]@13 ~@21 [e3,g#3,e4]@13 ~@11, ~@10 [g#3,b3,e4,g#4,b4,e5]@9 ~@25 [b3,g#4,b4,g#5]@9 ~@11]/2", // C#m D# D7 Cdim C#5 C# F#m F#m7 …
  C: "~@2 [f#3,a3,d#4,f#4,a4,d#5]@4 ~@5 [e4,b4,e5]@4 [e4,e5]@4 [c#4,e4,a4,c#5,e5,a5]@4 ~@5 [a#3,c#4,g#4,a#4,c#5,g#5]@4, ~@11 [g#3,b3,g#4]@13 ~@8, ~@15 [d4,b4,d5,b5]@9 ~@8", // D#dim E5 E A A#m7 G#m G
  D: "~ [a#3,c#4,g4,a#4,c#5,g5] ~@6", // Gdim
  E: "~@19 [e3,g#3,c#4,e4,g#4,c#5]@4 [g#3,b3,e4,g#4,b4,e5]@4 ~ [g3,a#3,d#4,g4,a#4,d#5]@4", // C#m E D#
  F: "[~@4 [f#3,c4,d4,f#4,a4,d5]@4 ~@5 [d#3,f#3,c4,d#4,f#4,c5]@4 ~@5 [c#4,g#4,c#5]@4 [c#4,c#5]@4 [a3,c#4,f#4,a4,c#5,f#5]@4 ~@5 [f#3,c4,e4,f#4,a4,e5]@4 ~@4 [d#3,f#3,c4,d#4,f#4,c5]@4 ~@11 [f#3,d4,f#4]@4 ~@4 [e3,c#4,e4]@4 ~@5 [d3,b3,d4]@4 ~@5 [c#3,f#3,a3,c#4,f#4,a4]@4 [c#3,f#3,a3,c#4,f#4,a4]@4, ~@22 [e3,g#3,e4]@13 ~@22 [e3,g#3,c#4,e4,g#4,c#5]@13 c#5@9 [f#3,f#4]@4 [b2,d3,g#3,b3,d4,g#4]@9 ~@4, ~@26 [b3,g#4,b4,g#5]@9 ~@27 d5@30 ~@4, ~@62 [a3,a4]@8 [g#3,g#4]@5 [c#3,a3,c#4,a4]@4 b4@13 ~@4, ~@66 [d3,f#3,b3,d4,f#4,b4]@9 [e3,e4]@17 ~@4]/3", // D7 Cdim C#5 C# F#m F#m7b5 Cdim D …
  G: "[e3,f#3,c#4,e4,f#4,c#5]@4 [d3,f#3,b3,d4,f#4,b4]@4 ~@5 [e3,a3,c#4,e4,a4]@4 ~@5 [d#3,f#3,g#3,c4,d#4,g#4]@4 ~@6", // F#7 Bm A G#7
  H: "~@8 [a#2,g3,d#4]@4 ~@5 [f#3,c4,d4]@4 ~@4 [d#3,f#3,c4]@4 ~@3, [g#2,e3,c#4]@13 ~@19, ~@4 [b2,g#3,e4]@9 ~@19", // D# D7 Cdim C#m E
  I: "~@11 [a#2,g3,d#4]@4 ~@4 [f#3,c4,d4]@4 ~@5 [d#3,f#3,c4]@4, ~@2 [g#2,e3,c#4]@13 ~@17, ~@6 [b2,g#3,e4]@9 ~@17", // D# D7 Cdim C#m E
})).s("gm_piano").gain(0.15)

// chords · piano · "鋼琴"
const piano_2 = note("<~@25 A@6 B@4 C ~@8>".pickRestart({
  A: "[~@29 [g#3,e4]@4 ~@4 [g3,a#3,d#4,g4]@4 ~@4 [f#3,c4,d4,f#4]@4 ~@4 [d#3,f#3,c4,d#4]@4 ~@4 [g#3,e4]@4 ~@4 [g3,a#3,d#4,g4]@4 ~@4 [f#3,c4,d4,f#4]@4 ~@4 [d#3,f#3,c4,d#4]@4 ~@4 c#4@4 c#4@4 [a3,c#4,f#4,a4]@4 ~@4 [f#3,a3,e4,f#4]@4 ~@4 [f#3,a3,d#4,f#4]@4 ~@4 e4@4 e4@4 [c#4,e4,a4,c#5]@4 ~@4 [a#3,c#4,g#4,a#4]@4 ~@4 [a#3,c#4,g4,a#4]@4 ~@9 [c#4,a4]@4 ~@4 [b3,g#4]@4 ~@4 [a3,f#4]@4 ~@4 [g#3,b3,e4,g#4]@4 [g#3,b3,e4,g#4]@2, ~@23 [c#1,e1,g#1,c#2]@17 ~ [a1,a2]@8 [g#1,g#2]@8 [c#1,e1,g#1,c#2]@16 [a1,a2]@8 [g#1,g#2]@8 [c#1,e1,g#1,c#2]@16 [c2,c3]@8 [b1,b2]@8 [e1,g#1,b1,e2]@16 [e2,e3]@8 [d#2,d#3]@8 [g#1,b1,d#2,g#2]@29 [f#3,a3,d#4,f#4]@8 ~@2, ~@29 [e3,c#4]@12 ~@20 [e3,c#4]@12 ~@20 [e3,g#3,e4]@12 ~@24 [d#4,b4,d#5]@8 ~@25 c#5@28 ~@2, ~@33 [g#3,b3,e4,g#4]@8 ~@24 [g#3,b3,e4,g#4]@8 ~@24 [b3,g#4,b4]@8 ~@20 [g#3,b3,g#4]@12 ~@21 [b3,d#4,g#4,b4]@8 [a3,c#4,f#4,a4]@4 d#4@4 [g#3,b3,e4,g#4]@4 [c#4,a4]@12 ~@2, ~@81 e4@4 b4@10 ~]/6", // C#m D# D7 Cdim C#m D# D7 Cdim …
  B: "[~@2 [a3,c#4,f#4,a4]@4 [f#3,a3,d#4,f#4]@4 [g#3,b3,e4,g#4]@4 [e3,g#3,c#4,e4]@4 [f#3,a3,d#4,f#4]@4 [d#3,f#3,c4,d#4]@4 ~@2 [e3,g#3,c#4,e4]@5 [g#3,e4]@4 ~@4 [g3,a#3,d#4,g4]@4 ~@4 [f#3,c4,d4,f#4]@4 ~@4 [d#3,f#3,c4,d#4]@4 ~@4 c#4@4 c#4@4 [a3,c#4,f#4,a4]@4 ~@4 [f#3,c4,e4,f#4]@4 ~@4 [d#3,f#3,c4,d#4]@4 ~@2 [e3,g#3,e4]@5 ~@4 f#3@4 ~@4 [e3,g#3,e4]@4 [c#3,e3,c#4]@4 [d3,f#3,d4]@4 [b2,d3,b3]@4, ~@26 [c#1,c#2]@19 [a1,a2]@8 [g#1,g#2]@8 [c#1,e1,g#1,c#2]@16 [a1,a2]@8 [g#1,g#2]@8 [c#1,c#2]@23 ~@12, ~@33 [e3,c#4]@12 ~@20 [e3,g#3,e4]@12 ~@23 [e3,g#3,e4]@8 [d3,f#3,d4]@8 ~@12, ~@37 [g#3,b3,e4,g#4]@8 ~@24 [b3,g#4,b4]@8 ~@18 c#4@21 ~@12, ~@26 [a3,f#4]@3 ~@3]/4", // F#m D#dim E C#m D#dim Cdim C#m D# …
  C: "[c#3,f#3,c#4]!2 [e3,f#3,e4] [d3,f#3,d4] ~ [e3,c#4] ~ [d#3,f#3,c4], ~@2 [g1,g2] [g#1,g#2]", // F#5 Esus2 D C#m Cdim G G#
})).s("gm_piano").gain(0.5)

// chords · piano · "鋼琴" · soft notes
const piano_soft_2 = note("<~@36 A B C D E F@3>".pickRestart({
  A: "~ [e3,a3,e4]@3, [c#1,c#2]", B: "~ [e3,a#3,e4]@3, [c#1,c#2]", C: "~ [e3,g3,e4]@3, [c#1,c#2]",
  D: "~ [e3,f#3,a#3,e4]@3, [c#1,c#2]", E: "~ [d#3,f#3,a3,d#4]@3, [c#1,c#2]",
  F: "[~@16 [e3,g#3]@12 [e3,g#3,c#4,e4]@4 [e3,g#3,c#4,e4]@45 ~@19, [c#1,c#2]@2 ~, ~@16 [g#2,c#3]@61 ~@19]/3", // E C#m C# C#5
})).s("gm_piano").gain(0.3)

stack(piano, piano_soft, piano_2, piano_soft_2)

More by Sergei Rachmaninoff