Strudelify

the x-files theme

Misc Television

KeyA minorTempo120 bpm
0:00/0:00
// the x-files theme — Misc Television
// 120 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 2 "Piano" named as a piano, played on piano (its pad halo patch is not one); ch 15 "Violinos" named as a string part, played on violin (its pad choir patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/1677341; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 103 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 · pad metallic · "Baixo elétrico de 5 cordas"
const pad_metallic = note(`<
  ~@2 A@4 B A@14 C D A@3 E A F A E A@3 E A@3 E A@3 G A@3 E A@3 G A@3 F A@3 G A@2 F A ~@12 H@2 I@2 H@8 J@4 H@2 ~@10
>`.pickRestart({
  A: "a1", B: "a0", C: "a1@10 e1 g1", D: "~@10 e1 g1, a1", E: "a1@19 ~ e1@2 g1@2", F: "a1@21 ~ g1@2", G: "a1@11 g1",
  H: "a1/2", I: "[a1@45 ~ g1@2]/2", J: "a1/4",
})).s("gm_pad_metallic").gain(0.5)

// chords · piano
const piano = note(`<
  ~@2 A B C D E F A D A F A B E B G D H B I D J ~ K L M N O P Q R S T U V@2 W@2 R X Y Z AA AB AC AD AE AF AG AH AI AJ AK
  AL AM AN AO AP AQ AR AS Z ~@2 F@10 A B AT D E B A D AU B A B E D A B A AV AW AX AY AZ BA F@4 BB
>`.pickRestart({
  A: "[a2,a4] ~ [e3,c5] ~ [a2,e5] ~ [a4,f5]@2 [a2,c5] ~ [e3,e5] ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, ~@6 e3 ~@5 a2 ~@11", // A C A5 Dm Am E
  B: "a5@2 e3 ~ a2 ~ a5@2 a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@5 e3 ~@17",
  C: "[a2,a4] ~ [e3,c5] ~ [a2,e5] ~ f5@2 [a2,c5] ~ [e3,e5] ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, ~@6 e3 ~@5 a2 ~@11", // A C A5 Am E
  D: "b5@2 e3 ~ a2 ~ b5@2 a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@5 e3 ~@17",
  E: "[a2,a4] ~ [e3,c5] ~ [a2,e5] ~ [e3,f5] ~ [a2,c5] ~ [e3,e5] ~ [a2,f5] ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, ~@3 a4 ~@8", // A C A5 Fmaj7 Am E Dm
  F: "a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~",
  G: "[a2,a4] ~ e3 ~ [a2,e5] ~ [e3,a4] ~ a2 ~ [e3,e5] ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~", // A A5 E
  H: "[a2,a4] ~ e3 ~ [a2,e5] ~ [a4,f5]@2 a2 ~ [e3,e5] ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, ~@6 e3 ~@5 a2 ~@11", // A A5 Dm E
  I: "[a2,a4] ~ [e3,c5] ~ a2 ~ f5@2 [a2,c5] ~ e3 ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, ~@6 e3 ~@5 a2 ~@11", // A C Am
  J: "[a2,a4] ~ [e3,c5] ~ [a2,e5] ~ [e3,a4] ~ [a2,c5] ~ [e3,e5] ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~", // A C A5 Am E
  K: "a4 ~ c5 ~ e5 ~ [a4,a5]@3 ~ e5 ~ a5@2 ~@10", L: "e5@2 a#5 ~ d#6@2 e5 ~ a#5 ~ d#6@2 ~@12",
  M: "e5 ~ a#5 ~ d#6@2 e5 ~ a#5 ~ d#6@2 ~@12", N: "e5 ~ a5 ~ c6@2 e5 ~ a5 ~ c6@2 ~@12",
  O: "e5@2 a5 ~ c6@2 e5 ~ a5 ~ c6@2 ~@12", P: "c5 ~ f#5 ~ b5@2 c5 ~ f#5 ~ b5@2 ~@12",
  Q: "c5@2 f#5 ~ b5@2 c5 ~ f#5 ~ b5@2 ~@12", R: "a4 ~ c5 ~ e5 ~ a5@2 c5 ~ e5 ~ a5@3 ~@9, ~@6 a4 ~@17",
  S: "a4@2 c5 ~ e5 ~ a4 ~ c5 ~ e5 ~@13", T: "e5 ~ a#5 ~ d#6 ~ a#6@2 a#5 ~ d#6 ~ a#6@3 ~@9, ~@6 e5 ~@17",
  U: "e5 ~ a#5 ~ d#6 ~ e5 ~ a#5 ~ d#6 ~@13", V: "d5 ~ g#5 ~ c6 ~ d5 ~ g#5 ~ c6 ~@13",
  W: "c5 ~ f#5 ~ b5 ~ c5 ~ f#5 ~ b5 ~@13", X: "a4 ~ c5 ~ e5 ~ a5@2 c5 ~@3 a5@3 ~@9, ~@6 a4 ~@17",
  Y: "a4@2 c5 ~ e5 ~ [a4,a5]@3 ~ e5 ~ a5@2 ~@10", Z: "a4@2 c5 ~ e5 ~ a4@3 ~ e5 ~ a5 ~@11, ~@6 a5 ~@17",
  AA: "a4@2 f5 ~ c6@2 [a4,a5]@2 f5 ~ c6@2 ~@12", AB: "a4@2 e5 ~ f5 ~ a5 ~ e5 ~ f5 ~ a5 ~@11",
  AC: "c5@2 c5 ~ f5 ~ [a5,c6]@3 ~ f5 ~@13", AD: "c5@2 c5 ~ f5 ~ c5@2 ~@4 a5 ~@11, ~@6 a5 ~@17",
  AE: "a4@2 c5 ~ e5 ~ [a4,a5]@2 c5 ~@3 a5@2 ~@10", AF: "~@2 c5 ~ e5 ~ a5@2 c5 ~ e5 ~ a5@2 ~@10",
  AG: "c5 ~ c5 ~ [e5,c6] ~ a5@2 ~@2 c6 ~ a5@2 ~@10, ~@6 c5 ~@17", // C
  AH: "c5 ~ c5 ~ [c5,e5] ~ a5@2 ~@2 [c5,e5] ~ a5@2 ~@10", AI: "c5 ~ c5 ~ [c5,f5] ~ c6@2 ~@4 a5@2 ~@10, ~@6 a5 ~@17",
  AJ: "c5@2 c5 ~ f5 ~ a5 ~@3 f5 ~ a5 ~@11", AK: "c5 ~ c5 ~ [c5,f5] ~ [a5,c6]@2 ~@4 a5@2 ~@10",
  AL: "c5 ~ c5 ~ [f5,a5] ~ a5 ~@3 f5 ~ a5 ~@11", AM: "b4@2 d#5 ~ f#5 ~ a5@3 ~ f#5 ~ a5@3 ~@9, ~@6 b4 ~@17",
  AN: "b4@2 d#5 ~ [f#5,b5] ~ [b4,a5] ~ d#5 ~ f#5 ~@13", AO: "b4@2 d5 ~ f5 ~ [b4,a5]@3 ~@3 a5@2 ~@10",
  AP: "b4 ~ d5 ~ f5 ~ b4@3 ~ f5 ~ a5 ~@11, ~@6 a5 ~@17", AQ: "a4@2 c5 ~ e5 ~ a5@2 ~@4 a5@2 ~@10",
  AR: "a4@2 c5 ~ e5 ~ a5 ~@5 a5 ~@11", AS: "a4@2 c5 ~ e5 ~ a5 ~@3 e5 ~ a5 ~@11",
  AT: "a4@2 [e3,c5] ~ [a2,e5] ~ f5@2 [a2,c5] ~ [e3,e5] ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@5 e3 ~@5 a2 ~@11", // C A5 Am E
  AU: "a4@2 [e3,c5] ~ [a2,e5] ~ [a4,f5]@2 [a2,c5] ~ [e3,e5] ~ f5@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@5 e3 ~@5 a2 ~@11", // C A5 Dm Am E
  AV: "b4@2 d#5 ~ f#5@2 b4 ~ d#5 ~ f#5@2 ~@12, a5 ~@23", AW: "b4@2 d#5 ~ f#5@2 b4 ~ d#5 ~ f#5@2 ~@12",
  AX: "b4@2 d5 ~ f5@2 ~@18", AY: "b4 ~ d5 ~ f5@2 b4 ~@17",
  AZ: "a4@2 e3 ~ a2 ~ a5@2 a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@5 e3 ~@17",
  BA: "a4@2 e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~ a2 ~ e3 ~, a2 ~@23", BB: "a2 ~ e3 ~ a2 ~@19",
})).s("gm_piano").gain(0.35)

// chords · piano · soft notes
const piano_soft = note(`<
  ~@2 A B C D E F A D A F A B E B G H I B J D K ~ L M N O@2 P@2 Q R S T U@2 V@2 Q W X Y Z AA AB AC AD AE AF AG AH AI AJ
  AK AL AM AN AO AP AQ AR Y AS ~@11 A B C D E B A D A B A B E D A B A AT AU AV AW AX AY ~@5
>`.pickRestart({
  A: "~@12 a4@2 c5 ~ e5 ~ [a4,f5]@2 c5 ~ e5 ~", B: "f5 ~@3 a5 ~ a5 ~",
  C: "~@6 a4@3 ~@3 a4@2 c5 ~ e5 ~ [a4,f5]@2 c5 ~ e5 ~", D: "f5 ~@3 b5 ~ b5 ~",
  E: "~@12 a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~, ~@18 f5 ~@5", F: "f5 ~@7", G: "~@12 a4 ~@3 e5 ~ a4 ~@3 e5 ~",
  H: "~@4 b5 ~ b5 ~", I: "~@12 a4@3 ~ e5 ~ [a4,f5]@3 ~ e5 ~", J: "~@6 a4@3 ~@3 a4@2 c5 ~@3 [a4,f5]@2 c5 ~@3",
  K: "~@12 a4 ~ c5 ~ e5 ~ a4 ~ c5 ~ e5 ~", L: "~@8 c5 ~@3 a4@2 c5 ~ e5 ~ [a4,a5]@2 c5 ~ e5 ~",
  M: "a5@3 ~@9 e5 ~ a#5 ~ d#6@2 e5 ~ a#5 ~ d#6@2", N: "~@12 e5 ~ a#5 ~ d#6@2 e5 ~ a#5 ~ d#6@2",
  O: "~@12 e5 ~ a5 ~ c6@2 e5 ~ a5 ~ c6@2", P: "~@12 c5 ~ f#5 ~ b5@2 c5 ~ f#5 ~ b5@2",
  Q: "~@12 a4 ~ c5 ~ e5 ~ a5@2 c5 ~ e5 ~, ~@18 a4 ~@5", R: "a5@3 ~@9 a4 ~ c5 ~ e5 ~ a4 ~ c5 ~ e5 ~",
  S: "~@12 e5 ~ a#5 ~ d#6 ~ a#6@2 a#5 ~ d#6 ~, ~@18 e5 ~@5", T: "a#6@3 ~@9 e5 ~ a#5 ~ d#6 ~ e5 ~ a#5 ~ d#6 ~",
  U: "~@12 d5 ~ g#5 ~ c6 ~ d5 ~ g#5 ~ c6 ~", V: "~@12 c5 ~ f#5 ~ b5 ~ c5 ~ f#5 ~ b5 ~",
  W: "a5@3 ~@7 e5 ~ a4 ~ c5 ~ e5 ~ a5@2 c5 ~ e5 ~, ~@18 a4 ~@5",
  X: "a5@3 ~@5 c5 ~@3 a4@2 c5 ~ e5 ~ [a4,a5]@2 c5 ~ e5 ~", // A
  Y: "a5@3 ~@5 c5 ~@3 a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~, ~@18 a5 ~@5",
  Z: "a5@3 ~@9 [a4,a5]@2 f5 ~ c6@2 [a4,a5]@2 f5 ~ c6@2", // A
  AA: "a5@2 ~@4 a4@3 ~@3 a4@2 e5 ~ f5 ~ a4@2 e5 ~ f5 ~, ~@18 a5 ~@5",
  AB: "a5 ~@5 c5@2 c5 ~@3 [c5,a5,c6]@2 c5 ~ f5 ~ [c5,a5,c6]@2 c5 ~ f5 ~", // F
  AC: "[a5,c6]@3 ~@5 c5 ~ f5 ~ c5@2 c5 ~ f5 ~ c5@2 c5 ~ f5 ~, ~@18 a5 ~@5", // Am
  AD: "a5 ~@9 e5 ~ a4@2 c5 ~ e5 ~ [a4,a5]@2 c5 ~ e5 ~", AE: "a5@2 ~@12 c5 ~ e5 ~ a5@2 c5 ~ e5 ~",
  AF: "a5@2 ~@6 c5 ~ e5 ~ c5 ~ c5 ~ [e5,c6] ~ a5@2 c5 ~ [e5,c6] ~, ~@18 c5 ~@5", // C
  AG: "a5@3 ~@3 c5 ~ c5 ~@3 c5 ~ c5 ~ [c5,e5] ~ a5@2 c5 ~ [c5,e5] ~, ~@18 c5 ~@5", // C
  AH: "a5@3 ~@3 c5 ~ c5 ~ [c5,f5] ~ c6@2 c5 ~ [c5,f5] ~ [a5,c6]@2 c5 ~ [c5,f5] ~, ~@12 c5 ~@5 c5 ~@5", // F5 Am F5
  AI: "[a5,c6]@3 ~@3 c5@2 c5 ~@3 c5@2 c5 ~ f5 ~ c5@2 c5 ~ f5 ~, ~@18 a5 ~@5", // Am
  AJ: "a5@3 ~@3 c5 ~ c5 ~ [c5,f5] ~ c6@2 c5 ~ [c5,f5] ~ [c5,a5] ~ c5 ~ [c5,f5] ~, ~@12 c5 ~@5 c6@2 ~@4", // F5 F F5
  AK: "[a5,c6]@2 ~@4 c5 ~ c5 ~ a5 ~ c5 ~ c5 ~ [f5,a5] ~ [c5,a5] ~ c5 ~ [f5,a5] ~", // Am F
  AL: "a5 ~@7 d#5 ~@3 b4 ~ d#5 ~ f#5 ~ a5@2 d#5 ~ f#5 ~, ~@18 b4 ~@5",
  AM: "a5@3 ~@7 b5 ~ a5@2 d#5 ~ [f#5,b5] ~ a5@2 d#5 ~ [f#5,b5] ~, ~@12 b4 ~@5 b4 ~@5", // B5
  AN: "a5@2 ~@6 d5 ~ f5 ~ b4@2 d5 ~ f5 ~ [b4,a5]@2 d5 ~ f5 ~", // B7
  AO: "a5@3 ~@5 d5 ~@3 b4@2 d5 ~ f5 ~ b4@2 d5 ~ f5 ~, ~@18 a5 ~@5",
  AP: "a5 ~@5 a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~ [a4,a5]@2 c5 ~ e5 ~", // A
  AQ: "a5@2 ~@4 a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~, ~@18 a5 ~@5",
  AR: "a5 ~@5 a4@2 c5 ~@3 a4@2 c5 ~ e5 ~ a4@2 c5 ~ e5 ~, ~@18 a5 ~@5", AS: "a5 ~@7",
  AT: "f5@3 ~@9 b4 ~ d#5 ~ f#5@2 b4 ~ d#5 ~ f#5@2", AU: "~@12 b4 ~ d#5 ~ f#5@2 b4 ~ d#5 ~ f#5@2",
  AV: "~@6 b4 ~ d5 ~ f5@2 b4 ~ d5 ~ f5@2 b4 ~ d5 ~ f5@2", AW: "~@8 d5 ~ f5@2 b4 ~ d5 ~ f5@2 b4 ~ d5 ~ f5@2",
  AX: "~@2 a4 ~ [a4,a5] ~ [a4,a5] ~", AY: "a5 ~ a4 ~ a4 ~ a4 ~",
})).s("gm_piano").gain(0.1)

// chords · pad poly · "Sintetizador de cordas"
const pad_poly = note("<~@2 A@8 ~@65 B@8 ~@9 C@4 D@7>".pickRestart({
  A: "[e3,a3,b3,c4,e4]/8", B: "[a1,a2]/8", C: "b3/4", D: "c4/7",
})).s("gm_pad_poly").gain(0.5)

// other · pad bowed · "Sintetizador abafado"
const pad_bowed = note("<~@10 A@8 ~@85>".pickRestart({
  A: "a6/8",
})).s("gm_pad_bowed").gain(0.4)

// chords · violin · "Violinos"
const violin = note(`<
  ~@9 A@8 ~@6 B@2 C@2 D@2 E@2 F@2 C@2 D@2 E@2 G@4 H@4 G@4 H@4 I@2 J@2 K@8 L@8 M@2 N@2 M@2 N@2 O@8 ~ P@4 Q@7
>`.pickRestart({
  A: "[~ [e3,a3,b3,c4,e4]@15]/8", B: "[~@11 [a3,c4,e4]@5, e5@7 ~, [a4,c5]@3 ~]/2", C: "[e3,a#3,e4,a#4,d#5]/2",
  D: "[d3,g#3,c4,d4,g#4,c5]/2", E: "[c3,f#3,b3,c4,f#4,b4]/2", F: "[a3,c4,e4,a4,c5,e5]/2", G: "[c3,e3,a3,c4,e4]/4",
  H: "[c3,f3,a3,c4,f4]/4", I: "[d#3,f#3,b3,d#4,f#4,b4]/2", J: "[d3,f3,a3,b3,d4,f4,b4]/2",
  K: "[~@7 e7@4 a6@5, [a2,e3,a3,c4,e4,a4] ~]/8", L: "[~ e7@6 a6@9]/8", M: "[a5,c6,e6,a6]/2", N: "[a5,b5,e6,a6]/2",
  O: "[~@7 e5, [a5,e6,a6]]/8", P: "[[d#3,f#3,a3,b3]@4 ~@3 [e5,b5,e6,b6], [a5,e6,a6]@7 ~, ~ [d3,f3,a3,b3]]/4",
  Q: "[a2,e3,a3,c4,a4,e5,c7]/7", // Am
})).s("gm_violin").gain(0.35)

// other · bassoon · "Fagote"
const bassoon = note("<~@39 A@16 B@4 A@2 C@2 ~@40>".pickRestart({
  A: "b3 a3", B: "b3/2", C: "[b3 a3@3]/2",
})).s("gm_bassoon").gain(0.4)

// other · pad choir · "Sintetizador abafado"
const pad_choir = note("<~@19 A@4 ~@69 B@4 C@7>".pickRestart({
  A: "e4/4", B: "[a3@7 b3]/4", C: "c4/7",
})).s("gm_pad_choir").gain(0.25)

// drums · kick
const kick = s("bd").struct("<~@2 A ~@13 A ~@6 A ~@38 B A@2 C A@2 C A@2 C A@3 D E D@21 A ~@4>".pickRestart({
  A: "x", B: "~@11 x", C: "x ~@10 x", D: "x!2", E: "x ~@5 x ~@4 x",
})).gain(0.5)

// drums · rim
const rim = s("rim").struct("<~@4 A@18 B C A@46 B A@11 B A@15 ~@5>".pickRestart({
  A: "x!8 ~ x ~@2", B: "x!12", C: "x!10 ~@2",
})).gain(0.2)

// drums · rim · soft notes
const rim_soft = s("rim").struct("<~@4 A@18 ~ B A@46 ~ A@11 ~ A@15 ~@5>".pickRestart({
  A: "~@8 x ~ x!2", B: "~@10 x!2",
})).gain(0.1)

// drums · low tom
const low_tom = s("lt").struct(`<
  ~@2 A ~@13 A ~@6 A ~@39 A ~ A ~ A ~ A ~@2 A ~@2 A ~ A B A B A C A D A ~ E ~@2 A ~@7 A ~@4
>`.pickRestart({
  A: "x", B: "~@3 x", C: "~@11 x", D: "~@10 x!2", E: "x ~@22 x",
})).gain(0.45)

// drums · hihat
const hihat = s("hh").struct("<[x!2] [x!4] ~@101>").gain(0.3)

// drums · mid tom
const mid_tom = s("mt").struct("<~@82 [~@5 x] ~ [~@3 x] ~@18>").gain(0.4)

// drums · ride
const ride = s("rd").struct("<~@2 A ~@12 B ~@46 B A ~@10 B ~@28>".pickRestart({
  A: "x", B: "~@7 x",
})).gain(0.5)

// drums · tambourine
const tambourine = s("tb").struct("<~@62 A B@2 C B@2 C B@2 C B@3 D E D@21 B ~@4>".pickRestart({
  A: "~@11 x", B: "x", C: "x ~@10 x", D: "x!2", E: "x ~@5 x ~@4 x",
})).gain(0.45)

// drums · whistle
const whistle = s("ballwhistle:1").struct("<~@2 A ~@12 B ~@46 B ~@11 B ~@28>".pickRestart({
  A: "x", B: "~@7 x",
})).gain(0.64)

// drums · whistle
const whistle_2 = s("ballwhistle:0").struct("<~@78 [~@7 x] ~@5 [~@7 x] ~@11 [~@7 x] ~@6>").gain(0.64)

// drums · jingle bells
const jingle_bells = s("sleighbells:4").struct("<~@2 A ~@13 A ~@46 A ~@11 A ~@27>".pickRestart({
  A: "x",
})).gain(1.29)

// drums · bell tree
const bell_tree = s("marktrees:0").struct("<~@78 [~@7 x] ~@5 [~@7 x] ~@11 [~@7 x] x ~@5>").gain(2.96)

stack(
  pad_metallic, piano, piano_soft, pad_poly, pad_bowed, violin, bassoon, pad_choir, kick, rim, rim_soft, low_tom, hihat,
  mid_tom, ride, tambourine, whistle, whistle_2, jingle_bells, bell_tree
)

More by Misc Television