Strudelify

The Dark and Endless Dalek Night

Murray Gold

KeyE♭ majorTempo120 bpm
0:00/0:00
// The Dark and Endless Dalek Night — Murray Gold
// 120 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: ch 1 "Piccolo" named as a pipe, played on piccolo (its trombone patch is not one); ch 2 "Flute" named as a pipe, played on flute (its tuba patch is not one); ch 3 "Flute" named as a pipe, played on flute (its timpani patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/5976396; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 114 bars on a 24-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.

// other · piccolo
const piccolo = note(`<
  ~@13 A B C D E D C D E D C F G H I H G J K L M@2 N O@8 P@2 Q R S@2 T@4 U V W@2 X@7 ~@12 Y@8 Z AA AB AC AD AE AA AB AC
  AD AE AF@2 AC AD AE AA AB AC AD AG@3 AH@6
>`.pickRestart({
  A: "~ ab6", B: "g6", C: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3",
  D: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2", E: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3",
  F: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 [c2,d5] ~ eb5", G: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3, f6!2",
  H: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, eb6!2", I: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3, d6!2",
  J: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, g6!2", K: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3, ab6!2",
  L: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, bb6!2", M: "[g2,c7]/2",
  N: "c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~ c2",
  O: "[~ c2 ~ c2 ~ c2 ~ [c2,ab5]@2 g5@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ [c2,f5]@2 f5@2 c2 ~ c2 ~ c2 ~ c2 ~ [c2,ab5]@2 g5@2 c2!2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ [c2,f5]@2 f5@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~ c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@3 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2, ~@11 g5@4 g5@12 ~@4 g5@4 bb5@4 ~@4 g5@3 g5@12 ~@4 g5@4 bb5@4 c6@8 d6@8 eb6@7 f6@8 g6@8 f6@8 eb6@8 d6@8 c7@7 d7@8 eb7@8 f7@8 g7@8 f7@7 eb7@8 d7@5]/8", // Fm F5 Fm F5
  P: "[~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ d2@2 ~@2 d2@2 ~@2 eb2 ~ eb2 ~ eb2@2 ~@2 f2 ~ f2 ~ f2!2 ~ g2@2 ~@2 g2 ~ g2 ~ f2@2 ~@2 f2@2]/2",
  Q: "~@2 eb2 ~ eb2 ~ eb2@2 ~@2 d2 ~ d2 ~ d2 ~ d2 ~ [c2,g6]@2 ~@2 g6@2, ~@22 c2 ~", // C5
  R: "g6@2 c2@2 ~ c2@4 c2@2 c2 ~ c2@2 d6@2 c2 ~ c2 ~ c6@2 c2, c2 ~ ab6@8 ~@7 d6@4 c2 ~@2",
  S: "[~ [c2,g6]@2 g6@2 g6@2 g6@2 c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 d6@2 c2!2 ~ c2 ~ c2 ~ ab2@8 ab2@8, ~@5 c2 ~ c2 ~ ab6@8 ~@8 d6@3 c6@4 ab6@16]/2", // C5
  T: "[[ab2,ab6]@8 ab6@6 ab6@2 [g2,g6]@15 f6@2 f6@2 f6@4 ab6@4 ab6@4 [g2,g6]@16 f6@2 f6@2 f6@3 ab6@4 ab6@4 [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6]@2 ~@2 [c2,c6] ~, ~@8 ab2@8 ~@15 f2@8 ab2@8 ~@16 f2@7 ab2@8 ~@18]/4", // Ab G C
  U: "[c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6]", // C
  V: "~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [g3,c6]@2 ~", // C C5
  W: "[~ [g3,c6] ~ [g3,c6] ~ ab3@4 f3@4 g3@2 ~ c3@12 g3@2 ~@2 g3 ~ g3 ~ ab3@4 f3@4 g3@2 ~@2, ~@5 c6@2 ~@2 c6@2 ~@37]/2", // C5
  X: "[c4@11 ~@4 eb6 ~ eb6 ~ f6@2 ~@2 f6@2 ~@2 gb6 ~ gb6 ~ gb6@2 ~@2 g6 ~ g6 ~ g6 ~ g6 ~ eb6@2 ~@2 eb6 ~ eb6 ~ f6@2 ~@2 f6@2 ~ gb6 ~ gb6 ~ gb6@2 ~@2 g6 ~ g6 ~ g6 ~ g6 ~ c2@72 ~@22, ~@11 eb3@8 f3@8 gb3@8 g3@8 eb3@8 f3@7 gb3@8 g3@8 ~@94]/7",
  Y: "[~@7 g6@18 b6@18 f6@18 b6@35]/8", Z: "~@2 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~",
  AA: "~ c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2", AB: "~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3",
  AC: "c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@2", AD: "~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2",
  AE: "c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~",
  AF: "[~ c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3, ~@4 ab6@5 g6@10 ~@5]/2",
  AG: "[[c2,d5] eb5 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3, ~ f6@5 f6@5 eb6@5 eb6@5 d6@5 d6@5 eb6@5]/3", // Csus2
  AH: "[c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ [g2,c6]@40 ~@14, eb6@5 f6@5 f6@5 g6@5 g6@5 ab6@5 ab6@5 bb6@5 bb6@5 ~@27]/6", // C5
})).s("gm_piccolo").gain(0.3)

// other · piccolo · soft notes
const piccolo_soft = note("<~@4 A B C@2 B A B C B A B ~@41 D E F ~@5 G@6 H@8 ~@36>".pickRestart({
  A: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3", B: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2",
  C: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3", D: "~@13 c6!2 ~ c6@2 ~@2 c6 ~ c6 ~",
  E: "c6 ~ c6 ~ c6@2 ~@2 c6@2 ~@2 c6 ~ c6 ~ c6@2 ~@2 c6 ~ c6 ~", F: "c6@2 ~@2 c6 ~ c6 ~ c6 ~ c6 eb6@2 ~@11",
  G: "[~ a5@18 c6@18 ab5@18 db6@17]/6", H: "[~ db6@9 eb5@18 gb5@18 gb5@9 g5@36 ~@5]/8",
})).s("gm_piccolo").gain(0.2)

// other · flute
const flute = note(`<
  ~@13 A B C D E D C D E D C F G H I H G J K L M@2 N O@8 P@2 Q R S@2 T@4 U V W@2 X@7 ~@12 Y@2 Z@3 AA@3 AB AC AD AE AF AG
  AC AD AE AF AG AH@2 AE AF AG AC AD AE AF AI@3 AJ@2 AK@4
>`.pickRestart({
  A: "~@12 ab5@11 ~", B: "g5@23 ~", C: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3",
  D: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2", E: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3",
  F: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 [c2,d5] ~ eb5", // Csus2
  G: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3, f5@11 ~ f5@11 ~",
  H: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, eb5@11 ~ eb5@11 ~",
  I: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3, d5@11 ~ d5@11 ~",
  J: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, g5@11 ~ g5@11 ~",
  K: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3, ab5@11 ~ ab5@11 ~",
  L: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2, bb5@11 ~ bb5@11 ~", M: "[c2, c6@23 ~]/2",
  N: "c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~ c2",
  O: "[~ c2 ~ c2 ~ c2 ~ [c2,ab4]@2 g4@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ [c2,f4]@2 f4@2 c2 ~ c2 ~ c2 ~ c2 ~ [c2,ab4]@2 g4@2 c2!2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ [c2,f4]@2 f4@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~ c2 ~ c2 ~ c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2@2 ~@2 c2@3 c2@2 c2 ~ c2@2 ~@2 c2 ~ c2 ~ c2, ~@11 g4@4 g4@12 ~@4 g4@4 bb4@4 ~@4 g4@3 g4@12 ~@4 g4@4 bb4@4 c5@8 d5@8 eb5@7 f5@8 g5@8 f5@8 eb5@8 d5@7 ~ c6@7 d6@8 eb6@8 f6@8 g6@8 f6@7 eb6@8 d6@5]/8", // Fm F5 Fm F5
  P: "[~ c2 ~ c2@2 ~@2 c2 ~ c2 ~ d2@2 ~@2 d2@2 ~@2 eb2 ~ eb2 ~ eb2@2 ~@2 f2 ~ f2 ~ f2!2 ~ g2@2 ~@2 g2 ~ g2 ~ f2@2 ~@2 f2@2]/2",
  Q: "~@2 eb2 ~ eb2 ~ eb2@2 ~@2 d2 ~ d2 ~ d2 ~ d2 ~ [c2,g5]@2 ~@2 g5@2, ~@22 c2 ~", // C5
  R: "g5@2 c2@2 ~ c2@4 c2@2 c2 ~ c2@2 d5@2 c2 ~ c2 ~ c5@2 c2, c2 ~ ab5@7 ~@8 d5@4 c2 ~@2",
  S: "[~ [c2,g5]@2 g5@2 g5@2 g5@2 c2@2 ~@2 c2@4 c2@2 c2 ~ c2@2 d5@2 c2!2 ~ c2 ~ c2 ~ ab2@8 ab1@8, ~@5 c2 ~ c2 ~ ab5@7 ~@9 d5@3 c5@4 eb5@15 ~]/2", // C5
  T: "[[ab1,eb5]@8 eb5@6 eb5@2 [c2,eb5]@15 eb5@2 eb5@2 eb5@4 eb5@4 eb5@4 [g1,eb5]@16 eb5@2 eb5@2 eb5@3 eb5@4 eb5@4 [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6]@2 ~@2 [c2,c6] ~, ~@8 ab1@8 ~@15 f1@8 ab1@8 ~@16 f1@7 ab1@8 ~@18]/4", // Ab5 Cm C
  U: "[c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6]", // C
  V: "~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6]@2 ~@2 [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [c2,c6] ~ [g3,c6]@2 ~", // C C5
  W: "[~ [g3,c6] ~ [g3,c6] ~ ab3@4 f3@4 g3@2 ~ c3@12 g3@2 ~@2 g3 ~ g3 ~ ab3@4 f3@4 g3@2 ~@2, ~@5 c6@2 ~@2 c6@2 ~@37]/2", // C5
  X: "[c4@11 ~@4 eb6 ~ eb6 ~ f6@2 ~@2 f6@2 ~@2 gb6 ~ gb6 ~ gb6@2 ~@2 g6 ~ g6 ~ g6 ~ g6 ~ eb6@2 ~@2 eb6 ~ eb6 ~ f6@2 ~@2 f6@2 ~ gb6 ~ gb6 ~ gb6@2 ~@2 g6 ~ g6 ~ g6 ~ g6 ~ c2@72 ~@22, ~@11 eb3@8 f3@8 gb3@8 g3@8 eb2@8 f2@7 gb2@8 g2@8 ~@94]/7",
  Y: "[~@7 g5@17]/2", Z: "[~ b5@17 ~ f5@17]/3", AA: "[~ b5@34 ~]/3",
  AB: "~@2 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~", AC: "~ c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2",
  AD: "~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3", AE: "c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@2",
  AF: "~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2", AG: "c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~",
  AH: "[~ c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3, ~@8 ab5@9 ~ g5@19 ~@11]/2",
  AI: "[[c2,d5] eb5 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3, ~@2 f5@9 ~ f5@9 ~ eb5@9 ~ eb5@9 ~ d5@9 ~ d5@9 ~ eb5@9 ~]/3", // Csus2
  AJ: "[c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2, eb5@9 ~ f5@9 ~ f5@9 ~ g5@9 ~ g5@8]/2",
  AK: "[c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2@2 ~@3 c2 ~@2 c2 ~ c2@2 ~@3 c2 ~@2 c2 ~ c2 ~@2 c2 ~ c2@40 ~@14, ~@2 ab5@9 ~ ab5@9 ~ bb5@9 ~ bb5@9 ~ c6@38 ~@16]/4",
})).s("gm_flute").gain(0.3)

// other · flute · soft notes
const flute_soft = note("<A B C B A B C@2 B A B C B A B ~@41 D E F ~@5 G@3 H@3 I@8 ~@36>".pickRestart({
  A: "c2@3 ~@3 c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3", B: "c2 ~@2 c2 ~@2 c2@3 ~@3 c2 ~@2 c2 ~@2 c2 ~@2 c2 ~@2",
  C: "c2@3 ~@3 c2 ~@2 c2 ~@2 c2@3 ~@3 c2@3 ~@3", D: "~@13 c6!2 ~ c6@2 ~@2 c6 ~ c6 ~",
  E: "c6 ~ c6 ~ c6@2 ~@2 c6@2 ~@2 c6 ~ c6 ~ c6@2 ~@2 c6 ~ c6 ~", F: "c6@2 ~@2 c6 ~ c6 ~ c6 ~ c6 eb6@2 ~@11",
  G: "[~ a5@17 ~ c6@17]/3", H: "[~ ab5@17 ~ db6@17]/3", I: "[~@2 db6@17 ~ eb5@34 ~@2 gb5@34 ~@2 gb5@17 ~ g5@68 ~@14]/8",
})).s("gm_flute").gain(0.2)

// other · clarinet · "B♭ Clarinet"
const clarinet = note(`<
  ~@13 A B ~ C@2 ~ D@2 E@2 F G H I J I H K L M N@2 ~@3 O@7 ~ P Q R@2 S@4 T U V ~ W@2 X Y ~@15 Z@8 ~@11 AA@2 AB@5 AC@2
  AD@3 AE@6
>`.pickRestart({
  A: "~ ab5", B: "g5", C: "[g3 c4 eb4@6]/2", D: "[g3 c4 d4@6]/2", E: "[f3 b3 d4@4 f3 b3]/2", F: "c4",
  G: "~@21 d5 ~ eb5", H: "f5!2", I: "eb5!2", J: "d5!2", K: "g5!2", L: "ab5!2", M: "bb5!2", N: "c6/2",
  O: "[~@22 c4@8 d4@8 eb4@7 f4@8 g4@8 f4@8 eb4@8 d4@8 c5@7 d5@8 eb5@8 f5@8 g5@8 f5@7 eb5@8 d5@8 ~@21]/7",
  P: "~@9 g5 ~ g5", Q: "g5@2 ab5@8 ~@5 d5@2 d5@4 c5@3", R: "[~ g5@2 g5@2 g5@2 g5@2 ab5@8 ~@6 d5@2 d5@3 c5@4 ab5@16]/2",
  S: "[ab5@8 ab5@6 ab5@2 g5@15 f5@2 f5@2 f5@4 ab5@4 ab5@4 g5@16 f5@2 f5@2 f5@3 ab5@4 ab5@4 c5@2 ~@2 c5 ~ c5 ~ c5@2 ~@2 c5@2 ~@2 c5 ~]/4",
  T: "c5 ~ c5@2 ~@2 c5 ~ c5 ~ c5 ~ c5 ~ c5@2 ~ c5@2 ~@2 c5 ~ c5",
  U: "~ c5@2 ~@2 c5 ~ c5 ~ c5@2 ~@2 c5 ~ c5 ~ c5 ~ c5 ~ c5@2 ~", V: "~ c5 ~ c5 ~ c5@2 ~@2 c5@2 ~@13",
  W: "[~@19 f5@2 ~@2 f5@2 ~@2 gb5 ~ gb5 ~ gb5@2 ~@2 g5 ~ g5 ~ g5 ~ g5 ~ eb5@2 ~@2 eb5]/2",
  X: "~ eb5 ~ f5@2 ~@2 f5@2 ~ gb5 ~ gb5 ~ gb5@2 ~@2 g5 ~ g5 ~ g5 ~", Y: "g5 ~@23",
  Z: "[~@7 eb5@18 g5@18 db5@18 g5@35]/8", AA: "[~@4 ab5@5 g5@10 ~@5]/2",
  AB: "[~@2 g3 c4 eb4@6 g3 c4 d4@6 f3 b3 d4@4]/5", AC: "[f3@5 b3@5 c4@20 ~@18]/2",
  AD: "[d5 eb5 f5@10 f5@10 eb5@10 eb5@10 d5@10 d5@10 eb5@10]/3",
  AE: "[eb5@5 f5@5 f5@5 g5@5 g5@5 ab5@5 ab5@5 bb5@5 bb5@5 g5@20 ~@7]/6",
})).s("gm_clarinet").gain(0.4)

// other · clarinet · "B♭ Clarinet" · soft notes
const clarinet_soft = note("<~@56 A B C ~@5 D@6 E@8 ~@36>".pickRestart({
  A: "~@13 c5!2 ~ c5@2 ~@2 c5 ~ c5 ~", B: "c5 ~ c5 ~ c5@2 ~@2 c5@2 ~@2 c5 ~ c5 ~ c5@2 ~@2 c5 ~ c5 ~",
  C: "c5@2 ~@2 c5 ~ c5 ~ c5 ~ c5 eb5@2 ~@2 eb5 ~ eb5 ~@6", D: "[~ e4@18 ab4@18 e4@18 bb4@17]/6",
  E: "[~ bb4@9 bb3@18 d4@18 d4@9 eb4@36 ~@5]/8",
})).s("gm_clarinet").gain(0.2)

// other · clarinet · "B♭ Clarinet"
const clarinet_2 = note(`<
  ~@13 A B ~@9 C D@2 E D@2 F@2 G H@2 I ~@5 J@4 ~ K L M@2 N@4 O P Q ~ R@2 S T ~@34 U@2 ~@7 V@3 W@6
>`.pickRestart({
  A: "~ f5", B: "eb5", C: "~@21 d5 ~ eb5", D: "c5!2", E: "b4!2", F: "eb5!2", G: "f5!2", H: "g5/2", I: "~@3 c5!2 ~",
  J: "[~@13 c4@7 d4@8 eb4@8 f4@8 g4@8 f4@7 eb4@8 d4@8 ~@21]/4", K: "~@9 g4 ~ g4", L: "g4@2 ab4@8 ~@5 d4@2 d4@4 c4@3",
  M: "[~ g4@2 g4@2 g4@2 g4@2 ab4@8 ~@6 d4@2 d4@3 c4@4 eb5@16]/2",
  N: "[eb5@8 eb5@6 eb5@2 eb5@15 eb5@2 eb5@2 eb5@4 eb5@4 eb5@4 eb5@16 eb5@2 eb5@2 eb5@3 eb5@4 eb5@4 c4@2 ~@2 c4 ~ c4 ~ c4@2 ~@2 c4@2 ~@2 c4 ~]/4",
  O: "c4 ~ c4@2 ~@2 c4 ~ c4 ~ c4 ~ c4 ~ c4@2 ~ c4@2 ~@2 c4 ~ c4",
  P: "~ c4@2 ~@2 c4 ~ c4 ~ c4@2 ~@2 c4 ~ c4 ~ c4 ~ c4 ~ c4@2 ~", Q: "~ c4 ~ c4 ~ c4@2 ~@2 c4@2 ~@13",
  R: "[~@19 f4@2 ~@2 f4@2 ~@2 gb4 ~ gb4 ~ gb4@2 ~@2 g4 ~ g4 ~ g4 ~ g4 ~ eb4@2 ~@2 eb4]/2",
  S: "~ eb4 ~ f4@2 ~@2 f4@2 ~ gb4 ~ gb4 ~ gb4@2 ~@2 g4 ~ g4 ~ g4 ~", T: "g4 ~@23", U: "[~@4 f5@5 eb5@10 ~@5]/2",
  V: "[d5 eb5 c5@10 c5@10 c5@10 c5@10 b4@10 b4@10 c5@10]/3",
  W: "[c5@5 c5@5 c5@5 eb5@5 eb5@5 eb5@5 eb5@5 f5@5 f5@5 eb5@20 ~@7]/6",
})).s("gm_clarinet").gain(0.4)

// other · clarinet · "B♭ Clarinet" · soft notes
const clarinet_soft_2 = note("<~@56 A B C ~@5 D@3 E@5 F@7 G@7 ~@28>".pickRestart({
  A: "~@13 c4!2 ~ c4@2 ~@2 c4 ~ c4 ~", B: "c4 ~ c4 ~ c4@2 ~@2 c4@2 ~@2 c4 ~ c4 ~ c4@2 ~@2 c4 ~ c4 ~",
  C: "c4@2 ~@2 c4 ~ c4 ~ c4 ~ c4 eb4@2 ~@2 eb4 ~ eb4 ~@6", D: "[~ a3@18 c4@17]/3", E: "[~ g4@18 db4@27 eb4@14]/5",
  F: "[~@4 gb4@27 g4@36 g4@17]/7", G: "[~ b3@18 f4@18 b3@36 ~@11]/7",
})).s("gm_clarinet").gain(0.2)

// other · alto sax · "Alto Saxophone"
const alto_sax = note(`<
  ~@13 A B ~ C@2 ~ D@2 E@2 F ~ G@2 H G@2 I@2 J K@2 ~@6 L@5 M ~@2 N O@4 ~@23 P@8 ~@10 Q@3 R@5 S@2 T@3 U@6
>`.pickRestart({
  A: "~ f5", B: "eb5", C: "[g4 c5 eb5@6]/2", D: "[g4 c5 d5@6]/2", E: "[f4 b4 d5@4 f4 b4]/2", F: "c5", G: "c5!2",
  H: "b4!2", I: "eb5!2", J: "f5!2", K: "g5/2",
  L: "[~@13 c5@7 d5@8 eb5@8 f5@8 g5@8 f5@7 eb5@8 d5@8 c4@4 d4@2 c4@2 d4@2 eb4@2 f4@2 d4@2 eb4@2 f4@2 g4@2 eb4@2 f4@2 g4@2 ~ f4@2 g4@2 ab4@2 bb4@2 g4@2 ab4@2 bb4@2 c5@2, ~@103 ab4@2 ~@15]/5",
  M: "ab4 bb4 c5 d5 bb4 c5 d5 eb5 f5 g5@2 ~", N: "~ ab5@2",
  O: "[ab5@8 ab5@6 ab5@2 g5@15 f5@2 f5@2 f5@4 ab5@4 ab5@4 g5@16 f5@2 f5@2 f5@3 ab5@4 ab5@4 ~@18]/4",
  P: "[~@7 eb5@18 g5@18 db5@18 g5@35]/8", Q: "[~@2 f3@5 b3@5 d4@20 f5@10 eb5@20 ~@10]/3",
  R: "[~@2 g4 c5 eb5@6 g4 c5 d5@6 f4 b4 d5@4]/5", S: "[f4@5 b4@5 c5@20 ~@18]/2",
  T: "[~ c5@5 c5@5 c5@5 c5@5 b4@5 b4@5 c5@5]/3", U: "[c5@5 c5@5 c5@5 eb5@5 eb5@5 eb5@5 eb5@5 f5@5 f5@5 g5@20 ~@7]/6",
})).s("gm_alto_sax").gain(0.4)

// other · alto sax · "Alto Saxophone" · soft notes
const alto_sax_soft = note("<~@64 A@6 B@8 ~@36>".pickRestart({
  A: "[~ e4@18 ab4@18 e4@18 bb4@17]/6", B: "[~ bb4@9 bb3@18 d4@18 d4@9 eb4@36 ~@5]/8",
})).s("gm_alto_sax").gain(0.15)

// other · alto sax · "Alto Saxophone"
const alto_sax_2 = note("<~@13 A B ~@10 C D E D C F@2 G H@2 I ~@5 J@5 K ~@2 L M@4 ~@42 N@2 ~@7 O@3 P@6>".pickRestart({
  A: "~ c5", B: "c5", C: "ab4!2", D: "g4!2", E: "f4!2", F: "c5!2", G: "d5!2", H: "eb5/2", I: "~@3 c5!2 ~",
  J: "[~@13 c4@7 d4@8 eb4@8 f4@8 g4@8 f4@7 eb4@8 d4@8 c4@4 d4@2 c4@2 d4@2 eb4@2 f4@2 d4@2 eb4@2 f4@2 g4@2 eb4@2 f4@2 g4@2 ~ f4@2 g4@2 ab4@2 bb4@2 g4@2 ab4@2 bb4@2 c5@2, ~@103 ab4@2 ~@15]/5",
  K: "ab4 bb4 c5 d5 bb4 c5 d5 eb5 f5 g5@2 ~", L: "~ eb5@2",
  M: "[eb5@8 eb5@6 eb5@2 eb5@15 eb5@2 eb5@2 eb5@4 eb5@4 eb5@4 eb5@16 eb5@2 eb5@2 eb5@3 eb5@4 eb5@4 ~@18]/4",
  N: "[~@4 c5@5 c5@10 ~@5]/2", O: "[~ ab4@5 ab4@5 g4@5 g4@5 f4@5 f4@5 g4@5]/3",
  P: "[g4@5 ab4@5 ab4@5 c5@5 c5@5 c5@5 c5@5 d5@5 d5@5 eb5@20 ~@7]/6",
})).s("gm_alto_sax").gain(0.4)

// other · alto sax · "Alto Saxophone" · soft notes
const alto_sax_soft_2 = note("<~@64 A@3 B@5 C@7 D@7 ~@28>".pickRestart({
  A: "[~ a3@18 c4@17]/3", B: "[~ ab3@18 db4@27 eb3@14]/5", C: "[~@4 gb3@27 g3@36 g3@17]/7",
  D: "[~ b3@18 f3@18 b3@36 ~@11]/7",
})).s("gm_alto_sax").gain(0.05)

// other · french horn · "Horn in F"
const french_horn = note(`<
  ~@4 A ~ B ~ C@2 D@2 E@2 F ~ C@2 ~ D@2 G@2 H ~ I@2 J I@2 K@2 L M@2 ~@9 N@2 O ~@2 P Q@4 ~@34 R@2 S T@7 U@5 V@2 W@3 X@6
>`.pickRestart({
  A: "eb4 c4@3", B: "eb4@4 ~ [db4,d4] c4@18", C: "[g3 c4 eb4@6]/2", D: "[g3 c4 d4@6]/2", E: "[f3 b3 d4@4 f4@2]/2",
  F: "eb4", G: "[f3 b3 d4@4 f3 b3]/2", H: "c4", I: "c4!2", J: "b3!2", K: "eb4!2", L: "f4!2", M: "g4/2",
  N: "[~@3 c4@4 d4@2 c4@2 d4@2 eb4@2 f4@2 d4@2 eb4@2 f4@2 g4@2 eb4@2 f4@2 g4@2 ~ f4@2 g3@2 ab3@2 bb3@2 g3@2 ab3@2 bb3@2 c4@2, ~@31 ab4@2 ~@15]/2",
  O: "ab3 bb3 c4 d4 bb3 c4 d4 eb4 f4 g4@2 ~", P: "~ c4@2",
  Q: "[c4@8 c4@6 c4@2 c4@15 c4@2 c4@2 c4@4 c4@4 c4@4 c4@16 c4@2 c4@2 c4@3 c4@4 c4@4 ~@18]/4",
  R: "[~@10 eb4@5 c4@15 ~@18]/2", S: "~@2 eb4@4 [db4,d4] c4@15 ~@2",
  T: "[~@18 g3@5 c4@5 eb4@30 g3@5 c4@5 d4@30 f3@5 b3@5 d4@20 f4@10 eb4@20 ~@10]/7",
  U: "[~@2 g3 c4 eb4@6 g3 c4 d4@6 f3 b3 d4@4]/5", V: "[f3@5 b3@5 c4@20 ~@18]/2",
  W: "[~ c4@5 c4@5 c4@5 c4@5 b3@5 b3@5 c4@5]/3", X: "[c4@5 c4@5 c4@5 eb4@5 eb4@5 eb4@5 eb4@5 f4@5 f4@5 g4@20 ~@7]/6",
})).s("gm_french_horn").gain(0.4)

// other · french horn · "Horn in F"
const french_horn_2 = note(`<
  ~@13 A B ~@10 C D E D C F@2 G H@2 I ~@8 J@2 K ~@2 L M@4 ~@37 N@7 ~@7 O@3 P@6
>`.pickRestart({
  A: "~ c4", B: "c4", C: "ab3!2", D: "g3!2", E: "f3!2", F: "c4!2", G: "d4!2", H: "eb4/2", I: "~@3 c4!2 ~",
  J: "[~@3 c4@4 d4@2 c4@2 d4@2 eb4@2 f4@2 d4@2 eb4@2 f4@2 g4@2 eb4@2 f4@2 g4@2 ~ f4@2 g3@2 ab3@2 bb3@2 g3@2 ab3@2 bb3@2 c4@2, ~@31 ab4@2 ~@15]/2",
// … 91 more lines

More by Murray Gold