Strudelify

starlight

Irene L?pez

KeyA majorTempo120 bpm
0:00/0:00
// starlight — Irene L?pez
// 120 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/4550736; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 118 bars on a 16-step grid, each part at one level. 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.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · piano
const piano = note(`<
  A@4 B C D E F G H I B C D E F G H I B C D E F G H I B J K L F G H M B C D E F G H I N O P Q R S R T U V W X U V W Y Z
  AA W X Z AA W AB B J K L F G H M B C D E F G H I N O P Q R S R T U V W X U V W Y Z AA W X Z AA W AB B J K L F G H M L
  AC
>`.pickRestart({
  A: "a2!2 a3 a2!2 a3!3", B: "a2!2 a3 a2!2 a3 [a3,c#5] [a3,d5], c#5 a4 e4 ~",
  C: "[b2,d5] b2 b3 b2!2 [b3,d5] [b3,c#5] [b3,b4], ~ b4@2 f#4@2 ~@3", // Bm Bsus2 B
  D: "f#2!2 f#3 f#2!2 f#3 [f#3,c#5] [f#3,d5], c#5 a4 f#4 ~", // F#5 D
  E: "[d2,d5] d2 d3 d2!2 [d3,d5] [d3,c#5] [d3,b4], ~ a4@2 f#4@2 ~@3", // D Dmaj7 G
  F: "a2!2 ~ a2!2 a3 [a3,c#4,c#5] [a3,d4,d5], [c#4,c#5] [a3,a4] [e3,e4] ~", // A D5 C# A E
  G: "[b2,d4,d5] [b2,b3] b3 b2!2 [b3,d4,d5] [b3,c#4,c#5] [b3,b4], ~ b4@2 [f#3,f#4]@2 ~@3", // Bm B Bm Bsus2 B F#
  H: "f#2!2 f#3 f#2 [f#2,f#3] f#3 [f#3,c#4,c#5] [f#3,d4,d5], [c#4,c#5] [a3,a4] f#4 ~", // F# F#5 D C# A
  I: "[d2,d4,d5] d2 d3 d2!2 [d3,d4,d5] [d3,c#4,c#5] [d3,b3,b4], ~ [a3,a4]@2 [f#3,f#4]@2 ~@3", // D Dmaj7 G A F#
  J: "[a2,d5] a2 a3 a2!2 [a3,d5] [a3,c#5] [a3,b4], ~ b4@2 f#4@2 ~@3", // D5 A Asus2
  K: "a2!2 a3 a2!2 a3 [a3,c#5] [a3,d5], c#5 a4 f#4 ~", // A D5
  L: "[a2,d5] a2 a3 a2!2 [a3,d5] [a3,c#5] [a3,b4], ~ a4@2 f#4@2 ~@3", // D5 A Asus2
  M: "[f#2,d4,d5] f#2 f#3 f#2!2 [f#3,d4,d5] [f#3,c#4,c#5] [f#3,b3,b4], ~ [a3,a4]@2 [f#3,f#4]@2 ~@3", // D F#5 B5 A F#
  N: "b4 b3 b4 b3 b4 b3 b4 b3, [b2,d3,f#3]@15 ~", O: "e5 e4 e5 e4 e5 e4 e5 e4, [e3,g#3,b3]@15 ~",
  P: "c#5 c#4 c#5 c#4 c#5 c#4 c#5 c#4, [a2,c#3,e3]@15 ~", Q: "f#5 f#4 f#5 f#4 f#5 f#4 f#5 f#4, [f#3,a3,c#4]@15 ~",
  R: "g5 g4 g5 g4 g5 g4 g5 g4, [g2,b2,d3]@15 ~", S: "d5 d4 d5 d4 d5 d4 d5 d4, [d3,f#3,a3]@15 ~",
  T: "c#5 c#4 c#5 c#4 c#5 c#4 c#5 c#4, [g#2,c#3,f3]@15 ~", U: "f#5 f#4 f#5 f#4 f#5 f#4 f#5 f#4, [d3,f#3]@15 ~",
  V: "c#5 c#4 c#5 c#4 c#5 c#4 c#5 c#4, [c#3,e3]@15 ~", W: "d5 d4 d5 d4 d5 d4 d5 d4, [d3,f#3]@15 ~",
  X: "a4!3 c#5!3 g#4!2, [a2,c#3]@15 ~", Y: "a4!3 g#4!5, [a2,c#3]@15 ~",
  Z: "f#5 f#4 f#5 f#4 f#5 f#4 f#5 e5, [d3,f#3]@15 ~", AA: "c#5 c#4 c#5 c#4 c#5 c#4 c#5 e5, [c#3,e3]@15 ~",
  AB: "e5@2 e5@2 e5@2 e5@2 e5@2 e5!2 e5@2 e5@2, [a2,c#3]@15 ~", AC: "[e2,a2,c#3,e3,e4,a4,c#5,e5]@15 ~",
})).s("gm_piano").gain(0.3)

stack(piano)

More by Irene L?pez