Strudelify

Your Eyes

Vladimir Cosma

KeyG majorTempo90 bpm
0:00/0:00
// Your Eyes — Vladimir Cosma
// 90 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5861669; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 96 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(90/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 · acoustic guitar nylon · "Classical Guitar"
const acoustic_guitar_nylon = note(`<
  A B C D E F G H I J K L M N O P Q R S T M N O P U V W X Y Z AA AB AC AD AE AF AG@2 AH AI AJ AK AL AM AN AO AP AQ AJ AK
  AL AM AR AB X@2 AJ AK AL AM AR AB X@2 AC AD AE AF AG@2 AH AI AJ AK AL AM AN AO AP AQ AJ AK AL AM AR AB X@2 AJ AK AL AM
  AR AB X@2
>`.pickRestart({
  A: "[b3,e4,g4]@5 f#4 ~ g4 [d4,g4,b4]@6 a4@2", B: "[c4,e4,g4]@3 c4 [a3,c4,e4]@4",
  C: "[a#3,d4,f4]@5 c#4 ~ d4 [a#3,d4,f4]@4 d#4@4", D: "[d4,g4,a4]@2 [d4,f#4,a4] d4", E: "[d4,g4,b4]@6 c5 b4",
  F: "[d4,g4,b4]@2 a4 g4 f#4@2 g4@2", G: "[d4,f#4,d5]@6 e5 d5", H: "[d4,f#4,d5]@5 c5 ~ b4 [c#4,f4,a#4]@4 [d4,f#4,b4]@4",
  I: "[e4,g4,c5]@6 d5 c5", J: "[e4,g4,c5]@2 b4 a4 g#4@2 a4@2", K: "[f4,a4,c5]@6 d5 c5",
  L: "[d4,f#4,c5]@5 b4 ~ a4 g#4@4 a4@4", M: "[a#3,d4,g4] a#4 [g4,a#4,d5] f5", N: "[g4,c5,f5] d#5 d5 [g4,c5,d#5]@5",
  O: "[a3,c4,f4]@3 a4 [f4,a4,c5]@2 d#5@2", P: "[f4,a#4,d#5] d5 c#5 [f4,a#4,d5]@5",
  Q: "[e4,a4,d5] c5 b4 [d4,f#4,c5]@4 d4", R: "[b3,d4,f#4,c5] b4 a#4 [b3,e4,g4,b4]@5",
  S: "[a3,c#4,e4,a4]@4 [a3,c#4,e4] f#4 g4 a4", T: "[c4,e4,g4,b4] [a3,c4,f#4,a4]", U: "[g3,a#3,d#4] g4 [d#4,g4,a#4] d5",
  V: "[d4,f#4,d5] c5 b4 [d4,f#4,c5]@4 d5", W: "[d4,g4,c5] b4 a#4 [d4,g4,b4]@5", X: "[g2,g3,c4,g4]@3 [g2,g3,b3,g4]@5",
  Y: "[g3,b3,e4]!4, e3 d3", Z: "[c3,g3,c4,e4] [b2,g3,c4,e4] [a3,c4,e4]!2, ~ a2", AA: "[a#3,d4,f4]!4, a#2",
  AB: "[a3,d4,g4]!2 [a3,d4,f#4]!2, d3", AC: "[g3,b3,g4]!4, g2", AD: "[g3,b3,g4]!2 [f#2,g3,b3,g4] [g2,g3,b3,g4], g2 ~",
  AE: "[b3,d4,f#4]!4, b2", AF: "[b3,d4,f#4]!2 [a#2,a#3,c#4,f4] [b2,b3,d4,f#4], b2 ~", AG: "[g3,c4,e4]!4, c3",
  AH: "[a3,c4,f4]!4, f2", AI: "[a3,c4,f#4]!4, d3 a2", AJ: "[g3,a#3,d4]!2 [f3,a#3,d4]!2, g2", AK: "[g3,a#3,d#4]!4, c3",
  AL: "[a#3,c4,f4]!2 [a3,c4,f4]!2, f2", AM: "[a#3,d#4,f4]!2 [a#3,d4,f4]!2, a#2",
  AN: "[g3,c4,e4]!2 [a3,c4,f#4]!2, a2 d3", AO: "[a3,d4,f#4]!2 [g3,b3,e4]!2, b2 e2", AP: "[g3,c#4,e4]!4, a2",
  AQ: "[g3,c4,e4]!2 [a3,c4,f#4]!2, c3 d3", AR: "[a#3,d#4,g4]!2 [a#3,d4,g4]!2, d#3",
})).s("gm_acoustic_guitar_nylon").gain(0.4)

stack(acoustic_guitar_nylon)