Strudelify

Lakini's Juice

Live

KeyD♭ majorTempo93 bpm
0:00/0:00
// Lakini's Juice — Live
// 93 bpm, 4/4, key C# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: duplicate parts dropped: ch 5 viola (copy of ch 4 string ensemble 2); ch 15 distortion guitar (copy of ch 14 distortion guitar)
// note: Full arrangement: all 106 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(93/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.

// bass · electric bass finger
const bass = note(`<
  A@8 B@8 C@5 ~@8 D E@14 F@2 ~@7 G H@2 I J@2 K L@8 M@5 ~@7 N O@2 P Q R@5 S T U V@4 W X Y@2 Z@2 AA AB@2
>`.pickRestart({
  A: "[~@43 eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@5]/8",
  B: "[~@19 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@5]/8",
  C: "[~@19 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@4 ~]/5",
  D: "~@5 eb1@6 ~@6 eb1@6 ~", E: "[~@10 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@2]/2",
  F: "[~@10 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@5 ~@33]/2", G: "~@7 db1@6 db1@6 db1@6 ~@3 a1@5 a1@6 ~@3 a1@3 a1@3",
  H: "[a1@3 ab1@3 db1@3 ~@3 db1@6 db1@6 db1@3 gb1@5 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@3 ~@3 db1@6 db1@6 db1@3 a1@5 a1@6 ~@6 a1@3 a1@2]/2",
  I: "~ ab1@3 db1@6 db1@6 db1@6 db1@3 gb1@5 gb1@6 ~@3 gb1@3 gb1@3 gb1@3",
  J: "[gb1@3 db1@6 db1@6 db1@6 db1@3 a1@5 a1@6 ~@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@6 db1@6 db1@3 gb1@5 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@2]/2",
  K: "~ db1@6 db1@6 db1@6 db1@3 a1@5 a1@6 ~@3 a1@3 a1@3 a1@3 ab1@3",
  L: "[db1@6 db1@6 db1@6 db1@3 gb1@6 gb1@3 ~@3 gb1@3 ~@7 eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@5]/8",
  M: "[~@19 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@12 ~@12 eb1@12 ~@12 eb1@12 ~@12 eb1@12 db1@11 ~ eb1@5]/5",
  N: "~@40 db1@3 ~@3 db1@2",
  O: "[~@4 db1@6 ~@2 a1@3 ~@3 a1@3 ~@3 a1@3 a1@3 a1@3 a1@3 ab1@3 db1@3 ~@3 db1@6 db1@6 ~@2 gb1@6 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@3 ~@3 db1@4]/2",
  P: "~@2 db1@7 ~ a1@6 a1@6 a1@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@5",
  Q: "~ db1@6 ~@2 gb1@6 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@6",
  R: "[db1@7 ~ a1@6 ~@9 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@6 db1@6 ~@2 gb1@6 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@6 db1@7 ~ a1@6 a1@6 ~@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@6 db1@6 ~@2 gb1@6 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@6 db1@7 ~ a1@6 a1@6 a1@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@6 db1@5]/5",
  S: "~@3 gb1@6 gb1@6 gb1@3 gb1@3 ~@3 gb1@3 gb1@3 db1@6 db1@5 db1@6 ~",
  T: "~@2 a1@6 a1@6 a1@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@5 db1@6 ~@2",
  U: "~ gb1@6 gb1@6 ~@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@5 db1@6 ~@3",
  V: "[a1@6 a1@6 ~@3 a1@3 a1@3 ~@3 ab1@3 db1@6 db1@5 db1@6 ~@3 gb1@6 gb1@6 gb1@3 gb1@3 ~@3 gb1@3 gb1@3 db1@6 db1@5 db1@5 ~@4 a1@6 ~@6 a1@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@5 db1@6 ~@3 gb1@6 gb1@6 ~@3 gb1@3 gb1@3 ~@3 gb1@3 db1@6 db1@5 db1@5 ~@4 a1@4]/4",
  W: "~@2 a1@6 ~@3 a1@3 a1@3 a1@3 ab1@3 db1@6 db1@5 db1@6 ~@3 gb1@5",
  X: "~ gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@5 db1@6 ~@3 a1@6",
  Y: "[a1@6 ~@9 a1@3 ab1@3 db1@6 db1@5 db1@5 ~@4 gb1@6 gb1@6 gb1@3 gb1@3 gb1@3 gb1@3 gb1@3 db1@6 db1@5 db1@7 ~@2 a1@6 a1@2]/2",
  Z: "[~ a1@6 a1@3 a1@3 a1@3 ~@3 db1@6 db1@5 db1@6 ~@3 gb1@6 gb1@6 gb1@3 gb1@3 ~@3 gb1@3 gb1@3 db1@6 db1@5 db1@6 ~@3 a1@6 a1@4, ~@4 ab1@5 ~@15]/2",
  AA: "~@5 a1@3 a1@3 a1@3 ab1@3 db1@5 db1@6 db1@6 ~@3 gb1@6 gb1@5", AB: "[~@4 gb1@3 ~@9 db1@53 ~@27]/2",
})).s("gm_electric_bass_finger").gain(0.48)

// bass · electric bass finger · soft notes
const bass_soft = note("<~@53 A ~ B C D ~ E F ~@24 G ~ H ~@2 I ~ J K L M N O ~ P ~@2 Q R S ~>".pickRestart({
  A: "~@25 db1@3 ~@11 a1@3 ~@6", B: "~@37 a1@3 a1@3 ~@5", C: "~@12 gb1 ~@3", D: "~@35 a1@3 ~@10", E: "~@11 a1 ~@4",
  F: "~@10 gb1 ~ gb1 gb1@3", G: "~@14 a1@6 a1@3 ~@25", H: "~@6 a1 ~@9", I: "~@7 gb1 ~@8", J: "~@13 gb1@3 ~@32",
  K: "~@4 a1 ~@2 a1 ~@8", L: "~@17 gb1@3 ~@28", M: "~@2 a1@3 ~@19", N: "~@3 gb1 ~@2 gb1 ~@9", O: "~@8 a1@3 ~@37",
  P: "~@2 a1!3 ~@11", Q: "~@3 gb1 ~@12", R: "~@2 a1@3 ~@43", S: "~ gb1@3 ~@3 gb1@3 gb1@3 gb1@3 ~@32",
})).s("gm_electric_bass_finger").gain(0.3)

// chords · distortion guitar
const distortion_guitar = note(`<
  A B C B C B C B C B C B C B C B C B C B C ~@8 D E F E F E F E F E F E F E F E G ~@14 A B C B C B C B C B C B C ~@23 H
  I J K@4 L M@2
>`.pickRestart({
  A: "~@7 [ab2,db3]", B: "[c3,f3] ~@2 [ab2,db3] [c3,f3] ~@2 [ab2,db3]",
  C: "[c3,f3]@2 ~@4 [ab2,db3]@2 [c3,f3]@2 [ab2,db3]!2 [db3,ab3]@2 [ab2,db3]@2", // F5 Db5 F5 Db5
  D: "~@3 [ab2,db3]@2 [c3,f3]@2 ~@4 [ab2,db3]@2 [c3,f3]@2 ~", // Db5 F5 Db5 F5
  E: "~@3 [ab2,db3]@2 [c3,f3]@2 ~@4 [ab2,db3]@2 [c3,f3]@2 [ab2,db3]", // Db5 F5 Db5 F5 Db5
  F: "[ab2,db3] [db3,ab3]@2 [ab2,db3]@2 [c3,f3]@2 ~@4 [ab2,db3]@2 [c3,f3]@2 ~", // Db5 F5 Db5 F5
  G: "[ab2,db3] [db3,ab3]@2 [ab2,db3]@2 ~@11", H: "~@24 db3@6 f3@5 ab3@9 a3@4",
  I: "~@2 db4@6 e4@6 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@5",
  J: "~ db4@6 ~@3 db3@3 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@6, ~@7 a4@6 ~@35",
  K: "[db4@6 e4@6 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@6 db4@6 a4@6 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@6 db4@6 e4@6 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@6 db4@6 a4@6 db4@3 a3@6 db3@6 f3@5 ab3@9 a3@6 db4@4]/4",
  L: "~@2 e4@6 db4@3 a3@6 db3@5 f3@6 ab3@9 a3@6 db4@5",
  M: "[~ a4@6 db4@3 a3@6 [db3,ab3,db4]@47 ~@33, ~@16 db2@53 ~@27]/2", // Db5
})).s("gm_distortion_guitar").gain(0.28)

// chords · distortion guitar
const distortion_guitar_2 = note(`<
  ~ A B A B A B A B A B A B A B A B A B A B ~@8 C D C D C D C D C D C D C D C D ~@16 A B A B A B A B A B A B ~@23 E@2 F
  G@4 H I@2
>`.pickRestart({
  A: "~@12 [c3,f3] ~@20 f3 ~@2 [c3,f3] ~@11", B: "~@9 f3 ~@2 [c3,f3] ~@35", C: "~@27 [c3,f3] ~@20",
  D: "f3 ~@2 [c3,f3] ~@20 f3 ~@2 [c3,f3] ~@20", // F5
  E: "[~@24 db3@6 f3@6 ab3@9 a3@6 db4@5 e4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@4]/2",
  F: "~@2 db4@5 a4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5",
  G: "[db4@6 e4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5 db4@6 a4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5 db4@6 e4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5 db4@6 a4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5 db4@4]/4",
  H: "~@2 e4@6 db4@3 a3@6 db3@6 f3@6 ab3@9 a3@5 db4@5", I: "[~ a4@6 db4@3 a3@6 [db3,ab3,db4]@47 ~@33]/2",
})).s("gm_distortion_guitar").gain(0.28)

// chords · distortion guitar · soft notes
const distortion_guitar_soft = note(`<
  ~ A B A B A B A B A B A B A B A B A B A B ~@8 C D C D C D C D C D C D C D C D ~@16 A B A B A B A B A B A B ~@25 E ~@7
>`.pickRestart({
  A: "~@9 [c3,f3] ~@23 c3 ~@14", B: "~@9 c3 ~@38", C: "~@24 [c3,f3] ~@23", D: "c3 ~@23 c3 ~@23", E: "~@10 db3@3 ~@35",
})).s("gm_distortion_guitar").gain(0.2)

// bass · distortion guitar · "ANTI-ELEVATOR"
const bass_2 = note("<A@8 B@8 C@5 ~@8 D@16 E ~@14 F@8 G@5 ~@33>".pickRestart({
  A: "[~@43 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@5]/8",
  B: "[~@19 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@5]/8",
  C: "[~@19 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 db2@11 ~ eb2@4 ~]/5",
  D: "~@5 eb2@6 ~@6 eb2@6 ~", E: "~@10 eb2@5 ~@33",
  F: "[~@43 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@5]/8",
  G: "[~@19 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@12 ~@12 eb2@5]/5",
})).s("gm_distortion_guitar").gain(0.22).pan(0.6)

// chords · string ensemble 2
const string_ensemble_2 = note("<~@3 A@2 ~@101>".pickRestart({
  A: "[~@43 [eb4,bb4,eb5]@45 ~@8]/2", // Eb5
})).s("gm_string_ensemble_2").gain(0).pan(0)

// bass · electric bass pick
const bass_3 = note(`<
  ~@13 A B C B C D C E F@3 G@2 H I J@3 K@14 L M N O P Q@2 R S ~@6 T A B A B A B A B A B A B U@8 ~@25
>`.pickRestart({
  A: "f1@6 ~@2 f1@7 ~", B: "f1@7 ~@9", C: "f1@3 ~ f1@3 ~", D: "f1 ~", E: "f1@3 ~@5",
  F: "[f1@24 f1@7 f1@6 f1@6 ~@2 gb1@30 gb1@7 gb1@6 gb1@12 ~ gb1@24 gb1@7 ~@12]/3",
  G: "[~ gb1@30 gb1@11 ~@3 gb1@2 ab1@9 ~ f1@24 f1@7 f1@7 ~]/2", H: "~@5 gb1@25 ~@6 gb1@6 ~@6",
  I: "~ gb1@13 gb1@24 gb1@6 gb1@4", J: "[~@2 gb1@6 ~ gb1@36 gb1@6 gb1@6 gb1@2 ~@4 f1@18 ~@6 f1@21 ~@3 f1@21 ~@12]/3",
  K: "[~@5 f1@6 ~@2 f1@7 ~ f1@7 ~@4]/2", L: "~@15 f1@23 f1@6 f1@4", M: "~@2 f1@6 ~ gb1@29 gb1@6 gb1@4",
  N: "~@2 gb1@11 gb1@23 gb1@7 ~@5", O: "~@7 gb1@28 gb1@10 ~@3", P: "gb1@2 ab1@9 f1@23 f1@6 f1@6 ~@2",
  Q: "[~@5 gb1@23 ~@6 gb1@6 ~@5 gb1@12 ~ gb1@23 gb1@6 gb1@5 gb1@4]/2", R: "~@3 gb1@34 gb1@6 gb1@5", S: "~ gb1@2 ~@45",
  T: "~@21 gb1 ~@2",
  U: "[f1@23 f1@6 f1@6 f1@6 ~ gb1@29 gb1@6 gb1@5 gb1@12 gb1@23 gb1@7 ~@12 gb1@28 gb1@10 ~@3 gb1@2 ab1@9 f1@23 f1@6 f1@6 ~@7 gb1@23 ~@6 gb1@6 ~@5 gb1@12 ~ gb1@23 gb1@5 gb1@6 gb1@6 gb1@35 gb1@6 gb1@6 gb1@2 ~@12]/8",
})).s("gm_electric_bass_pick").gain(0.1).pan(0.3)

// bass · electric bass pick · soft notes
const bass_soft_2 = note("<~@23 A ~@2 B ~@20 C D ~ E ~@24 F ~@2 G ~@27>".pickRestart({
  A: "~@6 gb1!2", B: "~@5 gb1 ~ gb1", C: "~@43 gb1@5", D: "~ gb1@6 ~@41", E: "~@28 gb1@6 ~@6 gb1@5 ~@3",
  F: "~@28 gb1@5 gb1@6 ~@9", G: "~@13 gb1@6 ~@6 gb1@5 ~@18",
})).s("gm_electric_bass_pick").gain(0.04).pan(0.3)

// other · string ensemble 1
const string_ensemble_1 = note(`<
  ~@21 A@3 B@2 C@4 ~@15 D@5 E@2 F G@8 H I J K ~@8 L@8 M@2 N@2 O@8 P Q@8 R@3 ~
>`.pickRestart({
  A: "[f3@28 ~@3 g4@3 f4@3 ~ c4@3 ~@3 bb3@53 ~@3 c4@44]/3", B: "[db4@44 eb4@13 g4@38 ~]/2",
  C: "[~@5 ab4@53 ~@3 c5@41 ~@3 f5@27 ~@3 c6@3 [ab5,bb5] ~@18 eb2 ~@34, ~@139 [f5,gb5]@2 c5@2 [gb4,ab4]@2 eb4@2 bb3@2 gb3@2 eb3@2 bb2@2 gb2@2 ~@35, ~@70 [db5,eb5] bb4 f4 [c4,db4] ab3 f3 [c3,db3] ab2 f2 ~@17]/4", // Absus2 Gbmaj7 Gbsus2 Dbsus2 Dbmaj7
  D: "[~@15 f3@26 ~@3 g4@3 f4@3 c4@3 ~@3 bb3@50 ~@3 c4@41 db4@41 eb4@12 g4@35 ~@2]/5", E: "[~@4 ab4@50 ~@3 c5@38 ~]/2",
  F: "~ f5@13 ~@10",
  G: "[~@7 [ab4,f5]@21 [a4,e5]@26 [ab4,f5]@20 [gb4,a4]@27 [ab4,f5]@20 [a4,e5]@27 [ab4,f5]@20 ~ gb4@26 [f5,ab5]@20 [e5,a5]@27 [f5,ab5]@21 [gb5,a5]@26 [f5,ab5]@21 ~ gb5@25 [f5,ab5]@21 [gb5,a5]@25 ~@2, ~@7 db5@374 ~@3, ~@56 a4@9 db6@62 ~, ~@310 a5@25 ~@49]/8", // Db A5 Db Gbm Db A5 Db Fm …
  H: "~@3 c5@3 g5@3 c5@3 ~@3 c5@2 ~@2 db5@4 ~@4 c5@2 g5@3 c5@3 g5@3 c5@3 ~ [db5,ab5]@4 ~@2, ~@12 g5@5 ~ ab5@4 ~@26", // Db5
  I: "~@2 c5@2 g5@3 ~@4 g5@5 ~ [db5,ab5]@5 ~@7 [eb5,bb5]@13 [db5,ab5]@4 ~@2, ~@8 c5@5 ~@35", // Db5 Eb5 Db5
  J: "~@3 c5@3 g5@3 c5@3 g5@4 c5 ~ [db5,ab5]@4 ~@5 c5@2 g5@3 c5@3 g5@5 ~@2 db5@3 ~@3, ~@10 ab5 ~", // Db5
  K: "~@3 c5@2 g5@3 ~@3 g5@5 ~ [db5,ab5]@5 ~@7 bb5@12 ~ ab5@5 ~, ~@8 c5@6 ~@13 eb5@12 ~@2 db5@5 ~@2", // Db5
  L: "[f3@26 ~@3 g4@3 f4@3 c4@3 ~@3 bb3@50 ~@3 c4@41 db4@41 eb4@12 g4@35 ~@6 ab4@50 ~@3 c5@38 ~@3 f5@26 ~@27 [db5,db6]@8]/8", // Db
  M: "[~@4 [eb5,eb6]@5 [db5,db6]@6 [a4,a5]@23 ~ db6@34 ~ eb6@11 [db5,db6]@11, ~@38 db5@35 eb5@12 ~@11]/2", // Eb Db A Db
  N: "[~ [eb5,eb6]@6 [db5,db6]@6 [a4,a5]@24 [db5,db6]@35 [eb5,eb6]@12 [db5,db6]@11 eb5]/2", // Eb Db A Db Eb Db
  O: "[eb6@5 [db5,db6]@6 ~ a5@23 [db5,db6]@35 [eb5,eb6]@12 [db5,db6]@11 [eb5,eb6]@6 [db5,db6]@6 [a4,a5]@24 [db5,db6]@45 ~ [ab3,ab4]@24 [a3,a4]@24 [ab3,ab4]@23 [e3,e4]@24 [ab3,ab4]@23 [a3,a4]@23 [b3,b4]@24 [db4,db5]@24 [f3,f4]@20, ~@11 a4@24 ~@349]/8", // Db Eb Db Eb Db A Db Ab …
  P: "~ [e3,e4]@12 [f3,f4]@11", // E F
  Q: "[~@2 [gb3,gb4]@24 [db4,db5]@35 [eb4,eb5]@11 [db4,db5]@129 [eb4,eb5]@12 [db4,db5]@83 [eb4,eb5]@12 [db4,db5]@76]/8", // Gb Db Eb Db Eb Db Eb Db
  R: "[~@6 [eb4,eb5]@11 ~ db4@82 [eb4,eb5]@11 [db4,db5]@33, ~@17 db5@83 ~@44]/3", // Eb Db
})).s("gm_string_ensemble_1").gain(0.2).pan(1)

// other · string ensemble 1 · "For personal use"
const string_ensemble_1_2 = note(`<
  ~@21 A@2 B C D E F@3 ~@15 G H I J K L M@2 ~@8 N O P Q ~@8 R@2 S@2 T@2 U@4 V@2 W@8 X Y@8 Z@3 ~
>`.pickRestart({
  A: "[~@6 g3@3 ab3@3 ~ g3@3 f3@3 c3@3 f3@3 g3@3 ab3@3 c4@3 ~@4 ab3@3 ~@3 db4@34 ~@18]/2",
  B: "~@17 db3@3 gb3@3 ab3@3 bb3@3 db4@3 ~ gb4@3 ab4@3 bb4@3 ab4@3 gb4@3", C: "ab4@41 ~@7",
  D: "~@21 c3@3 f3@3 g3@3 ~ ab3@3 c4@3 ~@3 g3@3 ab3@3 c4@2", E: "~@5 bb3@31 ~@12",
  F: "[~@25 db3@3 ~ gb3@3 ab3@3 bb3@3 db4@3 gb4@3 ab4@3 bb4@3 ~ ab4@3 gb4@3 ab4@21 ~@10 db6@3 [bb5,c6] ~@18 c2@2 ~@32, ~@92 [gb5,ab5]@2 [db5,eb5]@2 bb4@2 [f4,gb4]@2 c4@2 gb3@2 [c3,db3]@2 ab2@2 eb2@2 bb1 ~@33, ~@93 f5@2 c5@2 ab4@2 [db4,eb4]@2 [ab3,bb3]@2 [eb3,f3]@2 bb2@2 [f2,gb2]@2 db2@2 ~@33]/3", // Bbsus2 Gbsus2 Dbsus2 Gbmaj7 Dbmaj7 Dbsus2 Absus2 Ebsus2 …
  G: "~@21 g3@3 ab3@3 g3@3 f3@3 c3@3 f3@3 g3@3 ab3@2 c4@3 ~", H: "~@2 ab3@3 ~@3 db4@32 ~@8",
  I: "~@25 db3@3 gb3@3 ab3@3 bb3@3 db4@3 gb4@2 ab4@3 bb4@3", J: "ab4@3 gb4@3 ab4@38 ~@4",
  K: "~@23 c3@3 f3@3 g3@3 ab3@3 c4@3 ~@2 g3@3 ab3@3 c4@2", L: "~@4 bb3@29 ~@15",
  M: "[~@21 db3@3 gb3@3 ab3@3 bb3@3 db4@2 gb4@3 ab4@3 bb4@3 ab4@3 gb4@3 ab4@21 ~@25]/2",
  N: "~@6 g5@3 c5@3 g5@3 c5@2 ~ [db5,ab5]@4 ~@7 g5@3 c5@3 ~@3 c5@2 ~ [db5,ab5]@4 ~@3, ~@35 g5@5 ~@8", // Db5
  O: "~@5 g5@3 c5@3 g5@4 c5@2 ~ db5@4 ~@7 [eb5,bb5]@10 ~@2 [db5,ab5]@4 ~@3, ~@17 ab5@5 ~@26", // Eb5 Db5
  P: "~@6 g5@3 c5@2 g5@4 c5@2 ~ [db5,ab5]@3 ~@8 g5@3 c5@3 g5@4 c5@2 ~ [db5,ab5]@3 ~@3", // Db5
  Q: "~@5 g5@3 c5@3 g5@3 c5@2 ~@2 [db5,ab5]@3 ~@9 eb5@9 ~@2 [db5,ab5]@4 ~@3, ~@29 bb5@10 ~@9", // Db5
  R: "[~@6 g3@3 ab3@3 g3@3 f3@3 c3@2 f3@3 g3@3 ab3@3 c4@3 ~@3 ab3@3 ~@3 db4@32 ~@23]/2",
  S: "[~@10 db3@3 gb3@3 ab3@2 bb3@3 db4@3 gb4@3 ab4@3 bb4@3 ab4@3 gb4@3 ab4@38 ~@19]/2",
  T: "[~@8 c3@3 f3@3 g3@2 ab3@3 c4@3 ~@3 g3@3 ab3@3 c4@3 ~@3 bb3@29 ~@30]/2",
  U: "[~@6 db3@3 gb3@2 ab3@3 bb3@3 db4@3 gb4@3 ab4@3 bb4@3 ab4@3 gb4@3 ab4@21 ~@32 [db5,db6]@12 [eb5,eb6]@5 [db5,db6]@6 [a4,a5]@23 ~ db6@34 ~ eb6@11 [db5,db6]@11, ~@134 db5@35 eb5@12 ~@11]/4", // Db Eb Db A Db
  V: "[~ [eb5,eb6]@6 [db5,db6]@6 [a4,a5]@24 [db5,db6]@35 [eb5,eb6]@12 [db5,db6]@11 eb5]/2", // Eb Db A Db Eb Db
  W: "[eb6@5 [db5,db6]@6 ~ a5@23 [db5,db6]@35 [eb5,eb6]@12 [db5,db6]@11 [eb5,eb6]@6 [db5,db6]@6 [a4,a5]@24 [db5,db6]@45 ~ [ab3,ab4]@24 [a3,a4]@24 [ab3,ab4]@23 [e3,e4]@24 [ab3,ab4]@23 [a3,a4]@23 [b3,b4]@24 [db4,db5]@24 [f3,f4]@20, ~@11 a4@24 ~@349]/8", // Db Eb Db Eb Db A Db Ab …
  X: "~ [e3,e4]@12 [f3,f4]@11", // E F
  Y: "[~@2 [gb3,gb4]@24 [db4,db5]@35 [eb4,eb5]@11 [db4,db5]@129 [eb4,eb5]@12 [db4,db5]@83 [eb4,eb5]@12 [db4,db5]@76]/8", // Gb Db Eb Db Eb Db Eb Db
  Z: "[~@6 [eb4,eb5]@11 ~ db4@82 [eb4,eb5]@11 [db4,db5]@33, ~@17 db5@83 ~@44]/3", // Eb Db
})).s("gm_string_ensemble_1").gain(0.22).pan(0.2)

// chords · distortion guitar
const distortion_guitar_3 = note("<~@21 A@3 B C@4 ~@16 D@8 E ~@19 F@8 ~@25>".pickRestart({
  A: "[g3@13 g3@12 g3@6 g3@13 ab3@55 ~@2 c4@11 c4@13 c4@6 c4@13]/3", B: "~ db4@47",
  C: "[~@9 g3@12 g3@13 g3@6 g3@12 ~ ab3@54 ~@2 c4@11 ~ c4@12 c4@6 ~ c4@13 db4@37 ~@2]/4",
  D: "[~@15 c4@12 ~@11 f3@6 f3@6 f3@6 [gb3,db4]@51 ~@2 c4@12 c4@11 c4@6 c4@6 c4@6 [gb3,db4]@51 ~@2 g3@11 ~ g3@11 g3@6 g3@6 g3@6 [gb3,ab3,db4]@52 ~ c4@12 c4@12 c4@5 c4@6 ~ c4@5 ~ [a3,db4]@11 [a3,db4]@6 [gb3,a3,db4]@6 [gb3,a3,db4]@5 [gb3,a3,db4]@6 [gb3,a3,db4]@6 [gb3,a3,db4]@5, ~@15 f3@23 ~@71 gb3@41 ~@53 [f3,c4]@41 ~@53 gb3@40 ~@2 gb3@17 ~@28, ~@27 c4@29 ~@328]/8", // Gb5 Gbsus2 A Gbm F5
  E: "~ [gb3,a3,db4]@4 ~@43", // Gbm
  F: "[c4@12 ~@11 f3@6 f3@6 f3@6 [gb3,db4]@51 ~@2 c4@12 c4@11 c4@6 c4@6 c4@6 [gb3,db4]@51 ~@2 g3@11 g3@12 g3@6 g3@6 g3@6 [gb3,ab3,db4]@52 ~ c4@12 c4@12 c4@5 c4@6 ~ c4@5 [a3,db4]@12 [a3,db4]@6 [gb3,a3,db4]@5 [gb3,a3,db4]@6 [gb3,a3,db4]@6 [gb3,a3,db4]@6 [gb3,a3,db4]@6 [gb3,a3,db4]@4 ~@10, f3@23 ~@71 gb3@41 ~@53 [f3,c4]@41 ~@53 gb3@40 ~ gb3@18 ~@43, ~@12 c4@29 ~@343]/8", // Gb5 Gbsus2 A Gbm F5
})).s("gm_distortion_guitar").gain(0.22).pan(0.2)

// other · xylophone
const xylophone = note("<~@13 A@2 B@6 ~@8 C D@3 E F G@2 F H G@2 D G@3 I ~@15 A@4 J B@2 K L B@2 K ~@33>".pickRestart({
  A: "~@2 c6 ~@3 c6 ~", B: "~@4 c6@3 ~@5 c6@3 ~", C: "~@9 c6@2 ~@5", D: "~ c6@2 ~@6 c6@2 ~@5", E: "~ c6@2 ~@6 c6 ~@6",
  F: "~ c6@2 ~@6 c6@3 ~@4", G: "~ c6@3 ~@5 c6@3 ~@4", H: "~ c6@4 ~@4 c6@3 ~@4", I: "~ c6@2 ~@13",
  J: "~@4 c6 ~@7 c6@2 ~@2", K: "~@4 c6@3 ~@5 c6@2 ~@2", L: "~@4 c6@3 ~@5 c6@4",
})).s("gm_xylophone").gain(0.32).pan(0.7)

// other · distortion guitar
const distortion_guitar_4 = note("<A B C D E F G H@4 I J K@2 L M N O P Q ~@85>".pickRestart({
  A: "~@43 db3@5", B: "~ f3@5 ~@12 db3@6 ~ f3@6 ~@11 db3@6", C: "f3@6 ~@13 db3@5 f3@6 db3@6 ~ [ab3,db4]@6 db3@5",
  D: "~ f3@5 ~@12 db3@6 f3@4 ~@14 db3@6", E: "~ f3@6 ~@12 db3@5 f3@6 ~@7 [ab3,db4]@5 ~ db3@2 ~ db3@2",
  F: "~ f3@6 ~@12 db3@2 db3@2 ~ f3@5 ~@13 db3@2 ~ db3@2 ~",
  G: "f3@7 ~@12 db3@2 db3@2 ~ f3@5 ~ db3 ~@2 db3@2 ~ [ab3,db4]@6 ~ db3@2 ~ db3@2", // Db5
  H: "[f3@7 ~@11 db3@6 f3@5 ~@13 eb3@12 ~@13 db3@5 f3@5 ~ db3@6 [ab3,db4]@4 ~@2 eb3@12 ~@13 eb3@12 ~@12 eb3@11 ~@13 db3@5 f3@6 db3@2 ~@5 [ab3,db4]@6 db3@5]/4", // Db5
  I: "~ f3@6 ~@12 db3@6 f3@6 ~@12 db3@5", J: "f3@6 ~@12 db3@2 ~ db3@3 f3@6 db3 ~@2 db3@3 ~ [ab3,db4]@6 db3@5",
  K: "[f3@6 ~@12 db3@5 ~ f3@6 ~@12 eb3@12 ~@12 db3@6 f3@6 ~ db3@5 [ab3,db4]@6 db3@5 ~]/2", // Db5
// … 177 more lines

More by Live