Strudelify

Bellas palabras de vida dos violines

Jorge Ed. Sánchez Romero

KeyG majorTempo140 bpm
0:00/0:00
// Bellas palabras de vida dos violines — Jorge Ed. Sánchez Romero
// 140 bpm, 3/4, key G 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/6427342; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 107 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(140/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 · violin · "Violín"
const violin = note(`<
  A@5 ~ B C D E@2 F G H I E@2 J B C K L M N O P Q R S T U V O P Q R W X Y Z AA AB AC AD AE AF AG AH AI AD AJ AK AA AL AM
  AN AO AP AQ AR AA AS AT AU AV AW AG AR AA AS AT AU AX@2 B C D E@2 F G H I E@2 J B C K L M N O P Q R S T U V O P Q R W
  X Y
>`.pickRestart({
  A: "[~@3 d4@12 b3@6 [a3,e4]@19 d#4@19 [g3,d4]@19 ~@2]/5", B: "[g3,d4]", C: "[g3,d#4]", D: "[g3,e4]",
  E: "[b3@5 c4@5 ~ d4@5 e4@5 [c4,d4]@5 ~ [c4,d#4]@5, ~@11 c4@10 ~@11]/2", F: "[a3,d4]@5 d4@3 c#4@3 d4@2 d#4@3",
  G: "[a3,e4]", H: "[a3,f4]", I: "[a3,f#4]@11 d4@2 c4@3", J: "[g3,d4] [a3,f#4]",
  K: "[g3,e4]@3 d4@2 c4@3 d4@3 d#4@2 e4@3", L: "[g3,f4]", M: "f4@11 d4@5, g3",
  N: "~@3 d4@2 e4@3 f#4@3 g4@2 c4@3, c4@13 ~@3", O: "g3@3 a3@2 g3@3 a3@3 g3@2 a3@3, d#4",
  P: "g3@3 a#3@2 g3@3 a#3@3 g3@2 a#3@3, d#4", Q: "g3@3 b3@2 g3@3 b3@3 g3@2 b3@3, d4",
  R: "g3@3 c4@2 g3@3 c4@3 g3@2 c4@3, d4", S: "a3@3 d4@2 a3@3 d4@3 a3@2 d4@3, f#4",
  T: "a3@3 c4@2 a3@3 c4@3 a3@2 c4@3, f#4", U: "g3@3 a3@2 b3@5 ~ c4@5, d4", V: "[b3,f4]",
  W: "d4@3 c4@2 d4@3 e4@3 f#4@2 g#4@3, ~@5 g3@11", X: "a4@3 b4@2 c5@3 d5@3 e5@2 f#5@3, d4@11 a4@5", Y: "[b4,g5]",
  Z: "[a4,f#5]@11 ~@5", AA: "b5@5 b5@8 a5@3", AB: "c6@5 b5@8 f#5@3", AC: "a5@5 g5@11", AD: "d5@5 e5@5 ~ f#5@5",
  AE: "g5@5 a5@8 g5@3", AF: "f#5", AG: "c6@5 c6@8 b5@3", AH: "d6@5 ~@8 g#5@3, f#5@11 d5@5, ~@5 c6@8 ~@3",
  AI: "b5@5 a5@11", AJ: "g5@5 a5@8 g5@3, a4", AK: "[d5,b5] [d5,a#5]", AL: "c6@5 b5@8 f#5@3, d#5", AM: "a5@5 g5@11, d5",
  AN: "d6@5 d6@5 ~ d6@5", AO: "d6@5 c6@5 ~ b5@5, f5", AP: "[e5,c6]", AQ: "c6@5 c6@8 b5@3, d#5", AR: "d6@5 c6@8 a5@3",
  AS: "c6@5 b5@8 g5@3", AT: "a5@5 a5@8 g#5@3", AU: "b5@5 a5@5 ~ f#5@5", AV: "[d5,g5]@11 b5@5", AW: "d6",
  AX: "[g5@3 d5]/2",
})).s("gm_violin").gain(0.23)

stack(violin)