Strudelify

Tea - House Moon

Enya

KeyB♭ majorTempo79 bpm
0:00/0:00
// Tea - House Moon — Enya
// 79 bpm, 3/4, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: ch 7 "Bass" named as a bass, played on electric bass finger (its pad bowed patch is not one)
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 70 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(79/3)

// 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 · piano · "Piano Left"
const piano = note(`<
  ~@3 A B A B A B A B C B C A@2 B A B A B A B C B C A C B C A D E D E C B C A D E D E C B C A C B C A@2 B A B A B A B C
  B C A C B F@4 ~
>`.pickRestart({
  A: "~@5 f3, bb2, ~ f3@2 f3@2 ~, ~ bb3!2", B: "~ g3@2, g2, ~ d3@5", C: "~@2 f2, eb2, ~ bb2@5, ~ eb3@2",
  D: "~@5 f3, bb2, ~ f3@4 ~, ~ bb3@2", E: "~@5 d3, g2, ~ d3@4 ~, ~ g3@2",
  F: "[~@17 f2@10 [bb2,f3,bb3]@48 ~@21, eb2@9 ~@23, ~@4 bb2@23 ~@69, ~@8 eb3@19 ~@69]/4", // Bb5
})).s("gm_piano").gain(0.22).pan(0.3)

// chords · glockenspiel
const glockenspiel = note("<~@31 A ~@7 B ~@11 C ~@3 D ~@3 E ~@3 E ~@2 F ~@3>".pickRestart({
  A: "~@8 f5@15 ~, bb5@23 ~, ~ d5@22 ~, ~ f5@7 ~@16, ~@4 eb5@19 ~", B: "~ d5@3 eb5@4 f5@8 ~@8, bb5 ~@11, ~ f5@2 ~@21",
  C: "f5 [bb4,d5]@5 ~@18", D: "~ bb4@3 f4 ~@3 d5@7 ~@9, f5 ~@11, ~ d5 ~@22", E: "f5 [bb4,d5]@6 ~@17",
  F: "~@3 f5 ~ bb4@9 ~@10, ~@4 d5@5 ~@15",
})).s("gm_glockenspiel").gain(0.1).pan(0.3)

// other · banjo
const banjo = note("<~@32 A ~ B A C D E ~ F ~ A F C F G A H D I ~@8 B C F J A C K L ~@3>".pickRestart({
  A: "c6@4 bb5@3 ~ c6@4 d6@4 c6@4 bb5@4", B: "c6 bb5 c6 d6 c6 bb5", C: "g5 f5 g5 bb5 c6 bb5",
  D: "c6@2 bb5@2 c6@2 d6@2 c6@2 bb5 ~", E: "bb5@5 ~@19", F: "c6@4 bb5@4 c6@4 d6@4 c6@4 bb5@3 ~", G: "bb5 ~@5",
  H: "g5@4 f5@4 g5@4 bb5@4 c6@4 bb5@3 ~", I: "bb5 ~@3", J: "bb5 ~@2", K: "c6@4 bb5@4 c6@4 ~ d6@4 c6@5 bb5@2",
  L: "~ bb5@4 ~@3",
})).s("gm_banjo").gain(0.05).pan(0.4)

// chords · pad metallic · "Synth Hit"
const pad_metallic = note("<A@3 ~@11 A@3 ~@13 A@3 ~@17 A@3 ~@13 B@4>".pickRestart({
  A: "[~@5 bb4@31, ~ [bb2,f3]@8, ~ [bb3,d4,f4]@7]/3", // Bb5 Bb
  B: "[~@6 bb4@8 ~@3 [f4,bb4]@70 ~@9, ~@3 bb2@11 ~ [bb2,f3]@73 ~@8, ~@4 [f3,bb3]@11 ~@81, ~@5 [d4,f4]@11 [bb3,d4]@70 ~@10]/4", // Bb5 Dm Bb
})).s("gm_pad_metallic").gain(0.17).pan(0.8)

// bass · electric bass finger · "Bass"
const bass = note("<~@15 A B C D C E F G H I H J H K L M ~@20 A B C D C E F G H I H J H K N O@2 ~@2>".pickRestart({
  A: "bb2@13 ~@11", B: "g2@9 ~ f2 ~", C: "bb2@17 ~@7", D: "g2@19 ~ f2@2 ~@2", E: "g2@10 f2 ~", F: "bb2@5 ~",
  G: "g2@11 ~", H: "eb2@2 f2", I: "g2@23 ~", J: "bb2@23 ~", K: "g2", L: "eb2@8 f2@3 bb2", M: "bb2@3 ~",
  N: "eb2@17 f2@7", O: "[~ bb2@2 bb2@27 ~@18]/2",
})).s("gm_electric_bass_finger").gain(0.19)

// other · agogo
const agogo = note(`<
  ~@3 A B C B C B C B D C D C@2 B C B C B C B D C D C D C D C@2 B C B D C D C@2 B C B E C E C E C E C@2 B C B C B C B D
  C D C D C F G ~@3
>`.pickRestart({
  A: "d6 ~@5", B: "g5 ~@11", C: "d6 ~@11", D: "bb5 ~@7 ab5 ~@3", E: "bb5 ~@3 bb5 ~@3 ab5 ~@3",
  F: "bb5@2 ~@15 ab5@2 ~@5", G: "~ d6 ~@6",
})).s("gm_agogo").gain(0.07).pan(0.7)

// drums · ride
const ride = s("rd").struct("<~@15 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@21 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@4>".pickRestart({
  A: "x",
})).gain(0.32)

// drums · claves
const claves = s("clave:2").struct(`<
  ~@15 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@21 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@4
>`.pickRestart({
  A: "x",
})).gain(1.56)

// drums · rim
const rim = s("rim").struct("<~@15 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@21 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@4>".pickRestart({
  A: "x",
})).gain(0.32)

stack(piano, glockenspiel, banjo, pad_metallic, bass, agogo, ride, claves, rim)

More by Enya