0:00/0:00
// Talk to Me — Nirvana
// 128 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 92 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(128/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, A@4 for four bars: edit a riff to change every repeat.
// chords · distortion guitar · "KDC-Guitar 1"
const distortion_guitar = note(`<
~@2 A B@5 C@2 D E@2 F@2 G H I J K@5 L M N O@4 P Q R S T@2 U@2 V W X Y Z@4 AA AB AC AD AE@4 AF@2 AG AH AI AJ@2 AK AL@2
A AM AN@4 AO@2 D AP AQ AR@2 AS AT AU AV AW AX@4 AY AZ@2 ~@2
>`.pickRestart({
A: "[g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~", // G5 B5 C5 G5
B: "[[f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2]/5", // F5 Bb5 G5 B5 C5 G5 F5 Bb5 …
C: "[~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~ [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~]/2", // G5 B5 C5 G5 F5 Bb5 G5
D: "[g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@3", // G5 B5 C5 G5 F5
E: "[~@3 [f3,c4]@4 [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4]/2", // F5 Bb5 G5 B5 C5 G5 F5
F: "[~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~]/2", // F5 Bb5 G5 B5 C5 G5 F5
G: "~ [f3,c4]@4 ~ [f3,c4] [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2", // F5 Bb5 G5
H: "~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~", // B5 C5 G5 F5
I: "[f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~", // F5 Bb5 G5
J: "[b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2", // B5 C5 G5 F5
K: "[[f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@3 [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4]@4 ~@8 [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2]/5", // F5 Bb5 G5 B5 C5 G5 F5 Bb5 …
L: "~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 [f3,c4]@2 ~ [f3,c4]@2 ~", // B5 C5 G5 F5
M: "[f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~", // F5 Bb5 G5
N: "[b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~", // B5 C5 G5 F5
O: "[[f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2]/4", // F5 Bb5 G5 B5 C5 G5 F5 Bb5 …
P: "~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2", // Bb5 G5 B5
Q: "~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~ [f3,c4]@4 ~ [f3,c4]", // C5 G5 F5
R: "[bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~", // Bb5 G5 B5
S: "[c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~", // C5 G5 F5
T: "[[bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]]/2", // Bb5 G5 B5 C5 G5 F5 Bb5
U: "[[bb3,f4] ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~]/2", // Bb5 G5 B5 C5 G5 F5 Bb5
V: "[bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2", // Bb5 G5 B5 C5
W: "~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] [bb3,f4] ~ [bb3,f4]", // C5 G5 F5 Bb5
X: "[bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~", // Bb5 G5 B5 C5
Y: "[c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~", // C5 G5 F5 Bb5
Z: "[[bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~ [g3,d4]@3 [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4]@4 ~]/4", // Bb5 G5 B5 C5 G5 F5 Bb5 G5 …
AA: "~@7 [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2", // G5 B5 C5
AB: "~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 [bb3,f4]@2 ~ [bb3,f4]@2 ~", // C5 G5 F5 Bb5
AC: "[bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~", // Bb5 G5 B5 C5
AD: "[c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~", // C5 G5 F5 Bb5
AE: "[[bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2]/4", // Bb5 G5 B5 C5 G5 F5 Bb5 G5 …
AF: "[~ [bb3,f4]@2 ~ g3@4 ~@2 g3@3 c4@4 ~@2 c4@2 ~ f4@4 ~@2 eb4@4 ~@2 eb4@3 a3@4 ~ a3@2 ~ bb3@3]/2", // Bb5
AG: "~@3 g3@4 ~@2 g3@3 c4@4 ~@2 c4@2 ~ f4@3", AH: "~@3 eb4@4 ~@2 eb4@3 a3@4 ~@2 a3@2 ~ ab3@3",
AI: "~@3 g3@4 ~ g3@3 c4@4 ~@2 c4@2 ~ f4@4",
AJ: "[~@2 c5@2 ~ c5@2 ~ c5@2 ~@7 f4@4 ~@2 gb3@2 ~ g3@4 ~@2 g3@3 c4@4 ~@2 c4@2 ~ f4@4, ~@11 b4@12 ~@25]/2",
AK: "~ bb3@16 ~@7", AL: "[~ [g3,c4,g4]@32 ~@4 [bb4,d5,bb5]@8 ~@3]/2",
AM: "[f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~", // F5 Bb5
AN: "[[g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~ [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2]/4", // G5 B5 C5 G5 F5 Bb5 G5 B5 …
AO: "[~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 [bb3,f4]@2 ~ [g3,d4]@2 ~]/2", // G5 B5 C5 G5 F5 Bb5 G5
AP: "~@3 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~", // F5 Bb5 G5
AQ: "[g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4", // G5 B5 C5 G5 F5
AR: "[~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4]/2", // F5 Bb5 G5 B5 C5 G5 F5
AS: "~ [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2", // F5 Bb5 G5
AT: "~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@3 [f3,c4]@4 ~", // B5 C5 G5 F5
AU: "~ [f3,c4]@4 [f3,c4] ~ [bb3,f4]@4 ~@7 [g3,d4]@2 ~ [g3,d4]@2 ~", // F5 Bb5 G5
AV: "[g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~", // G5 B5 C5 G5 F5
AW: "[f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~", // F5 Bb5 G5
AX: "[[g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2]/4", // G5 B5 C5 G5 F5 Bb5 G5 B5 …
AY: "~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2", // B5 C5 G5 F5
AZ: "[~ [f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ g5@16 ~@16]/2", // F5 Bb5
})).s("gm_distortion_guitar").gain(0.41)
// bass · synth bass 2 · "KAN-Bass"
const bass = note(`<
~@3 A@5 B@2 C D@2 E@2 F G H I J@5 K@2 L M@2 N@2 O P Q R S@4 T U V W X@4 Y Z AA AB AC@5 AD@2 AE AF@2 AG@2 AH AI AJ AK
AL@4 AM@2 C AN AO D@2 F G AP I H AQ@4 AR@2 L AS@2
>`.pickRestart({
A: "[~@23 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2]/5",
B: "[~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~ f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~]/2",
C: "g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@3",
D: "[~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4]/2",
E: "[~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~]/2",
F: "~ f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2", G: "~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~",
H: "f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~", I: "b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2",
J: "[f1@4 ~@2 bb1@2 bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@4 ~@8 g1@2 ~ g1@2 ~ b1@2]/5",
K: "[~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~ bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~]/2",
L: "b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@3",
M: "[~@3 bb1@2 ~ bb1@2 bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4]/2",
N: "[~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~]/2",
O: "~ bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2", P: "~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~",
Q: "bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~", R: "c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2",
S: "[bb1@2 ~ bb1@2 ~ bb1@4 ~ g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2]/4",
T: "~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2", U: "~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2",
V: "bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~", W: "c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~",
X: "[bb1@2 ~ bb1@4 ~ g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@4 ~]/4",
Y: "~@7 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2", Z: "~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~ bb1@2 ~ bb1@2 ~",
AA: "bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~", AB: "c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~",
AC: "[bb1@4 ~@2 g1@2 g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2]/5",
AD: "[~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~ g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~]/2",
AE: "g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@3",
AF: "[~@3 g1@2 ~ g1@2 b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4]/2",
AG: "[~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~]/2",
AH: "~ g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2", AI: "~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~",
AJ: "g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~", AK: "f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2",
AL: "[g1@2 ~ g1@2 ~ b1@2 b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~ f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2]/4",
AM: "[~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2]/2",
AN: "~@3 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~", AO: "g1@2 ~ b1@2 ~ b1@2 c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4",
AP: "~ f1@4 ~@2 bb1@4 ~@7 g1@2 ~ g1@2 ~",
AQ: "[b1@2 ~ b1@2 ~ c2@2 c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2 ~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~ bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2]/4",
AR: "[~ b1@2 ~ c2@2 ~ c2@2 ~ c2@2 ~ g1@2 ~ f1@4 ~@2 f1@4 ~@2 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@2 ~ g1@2 ~ b1@2]/2",
AS: "[~@3 bb1@2 ~ bb1@2 ~ bb1@4 ~@2 g1@12 ~@21]/2",
})).s("gm_synth_bass_2").gain(0.41)
// chords · electric guitar clean · "KDC-Guitar 2"
const electric_guitar_clean = note("<A B C ~@52 D E F G H@4 I J ~@23 K L M@2>".pickRestart({
A: "[g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~", // G5 B5 C5 G5
B: "[f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~", C: "g3 ~@2",
D: "~@4 [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~", // G5 B5 C5
E: "~ [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 [bb3,f4]@2 ~ [bb3,f4]@2 ~", // G5 F5 Bb5
F: "[bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2", // Bb5 G5 B5 C5
G: "[g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~", // G5 F5 Bb5
H: "[[bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 ~ [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2 [f3,c4]@4 ~@2 [f3,c4]@4 ~ [f3,c4] [bb3,f4] ~ [bb3,f4] [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2]/4", // Bb5 G5 B5 C5 G5 F5 Bb5 G5 …
I: "~ [g3,d4]@2 ~ [g3,d4]@2 ~ [b3,gb4]@2 ~ [b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@4 ~@2 [g3,d4]@2", // G5 B5 C5 G5
J: "~ [f3,c4]@4 ~@2 [f3,c4]@4 [f3,c4] ~ [bb3,f4]!2 ~ [bb3,f4]@2 [bb3,f4]@2 ~ [bb3,f4]@2 ~", // F5 Bb5
K: "~@16 [g3,d4]@2 [g3,d4]@2 ~ [g3,d4]@2 ~", // G5
L: "[b3,gb4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [c4,g4]@2 ~ [g3,d4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~ [f3,c4]@2 ~", // B5 C5 G5 F5
M: "[[f3,c4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [bb3,f4]@2 ~ [g3,d4,g4,d5,g5]@12 ~@21]/2", // F5 Bb5 G5
})).s("gm_electric_guitar_clean").gain(0.41)
// drums · kick
const kick = s("bd").struct(`<
~@3 A B C D E D F G H I H J K J L M N O N P Q P R S T U T V W V X Y Z AA Z AB AC AB AD AE AF AG AF AH AI AH AJ AK AL
AM AN AO AP AO AQ AR AQ AS AT AU AV AU AW AX AY C B E D F G F AZ H I K J BA M L O N O BB P R S ~@2
>`.pickRestart({
A: "~@11 x ~@11 x", B: "~@2 x ~@8 x ~@11 x", C: "~@23 x", D: "~ x ~@8 x ~@11 x ~", E: "~@11 x", F: "~@7 x",
G: "x ~@2 x ~@3 x", H: "~@20 x ~@2 x", I: "~@2 x ~@2 x", J: "~@7 x ~@11 x ~@4", K: "~@19 x ~@2 x ~", L: "~@6 x!2",
M: "~ x ~ x", N: "~@17 x ~@2 x ~@3", O: "~@5 x ~@11 x ~@6", P: "~ x ~@2 x ~", Q: "~@10 x ~@5 x ~@2 x ~@4",
R: "~@5 x!2 ~", S: "~ x ~@3 x ~@2", T: "~@14 x ~@2 x ~@6", U: "~ x ~@5 x ~@4", V: "~ x ~@11 x ~@10",
W: "~@13 x ~@2 x ~@7", X: "~@4 x!2 ~@2", Y: "x!2", Z: "~@11 x ~@2 x ~@8 x", AA: "~@11 x ~@12", AB: "~@5 x ~@6",
AC: "~@10 x ~@2 x ~@8 x ~", AD: "~@3 x!2 ~@2 x", AE: "~@3 x ~@4", AF: "~@8 x ~@2 x ~@8 x ~@3", AG: "~ x ~",
AH: "~@7 x ~@16", AI: "~ x ~@5 x ~@2 x ~@8 x ~@4", AJ: "~@2 x!2 ~@2 x ~", AK: "~ x ~@2", AL: "~@6 x ~ x ~@8 x ~@6",
AM: "~@5 x ~@18", AN: "~@5 x ~@2 x ~@8 x ~@6", AO: "~ x ~@4", AP: "~@4 x ~@2 x ~@8 x ~@7", AQ: "~ x!2 ~@2 x ~@2",
AR: "~ x ~@6", AS: "~ x ~@10", AT: "~@2 x ~@2 x ~@8 x ~@9", AU: "~ x ~@22", AV: "~ x ~@2 x ~@8 x ~@10",
AW: "x!2 ~@2 x ~@3", AX: "x", AY: "x ~@2 x ~@7 x ~@11 x", AZ: "x ~ x ~@2 x", BA: "~@13 x ~@4 x ~@2 x ~@2",
BB: "~@16 x ~@2 x ~@4",
})).gain(0.41)
// drums · snare
const snare = s("sd").struct(`<
~@3 A B C D E D F G F H I J K J L M N O P Q R Q S T U V W X Y X Z AA AB AC AD AE AF AE AG AH AI AJ AK AL AM AL AN AO
AP AQ AR AS AT AS AU AV AW AX AW AY AZ AY BA BB B C B E D E G F G I H K J K M L BC P O R Q R T BD ~
>`.pickRestart({
A: "~@11 x ~ x!2 ~ x!2 ~@2 x ~ x ~", B: "~@5 x ~@2 x ~@8 x ~@6", C: "~@5 x ~@5 x ~@5 x ~@6",
D: "~@4 x ~@2 x ~@8 x ~@7", E: "~@2 x ~@2 x ~@2 x ~@3", F: "~ x ~ x ~ x ~@2", G: "~ x!2 ~@2 x ~@2",
H: "~@2 x ~@2 x ~@8 x ~@9", I: "~ x ~@2 x ~@2 x ~@4", J: "~ x ~@2 x ~@8 x ~@10", K: "~ x ~@5 x ~@5 x ~@10",
L: "x!3 ~", M: "x!2 ~@2 x ~@3", N: "x ~@5 x ~@4 x ~@11 x", O: "~@2 x ~@8 x ~@11 x", P: "~@5 x ~@5 x ~@11 x",
Q: "~ x ~@8 x ~@11 x ~", R: "~@2 x ~@2 x ~@5 x", S: "~ x ~ x ~@3 x", T: "x ~@2 x ~@3 x",
U: "~@3 x ~@4 x ~@11 x ~@2 x", V: "~@2 x ~@2 x", W: "~@2 x ~@5 x ~@11 x ~@2 x", X: "~@7 x ~@11 x ~@4",
Y: "~ x ~@5 x ~@11 x ~@2 x ~", Z: "x ~ x ~@3 x!2", AA: "~ x ~ x", AB: "x ~@5 x ~@10 x ~@2 x ~@3",
AC: "~@5 x ~@11 x ~@5 x", AD: "~@5 x ~@11 x ~@2 x ~@3", AE: "~@2 x ~@5 x ~@2 x", AF: "~@4 x ~@11 x ~@2 x ~@4",
AG: "~ x ~@3 x!2 ~", AH: "~ x ~@3 x ~ x", AI: "~@3 x ~@10 x ~@2 x ~@6", AJ: "~ x ~@5 x ~@2 x ~",
AK: "~@2 x ~@11 x ~@2 x ~@6", AL: "~ x ~@11 x ~@5 x ~@4", AM: "~ x ~@11 x ~@2 x ~@7", AN: "x ~@3 x!2 ~@2",
AO: "x ~ x!2", AP: "x ~@10 x ~@2 x ~@8 x", AQ: "~@11 x ~@5 x ~@5 x", AR: "~@11 x ~@2 x ~@8 x",
AS: "~@5 x ~@2 x ~@2 x", AT: "~@10 x ~@2 x ~@8 x ~", AU: "~@3 x!2 ~@2 x", AV: "~@3 x ~ x ~ x",
AW: "~@8 x ~@2 x ~@8 x ~@3", AX: "~@4 x ~@2 x ~@2 x ~", AY: "~@7 x ~@5 x ~@5 x ~@4", AZ: "~@7 x ~@2 x ~@8 x ~@4",
BA: "~@2 x!2 ~@2 x ~", BB: "~ x!3", BC: "x ~@2 x ~@7 x ~@11 x", BD: "~ x ~ x ~@4",
})).gain(0.41)
// drums · open hat
const open_hat = s("oh").struct(`<
~@3 A B@2 C@3 D@2 E@3 F@3 G@2 H B@2 C I C D@2 E@3 F@3 G@2 H B@2 C@3 D@2 E@3 J K F G@2 H B@2 C@3 D@2 E@3 F@3 G@2 H B@2
C@3 D@2 E@3 F@2 L G@2 H B@2 C@3 D M ~
>`.pickRestart({
A: "~@23 x", B: "~@5 x ~@5 x ~@5 x ~@5 x", C: "~@2 x ~@2 x ~@2 x ~@2 x", D: "~ x ~ x ~ x ~ x",
E: "~ x ~@2 x ~@2 x ~@2 x ~", F: "~ x ~@5 x ~@5 x ~@5 x ~@4", G: "x!4", H: "x ~@5 x ~@4 x ~@5 x ~@5 x",
I: "~@8 x ~@2 x", J: "~ x ~@5 x ~@5 x ~@10", K: "~@7 x ~@5 x ~@5 x ~@4", L: "~ x ~@16 x ~@5", M: "~ x ~ x ~@4",
})).gain(0.41)
// drums · china
const china = s("cr").struct(`<
~@3 A B C D E D F G H I H J K J L M N O P Q R Q S T S U V W X W Y Z AA AB AC AD AE AD AF AG AH AI AJ AK J AL AM AN AO
C AP E AQ E AR F AR H AS K AT K AU L AV C B E D E G F I H I K J AW M L O P O AX Q AY T AZ ~
>`.pickRestart({
A: "~@23 x", B: "~@11 x ~@11 x", C: "~@5 x ~@5 x ~@5 x ~@5 x", D: "~@5 x ~@5 x", E: "~@2 x ~@2 x ~@2 x ~@2 x",
F: "~ x ~ x ~ x ~ x", G: "~@3 x ~@3 x", H: "~ x ~@2 x ~@2 x ~@2 x ~", I: "~@2 x ~@2 x", J: "~@7 x ~@11 x ~@4",
K: "~ x ~@5 x ~@5 x ~@5 x ~@4", L: "x!4", M: "~ x ~ x", N: "x ~@5 x ~@4 x ~@5 x ~@6", O: "~@5 x ~@11 x ~@5 x",
P: "~@5 x ~@5 x ~@5 x ~@6", Q: "~@2 x ~@5 x ~@2 x", R: "~@2 x", S: "~ x ~ x ~ x ~@2", T: "~ x ~@3 x ~ x",
U: "~ x ~@5 x ~@2 x ~", V: "~ x ~@2 x ~@2 x ~@4", W: "~ x ~@11 x ~@5 x ~@4", X: "~ x ~@5 x ~@5 x ~@10", Y: "x!3 ~",
Z: "x ~ x!2", AA: "x ~@5 x ~@4 x ~@11 x", AB: "~@11 x ~@5 x ~@5 x", AC: "~@5 x ~@5 x ~@11 x", AD: "~@5 x ~@2 x ~@2 x",
AE: "~@2 x ~@2 x ~@5 x", AF: "~ x ~ x ~@3 x", AG: "~@3 x ~ x ~ x", AH: "~@3 x ~@4 x ~@11 x ~@3",
AI: "~@4 x ~@2 x ~@2 x ~", AJ: "~ x ~@2 x ~@5 x ~", AK: "~@7 x ~@5 x ~@10", AL: "~@7 x ~@5 x ~@4 x ~@5",
AM: "x!2 ~ x", AN: "~ x!3", AO: "x ~@5 x ~@10 x ~@6", AP: "~@5 x ~@11 x ~@6", AQ: "~ x ~@2 x ~", AR: "~ x ~@3 x ~@2",
AS: "~ x ~@5 x ~@4", AT: "~ x ~@11 x ~@10", AU: "x!2", AV: "x ~@10 x ~@11 x", AW: "~ x ~@16 x ~@5",
AX: "~@2 x ~@2 x ~@2 x ~@3", AY: "~@2 x ~@2 x ~@6", AZ: "~ x ~ x ~@4",
})).gain(0.41)
// drums · ride bell
const ride_bell = s("rd").struct(`<
~@3 A B C D E D F G H I H I J K L M N O P Q R Q S T S U V W X Y Z AA AB AC AD AE AF AE AG AH AI AJ AK AL AM AN AO AP
AQ AR AS AT AU AT AV AW AV AX AY AZ BA AZ BB BC BB C B E D E G F I H I J K Y M L O P O BD Q BD T BE ~
>`.pickRestart({
A: "~@23 x", B: "~@11 x ~@12", C: "~@5 x ~@5 x ~@5 x ~@5 x", D: "~@5 x ~@6", E: "~@2 x ~@2 x ~@2 x ~@2 x",
F: "~ x ~ x ~ x ~ x", G: "~@3 x ~@4", H: "~ x ~@2 x ~@2 x ~@2 x ~", I: "~ x ~", J: "~ x ~@5 x ~@5 x ~@5 x ~@4",
K: "~@7 x ~@16", L: "x!4", M: "~ x ~@2", N: "x ~@5 x ~@4 x ~@5 x ~@6", O: "~@5 x ~@17 x", P: "~@5 x ~@5 x ~@5 x ~@6",
Q: "~@2 x ~@8 x", R: "~@2 x", S: "~ x ~ x ~ x ~@2", T: "~ x ~@5 x", U: "~ x ~@8 x ~", V: "~ x ~@2 x ~@2 x ~@4",
W: "~ x ~@17 x ~@4", X: "~ x ~@5 x ~@5 x ~@10", Y: "~ x ~@16 x ~@5", Z: "x!3 ~", AA: "x ~@2 x",
// … 10 more lines
More by Nirvana
Not in the database
That song isn't here.
Nothing in the database matches this link. It may have been renamed, or the address was mistyped. The closest songs to :
Real transcriptions · Editable patterns · Instrumental
Type a song.
Get Strudel code.
Chords, structure, melody, bass and drums compiled from open transcriptions into Strudel live-coding patterns. Play it here, scrub through the bars, then open it in strudel.cc and start hacking.
Smells Like Teen SpiritNirvana
The JokerSteve Miller Band · 1973
Love Me DoThe Beatles · 1964
I Don't MindJames Brown · 1961
- Real transcriptionsMcGill chord charts, Lakh MIDI and quality-filtered PDMX scores. The library includes alternate transcriptions of some songs.
- One bar, one cycleEvery layer follows the same bar timeline, keeping the code, playback and song structure aligned.
- Instrumental by designDetected vocal parts are removed. Guitar riffs, harmonica and other instrumental leads stay.