Strudelify

adiemus

Enya

KeyD majorTempo76 bpm
0:00/0:00
// adiemus — Enya
// 76 bpm, 3/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 11 "Viola" viola (copy of ch 7 "Violin" violin)
// note: Transcription provider: pdmx. https://musescore.com/score/1428666; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 65 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(76/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 · cello · "Violin"
const cello = note(`<
  A@4 B C D E F G H I B C D E F G H I J K L M N O@2 P Q@2 R B C D E F G H I J K L S T U@2 P Q@2 R V@2 W X Y X Z AA AB@2
  Z AA AB@2 AC
>`.pickRestart({
  A: "[d3,a5]/2", B: "[d3,f4]@2 [a2,e4]", C: "[a#2,d4]@2 [g2,f4]", D: "[a2,g4]@2 [a2,e4]", E: "b2@3 f#2 b2@2, f#4",
  F: "f#4!4 f#4@2 f#4@2 a4@2 a4@2, b2@2 f#2", G: "e4!4 e4@2 e4@2 g4@2 g4@2, c3@2 g2",
  H: "d4!4 d4@2 d4@2 f#4@2 f#4@2, b2@2 f#2", I: "c#4@3 c#4 ~@2 e2@2 a2@4, a2 ~, ~ c#4@2",
  J: "e4!4 e4@2 e4@2 f#4@2 f#4@2, c3@2 a2", K: "g4!4 g4@2 g4@2 [d3,a4]@4, e2@2 ~",
  L: "b4!4 b4@2 [b2,b4]@2 [c3,c5]@2 ~ d3, g2@3 ~@2 c5", M: "b4@3 a4 ~@2 b2@2 c3@3 d3, g2 ~, ~ g4@2",
  N: "g4!4 g4@2 [e2,g4]@2 e4@2 g4@2, e2@3 ~ e2@2", O: "[f#2@3 d2 ~@2 a4!2 f#4@2 b4 a4@7 ~@6, ~ d2@5]/2",
  P: "a#4!4 a#4@2 [g2,a#4]@2 [g2,g4]@2 [g2,a#4]@2, g2 ~", // Gm G Gm
  Q: "[f3@3 f2 ~@2 c5!2 a4@2 d5 ~ [c2,c3]@8 [c2,c3]@4, ~@4 f2@7 c5@7 ~@6]/2", // C
  R: "c4@3 c4 c4@2 c4@2 [c2,c3,c4]@4, [c2,c3]@2 ~", S: "b4@3 a4 g4@2 [b2,d4]@2 [c3,g4]@3 [d3,a4], g2 ~",
  T: "g4@3 f#4 ~@2 e2@2 ~@2 d4 c4, e2@3 ~ e2@2, ~@2 e4@3 ~", U: "[[f#2,d4]@3 d2 ~@2 a4!2 f#4@2 b4 a4@7 ~@6, ~ d2@5]/2",
  V: "[d2@6 d2 a2!5, d4]/2", W: "~@2 d4!2 d4@2 d4!2 d4@2 d4!2, d2", X: "[c3,d4]@2 ~ c3 g2@2 c3@2 c3@4, ~ d4 ~@4",
  Y: "~@2 d4 e4 f4 e4 d4 c4 d4@2 d4!2, d2", Z: "a4@4 g4 f4, d2", AA: "c3@6 c3@2 g2@4 c3@4 e4@3 d4@2 c4@3, g4@2 c3",
  AB: "[d2@12 c3@3 c3 g2@2 c3@2 c3@4, d4]/2", AC: "[d2,d4]",
})).s("gm_cello").gain(0.25)

// other · violin
const violin = note(`<
  ~@24 A B@2 C D E@2 F G H I J K L M N O P Q A B@2 C D E@2 R@2 S E S E S E S E S E S E S
>`.pickRestart({
  A: "e4!4 e4@2 e4@2 b3@2 e4@2", B: "[a4@3 d4 d4@20]/2", C: "g4!4 g4@2 g4@2 d4@2 g4@2", D: "c5@3 f4 f4@8",
  E: "g4@3 g4 e4@2 a4@2 g4@4", F: "a3@2 a3", G: "a#3@2 a#3", H: "c4@2 g3", I: "b3", J: "b3@2 c#4", K: "g4@2 b3",
  L: "f#4@2 d4", M: "e4", N: "c4!4 c4@2 c4@2 c4@2 c4@2", O: "e4!4 e4@2 e4@2 f#4@4", P: "g4!4 g4@2 g4@2 g4@2 g4@2",
  Q: "g4@3 g4 d4@8", R: "a4/2", S: "a4",
})).s("gm_violin").gain(0.4)

// other · violin · soft notes
const violin_soft = note("<A@4 B C D E F G H I B C D E F G H I J K L M ~@41>".pickRestart({
  A: "g5/2", B: "a3@2 a3", C: "a#3@2 a#3", D: "c4@2 g3", E: "b3", F: "b3@2 c#4", G: "g3@2 b3", H: "f#4@2 d4", I: "e4",
  J: "c4!4 c4@2 c4@2 c4@2 c4@2", K: "e4!4 e4@2 e4@2 f#4@4", L: "g4!4 g4@2 g4@2 g4@2 g4@2", M: "g4@3 g4 d4@8",
})).s("gm_violin").gain(0.2)

// other · cello · "Violoncello"
const cello_2 = note(`<
  A@4 B C D E F G H I B C D E F G H I J@2 K L M N@2 O P Q@2 B C D E F R H I J@2 K L M N@2 O P Q@2 A@2 S T S T S T S T S
  T S T S
>`.pickRestart({
  A: "d3/2", B: "f3@2 e3", C: "f3@2 d3", D: "g3@2 e3", E: "f#3", F: "f#3@2 f#3", G: "g2@2 d3", H: "f#3@2 c#3", I: "e3",
  J: "e3@2 f#3", K: "g3@2 g3", L: "g3@3 g3 g3@8", M: "g3@3 e3 g3@2", N: "[f#3@3 a3 a3@20]/2", O: "g3@3 g3!3",
  P: "a3@3 a3 a3@8", Q: "c3@3 c3 g2@2 c3@2 c3@4", R: "g3@2 d3", S: "d3", T: "a2@3 a2 a2@2 a2@2 a2@4",
})).s("gm_cello").gain(0.2)

stack(cello, violin, violin_soft, cello_2)

More by Enya