0:00/0:00
// Cherub Rock — The Smashing Pumpkins
// 335 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: ch 5 "Piano" named as a piano, played on piano (its distortion guitar patch is not one)
// note: Full arrangement: all 431 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(335/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 · "Bass"
const bass = note("<~@22 A B@2 C A B@2 C ~@401>".pickRestart({
A: "e1 e2!2 e1", B: "[e2!2 e1 e2@2 e2!2 e1]/2", C: "e2!3 e1",
})).s("gm_electric_bass_pick").gain(0.43)
// bass · fretless bass · "Bass"
const bass_2 = note("<~@30 A B@2 C A B@2 C ~@393>".pickRestart({
A: "e2 e3!2 e2", B: "[e3!2 e2 e3@2 e3!2 e2]/2", C: "e3!3 e2",
})).s("gm_fretless_bass").gain(0.8)
// bass · lead 1 square · "Bass"
const bass_3 = note(`<
~@38 A B@2 C D B@2 C D B@2 C D B@2 C E F@2 G E F@2 G H I@2 J E F@2 G E F@2 G E K@2 G E K@2 L E K@2 G E K@2 L H I@2 J E
K@2 G E K@2 L H I@2 J E K@2 G E K@2 L H I@2 M N O@2 P H I@2 Q R S@2 P H I@2 Q R S@2 P H I@2 Q N@4 E F@2 G E F@2 G E
K@2 G E K@2 L E K@2 G E K@2 G H I@2 J E K@2 G E K@2 G H I@2 J E K@2 G E K@2 G H I@2 M N O@2 P H I@2 Q R S@2 P H I@2 Q
R S@2 P H I@2 Q N@4 T U@2 V W X@2 P T U@2 V W X@2 P T U@2 V W X@2 P T U@2 V W X@2 P D B@2 C D B@2 C D B@2 C D B@2 C H
Y@2 Q T K@2 G H Y@2 Q T K@2 G H Y@2 Q T K@2 G H Y@2 Q R Z@2 P H I@2 Q R S@2 P H I@2 Q R S@2 P H I@2 Q R S@2 P H I@2 Q
R S@2 P H I@2 Q R S@2 P H I@2 Q R S@2 P H I@2 Q N@4 T U@2 V W X@2 P T U@2 V W X@2 P T U@2 V W X@2 P T U@2 V W X@2 P E
F@2 G E F@2 G E K@2 G E K@2 L E F@2 G E F@2 G E F@2 G E F@2 AA@6
>`.pickRestart({
A: "~ e3!2 e2", B: "[e3!2 e2 e3@2 e3!2 e2]/2", C: "e3!3 e2", D: "e2 e3!2 e2", E: "e2@2 e2!2",
F: "[e3@2 e3 e2@2 e2@2 e2]/2", G: "e3!2", H: "d3@3 d3", I: "[d3@2 d3 a2@2 a2@2 a2]/2", J: "a2@2 a2!2",
K: "[e3@2 e3 e2@2 e2!3]/2", L: "f#3", M: "a2 b2", N: "c3@2 c3!2", O: "[c3@2 g2 g2@2 g2!3]/2", P: "g2!2", Q: "a2!2",
R: "c3@3 c3", S: "[c3@2 c3 g2@2 g2@2 g2]/2", T: "e2@3 e2", U: "[e2@2 e2 e2@2 e2!3]/2", V: "d3!2", W: "a2@3 a2",
X: "[a2@2 b2 c3@2 c3!2 b2]/2", Y: "[d3@2 d3 a2@2 a2 a2@2]/2", Z: "[c3@2 c3 g2@2 g2!3]/2",
AA: "[d2@21 e2@33 ~ e2@33 ~@8]/6",
})).s("gm_lead_1_square").gain(0.8)
// other · piano
const piano = note(`<
~@38 A B@2 C D B@2 C E F@2 G H I@2 J K L@2 K@2 L@2 M N@4 K L@2 K@2 L@2 O P L@2 O Q L@2 O P L@2 O Q L@2 O N@4 P L@2 O Q
L@2 O N@4 P L@2 O Q L@2 O N@4 R S@2 T N@4 U@4 N@4 U@4 N@4 V W@3 K L@2 K@2 L@2 X P L@2 O Q L@2 O P L@2 O Q L@2 Y N@4 P
L@2 O Q L@2 Y N@4 P L@2 O Q L@2 Y N@4 R S@2 T N@4 U@4 N@4 U@4 N@4 V W@3 Z AA@2 AB AC AD@2 AE Z AA@2 AB AC AD@2 AE Z
AA@2 AB AC AD@2 AE Z AA@2 AB AC AD@2 AE D B@2 C AF AG@2 AH AI AJ@2 AK AL AM@2 AN AO AP@2 AQ AR AS@2 AT AO AP@2 AQ AR
AS@2 AT AO AP@2 AQ AR AS@2 AT AO AP@2 AQ V AU@2 AV N@4 AW@4 N@4 AX@4 AY@4 AZ@8 BA@4 BB@4 BC@4 BD@4 BE@4 BF@4 BG@4 Z
AA@2 AB AC AD@2 AE Z AA@2 AB AC AD@2 AE Z AA@2 AB AC AD@2 AE Z AA@2 AB AC AD@2 AE K L@2 K@2 L@2 O P L@2 O Q L@2 O BH@4
BI@4 BJ@4 BK@3 BL@6
>`.pickRestart({
A: "~ [e3,b3,e4]!2 [e2,b2,e3]", B: "[[e3,b3,e4]!2 [e2,b2,e3] [e3,b3,e4]@2 [e3,b3,e4]!2 [e2,b2,e3]]/2",
C: "[e3,b3,e4]!3 [e2,b2,e3]", D: "[e2,b2,e3] [e3,b3,e4]!2 [e2,b2,e3]", E: "[e3,e4] [g#3,g#4]!2 [e3,e4]",
F: "[[g#3,g#4]!2 [e3,e4] [g#3,g#4]@2 [g#3,g#4]!2 [e3,e4]]/2", G: "[g#3,g#4]!3 [e3,e4]",
H: "[e3,e4] [b3,b4]!2 [e3,e4]", I: "[[b3,b4]!2 [e3,e4] [b3,b4]@2 [b3,b4]!2 [e3,e4]]/2", J: "~@3 e3",
K: "[f#3,f#4] [e3,e4] [e2,e3]!2", L: "[[g#3,g#4] [a3,a4] [e2,e3] [g#3,g#4]@2 [e2,e3]!3]/2",
M: "[f#3,f#4] [e3,e4] ~@2", N: "[[d2,d3,f#3,f#4]@7 [a1,a2,e3,e4]@7 ~@2]/4", O: "[f#3,f#4]",
P: "[g#2,g#3,g#4]@2 [e2,e3]!2", Q: "[g#3,g#4]@2 [e2,e3]!2", R: "[c2,c3,c4]", S: "[[c2,c3,c4]@3 [g1,g2,g3]@5]/2",
T: "[g1,g2,g3]@3 ~", U: "[[c2,c3,e3,e4]@7 [g1,g2,d3,d4]@7 ~@2]/4", V: "[c2,c3,c4]@2 [c2,c3,c4]!2",
W: "[[c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2, ~@3 g1@7 ~@2]/3", // C
X: "[f#2,f#3,f#4]", Y: "[e3,e4]", Z: "[e1,e2,e3,e4]@3 [e1,e2,e3,e4]",
AA: "[[e1,e2,e3,e4]@2 [e1,e2,e3,e4] [e1,e2,e3,e4]@2 [e1,e2,e3,e4]!3]/2", AB: "[d2,d3,d4,d5]!2",
AC: "[a1,a2,a3,a4]@3 [a1,a2,a3,a4]", AD: "[[a1,a2,a3,a4]@2 [a1,a2,a3,a4] [c2,c3,c4,c5]@2 [c2,c3,c4,c5]!3]/2",
AE: "[g1,g2,g3,g4]!2", AF: "[e2,b2,e3] [e3,g#3,g#4]!2 [e2,b2,e3]",
AG: "[[e3,g#3,g#4]!2 [e2,b2,e3] [e3,g#3,g#4]@2 [e3,g#3,g#4]!2 [e2,b2,e3]]/2", AH: "[e3,g#3,g#4]!3 [e2,b2,e3]",
AI: "[e2,b2,e3] [e3,b3,b4]!2 [e2,b2,e3]", AJ: "[[e3,b3,b4]!2 [e2,b2,e3] [e3,b3,b4]@2 [e3,b3,b4]!2 [e2,b2,e3]]/2",
AK: "[e3,b3,b4]!3 [e2,b2,e3]", AL: "[e2,b2,e3] [e3,d4,d5]!2 [e2,b2,e3]",
AM: "[[e3,d4,d5]!2 [e2,b2,e3] [e3,e4,e5]@2 [e3,e4,e5]!2 [e2,b2,e3]]/2", AN: "[e3,e4,e5]!3 [e2,b2,e3]",
AO: "[d2,d3,d4]@2 [d2,d3]!2, ~ d4", AP: "[[d2,d3,d4]!3 [a1,a2,a3]@2 [a1,a2,a3]!3]/2", AQ: "[a1,a2,a3]",
AR: "[e1,e2,e3,e4]@2 [e1,e2,e3,e4]!2", AS: "[[e1,e2,e3,e4]!3 [e1,e2,e3,e4]@2 [e1,e2,e3,e4]!3]/2", AT: "[e1,e2,e3,e4]",
AU: "[[c2,c3,c4]!3 [g1,g2,g3]@2 [g1,g2,g3]!3]/2", AV: "[g1,g2,g3]",
AW: "[e5@4 e5@2 d5 [g1,g2,d3,d4,d5]@7 ~@2, [c2,c3,e3,e4]@7 ~@9]/4", // G5 C
AX: "[[g4,g5]@3 [f#4,f#5]@3 d4 [g1,g2,d3,d4]@7 ~@2, [c2,c3,e3,e4]@7 ~@9, ~@6 d5@7 ~@3]/4", // G F# G5 C
AY: "[[d2,d3,f#3,f#4]@7 [a1,a2,e3,e4]@7 ~@2, a3 ~]/4", // D A5
AZ: "[e5@4 e5@2 d5 [d4,d5]@5 ~@4 [a3,a4]@4 ~@4 [a3,a4]@4 [a3,a4]@4, [c2,c3,e3,e4]@7 [g1,g2,d3]@7 ~@2 [d2,d3,f#3,f#4]@7 [a1,a2,e3,e4]@7 ~@2, ~@12 [d4,d5]@9 ~@11, ~@5 [a3,a4] ~@2]/8", // D A C G5 D A5 D A
BA: "[e5@4 e5@2 d5 [d4,d5]@5 [d4,d5]@4, [c2,c3,e3,e4]@7 [g1,g2,d3]@7 ~@2]/4", // D C G5
BB: "[~@2 [a3,a4]@2 f#5 [e4,e5] [d4,d5] [a1,a2,e3,a3,e4,a4]@7 ~@2, [d2,d3,f#3]@7 ~@9, [d4,d5]@5 ~@11, f#4@4 f#4@3 ~@9]/4", // A E D A5 D
BC: "[[g3,g4,g5]@4 [f#3,f#4,f#5]@3 [g1,g2,d3,d4,d5]@7 ~@2, [c2,c3,e3,e4]@7 ~@9]/4", // G F# G5 C
BD: "[[d4,d5,d6]@2 [a3,a4,a5]@2 [f#5,f#6] [e4,e5,e6] [d4,d5,d6] [a1,a2,e3,a3,e4,a4,a5]@7 ~@2, [d2,d3,f#3]@7 ~@9, f#4@4 f#4@3 ~@9]/4", // D A F# E D A5 D
BE: "[[g3,g4,g5,g6]@4 [f#3,f#4,f#5,f#6]@3 [d5,d6]@5 [b4,b5]@4, [c2,c3,e3,e4]@7 [g1,g2,d3,d4]@7 ~@2]/4", // G F# D B C G5
BF: "[f#4@4 f#4@3 [a4,a5]@5 [g4,g5] [f#4,f#5] [e4,d5]@2, [d2,d3,f#3,b4,b5]@7 [a1,a2,e3,e4]@7 ~@2]/4", // A G F# E7 Bm A5
BG: "[[c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2, [c5,c6], ~@7 g1@7 ~@2]/4", // C
BH: "[g#3,g#4]!8", BI: "[a3,a4]!8", BJ: "[b3,b4]!8", BK: "[d4,d5]!8",
BL: "[[d2,a2,d3,a3,d4,a4,d5]@21 [e2,b2,e3,b3,e4,b4,e5]@33 ~ [e2,b2,e3,b3,e4,b4,e5]@34 ~@7]/6", // D5 E5
})).s("gm_piano").gain(0.8)
// other · electric guitar muted · "Guitar"
const electric_guitar_muted = note("<~@6 A@24 ~@401>".pickRestart({
A: "[~ [e3,e4]!2 ~ [e3,e4]!2 ~ [e3,e4]@2 [e3,e4]!2 ~ [e3,e4]!3 e2, e2@3 e2@3 e2@5 e2@4 ~]/4", // E
})).s("gm_electric_guitar_muted").gain(0.73)
// chords · overdriven guitar · "Guitar"
const overdriven_guitar = note(`<
~@30 A B@2 C D B@2 C E@8 F@4 E@4 G H@2 I G H@2 I J K@2 L G H@2 I G H@2 M N H@2 O P H@2 Q N H@2 O P H@2 Q J K@2 L N H@2
O P H@2 Q J K@2 L N H@2 O P H@2 Q J K@2 R S T@2 U J K@2 V W X@2 Y J K@2 V W X@2 Y J K@2 V S@4 G H@2 I G H@2 Z N H@2 O
P H@2 Q N H@2 O P H@2 AA J K@2 L N H@2 O P H@2 AA J K@2 L N H@2 O P H@2 AA J K@2 R S T@2 U J K@2 V W X@2 Y J K@2 V W
X@2 Y J K@2 V S@4 AB AC@2 AD AE AF@2 AG AB AC@2 AD AE AF@2 AG AB AC@2 AD AE AF@2 AG AB AC@2 AD AE AF@2 AG E@16 AH AI@2
AJ AK AL@2 AM AH AI@2 AJ AK AL@2 AM AH AI@2 AJ AK AL@2 AM AH AI@2 AJ AN AO@2 AP J K@2 V AQ AR@3 J K@2 V AS AT@2 AU
AV@3 V AQ AR@3 AW AX@2 AY AQ AR@3 AZ BA@2 V BB BC@3 BD BE@2 V BF BG@3 BH@3 BI BJ@4 BK@8 BL@24 G H@2 I G H@2 M N H@2 O
P H@2 Q G H@2 I G H@2 M G H@2 I G H@2 BM@6
>`.pickRestart({
A: "e2 [e1,e2,e3,e4] [e1,e2]!2, ~ [e3,e4]", // E
B: "[[e1,e2,e3,e4] [e1,e2]!3 [e1,e2] [e1,e2,e3,e4] [e1,e2]!2, ~ [e3,e4]@2 [e3,e4]@2 ~ [e3,e4]@2]/2", // E
C: "[e1,e2,e3,e4]!2 [e1,e2]!2, ~ [e3,e4]", D: "[e1,e2,e3] [e1,e2,e3,e4] [e1,e2]!2, ~ [e3,e4]",
E: "[e2 [e2,e3]!2 e2 [e2,e3]!2 e2 [e2,e3]@2 [e2,e3]!2 e2 [e2,e3]!3 [e1,e2], e1@2 ~ e1@2 ~ e1@2 ~@3 e1@2 ~@3]/4", // E
F: "[e2 [e2,e3]!2 e2 [e2,e3]!2 e2 [e2,e3]@2 [e2,e3]!2 e2 [e2,e3]!3 [e1,e2], f#1@2 ~ e1@2 ~ e1@2 ~@3 e1@2 ~@3]/4", // E
G: "[e3,f#3,f#4] [e3,e4] [e1,e2,e3]!2, [e1,e2] ~", // Esus2 E
H: "[[g#3,g#4] [a3,a4] [e1,e2,e3] [e1,e2,e3,g#3,g#4]@2 [e1,e2,e3]!3, [e1,e2,e3] ~@3]/2", // G# A E
I: "[e1,e2,e3,f#3,f#4] [e1,e2,e3,e4] [e1,e2,e3]!2", J: "[d2,d3,d4]",
K: "[[d2,d3,d4]@3 [a1,a2,a3]@2 [a1,a2,a3]@2 [a1,a2,a3]]/2", L: "[a1,a2,a3]!4", M: "f#1!4, [f#2,f#3,f#4]",
N: "e3!2 [e1,e2,e3]!2, [e1,e2,g#3,g#4] ~", O: "[e1,e2,e3]!4, [f#3,f#4]", P: "[e1,e2,e3,g#3,g#4]@2 [e1,e2,e3]!2",
Q: "[f#1,f#2,f#3,f#4]", R: "[a1,a2,a3] [b1,b2,b3]", S: "[c2,c3,c4]@2 [c2,c3,c4]!2",
T: "[[c2,c3,c4]@2 [c2,c3,c4] [g1,g2,g3]@2 [g1,g2,g3]!3]/2", U: "[g1,g2,g3]@2 [g1,g2,g3]!2", V: "[a1,a2,a3]!2",
W: "[c2,c3,c4]", X: "[[c2,c3,c4]@3 [g1,g2,g3]@2 [g1,g2,g3]@2 [g1,g2,g3]]/2", Y: "[g1,g2,g3]!2", Z: "e1!4, [f#2,f#3]",
AA: "[e2,e3]@2 [e2,e3]!2, f#1", AB: "e3!2 [e1,e2,e3]!2, [e1,e2] ~",
AC: "[[e1,e2,e3]@2 [e1,e2,e3] [e1,e2,e3]@2 [e1,e2,e3]!3]/2", AD: "[d2,d3,d4]!4", AE: "[a1,a2,a3]@2 [a1,a2,a3]!2",
AF: "[[a1,a2,a3]@2 [a1,a2,a3] [c2,c3,c4]@2 [c2,c3,c4]!3]/2", AG: "[g2,g3]@2 [g2,g3]!2, g1",
AH: "[d2,a2,d3,a3,d4]@3 [d2,a2,d3,a3,d4]", // D5
AI: "[[d2,a2,d3,a3,d4]@2 [d2,a2,d3,a3,d4] [a1,e2,a2,e3,a3]@2 [a1,e2,a2,e3,a3] [a1,e2,a2,e3,a3]@2]/2", // D5 A5
AJ: "[a1,e2,a2,e3,a3]!2", AK: "[e2,b2,e3,b3,e4]@3 [e2,b2,e3,b3,e4]",
AL: "[[e2,b2,e3,b3,e4]@2 [e2,b2,e3,b3,e4] [e2,b2,e3,b3,e4]@2 [e2,b2,e3,b3,e4] [e2,b2,e3,b3,e4]@2]/2", // E5
AM: "[e2,b2,e3,b3,e4]!2", AN: "[c2,g2,c3,g3,c4]@3 [c2,g2,c3,g3,c4]",
AO: "[[c2,g2,c3,g3,c4]@2 [c2,g2,c3,g3,c4] [g1,d2,g2,d3,g3]@2 [g1,d2,g2,d3,g3] [g1,d2,g2,d3,g3]@2]/2", // C5 G5
AP: "[g1,d2,g2,d3,g3]!2", AQ: "[c2,c3,c4,e4]",
AR: "[e4@2 d4 [g1,g2,g3]@2 [g1,g2,g3]@2 [g1,g2,g3] [g1,g2,g3]@2 [g1,g2,g3]@2, [c2,c3,c4]@3 d4@8 ~]/3", // G C
AS: "[c2,c3,c4,g4]", AT: "[[c2,c3,c4,f#4]@3 [g1,g2,g3]@2 [g1,g2,g3]@2 [g1,g2,g3], ~@3 d4@5]/2",
AU: "[g1,g2,g3]!2, b3", AV: "[[d2,d3,d4]@4 [d2,d3,d4]@3 [a1,a2,a3]@2 [a1,a2,a3]@2 [a1,a2,a3], a3@7 ~@5]/3",
AW: "[d2,d3,a3,d4,a4,a5]", // D5
AX: "[[d2,d3,a3,d4]@3 ~@2 [a1,a2,a3]@2 [a1,a2,a3], [a4,a5] [a4,a5], ~@3 [a1,a2,a3]@2 ~@3]/2", // D5 A
AY: "[a1,a2,a3]!2, [a4,a5]", AZ: "d5 [a3,a4], [d2,d3,d4]",
BA: "[[f#4,f#5] [f4,f5] [e4,e5] [a1,a2,a3]@2 [a1,a2,a3]@2 [a1,a2,a3], [d2,d3,d4]@3 a4@5]/2", BB: "[c2,c3,c4,g4,g5]",
BC: "[[c2,c3,c4,f#4,f#5]@3 [g1,g2,g3]@2 [g1,g2,g3]@2 [g1,g2,g3] [g1,g2,g3]@2 [g1,g2,g3]@2, ~@3 [d4,d5]@7 ~@2]/3", // Cdim G D
BD: "[d5,d6] [a3,a4,a5], [d2,d3,d4]", // D A D
BE: "[[f#4,f#5,f#6] [f4,f5,f6] [e4,e5,e6] [a1,a2,a3]@2 [a1,a2,a3]@2 [a1,a2,a3], [d2,d3,d4]@3 [a4,a5]@5]/2", // F# F E A D A
BF: "[c2,c3,c4,g4,g5,g6]", // C5
BG: "[[c2,c3,c4,f#4,f#5,f#6]@3 [g1,g2,g3]@2 [g1,g2,g3]@2 [g1,g2,g3] [g1,g2,g3]@2 [g1,g2,g3]@2, ~@3 d4@7 ~@2, ~@3 [d5,d6]@5 [b4,b5]@4]/3", // Cdim G D B
BH: "[~@2 a3@2 [d2,d3,d4]@3 [a1,a2,a3]@2 [a1,a2,a3]@2 [a1,a2,a3], [b4,b5]@7 [a4,a5]@5, [d2,d3,d4] ~@2]/3", // D A B A D
BI: "[g4,g5] [f#4,f#5] [a1,a2,d4,d5]@2, [a1,a2,a3] ~", // G F# D5 A
BJ: "[[c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2 [c2,c3,c4]@2 [c2,c3,c4]!2, [c5,c6]]/4", // C
BK: "[e3@2 e3@2 [e1,e2,e3]@2 [e1,e2,e3,a3]@2 [e1,e2,e3,a#3]@4 [e1,e2,e3,a#3]@2 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 [c2,c3,c4]@2 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3, [e5,e6]@9 [e5,e6]@9 [e5,e6]@9 [e5,e6]@5, a3@6 ~@40 c4@3 ~@3 b3 ~@3 [g2,g3]@4 [g2,g3]@2 [g2,g3]@2, [e1,e2]@2 ~@5 [e1,e2,e3]@2 [e1,e2,e3]!3 [d2,d3,d4]!4 [a1,a2,a3]@2 [a1,a2,a3]!2 [a1,a2,a3]@2 [a1,a2,a3] [c2,c3]@2 [c2,c3,c4] ~ [c2,c3,c4] g1@4]/8", // E A5 Edim C E G E D …
BL: "[b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3 [c2,c3,c4]@2 b3 a#3 b3 c4 b3 a#3 b3 c4 b3 a#3, [e5,e6]@9 [e5,e6]@9 [e5,e6]@9 [e5,e6]@5, [e1,e2]@2 [e1,e2,e3]!2 [e1,e2,e3]@2 [e1,e2,e3] [e1,e2,e3]@2 [e1,e2,e3]!3 [d2,d3,d4]!4 [a1,a2,a3]@2 [a1,a2,a3]!2 [a1,a2,a3]@2 [a1,a2,a3] [c2,c3]@2 [c2,c3,c4] ~ [c2,c3,c4] g1@4, e3@2 e3@2 ~@42 c4@3 ~@3 b3 ~@3 [g2,g3]@4 [g2,g3]@2 [g2,g3]@2]/8", // C E D A C G
BM: "[[d1,a1,d2,a2,d3,a3,d4]@21 [e1,b1,e2,b2,e3,b3,e4]@33 ~ [e1,b1,e2,b2,e3,b3,e4]@33 ~@8]/6", // D5 E5
})).s("gm_overdriven_guitar").gain(0.39)
// bass · slap bass 2 · "Strings"
const bass_4 = note(`<
~@122 A B@2 C D E@2 F G B@2 C D E@2 F G B@2 C H@4 ~@56 I B@2 C D E@2 F G B@2 C D E@2 F G B@2 C H@4 ~@80 J B@2 C D E@2
F G B@2 C K@3 F G B@2 C D E@2 F G B@2 C D E@2 F G B@2 C D E@2 F G B@2 C D E@2 F L@3 M H@4 ~@63 N@6
>`.pickRestart({
A: "[d2,a2]@3 [d2,a2,d3]", B: "[[d2,a2,d3]@2 [d2,a2,d3] [a1,e2,a2]@2 [a1,e2,a2]@2 [a1,e2,a2]]/2",
C: "[a1,e2,a2]@2 [a1,e2,a2]!2", D: "[c2,g2,c3]@3 [c2,g2,c3]",
E: "[[c2,g2,c3]@2 [c2,g2,c3] [g1,d2,g2]@2 [g1,d2,g2]@2 [g1,d2,g2]]/2", F: "[g1,d2,g2]@2 [g1,d2,g2]!2",
G: "[d2,a2,d3]@3 [d2,a2,d3]", H: "[c2,g2,c3]@2 [c2,g2,c3]!2", I: "~@3 [d2,a2,d3]", J: "[d2,d3]@3 [d2,a2,d3]",
K: "[[c2,g2,c3,f#3]@3 [c2,g2,c3] [c2,g2,c3]@2 [c2,g2,c3] [g1,d2,g2]@2 [g1,d2,g2]@2 [g1,d2,g2], ~@3 f3@3 c#3@5 ~]/3", // C C5 G5
L: "[[d2,a2,d3]@3 [d2,a2,d3] [d2,a2,d3]@2 [d2,a2,d3] [a1,e2,a2]@2 [a1,e2,a2]@2 [a1,e2,a2], b3@7 a3@5]/3", // D5 A5
M: "g3 f#3 [a1,e2,a2]!2, [a1,e2,a2] d3", N: "[d3@21 ~ [e1,e2,e3]@33 [e1,e2,e3]@34 ~@7]/6",
})).s("gm_slap_bass_2").gain(0.8)
// other · lead 1 square · "Strings" · A#maj7 G#maj7 Dmaj7
const lead_1_square = note(`<
~@273
[[f#3,g3,g#3] [a3,a#3] ~@2 [a3,a#3] [g3,g#3] f#3 [d#3,e3,f3] [c#3,d3] c3@3 g#3 [f3,f#3,g3] [d#3,e3,f3] [c#3,d3,d#3], ~ b3@3 ~@12]
~@157
>`).s("gm_lead_1_square").gain(0.8)
// other · pad choir · "Strings"
const pad_choir = note("<~@277 A@2 B@2 C D E@7 F G@3 H@3 I J K@2 L M N@2 O ~@125>".pickRestart({
A: "[~@6 g#5@4 g5 f#5 f5 e5@3]/2", B: "[e5 f#5 e5 c#6@5]/2", C: "b5", D: "g#5 b5!2 g#5",
E: "[a5@2 g#5@2 e5@2 f#5@15 ~@17 c#5@6 d5@2 e5@8 ~@2, ~@3 d6@5]/7", F: "b5 g#5@3", G: "[e5 f#5 g#5 f#5@8 ~]/3",
H: "[g#5 f#5@5 f#5 e5@2 g#4 f#4 e4]/3", I: "f#4", J: "f#4 e4@3", K: "[e4@3 e4@2 g#4 b4@2]/2", L: "e5 f#5", M: "g5",
N: "[g5 f#5@2 d5@5]/2", O: "b4",
})).s("gm_pad_choir").gain(0.8)
// bass · slap bass 2 · "Melody"
const bass_5 = note("<~@302 A B@2 C ~@125>".pickRestart({
A: "[c2,g2,c3]@3 [c2,g2,c3]", B: "[[c2,g2,c3]@2 [c2,g2,c3] [g1,d2,g2]@2 [g1,d2,g2] [g1,d2,g2]@2]/2",
C: "[g1,d2,g2]@2 [g1,d2,g2]!2", // G5
})).s("gm_slap_bass_2").gain(0.8)
// drums · kick
const kick = s("bd").struct(`<
~@2 A ~@3 B ~@7 C D C E C D C E C D C E C D C E C D C E C D C F G H F I G H F I G H F I G H F E G H F I G H F J C H F
K G H F I G H F B C H F B G H K ~ C H F D G H K E C H F K C H F D G H K E C H F K C H F D G H K E C H F ~ C H ~ F C E
F H C E H K C E F H C E H K C E F H L@3 M G H F I G H F B C H F B G H K ~ C H F B G H K ~ C H F K C H F B G H K@2 C H
F K C H F B G H K@2 C H F ~ C H J B C E F H C E H K C E F H C E H K C E F H L@3 M C H F D C H F K C H F D C H F K C H
F D C H F K C H F D C H E N C D C E C D C E C D C E C D C E C H F B G H F J C H F B G H F J C H F B G H F J C H F B G
H E K C E F H C E H K C E F H C E H K C E F H C E H K C E F H L O G H C E F H C E H K C E F H C E H K C E F H L@3 M C
H F D C H F K C H F D C H F K C H F D C H F K C H F D C H F K G H F I G H F B C H F B G H K J M@15 B P ~ Q ~@2
>`.pickRestart({
A: "~@3 x ~@12", B: "x", C: "x ~@2 x", D: "~ x", E: "~ x ~ x", F: "~@3 x", G: "x!2 ~ x", H: "~@2 x!2",
I: "~@2 x ~@3 x!2", J: "~ x ~@2", K: "~ x!3", L: "x ~ x!2", M: "x!2", N: "x!4", O: "~ x!2 ~", P: "~@5 x ~@10",
Q: "~@7 x ~@8",
})).gain(0.67)
// drums · snare
const snare = s("sd").struct(`<
A B C ~ D E F ~@7 G H G I G H G I G H G I G H G I G H G I G H G J ~ F ~ F ~ F ~ F ~ F ~ F ~ F ~ I ~ F ~ F ~ F ~ I ~ F
~ F ~ F ~ F ~ F ~ F ~ F ~ F ~ F ~ K ~ F ~ F ~ F ~ I ~ F ~ F ~ F ~ F ~ F ~ I ~ F ~ F ~ F ~ F ~ F ~ I ~ F B K ~ F G L ~
F ~ F ~ F B F ~ F ~ F ~ F B F ~ F ~ F@5 ~ F ~ F ~ F ~ F ~ F ~ F ~ F ~ K ~ F ~ F ~ F ~ K ~ F ~ F ~ F ~ F ~ F ~ I ~ F ~
F ~ F ~ F ~ F ~ I ~ F B K ~ F B F ~ F ~ F ~ F B F ~ F ~ F ~ F B F ~ F ~ F@4 ~@2 F ~ I ~ F G F ~ F ~ I ~ F G F ~ F ~ I
~ F G F ~ F ~ I ~ F L ~ G H G I G H G I G H G I G H G I ~ F ~ F ~ F ~ I ~ F ~ F ~ F ~ I ~ F ~ F ~ F ~ I ~ F ~ F ~ F@2
M ~ F ~ F ~ F B F ~ F ~ F ~ F B F ~ F ~ F ~ F B F ~ F ~ F N O L N F@2 ~ F ~ F B F@3 ~ F ~ F B F@3 ~ F@4 ~@2 F ~ I ~ F
// … 89 more lines
More by The Smashing Pumpkins
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.