Strudelify

'Arietta' op. 12, Nr. 1 aus Lyrische Stucke

Edvard Grieg

KeyE♭ majorTempo120 bpm
0:00/0:00
// 'Arietta' op. 12, Nr. 1 aus Lyrische Stucke — Edvard Grieg
// 120 bpm, 4/4, key D# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 38 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. 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 · "A.PIANO 1"
const piano = note("<A@7 B@8 C@6 D@5 E@6 F@5 ~>".pickRestart({
  A: "[~@45 g5@12 ~@12 f5@25 ~@59 bb4@4 ~@37 g4@4 d5@4 ~@15 g3@5 c4@2, g5@14 ~ g4@9 g5@6 eb4@26 ~@39 eb3@77 bb4@11 ~@7 eb4@8 [bb2,g3]@16 a2@5 ~@5, ~ eb3@33 g5@5 bb4@17 ~@7 b4@13 ~@18 f5@11 ~ ab4@10 f5@5 d4@15 f5@14 ~@7 eb5@21 [c3,g3]@21 ~@13 g4@4 c5@8, ~@8 eb4@16 bb3@32 ~@38 b3@12 f5@5 b4@15 f5@5 b4@9 ~@8 d5@11 ~@8 g4@16 ~ a3@15 ~@3 bb3@13 ~@9, ~@15 g5@5 bb4@14 g4@22 ~ [ab4,e5]@19 ~@25 d4@15 b3@24 ~@2 eb4@17 ~@3 eb4@17 eb5@10 eb5@10 ~@8 [eb4,d5]@10 ~@7]/7", // Eb C5 Dbm Ebmaj7
  B: "[~@25 g4@6 eb5@10 eb5@7 ~ d5@6 ~@9 g4@3 ~@3 c5@12 ~@53 d5@6 f5@18 ~@7 [a3,c4,gb4]@22 g4@21 ~@18 [eb4,ab4]@7 b4@8 d5@14, ~@2 [eb4,c5]@12 ~ bb3@16 ~@17 bb2@19 a2@5 ~@29 eb4@12 c3@11 eb4@14 ~@74 f4@24 ~@20, ~@7 g4@7 ~@6 eb4@11 ~@28 [eb4,bb4]@10 ~ g3@2 ~@10 [eb4,c5]@12 ~@2 bb3@18 [g3,a4]@24 ~@28 eb3@43 ab2@13 [c4,g4]@14 ~@20, ~@11 [d3,g3,bb4]@20 [c3,g3]@19 ~@14 d5@7 ~@20 bb4@26 ~@6 bb4@6 [g4,c5]@9 ~@21 eb5@10 ~@48 f3@19 ~@20, ~@106 g4@11 ~@2 a3@19 ~@72 eb3@26 ~@20]/8", // Gbdim Ab5 Cm Eb5 Cm Gsus2 C5 Gm …
  C: "[~@12 gb3@33 ~@82 b4@4 ~@54 b4@5 f5@2, ~@3 c5@13 ~@44 g4@23 g4@10 g5@5 eb4@14 [b3,g5]@20 f5@14 b4@16 ab4@18 f5@10 ~@2, ~@11 eb4@44 eb4@12 g5@15 g5@6 bb4@14 g5@6 bb4@8 ~@6 e5@12 ~@7 ab4@20 f5@6 b4@14 ab4@11, ~@11 a3@33 ~ g3@58 g4@12 ~@16 b3@21 b3@19 b3@21, ~@12 bb2@64 eb4@17 bb3@22 ~@2 d4@16 ~@3 d4@16 f5@5 d4@14 f5@5 d4@16]/6", // Em
  D: "[~@14 bb4@4 ~@23 bb4@10 ~@25 [eb4,a4]@4 ~@17 eb4@4 ~@46 b4@8 d5@5, ~@4 eb4@14 eb5@38 eb4@4 a4@16 ~@5 ab4@11 ~@9 [g2,g4]@23 f4@11 c4@5 [eb4,ab4]@11 ~@9, ~@9 d5@11 ~@3 eb4@28 [bb3,bb4]@10 c3@20 ~@6 eb3@16 ~@4 eb3@20 ~@3 eb3@22 ~@8, ~@28 g4@36 ~@7 [a3,f4]@10 ~@11 [ab3,ab4]@12 ~@14 eb4@9 ~@7 g4@17 ~@9, ~@41 db3@23 ~ eb3@15 f2@23 ~@21 ab2@28 ~@8]/5", // Ebdim G Ab5 Bb Dm Ab
  E: "[~@10 c5@8 ~@26 [eb3,eb4]@35 ~@13 g4@7 ~@7 b4@9 d5@19 ~@12 a3@38 ~@8, ~@18 [b2,f3,ab3,d4]@29 ~@32 ab2@31 ~@82, ~@79 f4@18 ~@2 [eb4,ab4]@11 ~@24 c5@17 ~@41, ~@43 f3@12 ~@41]/6", // Eb Bdim Ab5
  F: "[~@24 g5@22 ~@17 g5@23 ~ g5@64 ~@9, ~@46 g5@17 ~@97, ~@27 bb4@28 ~@25]/5",
})).s("gm_piano").gain(0.16)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note("<A B@5 ~@2 C@3 ~ D@2 ~@2 E@7 ~ F ~@2 G@3 H@8>".pickRestart({
  A: "bb3@3 ~",
  B: "[~@55 b4@24 ~@38 g4@9 bb3@25 ~@9, ~@13 b3@24 b3@25 ~@42 bb3@21 ~@35, ~@14 eb3@49 ~@97, ~@19 d4@23 ~ d4@26 ~@91, ~@24 ab4@13 ~@10 ab4@7 ~@26]/5",
  C: "[~@13 g4@3 ~@5 bb3@15 ~@19 g4@4 d3@26 ~@11, ~@5 a3@11 g3@21 ~@22 g3@22 ~@15, ~@9 eb4@8 ~@28 c4@17 ~@34]/3",
  D: "[~@29 g3@20 ~@15, ~@7 bb3@5 ~@4]/2",
  E: "[~@32 eb2@51 ~@7 ab4@10 ~@70 g4@9 ~@15 bb4@7 ~@23, ~@13 bb3@48 ~@59 eb3@72 ~@32, ~@159 bb3@15 ~@5 bb3@32 ~@13]/7",
  F: "~@16 bb3@15 ~", G: "[~@12 [c3,g3]@35 ~@13 c4@9 ~@27, ~@48 eb3@31 ~@17]/3",
  H: "[~@174 bb4@61 ~@21, ~@18 eb4@51 eb4@15 eb2@64 ~@108, ~@18 gb3@36 bb3@56 g4@41 g4@64 ~@41, ~@19 bb2@57 g4@25 eb4@36 eb4@70 ~@49, ~@55 g3@64 ~@7 bb3@83 ~@47]/8",
})).s("gm_piano").gain(0.08)

stack(piano, piano_soft)

More by Edvard Grieg