Strudelify

Far East Suite

Akira Senju

KeyE majorTempo125 bpm
0:00/0:00
// Far East Suite — Akira Senju
// 125 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 1 "B♭ Clarinet" named as a reed, played on clarinet (its violin patch is not one); ch 2 "Flute" named as a pipe, played on flute (its pizzicato strings patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/6334853; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 48 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(125/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 · clarinet · "B♭ Clarinet"
const clarinet = note(`<
  ~@8 A B C D E B C F G H I J G H K L M B C D E B C F G H I J G H K L N O N O P Q R O
>`.pickRestart({
  A: "c#5 ~ f#4 ~@3 a4@2", B: "f#4@2 ~@2 a4@2 b4@2 ~@2 a4@2 f#4@3 ~@3 f#4@2 ~@2 e4@2", C: "f#4@3 ~@15 f#4@2 ~@2 a4@2",
  D: "b4@3 ~@3 e5@2 ~@2 c#5@2 b4@3 ~@3 e4@6", E: "c#5 ~ c#5 ~@3 a4@2", F: "b4@3 ~@3 e5@2 ~@2 c#5@2 b4@3 ~@9",
  G: "b4@3 ~@3 b4@2 ~@2 c#5@2 b4@3 ~@3 c#5@2 ~@2 e5@2", H: "c#5 ~ c#5 ~@5",
  I: "b4@3 ~@3 b4@2 ~@2 c#5@2 b4@3 ~@3 b4@2 ~@2 c#5@2", J: "a4 ~ a4 ~@5",
  K: "f#5@2 ~@2 e5@2 c#5@2 ~@2 b4@2 a4@3 ~@3 a4@2 ~@2 f#4@2", L: "f#4 ~@3 f#4 ~@3", M: "c#5 ~@5 a4@2",
  N: "c#5@2 ~@2 b4@2 c#5@2 ~@2 e5@2 c#5@3 ~@3 c#5@2 ~@2 b4@2", O: "c#5 ~@7",
  P: "b4@2 ~@2 a4@2 b4@2 ~@2 d5@2 b4@3 ~@3 b4@2 ~@2 a4@2", Q: "b4 ~@7", R: "c#5 ~ b4 c#5 ~ e5 f#5 ~ e5 c#5 ~ b4",
})).s("gm_clarinet").gain(0.3)

// other · pizzicato strings · "Violin II"
const pizzicato_strings = note(`<
  A B A B C D E B F G H G F G I@2 J K L M J K N O ~ G H G F G I@2 J K L M J K N O A B A B C D E P
>`.pickRestart({
  A: "c#5@2 b4 c#5@2 e5 c#5@3 c#5@2 b4", B: "c#5 ~@3", C: "b4@2 a4 b4@2 d5 b4@3 b4@2 a4", D: "b4 ~@3",
  E: "c#5@2 b4 c#5@2 e5 f#5@2 e5 c#5@2 b4", F: "~ f#4 ~ c#4", G: "~ d4 ~ e4", H: "~ f#4 ~ f#4", I: "~ f#4 ~ e4",
  J: "~ f#4 ~ g#4", K: "~ c#4 ~ g#4", L: "~ f#4 e4 f#4", M: "~ e4!3", N: "~ f#4 ~ a4", O: "~ e4 ~ e4", P: "c#5 ~ f#4 ~",
})).s("gm_pizzicato_strings").gain(0.3)

// other · pizzicato strings · "Viola"
const pizzicato_strings_2 = note(`<
  ~ A ~ A ~ B ~ A C D C D C D C E D F G H D F I C ~ D C D C D C E D F G H D F I C ~ A ~ J K B ~ L
>`.pickRestart({
  A: "~@2 c#4 ~@2 c#4 ~@2", B: "~@2 b3 ~@2 b3 ~@2", C: "~ c#4 ~ c#4", D: "~ a3 ~ b3", E: "~ d4 ~ c#4", F: "~ a3 ~ c#4",
  G: "~ c#4 a3 b3", H: "~ c#4 ~ a3", I: "~ a3 ~ d4", J: "~@2 c#4@2 ~ c#4@2 ~", K: "b3 ~@7", L: "c#4 ~ c#4 ~",
})).s("gm_pizzicato_strings").gain(0.3)

// bass · acoustic bass · "Contrabass"
const bass = note(`<
  ~ A ~ A ~ B ~ A C D C D C E F D E G E H E G I F J D C D C E F D E G E H E G I F ~ K ~ L M N ~ F
>`.pickRestart({
  A: "~@2 f#3 ~@2 f#3 ~@2", B: "~@2 e3 ~@2 e3 ~@2", C: "f#1 ~ f#2 ~", D: "b1 ~ c#2 ~", E: "d2 ~ e2 ~", F: "f#2 ~ f#1 ~",
  G: "f#2 ~ e2 ~", H: "f#2 ~ c#2 ~", I: "b1 ~ e2 ~", J: "f#3 ~ f#3 ~", K: "~@2 f#2 ~@2 f#2 ~@2",
  L: "~@2 f#2@2 ~ f#2@2 ~", M: "e2 ~@7", N: "~@2 e2 ~@2 e2 ~@2",
})).s("gm_acoustic_bass").gain(0.3)

// other · orchestral harp · "Harp" · C#m Bsus2 G#m F#sus2 C#m Bsus2 C#m Esus2 …
const orchestral_harp = note(`<
  ~@15
  [~@12 g#3 b3 [c#4,e4] f#4 g#4 [b4,c#5] e5 f#5 [g#5,b5] c#6 e6 [f#6,g#6]]
  ~@8
  [f#3 b3 [c#4,e4] f#4 a4 [b4,c#5] a5 f#5 [c#5,e5] b4 a4 [e4,f#4] f#3 b3 [c#4,e4] f#4 a4 [b4,c#5] e5 f#5 [a5,b5] c#6 e6 [f#6,a6]]
  ~@6
  [~@12 g#3 b3 [c#4,e4] f#4 g#4 [b4,c#5] e5 f#5 [g#5,b5] c#6 e6 [f#6,g#6]]
  ~@16
>`).s("gm_orchestral_harp").gain(0.3)

stack(clarinet, pizzicato_strings, pizzicato_strings_2, bass, orchestral_harp)

More by Akira Senju