Strudelify

L'Amour Toujours_Gigi D'Augostino_Violin Trio

Gigi D'Augostino

KeyE majorTempo140 bpm
0:00/0:00
// L'Amour Toujours_Gigi D'Augostino_Violin Trio — Gigi D'Augostino
// 140 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Transcription provider: pdmx. https://musescore.com/score/5810733; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 85 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(140/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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 · "Violin 2"
const violin = note(`<
  ~@5 A B C D A B C E F G H I J K H I L M H I J K H I H N ~@8 O P Q N O P Q N R S Q T U V W X Q R Q T U V W N R S Q T Q
  R Q T Q R Q Y J K H I ~@5 Q
>`.pickRestart({
  A: "~@4 f#4@2 f#4 d5", B: "c#5 ~@3", C: "~@4 b4@2 b4 a4", D: "b4 ~@3", E: "b4@2 g4 f#4 g4 f#4 g4 f#4",
  F: "d4@2 ~@2 d4@2 d4 ~", G: "f#4@2 ~@2 a#4@2 a#4 b4", H: "f#4@2 ~@2 f#4@2 f#4!2", I: "g4@2 g4@2 g4 f#4 g4 f#4",
  J: "d4 ~ d4!2", K: "a#4@2 ~@2 a#4@2 a#4!2", L: "d4@2 ~@2 d4@2 d4!2", M: "a#4@2 ~@2 a#4@2 a#4 b4", N: "g4", O: "a4",
  P: "c#4", Q: "f#4", R: "f#4@3 g4@3 a4@2", S: "e4@3 f#4@3 g4@2", T: "b4@3 a4@3 b4@2", U: "d5@3 b4@3 a4@2",
  V: "f#4@3 a4@3 c#5@2", W: "b4", X: "b4@3 a4@3 g4@2", Y: "b4@3 b4@3 b4@2",
})).s("gm_violin").gain(0.3)

// other · violin · "Violin 3"
const violin_2 = note(`<
  A@6 B C D E F G D E B C@2 E B C@2 E B C@2 H I J K C@2 ~@8 L M N O L M N O L M N O L M N ~ L M N O L M N P ~@2 N O L M
  N O L M N O H I J K ~@5 E
>`.pickRestart({
  A: "[~@4 a4@19 c#5@18 f#4@19 d5@19 a5@17]/6", B: "a#4", C: "b4", D: "d5", E: "a4", F: "c#5", G: "f#5",
  H: "a3@2 ~@2 a3@2 a3 d4", I: "f#4 ~@3 f#4@2 f#4!2", J: "d4@2 ~@2 d4@2 d4!2", K: "d4@2 d4@2 d4!4", L: "f#4", M: "a#3",
  N: "d4", O: "b3", P: "b3@7 ~",
})).s("gm_violin").gain(0.3)

stack(violin, violin_2)