Strudelify

super mario 64 Ultimate Koopa

[PRIVATE]

KeyD minorTempo86 bpm
0:00/0:00
// super mario 64 Ultimate Koopa — [PRIVATE]
// 86 bpm, 4/4, key D minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 2/4 at bar 7, 4/4 at bar 8, 2/4 at bar 27, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: ch 14 "Double Bass" named as a bass, played on acoustic bass (its contrabass patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/1218291; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 52 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(86/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · "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 · violin
const violin = note(`<
  ~@2 A@2 B@2 C D ~@3 E F G@2 H I J ~@6 K L M N O P ~@3 E F G@2 H I J ~@6 K L M N O P
>`.pickRestart({
  A: "[~@2 a4@2 ~ a5@2 ab5@14 ~@11, ~@2 d5 ~@13]/2", B: "[~@8 a4@2 ~ a5@2 ab5@10 b5@2 ~@7, ~@5 d5 ~@10]/2", C: "~@7 a4",
  D: "d5@2 ~ ab5@13, ~ a5 ~@6", E: "~@5 a4 d5 db5", F: "a4", G: "[~ d6 db6 d6 eb6 d6 db6 ab5 a5@24]/2",
  H: "d4 f4 e4 g4 f4 bb4 a4 db5", I: "d4 a3 d4 a4 ab4 a3 d4 g4 f4 a3 d4 f4 e4 g3 db4 e4", J: "d4 ~@15",
  K: "a5 d5 f5@2 ab5 d5 f5 d5 a4 db5 e5 db5 g5 db5 e5 db5", L: "a4 db5 e5 db5 g5 db5 e5 db5 b4 d5 f5 d5 ab5 d5 f5 d5",
  M: "a5@2 ab5@2 g5@2 db5@2 a4 d5 f5 a4 d5 f5 a4 d5", N: "a5@2 a5@2 a5@2 a5@2 ~ f4!3 g4!2 bb4!2",
  O: "a4!2 f4!2 g4!2 bb4!2 ~ a4!3 d5!2 a4!2", P: "e5!2 db5!2 g5!2 e5!2 ~@8",
})).s("gm_violin").gain(0.4)

// other · violin
const violin_2 = note("<~ A@2 B@2 ~ C@2 ~@3 D E F E G ~@7 H I J K L M N ~@3 D E F E G ~@7 H I J K L M N>".pickRestart({
  A: "[~@8 a4@2 d4@2 ~ e4@14 ~@5, ~@6 f4 ~@9]/2", B: "[~@16 d4@2 ~ e4@10 b4@2 ~, ~@15 a4@2 ~ f4@2 ~@12]/2",
  C: "[~@3 d4 f4 e4@2 e4@5 ~@4, ~@5 a4@2 ~@25]/2", D: "~@5 d5 bb5 e5", E: "d5", F: "~@9 f5 e5 f5 g5 f5 e5 d5",
  G: "a3 d4 db4 e4 d4 f4 e4 a4", H: "~ a3 d4 a3 f4 d4 f4 a4 d5 d4 f4 d4 a4 d4 f4 d4",
  I: "a5 d5 f5@2 ab5 d5 f5 d5 a4 db5 e5 db5 g5 db5 e5 db5", J: "a4 db5 e5 db5 g5 db5 e5 db5 b4 d5 f5 d5 ab5 d5 f5 d5",
  K: "a5@2 ab5@2 g5@2 db5@2 a4 d5 f5 a4 d5 f5 a4 d5", L: "f5@2 f5@2 f5@2 f5@2 ~ d4!3 e4!2 db4!2",
  M: "a4!2 d4!2 e4!2 db4!2 ~ a4!3 d5!2 a4!2", N: "e5!2 db5!2 g5!2 e5!2 ~@8",
})).s("gm_violin").gain(0.4)

// other · cello · "Violoncello"
const cello = note(`<
  A@8 ~@3 B C D@2 E F ~@2 G H@2 I@2 H@2 J K L M ~@3 B C D@2 E F ~@2 G H@2 I@2 H@2 J K L M
>`.pickRestart({
  A: "[~@15 d3@38 d3@38 d3@37]/8", B: "~@4 e3 g3 bb3 ab3", C: "a3", D: "[d3@23 e3 f3 d3 db3 d3 eb3 d3 db3 a2]/2",
  E: "a2 d3 db3 e3 d3 f3 e3 a3", F: "d3 ~@3", G: "~ d3", H: "[eb3 d3 db3 ab2 a2@8 ab2@4]/2",
  I: "[a2 ab2 g2 db3 d3@8 d3@4]/2", J: "a2 ab2 g2 db3 d3@4", K: "d3 ~", L: "~@9 f3!7", M: "g3!4 bb3!4 ~@8",
})).s("gm_cello").gain(0.5)

// other · cello · "Violoncello" · soft notes
const cello_soft = note("<~@8 A B C D ~@18 A B C D ~@18>".pickRestart({
  A: "d3@3 e3", B: "f3 g3", C: "a3 g3", D: "f3 ~",
})).s("gm_cello").gain(0.25)

// bass · acoustic bass · "Double Bass"
const bass = note("<~@11 A B C@2 D E ~@2 F G@2 H@2 G@2 I J K L ~@3 A B C@2 D E ~@2 F G@2 H@2 G@2 I J K L>".pickRestart({
  A: "~@4 e2 g1 bb1 ab1", B: "a1", C: "[d2@23 e3 f3 d3 db3 d3 eb3 d3 db3 a2]/2", D: "a1 d2 db2 e2 d2 f2 e2 a2",
  E: "d2 ~@3", F: "~ d2", G: "[eb2 d2 db2 ab1 a1@8 ab1@4]/2", H: "[a1 ab1 g1 db2 d2@8 d2@4]/2", I: "a1 ab1 g1 db2 d2@4",
  J: "d2 ~", K: "~@9 d3!7", L: "e3!4 g3!4 ~@8",
})).s("gm_acoustic_bass").gain(0.5)

// bass · acoustic bass · "Double Bass" · soft notes
const bass_soft = note("<A@8 B C D E ~@18 B C D E ~@18>".pickRestart({
  A: "[~@15 d2@95 d2@18]/8", B: "d2@3 e2", C: "f2 g2", D: "a2 g2", E: "f2 ~",
})).s("gm_acoustic_bass").gain(0.2)

stack(violin, violin_2, cello, cello_soft, bass, bass_soft)