Strudelify

Natsu No Ringo (åãææª)

Kalafina

KeyA♭ majorTempo72 bpm
0:00/0:00
// Natsu No Ringo (åãææª) — Kalafina
// 72 bpm, 6/8, key Ab major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5942840; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 91 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(72/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 A C A D E F G H G I G H J K L M N O L P Q R S T U V W X W Y W X W Z AA AB AA AC AD AE AD AF AD AG AH AI G H G I
  G H J K L M N O L P Q R S T U V W X W Y W X W Z AA AB AA AC AD AE AD AF AD AG AJ AK AL@2
>`.pickRestart({
  A: "f2 ab2 c3 f3@2 c3 db3 ab2 db3 f3 db3 ab2", B: "eb2 bb2 eb3 g3 eb3 bb2 ab2 eb3 c4 eb3 bb3 eb3",
  C: "eb2 bb2 eb3 g3 eb3 bb2 ab2 eb3 bb3 eb3 ab3 g2", D: "eb2 bb2 eb3 g3 eb3 bb2 f2 ab2 c3 f3 c3 ab2",
  E: "db3 f3 ab3 c4 ab3 f3 c3 eb3 g3 c4 g3 eb3", F: "bb2 db3 f3 bb3 f3 db3 c3 eb3 g3 c4 eb4 g4",
  G: "e2 b2 e3 g3 e3 b2 c3 e3 g3 c4 g3 [e3,g4], e4@3 b4@3 b4@3 g4@2 ~", // Em
  H: "[d3,a4] [gb3,b4] a3 d4 a3 gb3 [b2,gb4] [d3,g4] gb3 b3 gb3 d3, ~ a4 g4 ~ a4 gb4", // D5 B5 G5
  I: "[d3,a4] [gb3,b4] a3 d4 a3 gb3 g2 d3 b3 d3 a3@2, ~@4 a4@4 b4@4 b4@11 ~", // D5 B5
  J: "[a2,e4] [c3,gb4] e3 g3 e3 [c3,e4] [b2,gb4] [d3,e4] gb3 a3 gb3 d3, ~@2 g4@3 ~@3 d4@2 gb4@2", // A5 Cdim C B5 Dsus2
  K: "[e2,g4] [b2,gb4] e3 a3 e3 b2 g3@2 e3@2 b2@2, ~@4 e4@19 ~", // Em B5
  L: "d3 f3 a3 d4 a3 f3 bb2 d3 f3 bb3 f3 [d3,f4], d4@3 a4@3 a4@3 f4@2 ~", // Dm
  M: "[c3,g4] [e3,a4] g3 c4 [g3,f4] [e3,f4] [a2,e4] [c3,f4] e3 a3 c4 a3, ~ g4 ~@2 g4 e4", // C5 A5 G7 Fmaj7 A5 F5
  N: "d3 f3 a3 d4 a3 f3 bb2 d3 f3 bb3 f3 d3, d4 a4!2 f4",
  O: "[c3,g4] [e3,a4] g3 c4 g3 e3 f3 c4 f4 c4 e3 c4, ~@4 g4@4 a4@4 a4@11 ~", // C5 A5
  P: "[c3,g4] [e3,a4] g3 c4 g3 e3 [a2,e4] [c3,f4] e3 a3 c4 [a3,e4], ~@2 g4@2 f4@2 ~@2 g4@3 ~", // C5 A5 F5 A5
  Q: "[g2,f4] [bb2,e4] d3 f3 d3 bb2 [a2,e4] [c3,f4] e3 g3 e3 [c3,e4], ~@2 d4@2 d4@2 ~@2 e4@3 ~", // G7 Bbdim A5 F5 C
  R: "[d2,f4] [a2,e4] d3 a2 e3 a2 f3 e3 d3@2 a2@2, ~@4 d4@19 ~", // Dm A5
  S: "[bb2,d4,f4] [d3,g4] [f3,a4] [bb3,bb4] [f3,c5] [d3,bb4] bb2 d3 f3 bb3 f3 [d3,d4,a4], ~@6 a4@2 [d4,g4]@3 ~", // Bb G5 F Bb F5 Gm D5 G5
  T: "a2 e3 a3 c4 a3 e3 e4 a3 e3 c4 a3 e3, [d4,a4]@23 ~", // D5
  U: "[g2,d4,f4] [bb2,g4] [d3,a4] [g3,bb4] [d3,c5] [bb2,bb4] bb3 d3 bb2 g3 d3 bb2, ~@3 a4 g4 a4", // G7 Eb D5 Gm D7 Bb
  V: "a2@2 d4 a3 [e3,bb4]@2 a2@2 e4 d4 a3 e3, a4@8 ~@4 a4@11 ~", // Edim
  W: "[gb2,gb4,a4] [db3,gb4,a4] gb3 db3 ~ [e4,ab4] d2 a2 d3 a2 [gb3,d4,gb4]@2, ~ [gb4,a4] a3 [gb4,a4] [e4,ab4] ~", // Gbm E D Gbm E
  X: "[e2,e4] [b2,gb4] e3 b2 [ab3,b3,d4]@2 [a2,a3,db4] [e3,b3,d4] a3 e3 ab2 e3, ~ e4 ~@2 [db4,e4]@2", // E B5 Abdim A E7 Dbm
  Y: "[e2,ab4] [b2,a4] e3 b2 [ab3,e4,a4]@2 a2 db3 [e3,a3] [db3,b3] [ab2,db4] [db3,e4], ~@4 ab4@4 ~@4 a4@11 ~, ~@3 db4@2 ~", // E B7 Amaj7 A5 Db7 Db5 Dbm
  Z: "[e2,ab4] [b2,a4] e3 b2 [ab3,d4,a4]@2 a2 e3 [a3,a4] [e3,b3,b4] [a3,db4,db5] [b3,d4,d5], ~ ab4 ~ [db4,a4] ~@2", // E B7 D A E5 A Bm Gbm
  AA: "gb2 db3 [gb3,a3] [db3,b3] [a3,db4] [b2,d4] d2 a2 [d3,a4] [e3,b4] [gb3,db5] [a3,d5], db5@5 ~@3, ~@3 db4 ~@2", // Gbm Db7 A Bm D5 E5 Gb5 D5
  AB: "e2 b2 e3 b2 ~ db5 a2 e3 [a3,a4] [b3,b4] db5 d5, b4@2 ab3 db5 ~ db4", // A B
  AC: "e2 b2 e3 b2 ~ a4 [a2,a4] e3 a3 e3 a3 e3, b4@2 ab3 ~@3", AD: "gb2 a2 db3 gb3@2 db3 d3 a2 d3 gb3 d3 a2",
  AE: "e2 b2 e3 ab3 e3 b2 a2 e3 db4 e3 b3 e3", AF: "e2 b2 e3 ab3 e3 b2 a2 e3 b3 e3 a3 ab2",
  AG: "e2 b2 e3 ab3 e3 b2 gb2 a2 db3 gb3 db3 a2", AH: "d3 gb3 a3 db4 a3 gb3 db3 e3 ab3 db4 ab3 e3",
  AI: "b2 d3 gb3 b3 gb3 d3 db3 e3 ab3 db4 e4 ab4", AJ: "d3@2 gb3@2 a3@2 ~ db4@2 a3@2 gb3@2 db3@3 e3@3 ab3@3 db4@2",
  AK: "~ ab3@3 e3@3 gb2@3 gb3@3 ~ b3@3 db4@3 ~ gb4@3",
  AL: "[~ db4@5 ~@2 bb3@33 ~@7, ~@6 [db3,gb4]@35 ~@7, ~@7 [gb3,bb4]@34 ~@7]/2", // Gb5 Gb
})).s("gm_piano").gain(0.3)

stack(piano)