Strudelify

na rua na chuva e na fazenda

Kid Abelha

KeyE minorTempo120 bpm
0:00/0:00
// na rua na chuva e na fazenda — Kid Abelha
// 120 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5903729; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 32 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 · [...]/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 · piano
const piano = note("<A B C D E F G H I J K L E F G H M N M O P Q P Q R S R S T@2 U@2>".pickRestart({
  A: "~ b3@7, a2, ~ [c3,e3]@15", B: "[d3,d4,f#4,a4]@4 a3 e2 g#2 b2", C: "~@3 b3, [a2,c3,e3,a3]@15 ~",
  D: "d3@2 b4 g#4, [d4,f#4,a4]@11 ~@5", E: "~ e5@3 [e4,g#4,b4,e5]@3 [e4,g#4,b4,e5], [e3,e4] ~, ~ [g#4,b4]@7 ~@8",
  F: "b3 e3 [e4,g#4,b4,e5]@2 e3 ~ b3 e3, ~@5 [e4,g#4,b4,e5]@2 ~", // E
  G: "[e4,g#4,b4,e5]@3 e3 [e4,g#4,b4,e5]@3 [e4,g#4,b4,e5]", H: "e3 b2 [e4,g#4,b4,e5]@2 e4 g#4 e4 b3, ~@2 e3 ~@5",
  I: "~@4 b6!3 a6, [a1,c2,e2,g2,a2]@15 ~", J: "b6 ~ a6 ~@3 a3@2, [d2,a2,c3]@15 ~", K: "[a1,c2,e2,g2,a2,c3]@15 ~",
  L: "~@2 b4 g#4, [d2,a2,c3,d3]@15 ~", M: "~ [a3,c4,e4,g4] b2@2 [a3,c4,e4,g4] ~ e3@2, a2 ~ c3 ~",
  N: "[d4,f#4,a4] ~@2 [d4,f#4,a4] ~ [d4,f#4,a4] g#2@2, d3 c3 g2 ~", // D
  O: "[d4,f#4,a4] ~@2 [d4,f#4,a4] ~ [d4,f#4,a4] b3@2, d3 f#3 d3 ~", P: "g2!2 d3@2 g2!2 d3@2, [d4,g4,b4,d5]!2",
  Q: "c3!2 g3@2 c3!2 g3@2, [e4,g4,c5,e5]!2", R: "f#3 [f#4,a4,c#5,e5] f#3 [f#4,a4,c#5,e5]",
  S: "b3 [b4,d#5,f#5] b3 [b4,d#5,f#5]", T: "[[e3,b3,g#4,b4,e5]@4 [e3,b3,g#4,b4,e5]@4 ~@4 [c3,g3,c5,e5,g5]@15 ~@5]/2",
  U: "[[a3,e4,c#5,e5,a5]!2 ~ [e4,g#4,b4,e5]@2 ~@3, ~@12 [e3,b3]@15 ~@5]/2", // A E E5
})).s("gm_piano").gain(0.23)

stack(piano)