0:00/0:00
// Lounge Act — Nirvana
// 120 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 7 fretless bass (copy of ch 1 "elect bass pick" electric bass pick)
// note: Full arrangement: all 75 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/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 pick · "elect bass pick"
const bass = note(`<
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU AV
AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS ~@2 BT BU
>`.pickRestart({
A: "~@16 c2 ~@3 d#2 ~ g2 ~@3 g1 ~@4 g#1", B: "~@3 g1 ~@3 g#1 ~@4 g1 ~@3 d#2 ~@5 c#2 ~@2 c2 ~@2 c2 ~@3",
C: "c2 ~@5 d#2 ~@2 g2 ~@4 g1 ~@5 g#1 ~@2 g1 ~@2 g#1 ~@5",
D: "~ g1 ~@2 c#2 ~@5 c2 ~@2 c#2 ~@2 c2 ~@2 c2 ~@6 d#2 ~@2 g2 ~@2",
E: "~@2 g1 ~@4 g#1 ~@2 g1 ~@3 g#1 ~@4 g1 ~@3 d#2 ~@5 c#2 ~@2",
F: "~ c2 ~ c2 ~@2 c2 ~@6 d#2 ~@2 g2 ~@3 g1 ~@5 g#1 ~@2 g1 ~@2",
G: "~ g#1 ~@4 g1 ~@2 c#2 ~@5 c2 ~@3 c#2 ~ c2 ~@3 c2 ~@5 d#2",
H: "~@2 g2 ~@3 g1 ~@5 g#1 ~@2 g1 ~@2 g#1 ~@7 g1 ~@2 d#2 ~@2",
I: "~@3 c#2 ~@2 c2 ~@2 c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@2 g1 ~@6 g#1",
J: "~@2 g1 ~@2 g#1 ~@5 g1 ~@3 c#2 ~@5 c2 ~@2 c#2 ~@2 c2 ~@2 c2 ~",
K: "~@5 d#2 ~@2 g2 ~@2 g1 ~@5 g#1 ~@3 g1 ~ g#1 ~@5 g1 ~@2",
L: "~ d#2 ~@5 c#2 ~@2 c2 ~@3 c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@2 g1 ~@2",
M: "~@3 g#1 ~@2 g1 ~@3 g#1 ~@5 g1 ~@2 c#2 ~@5 c2 ~@2 c#2 ~@3",
N: "c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@3 g1 ~@4 g#1 ~@3 g1 ~@2 g#1 ~@3",
O: "~ g1 ~@3 c#2 ~@5 c2 ~@2 c#2 ~@2 c2 ~@3 e1 ~@4 e1 ~@4 a1",
P: "~@4 a1 ~@2 a1 ~@2 a1 ~@4 c2 ~@3 c2 ~@3 f2 ~@5 f2 ~@2", Q: "~ f2 ~@2 c2 ~@2 e1 ~@4 e1 ~@3 a1 ~@4 a1 ~@3 a1 ~@5 d2",
R: "~@4 d2 ~@4 g2 ~@5 g2 ~@2 g2 ~@2 g2 ~@3 e1 ~@3 e1 ~@2", S: "~@4 a1 ~@3 a1 ~@3 a1 ~ a1 ~@3 d2 ~@3 d2 ~@4 g2 ~@4",
T: "~ g2 ~ g2 ~@2 g2 ~@3 e1 ~@3 e1 ~@5 a1 ~@4 g1 ~@3 a1 ~@2",
U: "a1 ~@2 d2 ~@3 d2 ~ d2 ~@3 g2 ~@4 g2 ~@2 g2 ~@2 g2 ~@3 a1 ~@3",
V: "~ a1 ~@6 a1 ~@5 a1 ~@6 g#1 ~@2 g#1 ~@2 g#1 ~@2 g1 ~", W: "~@4 g1 ~@2 g1 ~@2 g1 ~@2 a1 ~@7 a1 ~@4 a1 ~@5",
X: "~ a1 ~@5 g#1 ~ g#1 ~@2 g#1 ~@2 g1 ~@5 g1 ~@9 c2", Y: "~@6 d#2 ~ g2 ~@3 g1 ~@5 g#1 ~@2 g1 ~@2 g#1 ~@5 g1 ~",
Z: "~@2 d#2 ~@5 c#2 ~@2 c2 ~@2 c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@3 g1 ~",
AA: "~@4 g#1 ~@2 g1 ~@2 g#1 ~@5 g1 ~@2 c#2 ~@5 c2 ~@2 c#2 ~@2 c2",
AB: "~@3 c2 ~@5 d#2 ~@2 g2 ~@3 g1 ~@4 g#1 ~@3 g1 ~@2 g#1 ~@3",
AC: "~ g1 ~@3 d#2 ~@5 c#2 ~@2 c2 ~@2 c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@2",
AD: "~ g1 ~@5 g#1 ~@3 g1 ~ g#1 ~@5 g1 ~@2 c#2 ~@6 c2 ~@2",
AE: "c#2 ~@2 c2 ~@2 c2 ~@10 g2 ~@3 g1 ~@3 g#1 ~@2 g1 ~@2 g#1",
AF: "~@4 g1 ~@3 c#2 ~@5 c2 ~@2 c#2 ~@2 c2 ~@3 e1 ~@4 e1 ~@2", AG: "~ a1 ~@5 a1 ~@3 a1 ~ a1 ~@3 d2 ~@4 d2 ~@3 g2 ~@5",
AH: "g2 ~@2 g2 ~@2 g2 ~@2 e1 ~@4 e1 ~@4 b1 ~@5 b1 ~@2 b1 ~@2 b1",
AI: "~@3 c2 ~@3 c2 ~@4 g2 ~@3 g2 ~@3 g2 ~@2 g2 ~@2 e1 ~@4 e1",
AJ: "~@4 a1 ~@5 a1 ~@2 a1 ~@2 a1 ~@3 c2 ~@4 c2 ~@4 g2 ~",
AK: "~@3 g2 ~@2 g2 ~@2 g2 ~@2 e1 ~@5 e1 ~@4 a1 ~@4 a1 ~@2 a1",
AL: "~@2 a1 ~@3 e2 ~@5 d2 ~@5 g2 ~@3 g2 ~@2 g2 ~@4 a1 ~", AM: "~@5 a1 ~@6 a1 ~@5 a1 ~@5 g#1 ~@2 g#1 ~@2 g#1 ~",
AN: "~@2 g1 ~@5 g1 ~@2 g1 ~@2 g1 ~@2 a1 ~@12 a1 ~", AO: "~@4 a1 ~@6 g#1 ~ g#1 ~@4 g1 ~@6 g1 ~@6",
AP: "~@2 c2 ~@5 d#2 ~@2 g2 ~@3 g1 ~@5 g#1 ~@2 g1 ~@2 g#1 ~@4",
AQ: "~ g1 ~@3 d#2 ~@4 c#2 ~@2 c2 ~@2 c2 ~@2 c2 ~@5 d#2 ~@3 g2 ~@2",
AR: "g1 ~@5 g#1 ~@3 g1 ~ g#1 ~@5 g1 ~@2 c#2 ~@5 c2 ~@2 c#2 ~",
AS: "~@2 c2 ~@2 c2 ~@4 d#2 ~@3 g2 ~@2 g1 ~@6 g#1 ~@2 g1 ~@2 g#1 ~",
AT: "~@3 g1 ~@3 d#2 ~@5 c#2 ~@2 c2 ~@3 c2 ~@2 c2 ~@4 d#2 ~@3",
AU: "g2 ~@3 g1 ~@5 g#1 ~@2 g1 ~@2 g#1 ~@4 g1 ~@3 c#2 ~@5 c2",
AV: "~@2 c#2 ~@2 c2 ~@2 c2 ~@5 d#2 ~@2 g2 ~@3 g1 ~@5 g#1 ~@3 g1",
AW: "~@2 g#1 ~@4 g1 ~@4 d#2 ~@4 c#2 ~@2 c2 ~@2 c2 ~@2 c2 ~@5",
AX: "d#2 ~@2 g2 ~@2 g1 ~@6 g#1 ~@2 g1 ~@2 g#1 ~@5 g1 ~@2 c#2 ~@3",
AY: "~@2 c2 ~@2 c#2 ~@2 c2 ~@2 c2 ~@6 d#2 ~@2 g2 ~@2 g1 ~@5 g#1 ~",
AZ: "~ g1 ~@2 g#1 ~@9 c#2 ~@4 c2 ~@3 c#2 ~ c2 ~@4 e1 ~", BA: "~@2 e1 ~@4 a1 ~@4 a1 ~@2 a1 ~@2 a1 ~@3 c2 ~@3 c2 ~@5",
BB: "g2 ~@3 g2 ~@3 g2 ~@2 g2 ~@3 e1 ~@3 e1 ~@4 a1 ~@4 a1 ~@2",
BC: "~ a1 ~@5 d2 ~@3 d2 ~@5 g2 ~@4 g2 ~@3 g2 ~@2 g2 ~@2",
BD: "e1 ~@3 e1 ~@4 a1 ~@5 a1 ~@2 a1 ~@3 a1 ~@2 d2 ~@2 d2 ~@3",
BE: "~@2 g2 ~@3 g2 ~@3 g2 ~@2 g2 ~@2 e1 ~@3 e1 ~@4 a1 ~@5 g1",
BF: "~@3 a1 ~@2 a1 ~@2 d2 ~@4 d2!2 ~@3 g2 ~@5 g2 ~@2 g2 ~@2 g2",
BG: "~ e1 ~@3 e1 ~@5 a1 ~@4 g1 ~@3 a1 ~ a1 ~@3 d2 ~@3 d2 ~",
BH: "d2 ~@3 g2 ~@4 g2 ~@2 g2 ~@2 g2 ~@2 e1 ~@3 e1 ~@3 a1 ~@5",
BI: "~@2 a1 g1 ~@3 e1 ~@2 g1 d2 ~@3 d2 ~@4 g2 ~@4 g2 ~@2 g2 ~@2 g2",
BJ: "~@2 e1 ~@4 e1 ~@4 a1 ~@5 g1 ~@3 a1 ~@2 a1 ~@2 d2 ~@2 d2",
BK: "~@5 g2 ~@4 g2 ~@2 g2 ~@2 g2 ~@3 e1 ~@3 e1 ~@4 a1 ~@2",
BL: "~@4 g1 ~@2 a1 ~@2 a1 ~@2 d2 ~@3 d2 ~@4 g2 ~@4 g2 ~@2 g2 ~", BM: "~ g2 ~@3 a1 ~@5 a1 ~@5 a1 ~@5 a1 ~@5 g#1 ~@2",
BN: "g#1 ~@2 g#1 ~@2 g1 ~@5 g1 ~@2 g1 ~@2 g1 ~@2 a1 ~@6 a1 ~@3",
BO: "~@3 a1 ~@5 a1 ~@5 g#1 ~@2 g#1 ~ g#1 ~@2 g1 ~@5 g1 ~@2", BP: "~ g1 ~ g1 ~@3 a1 ~@5 a1 ~@5 a1 ~@5 a1 ~@5 g#1",
BQ: "~@2 g#1 ~@2 g#1 ~@3 g1 ~@5 g1 ~@3 g1 ~ g1 ~@2 a1 ~@5 a1 ~",
BR: "~@4 a1 ~@5 a1 ~@6 g#1 ~ g#1 ~@2 g#1 ~@2 g1 ~@5 g1", BS: "~@3 g1 ~@6 a1 ~@21", BT: "~@23 g1 ~@8",
BU: "~@22 f1 ~ e1 ~@7",
})).s("gm_electric_bass_pick").gain(0.36)
// chords · distortion guitar · "dist"
const distortion_guitar = note(`<
~@3 A@2 B C D E F@2 G@2 H@4 I J K L M@2 N@2 O@3 P Q R S T U@3 V W X Y Z AA AB@4 AC@2 AD AE AF AG AH AI AJ AK AL AM@3
AN AO AP@2 AQ AR AS AT@3 AU@5
>`.pickRestart({
A: "[~@19 [c3,g3]@7 ~@2 [c3,g3]@2 ~ [c3,g3]@7 ~@3 [c3,g3] ~ [c3,g3]@2 ~@3 [g#2,d#3]@4 ~ [g#2,d#3] ~@2 [c#3,g#3]@4 ~@2 c#3@2, ~@61 g#3@2 ~]/2", // C5 G#5 C#5
B: "~ c#3 ~ [c#3,g#3]@2 ~@2 c3@6 ~@2 [c3,g3]@2 ~ [c3,g3]@6 ~@3 g3 ~@2 c3@2, ~@6 g3@6 ~@14 c3@2 ~ g3@2 ~", // C#5 C5
C: "~ [g#2,d#3]@4 ~@2 [g#2,d#3] ~@3 [c#3,g#3]@4 ~ g#3@2 ~ c#3 ~@2 g#3@2 ~ [c3,g3]@6 ~, ~@15 c#3@2 ~@4 c#3@2 ~@9", // G#5 C#5 C5
D: "~@2 [c3,g3]@2 ~ [c3,g3]@5 ~@2 [c3,g3] ~ [c3,g3]@2 ~@2 [g#2,d#3]@4 ~@2 [g#2,d#3] ~@2 [c#3,g#3]@4 ~", // C5 G#5 C#5
E: "~ [c#3,g#3] ~@2 c#3 ~@2 [c#3,g#3]@2 ~@2 [c3,g3]@6 ~@4 [c3,g3]@2 ~ [c3,g3]@5 ~ [c3,g3]@2", // C#5 C5
F: "[~ [c3,g3] ~@4 g#2@4 ~ [g#2,d#3]@2 ~@2 [c#3,g#3]@4 ~@2 [c#3,g#3]@2 ~ [c#3,g#3] ~@2 [c#3,g#3]@2 ~ [c3,g3]@6 ~@4 g3@2 ~ [c3,g3]@5 ~@2 g3 ~ [c3,g3]@2 ~@2 [g#2,d#3]@3 ~@3 d#3@2, ~@5 d#3@4 ~@30 c3@2 ~@8 c3@2 ~@10 g#2@2 ~]/2", // C5 G#5 C#5 C5 G#5
G: "[~@2 [c#3,g#3]@5 ~ [c#3,g#3]@2 ~ [c#3,g#3]@2 ~ g#3 ~@2 [c3,g3]@6 ~@4 g3@2 [c3,g3]@5 ~@2 [c3,g3]@2 ~ [c3,g3]@2 ~@3 a#2@4 ~ a#2 ~@5 [c#3,d#3] ~ [c#3,g#3]@3 ~ [c#3,g#3]@2 ~, ~@13 c#3@2 ~@11 c3@2 ~@36]/2", // C#5 C5 C#sus2 C#5
H: "[~@3 [c3,g3]@6 ~@3 [c3,g3]@2 ~ [c3,g3]@4 ~@2 [c3,g3]@2 ~@2 b2 ~@3 d#3@5 [g#2,d#3]@2 ~@2 [c#3,g#3]@5 ~ [c#3,g#3]@2 ~@2 c#3@3 ~@3 [e2,b2]@4 ~ [e2,b2]@2 ~@3 e3@5 ~ [a2,e3]@2 ~ e3@2 [a2,e3]@2 ~@2 [d3,a3]@4 ~@2 [d3,a3]@3 ~@2 g2@5 [g2,d3]@2 ~@2 [g2,d3]@2 ~ [g2,d3]@2 ~ [e2,b2]@4 ~ [e2,b2]@2 ~@2 [a2,e3]@4 ~ [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3]@2 ~, ~@28 g#2@5 ~@14 g#3@3 ~@13 a2@5 ~@4 a2@2 ~@15 d3@5 ~@34]/4", // C5 G#5 C#5 E5 A5 D5 G5 E5 …
I: "~ [d3,a3]@3 [d3,a3]@2 ~@3 g2@3 d3 ~@2 e3@2 ~ [a2,e3]@2 ~ [a2,e3]@2 ~@2 b2@3 ~ [e2,b2]@2 ~, ~@14 a2@2 ~@8 e2@3 ~@5", // D5 A5 E5
J: "~@2 [a2,e3]@5 ~ [a2,e3]@2 ~@2 [a2,e3]@2 ~ e3@2 ~@2 a3@3 ~ [d3,a3]@2 ~@3 [g2,d3]@4, ~@14 a2@2 ~@2 d3@3 ~@11", // A5 D5 G5
K: "~ [g2,d3]@2 ~ [g2,d3]@2 ~ [g2,d3]@2 ~ [e2,b2]@3 ~@2 b2@2 ~@3 [a2,e3]@5 ~ [a2,e3]@2 ~ [a2,e3]@2 ~, ~@7 e2 ~@8", // G5 E5 A5
L: "[a2,e3]@2 ~@2 [d3,a3]@3 ~ [d3,a3]@2 ~@3 [a2,e3]@5 ~ [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3]@4", // A5 D5 A5
M: "[~@2 [a2,e3]@5 ~@2 a2@4 ~@2 [a2,e3]@3 ~@2 [g#2,d#3]@2 ~@2 [g#2,d#3]@5 ~@2 g2@4 ~ [g2,d3]@2 ~@2 d3@2 [g2,d3]@2 ~@2 e3@5 [a2,e3]@5 ~@2 [a2,e3]@5 ~, ~@8 e3@5 ~@17 d3@4 ~@5 g2@2 ~@4 a2@5 ~@14]/2", // A5 G#5 G5 A5
N: "[~ [a2,e3]@2 ~@4 [g#2,d#3]@2 ~ [g#2,d#3]@2 ~@3 d3 [g2,d3]@4 ~ [g2,d3]@2 ~ [g2,d3]@2 ~@5 [c3,g3]@6 ~@3 [c3,g3]@2 ~@2 [c3,g3]@5 ~ [c3,g3]@2 ~ [c3,g3]@2 ~@2 [g#2,d#3]@3 ~@2 [g#2,d#3]@2, ~@7 g2 ~@24]/2", // A5 G#5 G5 C5 G#5
O: "[~@2 [c#3,g#3]@4 ~@2 [c#3,g#3]@2 ~ [c#3,g#3] ~ [c#3,g#3]@2 ~@2 [c3,g3]@6 ~@3 [c3,g3]@2 ~ [c3,g3]@5 ~ [c3,g3]@2 ~ [c3,g3]@2 ~@3 [g#2,d#3]@5 [g#2,d#3]@2 ~@2 [c#3,g#3]@4 ~@2 [c#3,g#3]@2 ~ [c#3,g#3] ~@2 g#3@2 ~ [c3,g3]@6 ~@3 [c3,g3]@2 ~ [c3,g3]@4 ~@3 [c3,g3]@2 ~ [c3,g3]@2 ~@2 [g#2,d#3]@3, ~@63 c#3@2 ~@31]/3", // C#5 C5 G#5 C#5 C5 G#5
P: "~@2 [g#2,d#3] ~@3 [c#3,g#3]@4 ~@2 [c#3,g#3]@2 ~ [c#3,g#3]@2 [c#3,g#3]@2 ~@2 g3@5 ~@4 [c3,g3]@2, ~@10 c3@3 ~@3", // G#5 C#5 C5
Q: "~@5 [c3,g3] ~@2 [c3,g3]@2 ~ [c3,g3]@2 ~@2 a#2@3 ~@2 [g#2,d#3] ~@3 [c#3,g#3]@4 ~ [c#3,g#3]@2 ~", // C5 G#5 C#5
R: "c#3 g#3 c#3 g#3 ~@2 [c3,g3]@6 ~@3 [c3,g3]@2 ~ [c3,g3]@4 ~@2 [c3,g3]@2 ~@2 g3 ~@3, ~@27 c3@2 ~@3", // C5
S: "[g#2,d#3]@4 ~@2 d#3@2 ~@2 [c#3,g#3]@4 ~ g#3@2 ~ c#3@4 ~@3 [e2,b2]@3 ~ [e2,b2]@2 ~, ~@5 g#2@2 ~@7 c#3@2 ~ g#3@4 ~@11", // G#5 C#5 E5
T: "~@2 [a2,e3]@5 ~ [a2,e3]@2 ~ [a2,e3]@2 a2 e3 ~@3 [d3,a3]@3 ~ [d3,a3]@2 ~@4 g2@4, ~@27 d3@4 ~", // A5 D5
U: "[~ [g2,d3] ~@2 [g2,d3]@2 [g2,d3] ~@3 [e2,b2]@3 ~ [e2,b2]@2 ~@4 e3@4 ~ [a2,e3]@2 ~ [a2,e3] ~@2 [a2,e3]@3 ~ [d3,a3]@3 ~@2 [d3,a3]@2 ~@2 [g2,d3]@4 ~@2 d3@2 g2 d3 ~ [g2,d3] ~@3 b2 ~@3 [e2,b2]@3 ~@2 [a2,e3]@4 ~@2 [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3] ~@3 a3@3 ~ [d3,a3]@2 ~@3 [g2,d3]@3, ~@19 a2@4 ~@26 g2@2 ~@7 e2@2 ~@23 d3@3 ~@10]/3", // G5 E5 A5 D5 G5 E5 A5 D5 …
V: "~@3 [g2,d3]@2 ~ [g2,d3]@2 ~ [g2,d3] ~@2 [e2,b2]@3 ~@2 b2@2 ~@3 [a2,e3]@5 ~ [a2,e3]@2 ~@2, ~@8 e2 ~@7", // G5 E5 A5
W: "[a2,e3]@2 a2 e3 ~@2 [d3,a3]@3 ~@2 [d3,a3]@2 ~@4 f3@2 ~@3 [a2,e3]@2 ~ [a2,e3]@2 ~@5, ~@16 [a2,b2,e3]@3 ~@13", // A5 D5 A5 Asus2
X: "[e2,b2]@3 ~ [e2,b2]@2 ~@4 [a2,e3]@4 ~ e3@2 ~ [a2,e3]@2 ~ e3@2 ~@2 [d3,a3]@3 ~ [d3,a3]@2 ~, ~@7 a2 ~@2 a2 ~@5", // E5 A5 D5
Y: "~@17 [a2,e3]@2 ~@4 [a2,e3]@4 ~@3 [a2,e3]@2", // A5
Z: "~@5 [a2,e3]@3 ~@2 [g#2,d#3]@2 ~@2 g#2@2 g#2@2 ~@2 [g2,d3]@5 ~ [g2,d3] ~@2 [g2,d3]@2 ~, ~@7 d#3@2 ~@7", // A5 G#5 G5
AA: "~@4 g3@5 ~@3 [c3,g3]@2 ~ [c3,g3]@5 ~ [c3,g3]@2 ~ [c3,g3]@2 ~@3 g#2@3, ~@3 c3@6 ~@19 d#3@3 ~", // C5
AB: "[~ [g#2,d#3]@2 ~@2 [c#3,g#3]@5 ~ [c#3,g#3]@2 ~ [c#3,g#3] ~@2 g#3 ~@2 [c3,g3]@6 ~@2 [c3,g3]@2 ~@2 g3@5 ~ [c3,g3]@2 ~ [c3,g3] ~@3 [c3,g3]@2 ~@2 [g#2,d#3]@2 ~@5 [c#3,g#3]@3 ~@2 [c#3,g#3]@2 ~ g#3@2 ~@3 [c3,g3]@6 ~@4 [c3,g3]@2 ~ c3@3 ~@2 [c3,g3]@2 ~ [c3,g3]@2 ~@2 [g#2,d#3]@4 ~@2 [g#2,d#3]@2 ~@2 [c#3,g#3]@4 ~ [c#3,g#3]@2 ~ [c#3,g#3]@2 ~ [c#3,g#3]@2 ~ [c3,g3]@6 ~@4, ~@16 c#3@2 ~@13 c3@5 ~@27 c#3@2 ~@16 g3@4 ~@43]/4", // G#5 C#5 C5 G#5 C#5 C5 G#5 C#5 …
AC: "[[c3,g3]@2 ~ [c3,g3]@5 ~ [c3,g3]@2 ~ [c3,g3]@2 ~@3 [g#2,d#3]@3 ~@2 [g#2,d#3]@2 ~@2 [c#3,g#3]@3 ~@3 g#3@2 ~ g#3 ~ [c#3,g#3]@2 ~@2 c3@5 ~@4 [c3,g3]@2 ~ [c3,g3]@5 ~ [c3,g3]@2 ~ [c3,g3]@2, ~@31 c#3@2 ~ c#3@2 ~@4 g3@5 ~@19]/2", // C5 G#5 C#5 C5
AD: "~@2 [g#2,d#3]@4 ~ [g#2,d#3]@2 ~@3 g#3@5 [c#3,g#3]@2 ~@4 c#3@2 ~@2 [c3,g3]@5, ~@11 c#3@5 ~@4 c#3@2 ~@10, ~@21 g#3@5 ~@6", // G#5 C#5 C5
AE: "~@4 [c3,g3]@2 ~ [c3,g3]@4 ~@2 [c3,g3]@2 ~ [c3,g3]@2 ~@2 [g#2,d#3]@4 ~ [g#2,d#3]@2 ~@2 [c#3,a#3]@3", // C5 G#5 F#
AF: "~@2 [c#3,g#3]@2 ~ [c#3,g#3]@2 ~ [c#3,g#3]@2 ~ [c3,g3]@6 ~@3 [c3,g3]@2 ~ [c3,g3]@5 ~@2 [c3,g3]@2", // C#5 C5
AG: "~ [c3,g3] ~@3 [g#2,d#3]@4 ~ [g#2,d#3]@2 ~@3 g#3@5 ~ [c#3,g#3]@2 ~ [c#3,g#3]@2 c#3 g#3 ~@2 [e2,b2]@2, ~@14 c#3@5 ~@13", // C5 G#5 C#5 E5
AH: "~@2 [e2,b2]@3 ~@3 [a2,e3]@4 ~@2 [a2,e3]@2 ~ [a2,e3]@2 [a2,e3]@2 ~@3 a3@3 [d3,a3]@2 ~@3, ~@23 d3@3 ~@6", // E5 A5 D5
AI: "~ [g2,d3]@3 ~@2 [g2,d3]@2 ~ [g2,d3]@2 ~ [g2,d3]@2 ~@2 [e2,b2]@3 ~ [e2,b2]@2 ~@3 [a2,e3]@4 ~ [a2,e3]@2", // G5 E5 A5
AJ: "~@2 e3@2 [a2,e3]@2 ~@2 [d3,a3]@3 ~ [d3,a3]@2 ~@3 [g2,d3]@4 ~@2 [g2,d3]@2 ~ [g2,d3]@2 ~ [g2,d3]@2 ~, ~ a2@2 ~@29", // A5 D5 G5
AK: "~ [e2,b2]@2 ~@2 [e2,b2]@2 ~@4 e3@4 ~ [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3] ~@2 [d3,a3]@3 ~@2 a3@2, ~@10 a2@4 ~@15 d3@2 ~", // E5 A5 D5
AL: "~@3 [g2,d3]@4 ~ [g2,d3]@2 ~ [g2,d3]@2 ~ [g2,d3]@2 ~@2 e2@2 ~@2 [e2,b2]@2 ~@3 [a2,e3]@4 ~, ~@17 b2@3 ~@12", // G5 E5 A5
AM: "[~ [a2,e3] ~ [a2,e3]@2 ~ [a2,e3] ~@3 [d3,a3]@3 ~ [d3,a3]@2 ~@3 [g2,d3]@5 ~ [g2,d3]@2 ~ [g2,d3]@2 ~ g2@3 [e2,b2]@3 ~@2 b2@2 ~@3 e3@4 ~ [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3]@2 ~@2 a3@2 ~@2 [d3,a3]@2 ~@3 [g2,d3]@3 ~@2 [g2,d3]@2 ~@2 [g2,d3]@2 ~ d3 ~@2 [e2,b2]@3 ~@2 b2@2 ~@3 e3@3, ~@31 d3 ~@6 e2@2 ~@3 a2@4 ~@11 d3@2 ~@19 g2@2 ~@6 e2@2 ~@3 a2@3 ~]/3", // A5 D5 G5 E5 A5 D5 G5 E5
AN: "~@5 [a2,e3]!2 ~ [a2,e3]@2 ~@2 [g2,d3]@4 ~@2 g2 d3 ~@5 d3 ~@6", // A5 G5
AO: "~@3 [e2,b2]@3 ~@2 b2@2 ~@3 [a2,e3]@3 ~@2 [a2,e3]@2 ~ [a2,e3]@2 ~ [a2,e3]@2 ~@2 [d3,a3]@2 ~@2, ~@7 e2@2 ~@23", // E5 A5 D5
AP: "[~ [d3,a3] ~@3 [g2,d3]@4 ~@2 [g2,d3]@2 ~ d3@3 g2 ~@2 [e2,b2]@3 ~@2 [e2,b2]@2 ~@4 [a2,e3]@3 ~@2 e3@2 ~ e3@2 [a2,e3]@2 ~@2 [d3,a3]@3 ~@2 a3@2 ~@3 [g2,d3]@4 ~@2 d3@2 ~, ~@14 g2@2 ~@19 a2@2 ~ a2@2 ~@9 d3@2 ~@9 g2@2 ~@2]/2", // D5 G5 E5 A5 D5 G5
AQ: "[g2,d3]@2 [g2,d3]@2 ~@2 [a2,e3]@5 ~ [a2,e3]@5 ~@2 e3@4 ~@2 e3@2 ~@3 [g#2,d#3]@2, ~@18 a2@4 ~@2 a2@3 ~@5", // G5 A5 G#5
AR: "~ [g#2,d#3]@4 ~@2 [g2,d3]@5 ~ [g2,d3]@2 ~ g2@2 g2@2 ~@2 [a2,e3]@5 ~ [a2,e3]@4, ~@4 d3 ~@3", // G#5 G5 A5
AS: "~@2 [a2,e3]@3 ~@3 [a2,e3]@4 ~@2 [g#2,d#3]@2 ~@2 d#3@2 ~ d#3 ~@2 [g2,d3]@4 ~@2 [g2,d3]@2, ~@17 g#2@2 ~ g#2@2 ~@10", // A5 G#5 G5
AT: "[~ [g2,d3]@2 [g2,d3]@2 ~@2 [a2,e3]@5 ~ [a2,e3]@4 ~@2 [a2,e3]@4 ~@2 [a2,e3]@3 ~@3 [g#2,d#3]@2 ~ g#2@2 g#2@2 ~@2 [g2,d3]@4 ~@2 [g2,d3]@2 ~ [g2,d3] ~@2 [g2,d3]@2 ~@2 [a2,e3]@5 ~@2 a2@3 ~@2 [a2,e3]@4 ~@2 [a2,e3]@3 ~@3 [g#2,d#3]@2 ~ [g#2,d#3]@2 ~ d#3@2 ~@2 g2@5 ~, ~@34 d#3@5 ~@23 e3@4 ~@19 g#2@2 ~@2 d3@5 ~@2]/3", // G5 A5 G#5 G5 A5 G#5
AU: "[[g2,d3]@2 ~ [g2,d3]@5 ~@2 [a2,e3]@99 ~@2 d3@22 c3@5 ~@3 b2@15 ~ [e2,f2,g2] e2 ~, ~@111 g2@45 ~@4, ~@138 f2@19 ~@3]/5", // G5 A5 Em
})).s("gm_distortion_guitar").gain(0.26)
// other · drawbar organ · "hammond organ"
const drawbar_organ = note("<~@14 A@2 ~@7 B ~@7 C ~@8 D ~@10 E ~@11 F ~@11>".pickRestart({
A: "[~@11 d3 ~@3 d3@2 ~@15]/2", B: "~@16 g3@3 ~@13", C: "~@14 g3 ~", D: "~@4 d3@3 ~@25", E: "~@6 d3 ~@9",
F: "~@9 d3@2 ~@5",
})).s("gm_drawbar_organ").gain(0.26)
// other · trumpet · "trump"
const trumpet = note("<~@9 A@3 B C@5 D E F@2 G@3 H I J K L@2 M N O@3 P Q@2 R@2 S ~@33>".pickRestart({
A: "[~@30 c3@7 ~@18 c3@4 c#3@3 c3@5 ~ a#2@5 ~@2 g#2@2 ~ g#2@2 ~@2 g2@4 ~@10]/3",
B: "~@9 c3@3 ~ c#3@2 ~ c3@5 ~ a#2@5 ~@2 g#2@2 ~",
C: "[~ g#2@2 ~@2 g2@4 ~@17 c3@4 ~ c#3@3 c3@4 ~@2 a#2@2 ~@2 g#2@2 ~@4 g2@4 ~@3 f2@4 ~@2 a#2@5 ~ g#2@4 ~@2 g2@7 ~@3 d#2 ~@3 g#2@4 ~@2 g#2@5 ~ f#2@4 ~@2 f2@2 ~ f2@3 ~ a#2@4 ~@2 g#2@4 ~ g2@6 ~@3 d#2@2 ~ g#2@4 ~ g#2@4 ~@2 g2@3 ~@3 f2 ~ f2@2 ~@2]/5",
D: "~ a#2@3 ~@3 g#2@5 ~ f#2@6 ~@5 d#2@2 ~ g#2@4 ~", E: "~ g#2@5 ~@8 d#2 ~@4 a#2@3 ~@3 g#2@5 ~@2",
F: "[g2@6 ~@3 d#2 ~@3 g#2@4 ~@2 g#2@5 ~@3 f2@29 ~@8]/2",
G: "[~@4 d#2@2 ~ d#2@6 ~ f2@4 ~ f2@19 ~@25 c3@6 ~@19 c3@3 ~ c#3@2 ~@2]/3",
H: "c3@4 ~@2 a#2@4 ~ g#2@2 ~ g#2@2 ~@2 g2@2 ~@12", I: "~@10 c3@3 ~ c#3@2 c3@5 ~@2 a#2@5 ~ g#2@2 ~",
J: "g#2@2 ~ g2@3 ~@22 c3@3 ~", K: "c#3@2 ~ c3@4 ~ a#2@4 ~@2 g#2@2 ~ g#2@2 ~ g2@3 ~@9",
L: "[~@14 c3@3 c#3@2 ~ c3@4 ~@3 a#2@3 ~ g#2@2 ~@2 g#2@2 ~ g2@3 ~@21 c3@2]/2",
M: "~@2 c#3@2 ~ c3@2 ~ c3@2 ~ a#2@2 ~ g#2@4 ~@3 g2@4 ~ f2@5 ~", N: "~ a#2@4 ~@2 g#2@4 ~@3 g2@6 ~@3 d#2@2 ~ g#2@4 ~@2",
O: "[~ g#2@4 ~ g2@3 ~@4 f2@2 f2@3 ~ a#2@4 ~@2 g#2@5 ~ g2@5 ~@4 d#2@2 ~@2 g#2@3 ~@3 g#2@4 ~ f#2@3 ~@3 f2 ~ f2@2 ~@3 a#2@3 ~@2 g#2@5 ~@2 g2@6 ~@3 d#2 ~@3 g#2@3]/3",
P: "~@2 g#2@5 ~@2 f2@4 ~@2 f2 ~ f2@2 ~@3 a#2@4 ~@2 g#2@4",
Q: "[~@2 g2@4 ~@5 d#2@2 ~@2 g#2@5 ~@3 g#2@6 ~@2 f2@20 ~@7 a#2@2 ~@4]/2",
R: "[~@4 f2@11 ~@2 d#2@2 ~ f2@3 ~@2 f2@31 ~ d#2@3 ~ d#2@3]/2", S: "~ f2@4 ~@3 f2@7 ~@17",
})).s("gm_trumpet").gain(0.51)
// drums · snare
const snare = s("sd").struct(`<
~@3 A B C D E F G H I J K L M N O P Q R S ~ T H P J U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR
AS AT AU AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL ~@4
>`.pickRestart({
A: "~@13 x ~@2", B: "~@3 x ~@7 x ~@4", C: "~ x ~ x ~ x ~@7 x ~@11 x ~@6", D: "~@7 x ~@11 x ~ x ~ x ~@7 x",
E: "~@11 x ~@13 x ~@6", F: "~@2 x!3 ~@4 x ~@5 x", G: "~@11 x ~@10 x ~ x ~ x ~@5", H: "~@5 x ~@12 x ~@12 x",
I: "~@11 x ~ x ~ x ~@8 x ~@7", J: "~@2 x ~@5 x ~@5 x!2", K: "~ x ~@8 x ~@11 x ~@9",
L: "~@3 x ~@2 x ~@3 x!2 ~ x ~@3 x ~@10 x ~@3", M: "~@9 x!2 ~@9 x ~@11", N: "~@3 x ~@10 x ~@12 x ~ x!2 ~",
O: "~@6 x ~@4 x ~@8 x!2 ~@8 x ~", P: "~@11 x!2 ~ x ~@8 x ~@8", Q: "~@4 x ~ x ~ x ~@9 x ~@10 x ~ x",
R: "~@7 x ~ x ~@4 x ~@14 x ~@2", S: "~@2 x ~@6 x ~@5 x ~@9 x ~@4 x ~", T: "~@12 x ~@11 x!2 ~ x ~@4",
U: "x ~@8 x ~@12 x ~@9", V: "~@3 x ~@10 x ~ x ~ x ~@8 x ~@4", W: "~@9 x ~@12 x ~@9",
X: "~@2 x ~ x!2 ~@7 x ~@12 x ~@5", Y: "~@5 x!2 ~@2 x ~ x ~@2 x ~@3 x ~ x ~@9 x ~", Z: "~@10 x ~@2 x!2 ~@7 x ~@9",
AA: "~@3 x ~ x!2 ~@9 x ~@12 x!2 ~", AB: "~ x ~@7 x ~@12 x!2 ~ x ~@6", AC: "~ x ~@11 x!2 ~ x ~@8 x ~@6",
AD: "~@6 x ~ x ~ x ~@8 x ~@12", AE: "x ~ x ~@2 x ~@9 x ~@9 x ~ x ~ x ~@2", AF: "~@5 x ~@13 x ~@4 x ~@6 x",
AG: "~@5 x ~@2", AH: "~@12 x ~@6 x ~@8 x ~ x!2", AI: "~@5 x ~@5 x ~@4", AJ: "~@2 x ~@11 x!2 ~ x ~@8 x ~@5",
AK: "~@6 x ~@12 x ~@10 x ~", AL: "x!2 ~@9 x ~@12 x ~@7", AM: "~@5 x ~@10 x ~ x!2 ~@9 x ~@2", AN: "~@9 x ~@13 x ~@8",
AO: "~@2 x ~ x!2 ~@9 x ~@11 x ~@4", AP: "~@4 x ~@5 x!3 ~@3", AQ: "~ x ~@5 x ~@5 x ~@2",
AR: "~@5 x ~ x ~@2 x ~@7 x ~@11 x ~", AS: "~@4 x ~@2 x ~@3 x ~@2 x ~@2 x ~@5 x ~ x ~ x ~@3 x",
AT: "~@8 x ~@9 x!2 ~ x ~@6 x ~@3", AU: "~@2 x ~@7 x ~ x!2 ~@7 x ~@4 x ~@5",
AV: "~@3 x ~ x ~ x ~@5 x ~@4 x ~@8 x ~ x ~ x", AW: "~@6 x ~@4 x ~@6 x ~ x!2 ~@5 x ~@3 x",
AX: "~@11 x ~ x ~ x ~@6 x ~ x ~@7", AY: "~ x ~@3 x ~ x ~@7 x ~ x ~@8 x ~@2 x ~ x",
AZ: "~@2 x ~@4 x!2 ~ x ~@6 x ~@3 x!2 ~@3 x ~@4 x", BA: "~@2 x ~@7 x ~@2 x ~ x ~@3 x ~@4 x!2 ~@6",
BB: "~@6 x!2 ~@3 x ~@5 x ~ x ~@8 x ~@2 x", BC: "~ x ~@4 x ~@4 x ~ x ~@8 x ~@2 x!2 ~@5",
BD: "~ x ~ x ~@11 x ~ x ~@8 x!2 ~@4", BE: "~@5 x ~@7 x ~@6 x ~@5 x ~@2 x ~ x", BF: "~@6 x ~@5 x ~@6 x ~@12",
BG: "x ~@7 x ~@7 x ~@2 x ~@12", BH: "~@14 x ~@2 x ~@4 x ~@7 x ~", BI: "~ x ~@14",
BJ: "~ x ~@3 x ~@3 x ~@6 x ~ x ~@13", BK: "~@19 x ~@5 x ~@5 x", BL: "~ x ~@6",
})).gain(0.26)
// drums · low tom
const low_tom = s("lt").struct("<~@66 [~@11 x ~@2 x ~] [~@3 x ~@28] [x ~@2 x ~@28] [~@17 x ~@5 x ~@8] ~@5>").gain(0.26)
// drums · mid tom
const mid_tom = s("mt").struct(`<
~@3 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT AU
AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP ~@4
>`.pickRestart({
A: "~@20 x ~@2 x ~@5 x ~@2", B: "~ x ~ x ~@5 x ~@3 x ~@2 x ~@8 x ~@4 x ~", C: "~@8 x ~@3 x ~@3 x ~@2 x ~@3 x ~@6 x ~",
D: "~@2 x ~@8 x ~@2 x ~@2 x ~@7 x ~@2 x ~@3", E: "~@2 x ~@3 x ~@2 x ~@4 x ~@2 x ~@3 x ~@5 x ~@3 x",
F: "~@2 x ~@8 x ~@3 x ~@5 x ~@2 x ~@2 x ~@4", G: "~ x ~@2 x ~@3 x ~@5 x ~@5 x ~@3 x ~@7",
H: "x ~@6 x ~@3 x ~@2 x ~@5 x ~@3 x ~@2 x ~@4", I: "~ x ~@5 x ~@10 x ~@2 x ~@5 x ~@3 x",
J: "~@2 x ~@4 x ~@2 x ~@2 x ~@5 x ~@5 x ~@6", K: "~@4 x ~@2 x ~@5 x ~@2 x ~@3 x ~@4 x ~@3 x ~@2",
L: "x ~@3 x ~@4 x ~@2 x ~@3 x ~@9 x ~@5", M: "~@6 x ~@2 x ~ x ~@8 x ~@9 x ~", N: "~ x ~@2 x ~@8 x ~@11 x ~@2 x ~@3",
O: "~@7 x ~@9 x ~@2 x ~@3 x ~@7", P: "~ x ~@6 x ~@7 x ~@8 x ~@6", Q: "~@2 x ~@2 x ~@10 x ~@8 x ~@3 x ~@2",
R: "~@8 x ~@4 x ~@5 x ~@2 x ~@6 x ~@2", S: "~@2 x ~@6 x ~@5 x ~@8 x ~ x ~@5", T: "~ x ~@6", U: "~@11 x ~@9 x ~@8 x ~",
// … 42 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.