Strudelify

La escuela de los 10 colores (åååè²ããï¼)

ShirÅ Hamaguchi

KeyB♭ majorTempo120 bpm
0:00/0:00
// La escuela de los 10 colores (åååè²ããï¼) — ShirÅ Hamaguchi
// 120 bpm, 4/4, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3576101; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 75 bars on a 32-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 part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// other · acoustic guitar steel · "Guitarra acústica"
const acoustic_guitar_steel = note(`<
  ~ A@2 B C D E F G H I J K L M N O P Q ~@2 R S T U V S W X Y Z AA AB AC AD AE AF AG ~@7 AH AI AJ AI AK AL AM AN AO ~ AP
  AQ AR ~@4 AS AT AU AV AW AX AY AZ BA BB BC BD BE
>`.pickRestart({
  A: "[d4,f4] ~ [d4,f4] ~ [d4,f4] ~ [d4,f4] ~", B: "[d4,f4] ~ [d4,f4] ~ [d3,f3] ~ [d3,f3] ~",
  C: "[d3,f3] ~ [d3,f3] ~ [d3,f3] ~ [d3,f3] ~", D: "[eb3,g3] ~ [eb3,g3] ~ [eb3,g3] ~ [eb3,g3] ~",
  E: "[eb3,g3] ~ [eb3,g3] ~ [f3,a3] ~ [f3,a3] ~", F: "[f3,bb3] ~ [f3,bb3] ~ [a3,c4] ~ [a3,c4] ~",
  G: "d4@2 c4 bb3 a3 g3 f3 eb3 d3@8", H: "f3 ~@3 f3 ~@3", I: "f3 ~ d3 ~ f3 ~@3", J: "bb2 ~@3 bb2 ~@3",
  K: "a2 ~ d3 ~ a2 ~ d3 ~", L: "a2 ~ a2@2 bb2 a2 bb2 c3", M: "d3 ~ eb3 ~ g3 ~ d3 ~", N: "eb3 ~ g3 ~ c4 ~ bb3 ~",
  O: "f3!2 a3 f3", P: "bb3@2 a3 g3 f3 eb3 d3 c3", Q: "bb2 ~@7", R: "~@24 f3@5 f3@3",
  S: "f3@5 f3@3 f3@5 eb3@3 d3@5 f3@3 bb3@5 c4@3", T: "d4@5 d4@3 d4@5 c4@3 bb3@4 ~@4 bb3@5 a3@3",
  U: "g3@5 g3@3 g3@5 a3@3 bb3@5 a3@3 bb3@5 g3@3", V: "f3@5 g3@3 f3@5 d3@3 f3@4 ~@4 f3@5 f3@3",
  W: "d4@5 d4@3 d4@5 c4@3 bb3@4 ~@4 bb3@8", X: "c4!2 bb3 a3", Y: "bb3@8 [f4,d5]@3 [f4,d5]@2 [f4,d5]@3 [gb4,d5]@16",
  Z: "[g2,g3] ~ d3 ~ [g2,g3] ~ d3 ~", AA: "[g2,g3] ~ [a2,a3] ~ [d3,d4] ~ [a2,a3] ~",
  AB: "[d3,d4] ~ [a2,a3] ~ [d3,d4] ~ [a2,a3] ~", AC: "[d3,d4] ~ d3 gb3 [g2,g3] ~ d3 ~", AD: "d3@2 g3@2 f3@2 g3 f3",
  AE: "eb3@3 eb3 d3@2 c3@2 d3@4 [g2,c3]@4", AF: "~ eb3@2 c3 d3@3 bb2", AG: "c3@3 c3 bb2@2 a2@2 g2@8",
  AH: "~@24 eb3 f3 ~ g3 ab3 bb3 ~ c4", AI: "[f3,bb3] ~ [f3,bb3] ~", AJ: "[f3,bb3] ~ [f3,bb3] ~ [f3,bb3] ~ [f3,bb3] ~",
  AK: "[f3,bb3]!2 [c4,f4] ~", AL: "b3 c4", AM: "d4 c4", AN: "~@21 g3@3 g3@5 ab3@3",
  AO: "bb3@5 ab3@3 g3@5 f3@3 eb3@3 ~@5 g3@8", AP: "~@7 g3", AQ: "c4@3 g3 f3@2 eb3@2 eb3@2 d3@2 d3@4",
  AR: "g3@3 f3 eb3@2 d3@2 [c3,eb3,g3]@4 ~@4", AS: "c3 c3@2 bb2 a2@2 a2@2", AT: "f2 ~ f2 ~ bb2 ~ bb2 ~",
  AU: "a2 ~ a2 ~ a2 ~ a2 ~", AV: "f2@2 ~@2 g2@2 ~@2 c3 ~ bb2 ~ a2 ~ g2 ~", AW: "f2 ~ c3 ~ f2 ~ a2 ~",
  AX: "bb2 ~ bb2 ~ bb2 ~ c3 ~", AY: "a2 bb2", AZ: "bb2 ~@2 c3 f2 ~ f2 ~",
  BA: "[f3,a3] ~ [f3,a3] ~ [g3,bb3] ~ [g3,bb3] bb3", BB: "[a3,c4] [bb3,d4] [c4,e4] [d4,f4]",
  BC: "[bb3,eb4]!2 [c4,e4]!2", BD: "[bb3,d4] [a3,c4] [bb3,d4,f4]@2", BE: "[c4,e4]@2 [bb3,d4]@2 [a3,c4] ~ [f3,a3,c4] ~",
})).s("gm_acoustic_guitar_steel").gain(0.4)

// drums · snare
const snare = s("sd").struct(`<
  ~ A B A B A B A B A B A C ~ D@3 E F G F H ~@16 I J I J K L M N ~@11 O P Q P R ~@13
>`.pickRestart({
  A: "x!2", B: "x!3 ~", C: "x!4", D: "~@2 x ~@3 x ~@3 x!3 ~ x ~", E: "x", F: "x ~ x!3 ~@3 x ~ x!3 ~@3",
  G: "x ~@3 x ~ x ~ x ~ x ~ x ~ x ~ x ~@3 x ~@3 x!8", H: "x ~ x!7 ~@7", I: "x ~ x ~ x ~ x!3 ~ x!3 ~ x!2",
  J: "x ~ x!7 ~ x!3 ~ x ~", K: "x!9 ~@3 x ~@3 x!9 ~@3 x ~@3", L: "x ~@3 x ~ x ~ x ~@3 x ~@3 x!9 ~ x ~ x ~ x ~",
  M: "x ~ x!3 ~ x!3 ~ x!3 ~ x!2", N: "x ~@3 x ~ x ~ x ~ x ~ x ~ x ~ x!8 ~@8", O: "~@12 x!4", P: "x ~@3 x!5 ~@3 x!4",
  Q: "x ~@2 x!2 ~ x ~ x ~ x ~ x!4", R: "x ~@5 x ~ x ~@3 x ~@3 x ~ x ~ x ~@3 x!8",
})).gain(0.4)

stack(acoustic_guitar_steel, snare)