Strudelify

The Cuckoo

C.DAQUIN1694-1772

KeyG majorTempo132 bpm
0:00/0:00
// The Cuckoo — C.DAQUIN1694-1772
// 132 bpm, 2/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/62104; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 115 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(132/2)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · piano
const piano = note(`<
  A B@2 C D E F G H I J A B@2 C D E F G H K L M N O@2 P Q R S T U V@3 W X@3 Y Z AA A B@2 AB D E F G H AC AD A B@2 AB D E
  F G H K AE M AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV AW AX AY@2 AZ BA BB BC BD BE A B@2 AB D E F G H AC AD
  A B@2 BF D E F G H BG AE M
>`.pickRestart({
  A: "~ b4 c5 b4 e5 b4 c5 b4", B: "g5 b4 c5 b4 e5 b4 c5 b4", C: "g5@4 f#5@4 e5 f#5 e5@2 d#5@4",
  D: "e5 b4 c5 b4 g5 b4 c5 b4", E: "a4!2 b4 a4 f#5 a4 b4 a4", F: "g4!2 a4 g4 e5 g4 a4 g4",
  G: "f#4!2 g4 f#4 d5 f#4 g4 f#4", H: "e4!2 f#4 e4 c5 e4 f#4 e4", I: "d#4@4 e4@4 f#4 e4 f#4@2 g4@4", J: "f#4 g4 f#4@14",
  K: "d#4 e4 d#4 e4 f#4 g4 a4 f#4", L: "b4@4 a4@2 g4@2 g4 f#4 g4 f#4@3 e4@2", M: "[g3,b3,e4]",
  N: "~ d5 e5 d5 g5 d5 e5 d5", O: "b5 d5 e5 d5 g5 d5 e5 d5", P: "b5@4 a5@4 g5 a5 g5@2 f#5@4",
  Q: "g5 d5 e5 d5 b5 d5 e5 d5", R: "c5!2 d5 c5 a5 c5 d5 c5", S: "b4 d5 c5 b4 g5 d5 c5 b4",
  T: "e5@4 d5@4 c5 d5 c5@2 b4@4", U: "b4 a4 b4 a4@5 ~@4 a5@4", V: "f#5@2 ~ a5", W: "d5@2 ~ d5", X: "b4@2 ~ d5",
  Y: "g4 f#4 g4 a4 b4 a4 b4 c5", Z: "d5@4 e5@4 b4 a4 b4 a4@3 g4@2", AA: "[b3,d4,g4]",
  AB: "g5@4 f#5@4 ~ f#5 e5@2 d#5@4, ~@4 e5 ~@3", AC: "d#4 e4 f#4 g4", AD: "f#4", AE: "b4@2 a4 g4 f#4@3 e4",
  AF: "~ b4 a4 b4 g#4 b4 a4 b4", AG: "e5 b4 a4 b4 g#4 b4 a4 b4", AH: "d5 b4 a4 b4 g#4 b4 a4 b4",
  AI: "e5 b4 c#5 d5 e5 d5 c#5 b4", AJ: "c#5!2 b4 c#5 a#4 c#5 b4 c#5", AK: "f#5 c#5 b4 c#5 a#4 c#5 b4 c#5",
  AL: "e5 c#5 b4 c#5 a#4 c#5 b4 c#5", AM: "e5 c#5 d5 e5 f#5 e5 d5 c#5", AN: "d5!2 c#5 d5 b4 d5 c#5 d5",
  AO: "f#5 d5 c#5 d5 b4 d5 c#5 d5", AP: "g5 d5 c#5 d5 b4 d5 c#5 d5", AQ: "g#5 d5 c#5 d5 b4 d5 c#5 d5",
  AR: "a#5 f#5 e5 f#5 c#5 f#5 e5 f#5", AS: "b5 f#5 e5 f#5 d5 f#5 e5 f#5", AT: "g5 a5 f#5 g5 e5 f#5 d5 e5",
  AU: "c#5 d5 c#5 d5 e5 d5 c#5 b4", AV: "a#4@6 b4@2 b4@6 a#4 b4", AW: "[f#4,a#4,c#5]", AX: "~ f#4 g4 f#4 b4 f#4 g4 f#4",
  AY: "d5 f#4 g4 f#4 b4 f#4 g4 f#4", AZ: "d5 c#5 b4 a#4", BA: "b4 f#4 g4 f#4 d5 f#4 g4 f#4",
  BB: "e4!2 f#4 e4 c#5 e4 f#4 e4", BC: "d4!2 e4 d4 b4 d4 e4 d4", BD: "c#4@4 b4@4 c#4@4 b4 a#4 g#4 a#4",
  BE: "[d#4,f#4,b4]", BF: "g5 f#5 e5 d#5", BG: "d#4 e4 d#4 e4 f#4 g4 a4 g4",
})).s("gm_piano").gain(0.2)

stack(piano)