Strudelify

Chanukah Medley for 2 Violins

dr.susan

KeyE♭ majorTempo120 bpm
0:00/0:00
// Chanukah Medley for 2 Violins — dr.susan
// 120 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5884032; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 68 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 part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · violin
const violin = note(`<
  A B C@3 D E F E G H@2 I J K@2 L M K@2 I J N O P Q R S T U V W X Y ~ Z AA AB ~ Z AA AC AD AE AF AG AD AE AH AI AJ AK
  AL@2 AM@2 AN AO AP AQ AR AS AT AU AT AV A AW
>`.pickRestart({
  A: "eb5 f5 g5 f5 eb5@2 eb5!2", B: "f5@2 eb5 d5 c5@2 ~@2", C: "~ g4 c4 g4 ~ g4 c4 g4", D: "~ f4 bb3 f4 ~ f4 bb3 g4",
  E: "eb4 f4 g4 f4 eb4@2 eb4!2", F: "f4@2 eb4 f4 g4@2 ~ eb4", G: "f4@2 eb4 d4 c4@2 c4@2", H: "g4!2 ~ c4",
  I: "eb4@2 eb4!2 f4@2 eb4 d4", J: "eb4", K: "g4@2 g4!2 ab4@2 g4 f4", L: "eb4@2 eb4!2 f4@2 eb4 f4", M: "g4",
  N: "~ eb4 ~ eb4 ~ eb4 ~ eb4", O: "~ eb4 ~ eb4 ~ f4 ~ f4", P: "~ f4 ~ f4 ~ f4 ~ f4", Q: "~ f4 ~ f4 ~ eb4 ~@2",
  R: "eb4 bb3 eb4 bb3 eb4 bb3@2 bb3", S: "eb4!2 d4 c4 bb3@3 bb3", T: "d4 bb3 d4 bb3 d4 bb3@2 bb3",
  U: "d4!2 c4 d4 eb4 g4!3", V: "g4 eb4 g4 eb4 g4 eb4@2 eb4", W: "g4!2 f4 eb4 d4@3 d4", X: "f4 d4 f4 d4 f4 d4@2 d4",
  Y: "f4 ~@5 eb4 ~", Z: "d5@2 d5@2 ~ gb5 eb5 d5", AA: "eb5@2 eb5@2 ~ g5 f5 eb5", AB: "d5@4 bb4 a4 bb4@2 d5@8",
  AC: "d5@4 bb4 a4 bb4@2 a4@8", AD: "d4 a4@2 g4 gb4 g4 a4@2", AE: "c4 g4@2 gb4 eb4 gb4 g4@2",
  AF: "eb4@4 c4@3 d4 eb4@2 g4@2 eb5@4", AG: "d5 g4 gb4@2", AH: "eb4@4 c5@3 bb4 a4@2 g4@2 eb5@4",
  AI: "d5@4 g4 gb4 g4@2 gb4@8", AJ: "g4 bb4", AK: "g4 d5 bb4 g4", AL: "g4@2 bb4@2 d5@3 c5 bb4@2 d5@2 c5@2 bb4@2",
  AM: "a4@2 c5@2 eb5@3 d5 c5@2 eb5@2 d5@2 c5@2", AN: "d5@2 gb5!2 d5@2 c5!2", AO: "bb4 a4 f5 d5 g4@4",
  AP: "g4!2 a4@2 bb4!2 a4@2", AQ: "d5!3 g4 bb4!2 a4@2", AR: "g4!2 a4@2 bb4!2 c5@2", AS: "d5!3 d4 g4!2 g4@2",
  AT: "eb4 g4", AU: "d4 g4", AV: "d4@4 eb4 g4 bb4@2", AW: "f5@2 eb5 d5 c5@2 [g3,d4]@2",
})).s("gm_violin").gain(0.3)

stack(violin)