Strudelify

star trek voyager theme

Jerry Goldsmith

KeyB♭ majorTempo120 bpm
0:00/0:00
// star trek voyager theme — Jerry Goldsmith
// 120 bpm, 4/4, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (6/4 at bar 1, 4/4 at bar 4) are rendered on a constant 4/4 grid of one bar per cycle
// note: ch 2 "Oboe" named as a reed, played on oboe (its tremolo strings patch is not one); ch 5 "Glockenspiel" named as a mallet, played on glockenspiel (its tremolo strings patch is not one); ch 6 "Violine" named as a string part, played on violin (its french horn patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/3173026; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 67 bars on a 16-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 · pizzicato strings · "Harfe"
const pizzicato_strings = note(`<
  A B C D E D E F G F H D E D I J K L M N O P@2 Q@2 R S I E D E F K L M T U V W X Y T@2 Z@2 AA@2 Z@4 AA@4 AB@2 AC Z AD@2
  AB@2 AC@2 AE@2
>`.pickRestart({
  A: "bb2 f3 d4 bb3", B: "d4 bb3 bb2 f3", C: "d4 bb3 d4 bb3",
  D: "bb2 f3 [bb3,d5] [f3,c5] [bb3,d5] [f3,c5] bb3 f3, ~@3 bb4", // Bb F5 Bb F5
  E: "bb2 f3 [bb3,d5] [f3,c5] [bb3,d5] [f3,c5] [bb3,bb4] [f3,f4]", // Bb F5 Bb F5 Bb F
  F: "bb2 g3 [c4,eb5] [g3,d5] [c4,eb5] [g3,d5] c4 g3, ~@3 c5", // Cm G5 Cm G5
  G: "bb2 g3 [c4,eb5] [g3,d5] [c4,eb5] [g3,d5] [c4,c5] [g3,g4]", // Cm G5 Cm G5 C G
  H: "bb2 g3 [c4,c5] [g3,g4] [c4,c5] [g3,d5] [c4,c5] [g3,g4]", // C G C G5 C G
  I: "bb2 f3 [bb3,d5] [f3,c5] [bb3,bb4] [f3,c5] [bb3,bb4] [f3,f4]", // Bb F5 Bb F5 Bb F
  J: "bb2 g3 [c4,eb5] [g3,d5] [c4,c5] [g3,d5] c4 g3, ~@3 c5", // Cm G5 C G5
  K: "bb2 g3 [c4,eb5] [g3,d5] [c4,c5] [g3,d5] [c4,c5] [g3,g4]", // Cm G5 C G5 C G
  L: "bb2 g3 [c4,g4] [g3,c5] [c4,bb4] [g3,c5] c4 g3, ~@3 g4", // C5 C7 C5
  M: "bb2 g3 [c4,eb5] [g3,d5] [c4,g4] [g3,c5] c4 g3, ~@3 g4", N: "a2 f3 c4 [f3,c5] [c4,f5] [f3,c5] [c4,f4] [f3,c5]",
  O: "a2 f3 [c4,f5] [f3,c5] [c4,f5] [f3,c5] [c4,f4] [f3,c5]", // F5
  P: "g2 eb3 [bb3,eb5] [eb3,bb4] [bb3,eb5] [eb3,bb4] [bb3,eb4] [eb3,bb4]", // Eb5
  Q: "bb2 f3 [bb3,d5] [f3,bb4] [bb3,d5] [f3,bb4] [bb3,d4] [f3,bb4]", // Bb Bb5 Bb Bb5 Bb Bb5
  R: "f2 c3 [a3,c5] [c3,f4] [a3,c5] [c3,f4] [a3,c4] [c3,f4]", S: "f2 c3 [a3,c5] [c3,f4] [a3,c5] [c3,f4] a3 c3",
  T: "f2 c3 [f3,a4] [c3,g4] [f3,a4] [c3,g4] f3 c3, ~@3 f4", U: "f2 c3 [f3,a4] [c3,g4] [f3,a4] [c3,g4] [f3,f4] [c3,c5]",
  V: "g2 d3 [g3,bb4] [d3,a4] [g3,bb4] [d3,a4] g3 d3, ~@3 d4", // Gm D5 Gm D5
  W: "bb2 f3 [bb3,a4] [f3,g4] [bb3,a4] [f3,g4] bb3 f3, ~@3 d4", // Bbmaj7 Fsus2 Bbmaj7 Fsus2
  X: "eb2 bb2 [eb3,g4] [bb2,f4] [eb3,g4] [bb2,f4] eb3 bb2, ~@3 bb4", // Eb Bb5 Eb Bb5
  Y: "eb2 bb2 [eb3,g4] [bb2,f4] [eb3,g4] [bb2,f4] [eb3,g4] [bb2,bb4]", Z: "g2 d3 g3 d3 g3 d3 g3 d3",
  AA: "a2 e3 a3 e3 a3 e3 a3 e3", AB: "d2 a2 d3 a2 d3 a2 d3 a2", AC: "e2 b2 e3 b2 e3 b2 e3 b2",
  AD: "c2 g2 c3 g2 c3 g2 c3 g2", AE: "gb2 db3 gb3 db3 gb3 db3 gb3 db3",
})).s("gm_pizzicato_strings").gain(0.3)

// chords · contrabass · "Flöte"
const contrabass = note("<~@11 A@4 B@4 C@2 D@2 E@2 F@2 G H I J K L M N I O P Q R S T@2 U ~@19 V W X Y>".pickRestart({
  A: "bb2/4", B: "c3/4", C: "f2/2", D: "g2/2", E: "bb2/2", F: "[~@5 c5 d5 eb5, f2]/2", G: "d5 eb5", H: "f5@11 ~ bb5@4",
  I: "f5@15 ~", J: "~@2 eb5 d5", K: "eb5 f5", L: "g5@11 ~ c6@4", M: "g5 f5 eb5@4 ~@2", N: "~@2 d5 eb5", O: "c6 a5",
  P: "bb5 a5 bb5@4 a5 g5", Q: "d5 c5 d5@4 f5@2", R: "g5 f5 g5@4 f5 eb5", S: "bb4 d5", T: "[c5@19 ~@5 f5@4 c5@4]/2",
  U: "d5@15 ~", V: "ab5@2 gb5@2 e5@11 ~", W: "~@2 ab5 gb5 ab5 gb5 e5@2", X: "a5 ab5 gb5@4 ~@2", Y: "~@2 db5 b4 a4@4",
})).s("gm_contrabass").gain(0.3)

// chords · contrabass · "Flöte" · soft notes
const contrabass_soft = note("<~@27 A@4 B@4 C@2 D E F@2 C@2 G@2 H@2 I@4 J@4 K@2 L M N@2 K@2 O@2 P@2>".pickRestart({
  A: "bb1/4", B: "c2/4", C: "f2/2", D: "g2", E: "bb1", F: "eb2/2", G: "g1/2", H: "a1/2", I: "g1/4", J: "a1/4",
  K: "d2/2", L: "e2", M: "g1", N: "c2/2", O: "e2/2", P: "gb2/2",
})).s("gm_contrabass").gain(0.2)

// other · acoustic bass · "Klavier"
const acoustic_bass = note("<~@43 A B C D A B A B C D C E F G H I J K L M N ~@3>".pickRestart({
  A: "b5 a5 g5@4 ~@2", B: "~@2 b5 a5 b5 a5 g5@2", C: "c6 b5 a5@4 ~@2", D: "~@2 c6 b5 c6 b5 a5@2", E: "~@3 a5 b5@2 c6@2",
  F: "d5 e5 gb5@4 ~@2", G: "~@2 a5 b5 a5 gb5 d5@2", H: "e5 d5 e5@2 ~@4", I: "~@2 g5 gb5 g5@2 b5@2",
  J: "c6 b5 c6@4 b5 a5", K: "g5 ~", L: "a5 b5 a5@2 ~@2 d5@2", M: "a5 b5 a5@2 d6@2 a5@2", N: "b5@15 ~",
})).s("gm_lead_8_bass_lead").gain(0.3)

// other · glockenspiel
const glockenspiel = note(`<
  ~@43
  [b6 a6 g6@4 ~@2]
  [~@2 b6 a6 b6 a6 g6@2]
  [c7 b6 a6@4 ~@2]
  [~@2 c7 b6 c7 b6 a6@2]
  [b6 a6 g6@4 ~@2]
  ~@19
>`).s("gm_glockenspiel").gain(0.25)

// chords · violin · "Violine"
const violin = note("<~@45 A@2 B C D@2 E F G H I J K@4 L@2 M ~@3>".pickRestart({
  A: "[~ a5@3]/2", B: "b5 c6", C: "d6@3 g6", D: "[b3@2 c4@2 d4@2 c6 [g4,b5], d6@3 ~]/2", E: "[c4,c6] [b3,d6]",
  F: "e6@3 a6, a3", G: "e6 d6 c6@6", H: "~@2 b5 c6", I: "d4 e4, d6", J: "[gb4,a6] [d4,gb6]",
  K: "[g6 gb6 g6@4 gb6 e6 b5 a5 b5@4 d6@2 e6 d6 e6@4 d6 c6 g5@4 b5@4, g4]/4", L: "[a5@6 d6 a5, a4]/2", M: "[ab4,b5]",
})).s("gm_violin").gain(0.25)

// other · violin · "Violine"
const violin_2 = note("<~@27 A@4 B@4 C@2 B@4 D@2 E@2 F@2 G@4 H@6 I@4 J@2 K@2 L@2>".pickRestart({
  A: "d4/4", B: "bb3/4", C: "c4/2", D: "f4/2", E: "b3/2", F: "a3/2", G: "b3/4", H: "a3/6", I: "g3/4", J: "d4/2",
  K: "ab4/2", L: "gb4/2",
})).s("gm_violin").gain(0.2)

// other · viola · "Bratsche"
const viola = note("<~@27 A@8 B@2 C D E@2 F@2 G@8 ~@4 H@2 I J K@2 B@2 L@4>".pickRestart({
  A: "bb3/8", B: "a3/2", C: "g3", D: "a3", E: "g3/2", F: "c4/2", G: "g3/8", H: "gb3/2", I: "e3", J: "gb3", K: "e3/2",
  L: "e3/4",
})).s("gm_viola").gain(0.2)

// other · cello · "Violoncello"
const cello = note("<~@27 A@4 B@4 C@2 D@2 E@2 F@2 D@2 G@2 H@4 I@4 D@2 J@2 G@2 K@2 J@2 L@2>".pickRestart({
  A: "f3/4", B: "eb3/4", C: "f3/2", D: "d3/2", E: "eb3/2", F: "a3/2", G: "c3/2", H: "d3/4", I: "c3/4", J: "b2/2",
  K: "gb3/2", L: "a2/2",
})).s("gm_cello").gain(0.2)

// bass · tuba
const bass = note("<~@57 e3 g2 c3!2 d3!2 e3 ~@3>").s("gm_tuba").gain(0.3)

stack(pizzicato_strings, contrabass, contrabass_soft, acoustic_bass, glockenspiel, violin, violin_2, viola, cello, bass)

More by Jerry Goldsmith