Strudelify

Kezdok zongoramuzikaja (First Term at the Piano), BB 66: No. 16: Paraszttanc (Peasant's Dance): Allegro moderato

Bela Bartok

KeyA majorTempo120 bpm
0:00/0:00
// Kezdok zongoramuzikaja (First Term at the Piano), BB 66: No. 16: Paraszttanc (Peasant's Dance): Allegro moderato — Bela Bartok
// 120 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 26 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@3 B@2 C@5 D E F@4 G@3 H@7>".pickRestart({
  A: "[~ d2 ~@5 g#5@3 ~@10 f#5@2 ~ f#5@2 ~ d2 a5 ~@5 g#5@3 [a2,d3]@2 ~ e5@3 e5@2 ~@2 [d3,g#3]@5 ~@2 [d2,d5] ~@5 c#5@3 ~@4 d5@3 ~@3 b4@2 ~ b4@2 c#5@2 [d2,d5] ~@5 c#5@3 ~@3 a4@3 a4@2, ~ a5@4 [a2,d3]@5 g#5@7 a5@5 d5@4 ~@10 g#5@3 d3@5 d5 e5@8 ~@3 b4@8 b4@6 c#5@4 g4@4 ~@10 c#5@8, ~@4 f#5@6 [a2,d3]@3 a5 d3@5 g#5@6 g#5@3 ~@3 a5@20 ~@12 c#5@6 d5@8 ~@7 d5@12, ~@6 a5@6 f#5@8 [d3,a3]@5 ~@13 f#5@13 ~@7 d5@8 d3@6 [d3,g3,a3]@5 ~@13 b4@6, ~@14 a2@11 ~@5 [a2,d3,f#5]@8 ~ a2@12 ~@6 [g2,d3]@6 [g2,d3]@3 g2@12 ~@4 [g2,d3,b4]@7 [g2,d3]@2 [g2,d3]@5]/3", // D5 Ddim D D5 Dsus4 D G5 G …
  B: "[~@2 [d3,g3,a3]@8 [f#2,a5]@2 ~@4 g#5@3 ~@4 a5@3 ~@4 d5@2 f#5@2 ~ a5@3 ~@3 g#5@3 ~@3 [c#3,f#3,e5]@4 ~@2 [f#3,a3,c4,e5]@7 ~ [g2,d5]@2 ~, g4@4 ~@10 [c#3,f#3,f#5]@5 g#5@7 a5@2 ~ [b3,f#5]@2 ~@7 [c#3,f#3,f#5]@6 g#5@7 e5@2 ~@11, ~ a4@8 ~@6 a5@6 f#5@6 g#5@2 f#3@5 ~ f#2@18 ~@11, ~@20 [c#3,f#3]@3 [c#3,f#3]@5 d4@2 ~@4 g#5@2 ~@4 a5@13 ~@11, ~@44 [c#3,f#3] f#5@7 d5@2 ~@10]/2", // Dsus4 F#m F#7 F#m7b5 G5 F#5 B5 F#5
  C: "[~@4 c#5@3 ~@3 d5@3 ~@3 b4@2 ~ b4@2 c#5@2 [g2,d5] ~@5 c#5@3 ~@3 [f3,b3,a4]@3 a4@2 ~ [a3,c#4,a4]@11 ~ [c2,g2] ~@2 g5@3 ~@4 e5@3 ~@5 [g3,c4,d4]@3 ~ g3@2 ~@11 e5@2 ~@3 [g3,c4,f#4,c5]@3 ~ [g3,c4]@2 ~ [g3,c4]@2 ~ [c3,g3,e5] ~ g5@4 [g3,c4,e4,f#5]@2 ~ e5@3 ~@6 [g3,c4,d4]@3 [g3,c4,d4]@2 ~ [g3,c4,e4] ~@9 e5@3 ~@3 [a#3,f#4,c5]@3 [a#3,e4]@2 ~ g4@4 [f3,g4] ~@2 [e4,c5] ~@2 [f3,g4], ~ [f#3,b3,b4]@6 c#5@6 d5@5 g4@4 ~@10 c#5@6 ~@3 e4@5 ~@13 [e4,f#5]@2 f#5@7 ~ f#5@8 [c4,e5]@2 f#5@3 ~@2 f#5@2 f#5@6 d5@4 [f#4,c5]@5 ~@10 f#5@4 e5@11 ~ e5@2 ~ [g3,e4,g5]@7 [g3,c4]@9 ~@14, ~@2 d5@6 b4@7 c#5@6 ~@6 d5@10 ~@16 e5@9 e4@9 a5@7 [g3,e4]@2 ~ g3@6 [g3,c4]@3 d5 e5@8 f#4@2 ~@11 [g3,c4]@6 [g3,c4,d4] g5@7 ~@9 g5@7 d5@3 ~@15, ~@7 [f#3,b3]@3 f#3@12 ~@4 [f3,b3,b4]@7 b4@4 ~@3 g4@2 ~@12 f#5@5 ~ g5@9 [g3,c4,d4] g5@10 g5@2 ~@3 g5@16 ~@3 f#5@5 g5@9 f#5@8 ~@2 f#5@6 f#5@2 [e4,f#5]@9 ~ [f#4,c5]@7 ~@7, ~@10 b3@6 [b3,f#4]@5 ~@11 [f3,b3]@3 ~@25 c4@3 ~@3 e5@9 d4@5 [c4,e4]@7 e4@15 ~@9 e4@9 a5@6 ~@14 d5 e5@5 ~@14]/5", // G5 Bm7b5 A C5 Gsus4 C C5 C …
  D: "~@2 [d4,c5] ~@2 g4 ~@2 [c4,c5] ~@3 [a#4,c5] ~ [c4,f4] a#4@2 [f3,g4] ~@2 [c4,c5] ~@2 [f3,c5] ~@3 d5@2 [f3,e5] ~@2, ~@26 [c4,a#4,c5]@3 ~@3", // D7 C A#sus2 F5 Fsus2 C F5 Fmaj7 …
  E: "[c4,f4,a4,c5] b4 ~ [c4,f4,a4] ~@2 c4@2 ~ [f3,g4] ~@2 [c4,e4,c5] ~@2 [f3,g4] ~@2 c5 ~@2 [f3,g4] ~ c5 [c4,e4] ~ f3 ~ a#4 [c4,g4,a4] a#4@2, ~@2 c5@5 ~@20 c5@2 ~@3, ~@5 a4@2 ~@25", // F Fsus2 C Fsus2 C Am7
  F: "[a4@2 ~ [g3,c4,f4,a4] g4 ~ [g3,c4,f4] ~@2 [g3,c4,f4,a4] ~ [g3,c4,f4] ~@2 a4 [g3,c4,f4,g4] ~ [g3,b3,f4,a4]@8 ~ e5 ~@2 g5@3 ~@3 e5@3 ~@4 g5@2 b3 ~@2 d4@3 e5 f#5@2 [c#4,e4] ~@8 d5 ~ f#4 c5@2 ~ [d4,f#4]@3 f#4@3 ~@3 g5@3 ~@4 e5@3 e5@3 d4 b3 ~ d4@2 ~@8 [c#4,g5]@3 ~@3 [e4,e5]@2 ~ [d3,d5] ~@2 [d4,f#4,c5]@3 ~@4 f#4@3 [g3,c4,e4,g4] ~@2, ~@5 a4@2 ~@3 g4@2 ~@5 g4 ~@8 a2@15 [b3,d4,f#5]@2 ~@15 f#5@5 e5@2 ~@9 e5@2 f#5@4 f#5@2 g5@8 f#5@2 g5@2 ~@7 f#5 e4@4 [c#4,e4,f#5] g5 f#5@2 ~@3 e5@11 ~@4, ~@11 a4@2 ~@14 f#5@5 [c#4,e4]@3 c#4@8 ~@13 [e4,f#5]@3 [c#4,e4,e5]@5 ~ d4 ~@15 [c#4,e4]@3 [c#4,e4]@7 ~@2 a5@18 ~@3 d5@10 ~@4, ~@32 f#5@2 f#5@4 a3@8 ~@4 a3@12 a3@12 ~ a2@17 ~ b3 ~@3 [b3,d4]@14 ~@7 c5@6 ~@4, ~@33 g5@5 e5@5 ~ a5@7 ~@2 g5@3 ~ g5@6 ~ d5@2 ~@2 c5@7 ~@8 f#5@4 a3@13 [a3,e5]@11 ~@7 f#4 d4@6 ~@3]/4", // F Csus4 F Csus4 G7 C#m D C#dim …
  G: "[[g4,c5] ~@2 [g3,e4,g4] ~@2 [c4,g4,c5] ~@2 [g3,e4,g4] ~@2 [e4,g4,c5] ~@2 [g3,d4] a#4 a4 f4 ~ [g3,e4,g4] ~@2 c5 [e4,g4] ~ [g3,e4,c5] ~@2 g4 c4 ~ [f3,e5] ~@2 [f4,a4] b4@2 [f4,a4] ~@2 [c4,f4,a4]@2 ~ [g3,c4,g4] ~@2 [e4,g4,c5] ~@2 [g3,e4,g4] ~@2 [e4,g4,c5] ~@2 [g3,c4,e4,g4] ~@2 [c4,g4,c5] ~@2 [e3,g3] ~ [d4,a4] g3 ~ [a2,a4] ~@3 [e3,g4,a4]@2 [c#4,a4]@2 ~@4 a4 ~@4 [c#4,a4]@7 a#3@2 ~ [e4,g4,c6] ~, ~@15 c5@2 ~@2 a#4@2 ~@8 c5@2 d5@2 ~@2 c5@2 ~ c5@6 ~@18 c5@2 ~@13 g4@2 ~@3 e3@9 ~@5, ~@38 c4@2 ~@23 a#4@2 ~ a#4@2 ~@8 [e3,a4]@2 a2@13 ~@5, ~@82 a4@2 ~@7 g5 ~@4, ~@83 g4@8 ~@5]/3", // C5 C C5 C G5 C Em C …
  H: "[~@3 [g4,c6] e4 ~ [a#3,g5]@2 ~ [e4,g4,c6] ~@4 [d4,a4,a5] ~@2 [a#3,g5]@2 ~ [g4,c6] ~@2 [a#3,c6] ~@4 [a3,e6] ~@5 a4@3 [c4,e4,a4] ~ g3 e4@2 ~ e4@2 ~ e4@2 e4@3 e4@3 c6@3 ~ a#5@2 ~ a#5@2 a2@2 a5@2 ~ a5@3 ~ g5@2 ~@7 a#4@2 ~ a#4@2 ~@3 a4@2 ~@2 a#4@2 ~ a#4@2 [c#4,a4]@2 ~@7 a4@2 g4@2 [a4,e5]@2 ~ [a4,e5]@2 ~ [a4,e5]@3 ~@3 [a4,e5]@3 [a4,e5]@2 ~ [a4,e5]@2 g4 [e3,a4,e5]@2 ~@15 a1@46 ~@29, ~ [a#3,g5]@4 ~@6 a3@2 a#5@2 ~ a#5@2 ~@2 e4@2 ~@4 [g4,c6]@2 ~@3 [a4,c6]@3 c6@6 ~@3 c6@5 ~@9 [e3,c6]@6 a5 ~@3 g5@4 a5@3 a4@3 [c#5,a5]@3 [d4,c5,f5] g3@5 ~@2 a2@3 ~ [e3,g3,d4,f5]@6 ~@3 a2@10 a2@15 e4@2 g4@3 ~@3 g4@60 ~@30, ~@12 c6@2 ~@13 d6@2 ~@3 b5@6 ~@2 g5 ~ a#4@6 [a#4,c6]@6 a#4@10 ~@7 e4@12 a4@2 ~@2 g4@4 ~@4 a4@3 ~@2 g4@5 e3@6 ~@3 e3@6 e3@9 a2@4 ~@91, ~@45 [g3,g5]@6 [g3,g5]@13 ~ e3@9 a5 g5@10 ~ e5@5 ~ c5@2 ~@4 e5@13 ~@6 c#4@14 ~@5 [c#4,a4,e5]@59 ~@29, ~@60 [g4,a5]@4 ~@4 c#4@17 ~ [c#4,a4]@2 ~@13 a4@3 [d4,c5,f5]@2 a#4@5 ~@5 g4@4 [a4,e5] g4@2 a3@8 ~@93]/7", // C5 D# C D5 D# C5 A#sus2 A5 …
})).s("gm_piano").gain(0.56)

// chords · piano · "A.PIANO 1" · soft notes
const piano_soft = note("<~@6 A@2 ~ B C D ~ E F G H I ~ J@2 K ~@4>".pickRestart({
  A: "[~@28 g3@3 [g3,c4]@6 ~@6 c4@2 ~@19]/2", B: "~@2 c4@6 ~@21 c4 ~@2",
  C: "~@3 c4 ~ f3 ~@2 e4 ~@2 f3 ~@2 a4 ~@5 g4 ~@11", D: "~@6 f4@2 ~@10 [c4,d4] ~@13",
  E: "~@4 e4@7 ~ d4 ~@2 b3@4 ~@5 c#4@2 ~@6", F: "~@7 d4@4 ~@21", G: "~@13 c#4 ~@5 a3@3 a3@3 ~ a3@3 ~@3",
  H: "c4 ~@2 c4 ~@2 e4 ~@2 c4 ~@2 c4 ~@8 c4 ~@2 c4 ~ c4 ~@3 e4 ~", I: "~ b3 ~ c4 ~@11 c4 ~@2 c4 ~@3 c4 ~@9, c4 ~@15",
  J: "[~@15 f4 ~@10 e4 ~@4 [c4,e4]@3 [c4,e4]@3 ~@20 d4@6 ~, ~@27 e4@5]/2", K: "~@17 e3@5 ~@10",
})).s("gm_piano").gain(0.32)

stack(piano, piano_soft)

More by Bela Bartok