Strudelify
Heart of the Moment cover art

1999 · Asia

Heart of the Moment

Asia

KeyD majorTempo136 bpm
0:00/0:00
// Heart of the Moment — Asia
// 136 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 3/4 at bar 2, 12/8 at bar 3, 4/4 at bar 7, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: duplicate parts dropped: ch 6 "Guiter(L)" electric guitar muted (copy of ch 5 "Guiter(R) : Steve Howe" electric guitar muted, 0.083 beats late); ch 11 vibraphone (copy of ch 8 "Keybord(sub)" pad new age); ch 12 vibraphone (copy of ch 8 "Keybord(sub)" pad new age)
// note: Full arrangement: all 131 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(136/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 · lead 1 square · "Corus1"
const lead_1_square = note(`<
  ~@5 A B@2 C@3 D E F G H@2 I J@2 K L A M@2 N@2 O@4 P@2 Q@2 R@2 S T U V W X Y Z AA@5 AB@2 AC@2 R@2 AD AE ~@16 X Y Z AF W
  X Y Z AA@5 AG@2 AH@6 AI@2 AC@2 R@2 AD AJ ~@17 AK@2 AL@2 AM@2 ~@5
>`.pickRestart({
  A: "~@19 d#4@3 d#4@2", B: "[~ f4@3 f4@3 ~ c#4@3 c#4@6 f4@3 d#4@6 ~ f4@3 f4@5 ~@13]/2",
  C: "[~@11 d#4@3 d#4@3 f4@3 f4@3 c#4@3 ~ c#4@6 f4@3 d#4@5 ~ c#4@3 ~ c#4@6 ~@20]/3",
  D: "~@2 d#4@3 ~ d#4@3 f4@3 f4@3 c#4@3 c#4@6", E: "~ f4@3 d#4@6 f4@3 f4@6 ~@5", F: "~@6 d#4!2",
  G: "f4@3 ~ f4@3 c#4@3 c#4@6 f4@3 ~ d#4@4", H: "[c#4@5 c#4@3 a#3@3 ~ a#3@31 ~@5]/2", I: "~@11 d#4@3 ~ d#4@3 f4@3 f4@3",
  J: "[c#4@3 c#4@6 ~ f4@3 d#4@6 f4@3 f4@6 ~@20]/2", K: "~@3 d#4@3 d#4@3 f4@3 ~ f4@3 c#4@3 c#4@5",
  L: "~ f4@3 ~ d#4@6 c#4@3 c#4@6 ~@4", M: "[~ f4@3 f4@3 ~ c#4@3 c#4@6 f4@3 d#4@6 ~ f4@3 f4@6 ~@12]/2",
  N: "[~@11 d#4@3 d#4@3 f4@3 f4@3 c#4@3 ~ c#4@6 f4@3 d#4@6 c#4@6]/2",
  O: "[~ c#4@3 a#3@31 ~ [g#3,d#4]@6 [c4,f#4]@3 [c#4,g#4]@14 ~ [c4,g#4]@6 [c#4,g#4]@2 ~ [c4,g#4]@6 [a#3,f#4]@3 ~@18]/4", // G#5 Cdim C#5 Fm C#5 Fm D#m
  P: "[f4@3 f#4@3 f4@3 d#4@3 ~@3 g#4@2 ~@4 a#4@6 f4 d#4 ~ c#4@3 ~@12 f#3@3]/2",
  Q: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@2 ~ [c4,g#4]@6 [a#3,f4]@2 ~@7 a#3@3 c#4@3 d#4@3 d#4@3]/2", R: "[g#4,c#5]/2",
  S: "~@3 d#4@3 d#4@2 ~ f4@3 f4@2 ~ c#4@2 ~ c#4@6", T: "f4@2 ~ d#4@6 f4@3 f4@6 ~@6", U: "~@15 d#4@2 ~ d#4@2 ~ f4@2 ~",
  V: "f4@2 ~ c#4@2 ~ c#4@6 f4@2 ~ d#4@6 c#4@3", W: "c#4 ~@3", X: "~ d#4!2 f4!2 c#4 c#4@2", Y: "f4 d#4@2 f4 f4@2 ~@2",
  Z: "~@5 d#4!2 f4",
  AA: "[f4@3 c#4@3 c#4@6 f4@3 d#4@6 c#4@6 c#4@3 a#3@29 ~ [g#3,d#4]@3 [a#3,f4]@3 [c4,f#4]@3 [c#4,g#4]@14 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f#4]@3 ~@18]/5", // G#5 A#5 Cdim C#5 Fm C#5 Fm D#m
  AB: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c#4,g#4]@6 [a#3,f4]@3 ~@15 g#3@3]/2", // C#5 Fm C#5 A#5
  AC: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f4]@3 ~@6 a#3@3 c#4@3 d#4@3 d#4@3]/2", // C#5 Fm C#5 Fm A#5
  AD: "[c4,g#4]@9 [a#3,f4]@14 ~", AE: "[a#3,f#4]@9 [g#3,d#4]@14 ~", AF: "f4 c#4 c#4@2 f4 d#4@2 c#4",
  AG: "[f4@3 f#4@2 ~ f4@3 d#4@2 ~@4 g#4@2 ~@4 a#4@6 f4 d#4 ~ c#4@6 ~@9 f#3@3]/2",
  AH: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f4]@3 ~@6 a#3@3 c#4@3 d#4@3 d#4@38 ~ [g#3,d#4]@3 [a#3,f4]@3 [c4,f#4]@3 [c#4,g#4]@14 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f#4]@3 ~@18]/6", // C#5 Fm C#5 Fm A#5 G#5 A#5 Cdim …
  AI: "[[c#4,g#4]@4 [c4,g#4]@2 [c#4,g#4] [c#4,g#4]@2 [a#3,f4] ~@5 g#3]/2", AJ: "[a#3,f#4]@8 ~ [g#3,d#4]@14 ~",
  AK: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f#4]@3 ~@18]/2", // C#5 Fm C#5 Fm D#m
  AL: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c#4,g#4]@6 [a#3,f4]@3 ~@18]/2", // C#5 Fm C#5 A#5
  AM: "[[c#4,g#4]@11 ~ [c4,g#4]@6 [c#4,g#4]@3 [c4,g#4]@6 [a#3,f4]@3 ~@18]/2", // C#5 Fm C#5 Fm A#5
})).s("gm_lead_1_square").gain(0.02)

// chords · pad choir · "Corus1"
const pad_choir = note("<~@66 A@3 ~ B@2 ~@59>".pickRestart({
  A: "[[g#3,c4,d#4,g#4]@15 c#3 c#4@8, ~@5 [g#3,f4,g#4]@3]/3", B: "[d#4@8 d#3@7 ~, [g#3,c4,g#4]@15 ~]/2",
})).s("gm_pad_choir").gain(0.01)

// chords · distortion guitar · "Guiter(R) : Steve Howe"
const distortion_guitar = note(`<
  A@6 B C@7 D E@8 B F@5 ~@5 G@4 H@5 I@5 ~@23 J@2 K@7 L@4 M ~@14 N O P Q R S T@2 U@3 V@8 W X Y Z AA AB AC AD AE AF@3 AG
>`.pickRestart({
  A: "[~@8 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [f3,a#3,c#4,f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,c#6]@25 ~ [d#3,g#3,c4,d#4,g#4]@9 ~ [f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c4,d#4,g#4]@4 ~@2 [g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [c4,d#4,g#4]@8, ~@17 a#2@9 ~@10 [g#2,d#3,g#3]@4 ~@6 [g#3,f4]@23 ~@2 g#2@9 ~ [a#2,f3,a#3,c#4]@9 ~@10 [g#2,d#3,g#3]@4 ~@2 c#3@3 ~ g#3@23 ~@2 [g#2,d#3,g#3]@9]/6", // G# A#m F# G# C# G# A#5 F# …
  B: "~ [a#2,f3,a#3,c#4,f4,a#4]@9 f#2 [f#2,c#3,f#3,a#3,c#4,f#4]@9 [g#2,d#3,g#3,c4,d#4,g#4]@4", // A#m F# G#
  C: "[~@2 [c#3,g#3,c#4,f4]@3 ~ [c#4,c#6]@25 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [a#3,c#4,f#4]@8 ~ [d#3,g#3,c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [f3,a#3,c#4,f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [d#3,g#3,c4,d#4,g#4]@9, ~@5 c#3@24 ~@21 [f#2,c#3,f#3]@9 g#2@4 ~@41 a#2@9 ~@10 [g#2,d#3,g#3]@4 ~@31 g#2@9 ~, ~@6 [g#3,f4]@23 ~@40 g#3@23 ~@41 g#3@23 ~@12]/7", // C# G# A#m F# G# C# G# A#m …
  D: "~ [f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c#4,f4]@4, [a#2,f3,a#3,c#4]@9 ~@10 [f2,c#3,g#3]@4 ~", // A#5 F# C# A#m C#
  E: "[~@2 [c#3,f#3,a#3,c#4,f#4]@3 [f#2,c#3,f#3,a#3,c#4,f#4]@51 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [f3,a#3,c#4,f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [d#3,g#3,c4,d#4,g#4]@9 ~ [f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [c4,d#4,g#4]@4 ~@2 [g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [c4,d#4,g#4]@8, ~ f#2@3 ~@61 a#2@9 ~@10 [g#2,d#3,g#3]@4 ~@6 g#3@23 ~@2 g#2@9 ~ [a#2,f3,a#3,c#4]@9 ~@10 [g#2,d#3,g#3]@4 ~@2 c#3@3 ~ g#3@23 ~@2 [g#2,d#3,g#3]@9]/8", // F# G# A#m F# G# C# G# A#5 …
  F: "[~@2 [c#3,g#3,c#4,f4]@3 ~ [c#4,f4,c#6]@25 [g#2,d#3,g#3,c4,d#4,g#4]@9 a#2 [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [a#3,c#4,f#4]@9 [f2,c#3,g#3,c#4,f4]@4 ~@2 [f#2,c#3,f#3,a#3,c#4,f#4]@3 ~ [a#3,c#4,f#4]@50, ~@5 c#3@25 ~@20 [f#2,c#3,f#3]@9 ~@10 [f#2,c#3,f#3]@50 ~, ~@6 g#3@23 ~@91]/5", // C# G# A#m F# C# F# F#5
  G: "[~@24 [g#3,c#4]@23 ~ [g#3,c4]@23 ~ [g#3,c4,d#4,g#4]@9 [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [c#3,f#3,a#3,c#4,f#4]@6, ~@23 [g#2,d#3]@24 [g#2,d#3]@24 [g#2,d#3]@9 ~@9 f#2@7]/4", // C#5 G# A#m F# G#5
  H: "[~@3 [c4,d#4,g#4]@4 ~@2 [c#4,f4]@2 ~ [c#4,c#6]@23 ~ [g#3,c4,d#4,g#4]@8 ~ [f3,a#3,c#4,f4,a#4]@8 ~ [c#3,f#3,a#3,c#4,f#4]@8 ~ [d#3,g#3,c4,d#4,g#4]@3 ~@3 [c#4,f4]@2 ~ [c#4,c#6]@23 ~ [g#3,c4,d#4,g#4]@8 ~ [f3,a#3,c#4,f4,a#4]@8 f#2 [f#2,c#3,f#3,a#3,c#4,f#4]@6, ~@2 [g#2,d#3,g#3]@4 ~@2 [c#3,g#3]@3 [c#3,g#3]@23 ~ [g#2,d#3]@8 ~ a#2@8 ~ f#2@8 ~ g#2@4 ~@2 [c#3,g#3]@3 [c#3,g#3]@23 ~ [g#2,d#3]@8 ~ a#2@8 ~@8, ~@6 f4@11 ~@19 f4@11 ~@13]/5", // G# C# G# A#m F# G# C# G# …
  I: "[~@3 [d#3,g#3,c4,d#4,g#4]@4 ~@2 [c#4,f4]@2 ~ [c#4,c#6]@23 ~ [g#3,c4,d#4,g#4]@8 ~ [f3,a#3,c#4,f4,a#4]@8 ~ [c#3,f#3,a#3,c#4,f#4]@8 ~ [c#3,g#3,c#4,f4]@4 ~@2 [f#3,a#3,c#4,f#4]@2 ~ [f#3,a#3,c#4,f#4]@48, ~@2 g#2@4 ~@2 [c#3,g#3]@3 [c#3,g#3]@23 ~ [g#2,d#3]@8 ~ a#2@8 ~ f#2@8 ~ f2@4 ~@2 [f#2,c#3]@3 [f#2,c#3]@48 ~, ~@6 f4@11 ~@43]/5", // G# C# G# A#m F# C# F# C#5 …
  J: "[~@7 c#4@9, ~@20 [f#2,c#3,f#3]@27 ~]/2", // F#5
  K: "[[f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 c#4@5 ~ [c4,d#4,g#4]@8 ~ [a#3,c#4,f4,a#4]@8 ~ [f#3,a#3,c#4,f#4]@8 ~ [g#3,c4,d#4,g#4]@5 [c#3,g#3,c#4,f4]@2 ~ [c#3,g#3,c#4,f4]@23 ~@2 [c4,d#4,g#4]@8 ~ [a#3,c#4,f4,a#4]@8 ~ [c#3,f#3,a#3,c#4,f#4]@8 ~ [g#3,c4,d#4,g#4]@5 [c#3,g#3,c#4,f4]@2 ~ [c#3,g#3,c#4,f4]@24 ~ [c4,d#4,g#4]@8 ~ [f3,a#3,c#4,f4,a#4]@8 ~ [f#3,a#3,c#4,f#4]@6, ~@23 [g#2,d#3,g#3]@8 ~ [a#2,f3]@8 ~ [f#2,c#3]@8 ~ [g#2,d#3]@5 ~@28 [g#2,d#3,g#3]@8 ~ [a#2,f3]@8 ~ f#2@8 ~ [g#2,d#3]@5 ~@28 [g#2,d#3,g#3]@8 ~ a#2@8 ~ [f#2,c#3]@7]/7", // F#5 G# A#m F# G# C# G# A#m …
  L: "[~@3 [d#4,g#4]@5 [c#3,g#3,c#4,f4]@2 ~ [c#3,g#3,c#4,f4]@23 ~@2 [c4,d#4,g#4]@8 ~ [a#3,c#4,f4,a#4]@8 ~ [f#3,a#3,c#4,f#4]@8 ~ [g#3,c#4,f4]@5 ~ [a#3,c#4,f#4]@2 ~ [a#3,c#4,f#4]@24, ~@2 [g#2,d#3,g#3,c4]@5 ~@28 [g#2,d#3,g#3]@8 ~ [a#2,f3]@8 ~ [f#2,c#3]@8 ~ [f2,c#3]@5 ~ [f#2,c#3,f#3]@2 ~ [f#2,c#3,f#3]@25]/4", // G#5 C# G# A#m F# C# F# G# …
  M: "~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@3", // F#
  N: "d#5@14 d#5@6 ~ d#5@3", O: "c5@17 ~ c#5@3 d#5@3", P: "d#5@8 ~ c#5@14 ~", Q: "c#5@8 ~ c5@14 ~",
  R: "~@3 f3@2 ~ d#3@2 ~ c#3@2 ~ c3@2 ~ a#2@2 ~ g#2@3 ~@3", S: "f3@11 ~ f#3 d#3@3 d#3 ~ d#3!2 ~ d#3@3",
  T: "[~@12 g#3@3 d#3@3 d#3@3 d#3@3 f#3@3 f3 f3@6 ~@2 f#3@3 f3 f3@3 d#3 ~ d#3@2 ~, a#3]/2",
  U: "[a#3@9 ~ c#4 ~@4 c#4@17 ~@4 d#4@6 d#4@4 d#4 ~@5 c#4 ~ f4@6 c4@4 a#3@8, ~@9 a#3@4 a#3@51 ~@8]/3",
  V: "[~@6 c#4@6 c4@6 d#4@6 c4@6 c4@6 c4@3 c#4@3 f4@3 g#4@3 d#5@6 c#5@6 c5@5 ~ a#4 a#4@4 ~ a#4@6 g#4@2 ~ g#4@11 ~ g#4@2 ~ f#4@3 f4 g#4@12 ~@5 d#4@2 ~ f4@9 f#4@3 f4@6 g#4@3 g#4@11 ~ d#4@14 ~ f4@11 ~ d#4@8 ~ d#4@3, a#3]/8",
  W: "~@15 f#4 ~@3 f#4 ~@4", X: "f#4@2 ~@2 g#3@7 ~@4 f#3@4 d#3 ~ f#3@2 ~", Y: "~ c#4 ~@6",
  Z: "~@6 g#4@2 ~ g#4@3 g#4@6 g#4 a#4 ~ c5@3", AA: "d#5 ~@3", AB: "g#5@6 g#5@3 ~@3 f#5 ~@2 f5 ~@2 d#5@2 ~ c5@3",
  AC: "d#5@6 g#4@2 ~ g#4@2 ~ g#4@6 c#5 ~@2 c5 ~@2", AD: "c5@6 c5 ~@2 c#5 ~@2 c5 ~@2 a#4@2 ~ g#4@2 ~ f4@3",
  AE: "f4@6 d#4@3 d#4@6 c4@8 ~",
  AF: "[c4 a#3@2 g#3 ~@2 g#3 f#3 ~ g#3 f#3 ~ d#3 f#3 ~ d#3 c#3 ~ c3@6 f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@8 c#4 ~@2 f#4 ~@2 c4@4 ~@2 d#4 ~@2 g#4 ~@2, ~@4 a#3@47 ~@21]/3",
  AG: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@2",
})).s("gm_distortion_guitar").gain(0.16).pan(0.8)

// other · overdriven guitar · "Guiter(R) : Steve Howe"
const overdriven_guitar = note(`<
  ~@29 A B A C D E ~@13 A B A C D E F@2 G H@8 I@5 ~@15 A B A C D E J K L M L N O P ~@32
>`.pickRestart({
  A: "~@3 g#3 ~@2 c#4 ~@2 f4 ~@5 g#3 ~@2 c4 ~@2 d#4 ~@2", B: "~@3 f#3 ~@2 a#3 ~@2 c#4 ~@5 g#3 ~@2 c4 ~@2 d#4 ~@2",
  C: "~@3 a#3 ~@2 c#4 ~@2 f4 ~@5 a#3 ~@2 c#4 ~@2 f#4 ~@2",
  D: "~@3 c#4 ~@2 f4 ~@2 g#4 ~@5 [c4,f4] ~@2 [f4,g#4] ~@2 [g#4,c5] ~@2", // F5 Fm G#
  E: "~@3 [a#3,f4] ~@2 [c#4,a#4] ~@2 [f4,c#5] ~@5 [a#3,c#5] ~@2 [c#4,a#4] ~@5", // A#5 F# C# A#m F#
  F: "[~@2 f5@6 ~ d#5@6 c#5@6 c5@5 c#5@6 ~ c#5@6 c5@8 ~]/2", G: "d#5@8 ~ c#5@14 ~",
  H: "[c#5@11 ~ a#2@57 a#2@38 ~ a#2@56 ~ a#2@27]/8", I: "[~@6 a#2@28 a#2@19 ~@7]/5", J: "~@3 c#5 ~@2 d#5 ~@2 g#5 ~@14",
  K: "~@3 c5 ~@2 d#5 ~@2 a#5 ~@2 g#5@11 ~", L: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@2",
  M: "~@3 a#3 ~@2 c#4 ~@2 f#4 ~@2 c4@4 ~@2 d#4 ~@2 g#4 ~@2", N: "~@3 c#4 ~@2 f4 ~@2 a#4 ~@2 a#4@4 ~@2 c#5 ~@2 f#5 ~@2",
  O: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 f4 ~@2 g#4 ~@2 c5 ~@2", P: "~@3 f4 ~@2 a#4 ~@2 c#5 ~@2 g#4@5 ~ c5@6",
})).s("gm_overdriven_guitar").gain(0.14).pan(0.8)

// other · electric guitar muted · "Guiter(R) : Steve Howe"
const electric_guitar_muted = note("<~@73 A@8 ~@22 B ~@2 C ~ D ~@22>".pickRestart({
  A: "[f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3 ~@2 f#3@174]/8", B: "~@23 f3", C: "~@10 d#3 ~@13",
  D: "~@10 a#3 ~@13",
})).s("gm_electric_guitar_muted").gain(0.21).pan(0.8)

// chords · distortion guitar · "Guiter(L)"
const distortion_guitar_2 = note(`<
  A@3 B@3 C D@7 E F@5 B@3 C G@5 ~@5 H@8 I@6 ~@23 J@2 K L@4 M N@4 O P ~@14 Q R S T U V W@2 X@3 Y@8 Z AA AB AC AD AE AF AG
  AH AI@3 AJ
>`.pickRestart({
  A: "[~@8 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [c#4,f#4]@8 ~ [c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,c#6]@25 ~, ~@9 [f#2,c#3,f#3,a#3]@3 [g#2,d#3]@2 ~@10, ~@37 g#3@6 ~@3 [g#3,f4]@23 ~@3]/3", // G# A#m F#5 G# C# F# G#5 C#
  B: "[[g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [c#4,f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [g#3,c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [g#3,c4,d#4,g#4]@8, ~@9 [a#2,f3,a#3]@9 ~@10 [g#2,d#3]@4 ~@6 g#3@23 ~@2 [g#2,d#3]@9]/3", // G# A#m F# G# C# G# A#5 G#5
  C: "~ [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [d#4,g#4]@3, ~@5 [g#2,d#3,g#3,c4]", // A#m F# G#5 G#
  D: "[~@3 [c#4,f4]@3 [c#3,c#4,c#6]@25 ~ [d#4,g#4]@9 [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [f#3,a#3,c#4,f#4]@9 [g#2,d#3,g#3,c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 ~ [c#4,f4,c#6]@25 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [c#4,f#4]@8 ~ [g#3,c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [g#2,d#3,g#3,c4,d#4,g#4]@9, ~@2 [c#3,g#3]@3 ~ [g#3,f4]@23 ~@2 [g#2,d#3,g#3,c4]@9 ~@10 [f#2,c#3]@9 ~@10 [c#3,g#3]@24 ~@21 [f#2,c#3,f#3,a#3]@9 [g#2,d#3]@4 ~@6 g#3@23 ~@12]/7", // C# G#5 A#m F# G# C# G# A#m …
  E: "~ [c#4,f4,a#4]@9 [f#2,c#3,f#3,a#3,c#4,f#4]@9 ~ [g#3,c#4,f4]@4, [a#2,f3,a#3]@9 ~@10 [f2,c#3]@4 ~", // A#m F# C# A#5 C#
  F: "[~@2 [f#2,c#3,f#3,a#3,c#4,f#4]@3 [f#2,c#3,f#3,a#3,c#4,f#4]@51 [g#2,d#3,g#3,c4,d#4,g#4]@9 ~ [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [c#4,f#4]@8 ~ [g#3,c4,d#4,g#4]@4 ~@2 [c#3,g#3,c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~, ~@75 [f#2,c#3,f#3,a#3]@9 [g#2,d#3]@4 ~@6 g#3@23 ~@3]/5", // F# G# A#m F#5 G# C# F# G#5
  G: "[~@3 [c#4,f4]@3 [c#3,c#4,f4,c#6]@25 ~ [d#4,g#4]@9 [a#2,f3,a#3,c#4,f4,a#4]@9 ~ [f#3,a#3,c#4,f#4]@9 [f2,c#3,g#3,c#4,f4]@4 ~@3 [c#4,f#4]@2 ~ [f#3,a#3,c#4,f#4]@50, ~@2 [c#3,g#3]@3 ~ g#3@23 ~@2 [g#2,d#3,g#3,c4]@9 ~@10 [f#2,c#3]@9 ~@7 [f#2,c#3,f#3,a#3]@3 [f#2,c#3]@50 ~]/5", // C# G#5 A#m F# C# F#5 F# C#5 …
  H: "[~@24 [d#3,g#3,c#4]@23 ~ [d#3,g#3,c4]@23 ~ [d#3,g#3,c4,d#4,g#4]@9 [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 ~ [g#3,c4,d#4,g#4]@4 ~@2 [g#3,c#4,f4]@2 ~ [c#4,c#6]@23 ~ [d#3,g#3,c4,d#4,g#4]@8 a#2 [a#2,f3,a#3,c#4,f4,a#4]@8 f#2 [f#2,c#3,f#3,a#3,c#4,f#4]@8 g#2 [g#2,d#3,g#3,c4,d#4,g#4]@4 ~@2 [g#3,c#4,f4]@2 ~ [c#4,c#6]@23 g#2, ~@23 g#2@24 g#2@24 g#2@9 ~@18 [g#2,d#3]@4 ~@2 c#3@3 c#3@23 ~ g#2@8 ~@25 c#3@3 c#3@23 ~@2, ~@54 [g#3,f4]@11 ~@19 [g#3,f4]@11 ~]/8", // C#sus2 G# A#m F# G# C# G# A#m …
  I: "[[d#3,g#3,c4,d#4,g#4]@8 a#2 [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 g#2 [g#2,d#3,g#3,c4,d#4,g#4]@4 ~@2 [g#3,c#4,f4]@2 ~ [c#4,c#6]@23 ~ [d#3,g#3,c4,d#4,g#4]@8 a#2 [a#2,f3,a#3,c#4,f4,a#4]@8 f#2 [f#2,c#3,f#3,a#3,c#4,f#4]@8 f2 [f2,c#3,g#3,c#4,f4]@4 ~@2 [c#3,f#3,a#3,c#4,f#4]@2 ~ [c#3,f#3,a#3,c#4,f#4]@48, ~@32 c#3@3 c#3@23 ~ g#2@8 ~@25 f#2@3 f#2@48 ~, ~@18 [g#3,f4]@11 ~@43]/6", // G# A#m F# G# C# G# A#m F# …
  J: "[~@7 [f#2,c#3,f#3,c#4]@9]/2", // F#5
  K: "[f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 [f#3,c#4] ~@2 c#4@6", // F#5
  L: "[[g#2,d#3,g#3,c4,d#4,g#4]@8 ~ [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 ~ [g#2,d#3,g#3,c4,d#4,g#4]@5 ~ [c#3,g#3,c#4,f4]@2 ~ [c#3,g#3,c#4,f4]@23 ~ [g#2,d#3,g#3,c4,d#4,g#4]@8 ~ [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 ~ [g#2,d#3,g#3,c4,d#4,g#4]@5 ~ [c#3,g#3,c#4,f4]@2 ~]/4", // G# A#m F# G# C# G# A#m F# …
  M: "[c#3,g#3,c#4,f4]", // C#
  N: "[[g#2,d#3,g#3,c4,d#4,g#4]@8 ~ [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 ~ [g#2,d#3,g#3,c4,d#4,g#4]@5 ~ [c#3,g#3,c#4,f4]@2 ~ [c#3,g#3,c#4,f4]@23 ~ [g#2,d#3,g#3,c4,d#4,g#4]@8 ~ [a#2,f3,a#3,c#4,f4,a#4]@8 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@8 ~ [f2,c#3,g#3,c#4,f4]@5 ~ [f#2,c#3,f#3,a#3,c#4,f#4]@2 ~]/4", // G# A#m F# G# C# G# A#m F# …
  O: "[f#2,c#3,f#3,a#3,c#4,f#4]", // F#
  P: "~@3 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2 [f#2,c#3,f#3,a#3,c#4,f#4] ~@2", // F#
  Q: "d#5@14 ~ d#5@6 d#5@3", R: "c5@17 ~ c#5@3 d#5@3", S: "d#5@8 ~ c#5@14 ~", T: "c#5@8 ~ c5@14 ~",
  U: "~@3 f3@2 ~ d#3@2 ~ c#3@2 ~ c3@2 ~ a#2@2 ~ g#2@2 ~@4", V: "f3@11 ~ f#3 ~ d#3@3 d#3 d#3@2 d#3 d#3@3",
  W: "[~@12 g#3@3 d#3@3 d#3@3 d#3@3 f#3@3 f3 ~ f3@6 ~ f#3@3 f3 ~ f3@3 d#3 d#3@2 ~, a#3]/2",
  X: "[a#3@9 ~@2 c#4 ~@3 c#4@17 ~@4 d#4@6 d#4@4 ~ d#4 ~@5 c#4 f4@6 c4@4 ~ a#3@7, ~@9 a#3@5 a#3@51 ~@7]/3",
  Y: "[~@6 c#4@6 c4@6 d#4@6 c4@6 c4@6 c4@3 c#4@3 f4@3 g#4@3 d#5@6 c#5@6 c5@5 ~ a#4 ~ a#4@4 a#4@6 g#4@2 ~ g#4@11 ~ g#4@2 ~ f#4@3 f4 ~ g#4@12 ~@4 d#4@2 ~ f4@9 f#4@3 f4@6 g#4@3 g#4@11 ~ d#4@14 ~ f4@11 ~ d#4@8 ~ d#4@3, a#3]/8",
  Z: "~@15 f#4 ~@4 f#4 ~@3", AA: "f#4 ~@4 g#3@7 ~@3 f#3@4 ~ d#3 f#3@2 ~", AB: "~ c#4 ~@6",
  AC: "~@6 g#4@2 ~ g#4@3 g#4@6 g#4 ~ a#4 c5@3", AD: "d#5 ~@3", AE: "g#5@6 g#5@3 ~@3 f#5 ~@2 f5 ~@2 d#5@2 ~ c5@3",
  AF: "d#5@6 g#4@2 ~ g#4@2 ~ g#4@6 c#5 ~@2 c5 ~@2", AG: "c5@6 c5 ~@2 c#5 ~@2 c5 ~@2 a#4@2 ~ g#4@2 ~ f4@3",
  AH: "f4@6 d#4@3 d#4@6 c4@8 ~",
  AI: "[c4 ~@2 g#3 ~@2 g#3 ~ f#3 g#3 ~ f#3 d#3 ~ f#3 d#3 ~ c#3 c3@6 f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@8 c#4 ~@2 f#4 ~@2 c4@4 ~@2 d#4 ~@2 g#4 ~@2, ~@2 a#3@3 a#3@47 ~@20]/3",
  AJ: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@2",
})).s("gm_distortion_guitar").gain(0.16).pan(0.2)

// other · overdriven guitar · "Guiter(L)"
const overdriven_guitar_2 = note(`<
  ~@29 A B A C D E ~@13 A B A C D E F@2 G H@8 I@5 ~@15 A B A C D E J K L M L N O P ~@32
>`.pickRestart({
  A: "~@3 g#3 ~@2 c#4 ~@2 f4 ~@5 g#3 ~@2 c4 ~@2 d#4 ~@2", B: "~@3 f#3 ~@2 a#3 ~@2 c#4 ~@5 g#3 ~@2 c4 ~@2 d#4 ~@2",
  C: "~@3 a#3 ~@2 c#4 ~@2 f4 ~@5 a#3 ~@2 c#4 ~@2 f#4 ~@2",
  D: "~@3 c#4 ~@2 f4 ~@2 g#4 ~@5 [c4,f4] ~@2 [f4,g#4] ~@2 [g#4,c5] ~@2", // F5 Fm G#
  E: "~@3 [a#3,f4] ~@2 [c#4,a#4] ~@2 [f4,c#5] ~@5 [a#3,c#5] ~@2 [c#4,a#4] ~@5", // A#5 F# C# A#m F#
  F: "[~@2 f5@6 ~ d#5@6 c#5@6 c5@5 c#5@6 ~ c#5@6 c5@8 ~]/2", G: "d#5@8 ~ c#5@14 ~",
  H: "[c#5@11 ~ a#2@57 a#2@38 ~ a#2@57 a#2@27]/8", I: "[~@12 a#2@57 a#2@38 ~@13]/5", J: "~@3 c#5 ~@2 d#5 ~@2 g#5 ~@14",
  K: "~@3 c5 ~@2 d#5 ~@2 a#5 ~@2 g#5@11 ~", L: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 c4 ~@2 d#4 ~@2 g#4 ~@2",
  M: "~@3 a#3 ~@2 c#4 ~@2 f#4 ~@2 c4@4 ~@2 d#4 ~@2 g#4 ~@2", N: "~@3 c#4 ~@2 f4 ~@2 a#4 ~@2 a#4@4 ~@2 c#5 ~@2 f#5 ~@2",
  O: "f4@4 ~@2 g#4 ~@2 c#5 ~@5 f4 ~@2 g#4 ~@2 c5 ~@2", P: "~@3 f4 ~@2 a#4 ~@2 c#5 ~@2 g#4@5 ~ c5@6",
})).s("gm_overdriven_guitar").gain(0.14).pan(0.2)

// chords · synth strings 2 · "Keybord : Geffrey Downes"
const synth_strings_2 = note(`<
  ~ A@2 ~ B@2 ~@23 C D C E F G H I ~@11 C D C E F G ~@31 C D C E F G H I C D C E F G H J K L ~ C D C E F G H J C D C E F
  G H J C D C E F G H J C D C
>`.pickRestart({
  A: "[~@19 [c#2,c#3,g#3,c#4,f4]@3 [c#2,c#3,g#3,c#4,f4]@25 ~]/2", // C#
  B: "[~@11 [c#2,c#3,g#3,c#4,f4]@3 [c#2,c#3,g#3,c#4,f4]@25 ~@9]/2", C: "[c#3,f3,g#3]@11 ~ [c3,d#3,g#3]@11 ~",
  D: "[c#3,f#3,a#3]@11 ~ [c3,d#3,g#3]@11 ~", E: "[a#2,c#3,f3]@11 ~ [c#3,f#3,a#3]@11 ~",
  F: "[c#3,f3,g#3]@11 ~ [c3,f3,g#3]@11 ~", G: "[c#3,f3,a#3]@11 ~ [c#3,d#3,f#3,a#3]@11 ~", H: "[c#3,d#3,g#3]",
  I: "[c3,d#3,g#3]", J: "[d#3,g#3,c4]", K: "[c3,d#3,f3,g#3]", L: "[d#3,f#3,g#3,c4]",
})).s("gm_synth_strings_2").gain(0.08).pan(0.7)

// chords · piano · "Keybord : Geffrey Downes"
const piano = note("<~@37 A@4 B C@4 D@2 ~@26 A@4 B C@4 D@2 ~@46>".pickRestart({
  A: "[d#5 c5 g#4 f5 c#5 a#4 c#5 a#4 f#4 d#5 c5 g#4 [c#3,g#3,f4,c#5]@8 d#5 c5 g#4 f5 c#5 a#4 c#5 a#4 f#4 d#5 c5 g#4, [g#3,d#4]@8 ~ [a#3,f4]@9 [f#3,c#4]@8 ~ [g#3,d#4]@9 ~@24 [g#3,d#4]@8 ~ [a#3,f4]@9 [f#3,c#4]@8 ~ [g#3,d#4]@9]/4", // C# G#5 A#5 F#5 G#5 A#5 F#5 G#5
  B: "[c#3,g#3,f4,c#5]", // C#
  C: "[d#5 c5 g#4 f5 c#5 a#4 c#5 a#4 f#4 d#5 c5 g#4 [c#3,g#3,f4,c#5]@8 d#5 c5 g#4 f5 c#5 a#4 c#5 a#4 f#4 d#5 c#5 g#4, [g#3,d#4]@8 ~ [a#3,f4]@9 [f#3,c#4]@8 ~ [g#3,d#4]@9 ~@24 [g#3,d#4]@8 ~ [a#3,f4]@9 [f#3,c#4]@8 ~ [f3,c#4]@9]/4", // C# G#5 A#5 F#5 G#5 A#5 F#5 C#
  D: "[f#3,c#4,f#4,a#4,c#5]/2", // F#
})).s("gm_piano").gain(0.23).pan(0.7)

// chords · piano · "Keybord : Geffrey Downes" · G# F# C# F G#7 Cdim D#
const piano_2 = note(`<
  ~@54
  [[c4,d#4,g#4]@8 ~ c4@9 d#4@6, [g#2,g#3]]
  [[c4,d#4,g#4]@8 ~ [c4,d#4,g#4]@9 [c4,d#4,g#4]@6, [f#2,f#3]]
  [[g#3,c#4,f4,g#4]@8 ~ [g#3,c#4,f4,g#4]@14 ~, [f2,f3]]
  [[g#3,c4,f#4]@8 ~ [f#3,c4,d#4]@11 ~@4, [d#2,d#3]@7 ~]
  ~@73
>`).s("gm_piano").gain(0.18)

// other · pad new age · "Keybord(sub)"
const pad_new_age = note("<~@59 A@2 ~@2 A@2 ~@2 A@2 ~@2 B@2 ~@58>".pickRestart({
  A: "[~ f5@2 d#5 d5@2 c5 d5@9]/2", B: "[~ f5@2 d#5 d5@2 c5 a#4@9]/2",
})).s("gm_pad_new_age").gain(0.12)

// bass · electric bass finger · "Bass : Jhon Wetton"
const bass = note(`<
  ~ A@2 ~ B@2 ~@11 C D@2 E@3 F G@2 H@3 I J I K L M N O P Q@3 R P S@3 T@2 I J I K L M O U V W ~@16 X Y@3 R P S@3 T@2 I J
  I K L M N Z I J I K L M AA U AB W AC AD AE AF AG AH AI N@2 AJ AK AJ AL AH AI Z@2 AM AN AM AO AH AI N@2 AM AN AM
>`.pickRestart({
  A: "[~@19 c#3@2 ~ c#2@20 ~@6]/2", B: "[~@11 c#3@2 ~ c#2@20 ~@14]/2", C: "~@8 g#2@7 ~@3 a#2@6",
  D: "[~@3 f#2@7 ~@3 g#2@5 ~ c#2@2 ~ c#2@20 ~@6]/2",
  E: "[g#2@7 ~@2 a#2@7 ~@3 f#2@7 ~@3 g#2@5 ~ c#2@2 ~ c#2@20 ~@6 g#2@7 ~]/3", F: "~ a#2@7 ~@3 f#2@7 ~@2 g#2@4",
  G: "[~@3 c#2@2 ~ c#2@20 ~@5 g#2@7 ~@3 a#2@7]/2", H: "[~@3 f#2@7 ~@2 f2@5 ~ f#2@2 ~@2 f#2@45 ~@5]/3",
  I: "c#2@3 ~ g#1@3 ~", J: "f#1@3 ~ g#1@3 ~", K: "a#1@9 ~@3 f#1@7 ~@2 g#1@2 ~", L: "c#2@3 ~ c2@3 ~",
  M: "a#1@9 ~@3 d#1@2 ~ f1@2 ~ f#1@2 ~ d#1@2 ~", N: "g#1@7 ~@2 g#1@2 ~ g#1@9 ~@3", O: "g#1@19 ~@5",
  P: "g#2@7 ~@2 a#2@7 ~@2 f#2@6",
  Q: "[~@3 g#2@4 ~@2 c#2@2 ~ c#2@19 ~@5 g#2@7 ~@2 a#2@7 ~@2 f#2@7 ~@2 g#2@5 ~ c#2@2 ~]/3", R: "c#2@19 ~@5",
  S: "[~@3 g#2@4 ~@2 c#2@2 ~ c#2@19 ~@5 g#2@7 ~@2 a#2@7 ~@2 f#2@7 ~@2 f2@4 ~@2 f#2@2 ~]/3", T: "[f#2@43 ~@5]/2",
  U: "f#1@19 ~@5", V: "f1@19 ~@5", W: "d#1@19 ~@5", X: "~@9 a#2@7 ~@2 f#2@6",
  Y: "[~@3 g#2@4 ~@2 c#2@2 ~ c#2@19 ~@5 g#2@7 ~@2 a#2@7 ~@2 f#2@7 ~@2 g#2@4 ~@2 c#2@2 ~]/3", Z: "g#1@3 ~ g#1@3 ~",
  AA: "g#1@7 ~@2 g#1@12 ~@3", AB: "d#1@7 ~@2 d#1@12 ~@3", AC: "~@3 f2@2 ~ d#2@2 ~ c#2@2 ~ c2@2 ~ a#1@2 ~ g#1@4 ~@2",
// … 139 more lines

More by Asia