Strudelify

Como não entoar o teu louvor

Eunice_Souza_Ramos

KeyG majorTempo120 bpm
0:00/0:00
// Como não entoar o teu louvor — Eunice_Souza_Ramos
// 120 bpm, 6/8, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (6/8 at bar 1, 7/8 at bar 52, 6/8 at bar 54, 7/8 at bar 57, ...) are rendered on a constant 6/8 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5986228; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 127 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/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 · piano
const piano = note(`<
  A B C B C D E D F G H I J K L M N O H I J P Q R S T U V W X Y Z AA AB AC AD AE AF Y AG AH D E D AI AJ AK AL AM AN AO
  AP@6 AQ AR AS AT AU@2 AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS BT BU@2 BV BW BX@3 BY@7
  BZ@6 CA@5 CB CC D CD D E D CD D CE@5
>`.pickRestart({
  A: "~@3 d5@3 ~@10", B: "b5@3 g5@2 d5@3 b5@3 g5@2 d5@3", C: "c6@3 a5@2 d5@3 c6@3 g5@2 d5@3",
  D: "[g1,g2,b4,d5,g5,b5]@4 [b4,b5] [b4,b5]@3 [b4,b5]@3 [a4,a5]@2 [g4,g5]@3, ~@5 [g1,g2]@11", // G B A G
  E: "[g1,g2,c5,g5,c6]@4 [c5,c6] [c5,c6]@3 [c5,c6]@3 [b4,b5]@2 [a4,a5]@3, ~@5 [g1,g2]@11", // C5 C B A G
  F: "[g1,g2,a4,d5,f#5,a5]@4 [a4,a5] [a4,a5]@3 [a4,a5]@3 a4@2 b4@3, ~@5 [g1,g2]@11", // D A G
  G: "[d4,g4,b4]@3 ~@5 [a3,d4,g4]@8, g2 g4 ~@2, ~@3 d4@5 ~@8, ~@5 g2@11", // G Dsus4
  H: "[g3,a3,d4]@3 a3 d4@4 [a3,d4]@3 g4@2 b4@3, g2!2", I: "[d4,a4]@3 ~ d4@4 f#2@5 f#2@3, f#2 ~, ~@3 a3@5 [a3,d4,f#4]@8",
  J: "[a3,d4]@3 ~ d4@4 [a3,d4]@3 a3@2 d4@3, f#2!2, ~@3 a3@5 ~@8", K: "[b3,d4,g4]@3 b3 d4 g4@3 e2@5 e2@3, e2 [d4,g4,a4]",
  L: "[d4,g4,b4]@5 d4@3 e2@3 f#2@2 g2@3, e2 [b3,d4,g4]", // G
  M: "[g3,d4,e4]@3 ~ [d4,e4]@4 c2@5 c2@3, c2 ~, ~@3 g3@5 [g3,d4,e4]@8", // Em7 Dsus2 Em7
  N: "[g3,d4,e4]@3 ~ [d4,e4]@4 [c2,g3,d4,e4]@3 [d2,g3,c4,d4]@5, c2 ~, ~@3 g3@5 ~@8", // Em7 Dsus2 C Csus2
  O: "[d4,g4,b4]@3 ~ g4@4 g2@5 g2@3, g2 ~, ~@3 d4@5 [a3,d4,g4]@8", P: "[b3,d4,g4]@3 b3 d4 g4@3 [f#2,d4,a4]@8, e2 ~",
  Q: "[d4,g4,b4]@3 d4@2 ~@3 [e2,b3,d4]@8, g2 ~, ~@5 g4@11", R: "[g3,c4,d4]@3 e4@2 d4@3 [g3,c4,e4]@3 d4@2 e4@3, c2 c3",
  S: "[g3,c4]@3 d4@2 c4@3 [c2,c3,g3,c4,e4]@3 [c4,e4,g4]@2 [d4,f#4,a4]@3, [c2,c3]@8 ~@3 [d2,d3]@5", // C5 C D C D
  T: "[d4,g4,b4]@3 d4 g4 b4@3 [d4,g4,b4]@5 g4@3, g2!2", U: "[d4,g4,c5]@3 d4 g4 c5@3 [g2,d4,g4,b4]@8, g2 ~",
  V: "f#2@5 f#2@3 [d4,a4]@3 [e4,e5]@2 [e2,d4,d5]@3, [d4,a4]@8 f#2@5 ~@3", // D5 E E7 D5
  W: "d2@5 d2@3 [d4,f#4,a4]@3 [b3,b4]@2 [c4,c5]@3, [d4,f#4,a4] d2", // D B C D
  X: "[e4,g4,d5]@5 ~@6 g4@2 e4@3, c2 c3, ~@5 [e4,g4]@5 ~@6", Y: "b1@5 b1@3 [d4,g4]@3 b4@2 c5@3, [d4,g4] b2",
  Z: "[e4,g4,d5]@5 ~@3 c3@5 [c2,c4,e4,g4]@3, c2 ~, ~@5 [e4,g4,c5]@8 ~@3", // Em7 C
  AA: "d2@5 d2@3 [f#4,a4,d5]@5 [f#4,a4,d5]@3, [d4,f#4,a4] d3", AB: "g2@5 g2@3 [d4,g4,b4]@5 d5@3, [g4,b4,d5] g3",
  AC: "g2@5 g2@3 [g3,d4,g4,b4]@8, [d4,g4,c5] ~", AD: "[d4,a4]@3 e4@2 d4@3 [f#2,f#3]@5 [e2,e3]@3, f#2 [d4,a4]",
  AE: "[d2,d3]@5 d2@3 [d4,f#4,a4]@3 [g4,b4]@2 [a4,c5]@3, [d4,f#4,a4] d3", // D G Am D
  AF: "c2@5 c2@3 c3@5 c2@3, [e4,g4,d5] [d4,e4,g4]", AG: "c2@5 c2@3 c3@5 c2@3, [e4,g4,d5] [e4,g4,c5]",
  AH: "d2@5 d2@3 [f#3,d4,f#4,a4]@8, [d4,f#4,a4] ~", // D
  AI: "[g1,g2,a4,d5,f#5,a5]@4 [a4,a5] [g2,a4,a5]@3 [a4,a5]@3 g4@2 b4@3, ~@5 g1@11, ~ g2", // D A Gsus2 A
  AJ: "g2@5 g2@3 [g3,a3,d4,g4]@8, [d4,g4,b4] ~", AK: "g2@5 g2@3 ~@3 g4 a4 b4 ~ c5, [a3,d4]@11 ~@5, ~ g3",
  AL: "f#2@5 f#2@3 [f#3,a3,d4,f#4]@8, [d4,a4,d5] ~", AM: "f#2@5 f#2@3 d4@3 d5 c5 b4 ~ a4, a3@11 ~@5, d4 f#3",
  AN: "e2@5 e2@3 e3@5 e2@3, [d4,g4] [d4,g4,a4]", AO: "e2@5 e2@3 e3@5 e2@3, [d4,g4,b4] [b3,d4,g4]",
  AP: "[[g4,d5]@3 g5@2 g4@3 [g4,d5]@3 g5@2 g4@3 ~@3 [g4,d5]@2 g5@3 g4@3 d5@2 c3@3 d3@3 d2@2 g2@5 ~ g2@2 [g3,d4,g4]@3 a3@3 b3@2 g2@5 ~ g2@2 [b3,d4,g4]@3 a4@3 b4@2 f#2@5 ~ f#2@2 [f#3,d4]@3 g3@3 a3@2 f#2@5 ~@3 [a3,d4]@3, c2@5 c2@5 ~ c3@8 c2@5 c2@5 [g4,a4,c5,d5]@5 ~@3 [d4,a4,b4]@8 g2@8 [b3,d4]@8 g2@8 [d4,a4]@8 f#2@8 [a3,d4]@8 ~@3, ~@91 f#2@5]/6", // G5 G D D5 Gsus4 Bm7 Bm D5
  AQ: "a3@3 d4@3 ~@2 [e2,b3,d4,g4]@8, f#2 ~", AR: "e2@3 f#2@5 g2@5 g2@3, [d4,a4] [d4,g4,b4]",
  AS: "[e2,d4,g4,b4,d5]@8 [e4,g4,c5]@3 d4@2 e4@3, ~ c2", AT: "[e4,g4]@3 d4@2 e4@3 [g3,c4]@3 d4@2 c4@3, c3 c2",
  AU: "[[c2,c3,g3,c4,e4]@3 [c4,e4,g4]@2 [d4,f#4,a4]@3 [d5,g5,b5]@3 a5@2 ~@6 d5@2 c5@3 g2@5 g2@3, ~@3 [d2,d3]@5 g2@8 g3@8 [g4,b4,d5]@8, ~@13 g5@5 ~@14]/2", // C D G D G
  AV: "d4@3 g4@2 e4@3 a2@5 a2@3, g2 [c4,e4,g4]", AW: "[a2,c4,e4]@8 b2@5 b2@3, ~ [d4,g4]",
  AX: "[b2,g3,d4]@8 c3@5 c3@3, ~ [c4,e4,g4]", AY: "[c4,e4]@3 g4@2 e4@3 d3@5 d3@3, c3 [d4,f#4,a4]",
  AZ: "[a3,d4]@3 g4@2 e4@3 [c4,e4,g4]@3 b4 c5 d5 ~ e5, d2 a2", BA: "a2@5 a2@3 b2@5 b2@3, g5 [d4,g4]",
  BB: "d4@3 g4@2 e4@3 c3@5 c3@3, b2 [e4,g4]", BC: "[c4,e4]@3 g4@2 e4@3 d2@5 d2@3, c3 [d4,f#4,a4]",
  BD: "d4@3 g4@2 e4@3 a2@5 a2@3, d3 [b3,c4,e4,g4]", BE: "e4@5 g4@3 [b2,g3]@5 b2@3, a2 [d4,g4,d5]",
  BF: "[b2,d4,g4]@8 c3@5 c2@3, ~ [e4,g4,c5]", BG: "[c4,e4]@3 d4@2 g4@3 d2@5 d2@3, c2 [d4,f#4]",
  BH: "[d3,d4,f#4,a4]@8 a2@5 a2@3, ~ [b3,c4,e4,g4]", BI: "[c4,e4,g4]@3 a4@2 g4@3 [b1,b2]@5 [b1,b2]@3, a2 [d4,g4,d5]",
  BJ: "[b1,b2,d4,g4]@8 [c2,c3]@5 [c2,c3]@3, ~ [c4,e4,g4]", // G C
  BK: "[c2,c3]@5 [c2,c3]@3 [d2,d3]@5 [d2,d3]@3, [c4,e4,g4] [d4,f#4,a4]", // C D C D
  BL: "[d2,d3,d4,f#4,a4]@3 [d2,d3,b4]@2 [d2,d3,a4]@3 [a1,a2]@5 [a1,a2]@3, ~ [e4,g4,d5]", // D G D5 A Em7
  BM: "[e4,g4]@3 [g4,b4]@2 [a1,a2,a4,c5]@3 [b1,b2]@5 [b1,b2]@3, [a1,a2]@5 ~@3 [d4,g4,d5]@8", // Em G Am B A G5
  BN: "[b1,b2]@5 [b1,b2]@3 [c2,c3]@5 [c2,c3]@3, [d4,g4] [e4,g4,d5]", // B C G5 Em7
  BO: "[e4,g4]@3 [e4,g4,d5]@2 [c2,c3,g4,b4]@3 [d2,d3]@5 [d2,d3]@3, [c2,c3]@5 ~@3 [d4,f#4,a4]@8", // Em Em7 Cmaj7 D C D
  BP: "[d2,d3,f#4,a4,d5]@5 [d2,d3,f#4,a4,d5]@3 [a1,a2]@3 [a1,a2]@2 [a1,a2]@3, ~ [e4,g4,d5]", // D A Em7
  BQ: "[a1,a2,e4,g4]@3 [a1,a2,e4,g4,c5]@2 [a1,a2,g4,b4]@3 [b1,b2]@3 [b1,b2]@2 [b1,b2]@3, ~ [d4,g4,d5]", // A7 Am7 Em B G5
  BR: "[b1,b2]@3 [b1,b2]@2 [b1,b2]@3 [c2,c3]@3 [c2,c3]@2 [c2,c3]@3, [a3,d4,g4] [g4,c5,e5]", // B C Dsus4 C
  BS: "[c2,c3]@3 [c2,c3]@2 [c2,c3]@3 [d2,d3]@3 [d2,d3]@2 [d2,d3]@2 b4, [g4,c5,e5]@8 [d4,g4,a4,d5]@5 a4 ~@2", // C D C Dsus4
  BT: "[d2,d3,e4,e5]@3 [d2,d3,d4,d5]@2 [d2,d3,g4,g5]@3 [d2,d3,e5,e6]@3 [d2,d3,d5,d6]@2 [d2,d3,b4,b5]@3", // Dsus2 D G5 Dsus2 D G
  BU: "[[d2,d3,a4,a5]@3 [d2,d3,e4,e5]@2 [d2,d3,d4,d5]@3 [g1,g2,d4,g4,b4]@16 [d4,g4,c5]@3 d4 g4 c5@3, ~@3 [g1,g2]]/2", // D5 Dsus2 D G Csus2 G
  BV: "[g1,g2,d4,g4,b4]@8 f#2@5 f#2@3, ~ [d4,a4]", BW: "f#2@5 e2@3 d2@5 d2@3, [a3,d4,f#4] [d4,f#4,a4]",
  BX: "[[d4,f#4,a4]@3 [g4,b4]@2 [a4,c5]@3 ~@3 [e4,g4,d5]@5 ~@5 g4@3 e4@3 b1@5 b1@3 [d4,g4]@2 b4@3 c5@3 [c2,e4,g4,d5]@5, ~@3 d2@8 c2@8 c3@8 ~@8 b2@8 ~@5, ~@16 [e4,g4]@5 ~@6 [d4,g4]@8 ~@13]/3", // D G Am Em7 G5 C Em G5
  BY: "[~@3 c3@5 [c2,c4,e4,g4]@3 d2@5 d2@3 [e4,e5]@2 [d4,d5] ~ a4@4 g2@5 g2@3 [d4,g4,b4]@5 d5@3 g2@5 g2@3 [g3,d4,g4,b4]@8 [f#2,d4,a4]@8 [f#2,f#3]@5 [e2,e3]@3 [d2,d3]@5 d2@3 [d4,f#4,a4]@2 [g4,b4]@3 [a4,c5]@3 c2@5 c2@3 c3@5 c2@3 [b1,d4,g4]@5, [e4,g4,c5]@8 ~@3 [d4,f#4,a4]@8 d3@8 [g4,b4,d5]@8 g3@8 [d4,g4,c5]@8 ~@16 [d4,a4]@8 [d4,f#4,a4]@8 d3@8 [e4,g4,d5]@8 [d4,e4,g4]@8 ~@5]/7", // C E D G D F# E D …
  BZ: "[b1@3 [d4,g4]@2 b4@3 c5@3 c2@5 c2@3 c3@5 c2@3 d2@5 d2@3 [d3,d4,f#4,a4]@8 c2@5 c2@3 c3@5 c2@3 b1@5 b1@3 [d4,g4]@2 b4@3 c5@3 c2@5 c2@3 c3@5 c2@3 [d4,f#4,a4]@2 d4@3, ~@3 b2@8 [e4,g4,d5]@8 [e4,g4,c5]@8 [d4,f#4,a4]@8 ~@8 [e4,g4,d5]@8 [d4,e4,g4]@8 [d4,g4]@8 b2@8 [e4,g4,d5]@8 [e4,g4,c5]@8 d2@5]/6", // G5 D G5 D Em7 C D Em7 …
  CA: "[[d2,f#4]@3 [f#4,a4]@2 [g4,b4]@3 [a4,c5]@3 c2@5 c2@3 c3@5 c2@3 b1@5 b1@3 [d4,g4]@2 b4@3 c5@3 c2@5 c2@3 c3@5 c2@3 d2@5 d2@3 [f#3,d4,f#4,a4]@8 [g1,g2,b4,d5,g5,b5]@4 [b4,b5], ~@3 d3@8 [e4,g4,d5]@8 [d4,e4,g4]@8 [d4,g4]@8 b2@8 [e4,g4,d5]@8 [e4,g4,c5]@8 [d4,f#4,a4]@8 ~@13]/5", // D F#m G Am G5 D G B …
  CB: "[b4,b5]@3 [b4,b5]@2 [a4,a5]@3 [g4,g5]@3 [g1,g2]@5, [g1,g2]@11 ~@5", // B A G
  CC: "[c5,c6]@3 [c5,c6]@5 [c5,c6]@3 [b4,b5]@2 [a4,a5]@3, ~@3 [g1,g2]@11 ~@2", // C B A G
  CD: "[g1,g2,a4,d5,f#5,a5]@4 [a4,a5] [a4,a5]@3 [d4,g4,a4,d5]@8, ~@5 [g1,g2]@11", // D A Dsus4 G
  CE: "[[g1,g2]@5 [c5,c6]@3 [c5,c6]@5 [c5,c6]@3 [b4,b5]@3 [a4,a5]@2 [g1,g2,b4,d5,g5,b5]@4 [b4,b5] ~ [b4,b5]@2 [b4,b5]@3 [a4,a5]@3 [g4,g5]@2 [g1,g2,a4,d5,f#5,a5]@4 [a4,a5] ~ [a4,a5]@3 ~@5 [d4,g4,a4,d5]@8 [g1,g2,g3,d4,g4]@16 ~@5, ~@8 [g1,g2]@11 ~@8 [g1,g2]@10 ~@6 [g1,g2]@11 ~@26]/5", // G C B A G B A G …
})).s("gm_piano").gain(0.44)

stack(piano)