0:00/0:00
// Now I'm Here — Queen
// 134 bpm, 4/4, key B major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: ch 1 "Lead E. Guitar 1, 2" named as a guitar, played on overdriven guitar (its piano patch is not one)
// note: Full arrangement: all 138 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(134/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 · electric guitar muted · "Guitar 4 (M & E)"
const electric_guitar_muted = note("<A@6 B C D A@4 B C A@2 B E@8 ~@16 F ~@49 G@8 A B H I J K L ~@31>".pickRestart({
A: "[d4,a4]!8", B: "[c4,d4,g4]!8", C: "[b3,d4,g4]!8", D: "[a#3,d4,g4]!5 [c4,d4,g4]!2 [d4,g4]",
E: "[[b3,d4,g4]!6 [b3,d4,g4]@58]/8", F: "~@12 [e4,b4,e5,g#5] ~@3",
G: "[[b3,f#4]!7 ~@33 [d4,a4]!8 [d4,a4]!8 [d4,a4]!8, ~@7 b3@57]/8", H: "[b3,d4,g4]!5 [d4,g4]!3, ~@5 b3@3",
I: "[a#3,d4,g4]!8", J: "[a#3,d4,g4]!6 a#3!2, ~@3 [d4,g4]", K: "[a3,e4]!8", L: "[a3,e4]!6 ~@2",
})).s("gm_electric_guitar_muted").gain(0.46)
// chords · overdriven guitar · "Guitar 4 (M & E)"
const overdriven_guitar = note(`<
~@18 A@4 B@5 C@2 D E@3 F G@3 H@4 I J K L M@4 N@4 C@2 D E@3 F G@3 O@4 P Q R S T@4 U@16 V ~ W Q R X ~@9 Y@3 D Z AA AB@12
AC@2 AD@7 ~@5
>`.pickRestart({
A: "[~@7 [a3,e4,a4,c#5]@8 [a3,e4,a4,d5]@8 [a3,e4,a4,c#5]@8 [a3,e4,a4,d5]]/4", // A Asus4 A Asus4
B: "[~@4 [a3,e4,a4]@2 [a3,e4,a4] [b3,f#4,b4,d#5]@7 [b3,f#4,b4,e5]@9 [b3,f#4,b4,d#5]@8 [b3,f#4,b4,e5]@8 e3]/5", // A5 B Bsus4 B Bsus4
C: "[e3@2 g3 g#3 e4 e3@2 [b3,f#4]@3 [a3,e4]@2 g3 g#3 e3 [d4,a4]]/2", D: "~ [d4,a4] [a3,e4]@3 [b3,f#4] ~ [b3,f#4]",
E: "[[f#3,c#4]@2 a3 a#3 b3 d4 e4 [b4,e5,g#5]@2 [b4,e5,g#5] [c#5,e5,a5] [b4,e5,g#5] [b4,e5,a5,c#6]@2 [a#4,d#5,f#5] [b4,e5,g#5]@4 [a4,d5,f#5] ~ [a4,c#5,e5] ~ [a3,e4]]/3", // F#5 E A E A D#m E D …
F: "[a#3,b3,f4,f#4] [b3,f#4] [b3,g#4] [b3,f#4] [b3,f#4,a4,d#5] ~@2 [b3,f#4,b4,d#5]", // F#maj7 B5 E B5 B7 B
G: "[[b3,f#4,a4,d#5]!2 [b3,g#4,a4,d#5] [b3,f#4,a4,d#5] [a4,d#5,f#5] ~@2 [b4,e5,g#5]@2 [b4,e5,g#5] [c#5,a5] b4 [b4,e5,g#5] ~@2 [b4,e5,g#5]@4 [d4,a4,d5,f#5] ~ [a3,e4,a4,c#5] ~ [a3,e4,a4,c#5], ~@5 e5 ~@6]/3", // B7 G#m B7 D#dim E F#m E D …
H: "[[b3,f#4,b4,d#5] [b3,f#4] [b3,g#4] [b3,f#4] [b3,f#4,b4,d#5] ~@2 [b3,f#4,b4,d#5]@2 [b3,f#4] [b3,g#4] [b3,f#4] [a4,d#5,f#5] ~@2 [b4,e5,g#5]@2 [b4,e5,g#5] [c#5,e5,a5] ~ [b4,e5,g#5] ~@2 [b4,e5,g#5]@4 [b3,f#4,b4,d#5,f#5] ~ [e4,b4,e5,g#5] ~@2]/4", // B B5 E B5 B B5 E B5 …
I: "[a3,e4,a4,c#5,e5]!2 ~ [d4,a4,d5,f#5] ~ [d4,a4,d5,f#5] ~ [b3,f#4,b4,d#5,f#5]", // A D B
J: "~ [b3,f#4,b4,d#5,f#5] ~ [e4,b4,e5,g#5]@4 b3", // B E
K: "[c4,c#4,g#4,c#5,f5] [c#4,g#4,c#5,f5] ~ [f#4,c#5,f#5,a#5] ~ [f#4,c#5,f#5,a#5] ~ [d#4,a#4,d#5,f#5]", // C#maj7 C# F# D#m
L: "~@2 [d#4,a#4,d#5,f#5]@2 ~@2 [g#4,d#5,g#5,c6]@2 [g#4,d#5,g#5,c6]@6 [b4,e5,g#5]!2", // D#m G# E
M: "[[b4,e5,g#5]@4 [b4,e5,g#5]@8 [a#4,d#5,f#5]@2 [b4,e5,g#5]@6 [b4,e5,g#5]@2 [b4,e5,g#5]!2 [f#4,c#5,f#5,a#5]@2 [f#4,c#5,f#5,a#5]@4 [g3,d4,g4,b4,g5]@30 g3@3 g#3, ~@14 g5 ~@49]/4", // E D#m E F# G
N: "[[b3,f#4,b4,d#5]@7 [b3,f#4,b4,e5]@8 [b3,f#4,b4,d#5]@8 [b3,f#4,b4,e5]@8 e3, a3 ~@63]/4", // B Bsus4 B Bsus4
O: "[[a#3,b3,f4,f#4,a#4,b4,d5,d#5] [b3,f#4] [b3,g#4] [b3,f#4] [b3,f#4,b4,d#5] ~@2 [b3,f#4,b4,d#5]@2 [b3,f#4] [b3,g#4] [b3,f#4] [a4,d#5,f#5] ~@2 [b4,e5,g#5]@2 [b4,e5,g#5] [c#5,e5,a5] ~ [b4,e5,g#5] ~@2 [b4,e5,g#5]@4 [a3,e4] ~ [d4,a4] ~ [f3,c4]]/4", // Bmaj7 B5 E B5 B B5 E B5 …
P: "[f#3,g3,c#4,d4] [g3,d4,g4,b4] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [a3,e4,a4,c#5]", // Dmaj7 G C A
Q: "~ [a3,e4,a4,c#5] ~ [d4,a4,d5,f#5]@3 [d4,a4,d5,f#5]@2", // A D
R: "[b3,f#4,b4,d#5,f#5]!2 ~ [e4,b4,e5,g#5] ~ [e4,b4,e5,g#5] ~ [c#4,g#4,c#5,f5,g#5]", // B E C#
S: "~@2 [c#4,g#4,c#5,f5,g#5]@2 ~@2 [f#4,c#5,f#5,a#5]@4 [f#4,c#5,f#5,a#5]@2 [f#4,c#5,f#5,a#5]@2 [d4,a4,d5]!2", // C# F# D5
T: "[[d4,a4,d5,f#5]@12 [e4,b4,e5] [e4,b4,e5]@2 [a3,e4,a4]@15 [a3,e4,a4]@2]/4", // D E5 A5
U: "[[b3,f#4,b4,d#5]@2 [b3,f#4,b4,d#5]@5 [e3,b3]@4 [a3,e4]@4 a#3]/2", V: "b3!2 d4 d#4 b3!2 d4 ~",
W: "[g3,d4] [g3,d4,g4,b4] ~ [c4,g4,c5,e5] ~ [c4,g4] ~ [a3,e4,a4,c#5]", // G5 G C C5 A
X: "~ [c#4,g#4,c#5,f5,g#5] ~ [f#4,c#5,f#5,a#5] [f#4,c#5,f#5,a#5]@3 ~", // C# F#
Y: "[~@14 e3@4 e3@2 g3@2 g#3@2 e4@2 e3@4 [b3,f#4]@6 [a3,e4]@4 g3@2 g#3@2 e3@2 [d4,a4] ~]/3", // B5 A5 D5
Z: "[f#3,c#4]@3 [a3,e4] ~ [a3,e4] [e3,b3]@2", AA: "a3 a#3 b3 d4 e4 e3@2 [a#4,d5,f5]",
AB: "[[b4,d#5,f#5] ~ [b4,e5] ~ [b4,d5,d#5,f#5] b4 ~ [b4,d5]@4 [a4,c#5,e5]@4 [a#4,d5,f5]]/2", // B E5 B Bm A A#
AC: "[[b4,d#5,f#5] ~ [b4,e5] ~ [b4,d5,d#5,f#5] b4 ~ [b4,d5]@4 [a4,c#5,e5]@4 ~]/2", // B E5 B Bm A
AD: "[[f#4,b4,d#5]@2 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] ~]/7", // B E B E B E B E …
})).s("gm_overdriven_guitar").gain(0.46)
// chords · overdriven guitar · "Guitar 4 (M & E)" · soft notes
const overdriven_guitar_soft = note("<~@132 A@6>".pickRestart({
A: "[~@7 [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]@3 [g#4,b4,e5] ~ [f#4,b4,d#5] ~ [g#4,b4,e5] [f#4,b4,d#5]]/6", // B E B E B E B E …
})).s("gm_overdriven_guitar").gain(0.15)
// chords · distortion guitar · "E. Guitar 2, 3, 5"
const distortion_guitar = note(`<
~@4 A ~@6 A ~@3 A ~@2 B@5 C@4 D@2 E F@2 G H I@3 J@6 K L@5 M@6 E F@2 G N@5 O@6 P@8 ~@15 Q R S T@8 ~@7 U V@4 W@8 X@8 Y@2
~@4
>`.pickRestart({
A: "~@5 [g4,c#5,e5] ~ [a4,d5,f#5]", // C#dim D
B: "[~@14 g5@6 g#5 ~ g5@6 g#5 [e5,f5] g5@6 g#5 [e5,f5] g5@6 g#5 [e5,f5] g5@6 g#5 [e5,f5] g5@6 g#5 [e5,f5] g5@6 g#5 [e5,f5] g5@6 ~ g5 a5@2, ~@20 a5@8 a5@8 a5@8 a5@8 a5@8 a5@8 a5@8 [g#5,a5]@2 g#5 ~, ~@30 f#5 ~@7 f#5 ~@7 f#5 ~@7 f#5 ~@7 f#5 ~@7 f#5 ~@9]/5", // Fmaj7 Amaj7
C: "[~@4 a#5 g5 a5@6 a#5 g5 a5@6 a#5 g5 a5@6 a#5 g5 a5@6 a#5 g5 a5@6 a#5 g5 a5@6 ~ g5 a5@6 [a#5,b5]@2 b5@2, ~@2 b5@4 b5@4 b5@4 b5@4 b5@4 b5@4 [a#5,b5] b5 ~@4, ~@6 g#5 ~@7 g#5 ~@7 g#5 ~@7 g#5 ~@7 g#5 ~@7 g#5 ~@7 g#5 ~@9]/4", // Bmaj7
D: "[e3@2 g3 g#3 e4 e3@2 [b3,f#4]@3 [a3,e4]@2 g3 g#3 e3 [d4,a4]]/2", E: "~ [d4,a4] [a3,e4]@3 [b3,f#4] ~ [b3,f#4]",
F: "[[f#3,c#4]@2 a3 a#3 b3 d4 e4 e3@2 [e4,b4] [e4,c#5] [e4,b4] [e3,e4,b4]@2 [e4,c#5] [e3,e4,b4]]/2", // F#5 E5 C#m E5 C#m E5
G: "[e3,e4,b4]@3 [d4,a4,d5] ~@2 [a3,e4,a4,c#5] [a3,e4]", // E5 D5 A A5
H: "[a#3,b3,f4,f#4] [b3,f#4] b3@2 [b3,f#4] ~@2 [b3,f#4], ~@2 g#4@5 ~", // F#maj7 B5
I: "[[b3,f#4]!2 [b3,g#4] [b3,f#4] f#4@3 [e4,b4]@2 [e4,b4] [e4,c#5] [e4,b4] [e4,b4]@3 [e4,b4]@4 [d4,a4] ~ [a3,e4] ~ [a3,e4], ~@8 b3 ~@39]/3", // B5 E B5 E5 C#m E5 D5 A5
J: "[[b3,f#4]@2 [b3,f#4]@2 b3@4 [b3,f#4]@2 ~@4 [b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@2 b3 ~ [b3,f#4]@2 f#4@6 [e4,b4]@4 [e4,b4]@2 [e4,c#5]@2 [e4,b4]@2 [e4,b4]@6 [e4,b4]@8 [b3,f#4]@2 ~@2 [e4,b4]@2 ~@3 g3 [g#3,a3,e4]@2 [a3,e4]@2 ~@2 [d4,a4]@2 ~@2 [d4,a4]@2 ~@2 [b3,f#4]@2 ~@2 [b3,f#4]@2 ~@2 [e4,b4]@8 [e4,b4]@2, ~ g#4@4 g#4@19, ~@24 b3 ~@37 f#3@2 ~@32]/6", // B5 E5 C#m E5 B5 E5 Amaj7 A5 …
K: "[c#4,g#4] c#4 ~ [f#4,c#5] ~ [f#4,c#5] ~ [d#4,a#4], ~ g#4@7", // C#5 F#5 D#5
L: "[~@2 [d#4,a#4]@2 ~@2 [g#4,d#5]@2 d#5@6 [e3,b3,e4]!2 [e3,b3,e4]@24 [f#3,c#4,f#4]@2 [f#3,c#4,f#4]@2 ~@2 [g3,d4,g4,b4]@30 g3@3 g#3, ~ g#4@9]/5", // D#5 G#5 E5 F#5 G
M: "[a3 ~@7 a5@4 a#5 ~@8 g5 a5@6 a#5 ~@8 g5 a5@6 a#5 ~@4 b5@2 ~@2 g5 a5@6 a#5 ~ e3@2 e3@4 g3@2 g#3@2 e4@2 e3@4 [b3,f#4]@6 [a3,e4]@4 g3@2 g#3@2 e3@2 [d4,a4]@2, [b3,f#4,b4,d#5]@3 [b3,f#4,b4,d#5]@4 [b3,f#4,b4,e5]@8 [b3,f#4,b4,d#5]@8 [b3,f#4,b4,e5]@8 ~@17, ~@2 [f#5,b5]@6 ~@4 b5@10 g#5 ~@5 b5@10 g#5 ~@5 b5@5 ~@3 d#5@2 g#5 ~@5 b5@12 ~@24]/6", // B5 A5 D5 B Bsus4 B Bsus4 B5
N: "[[a#3,b3,f4,f#4]@2 [b3,f#4]@2 b3@4 [b3,f#4]@2 ~@4 [b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@2 b3 ~ [b3,f#4]@2 f#4@6 [e4,b4]@4 [e4,b4]@2 [e4,c#5]@2 [e4,b4]@2 [e4,b4]@6 [e4,b4]@8 [d4,a4]@2 ~@2 [a3,e4]@2 ~@2 [a3,e4]@2 [a#3,b3,f4,f#4]@2 [b3,f#4]@2 b3@4 [b3,f#4]@2 ~@4 [b3,f#4]@2, ~ g#4@4 g#4@12 g#4@3, ~@24 b3 ~@55]/5", // F#maj7 B5 E5 C#m E5 D5 A5 F#maj7 …
O: "[[b3,f#4]@2 [b3,f#4]@2 b3 ~ [b3,f#4]@2 f#4@6 [e4,b4]@4 [e4,b4]@2 [e4,c#5]@2 [e4,b4]@2 [e4,b4]@6 [e4,b4]@8 [a3,e4]@2 ~@2 [d4,a4]@2 ~@2 [f3,c4]@2 [g3,d4]@2 [g3,d4]@2 ~@2 [c4,g4]@2 ~@2 [c4,g4]@2 ~@2 [a3,e4]@2 ~@2 [a3,e4]@2 ~@2 [d4,a4]@6 [d4,a4]@4 [b3,f#4]@2 [b3,f#4]@2 ~@2 [e4,b4]@2 ~@2 [e4,b4]@2 ~@2 [c#4,g#4]@2, ~@2 g#4@45 ~, ~@8 b3 ~@87]/6", // B5 E5 C#m E5 A5 D5 F5 G5 …
P: "[~@2 c#4@2 ~@2 [f#4,c#5]@4 [f#4,c#5]@2 [f#4,c#5]@2 [d4,a4,d5]!2 [d4,a4,d5,f#5]@24 ~@88, ~ g#4@63]/8", // F#5 D5 D
Q: "[g3,d4]!2 ~ [c4,g4] ~ [c4,g4] ~ [a3,e4]", R: "~ [a3,e4] ~ [d4,a4]@3 [d4,a4]@2",
S: "[b3,f#4]!2 ~ [e4,b4] ~ [e4,b4] ~ [c#4,g#4]", // B5 E5 C#5
T: "[~@2 c#4@2 ~@2 [f#4,c#5]@2 [f#4,c#5]@4 ~@2 [d4,a4,d5,f#5]!2 [d4,a4,d5,f#5]@8 ~@34 [g4,c#5,e5]@2 ~@2 [a4,d5,f#5]@2 ~@64, ~ g#4@63]/8", // F#5 D C#dim D
U: "a3 a#3 b3 d4 e4 e3@2 [a#3,f4]", V: "[[b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@3 [e3,b3]@4 [a3,e4]@4 [a#3,f4]]/2",
W: "[[b3,f#4]!2 b3 ~ [b3,f#4]@3 [e3,b3]@4 [a3,e4]@4 [a#3,f4] [b3,f#4]!2 b3 ~ [b3,f#4]@3 [e3,b3]@4 [a3,e4]@4 [a#3,f4] [b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@3 [e3,b3]@4 [a3,e4]@4 [a#3,f4] [b3,f#4]!2 b3 ~ [b3,f#4]@3 [e3,b3]@4 [a3,e4]@4 [a#3,f4], ~ g#4@8 g#4@16 g#4@7]/8", // B5 E5 A5 A#5 B5 E5 A5 A#5 …
X: "[[b3,f#4]@2 [b3,f#4]@2 b3@2 ~@2 [b3,f#4]@6 [e3,b3]@8 [a3,e4]@8 ~@66 [b3,f#4] ~ [b3,f#4] ~ b3 ~@3 [b3,f#4]@4 b3@2 [b3,f#4]@2 [b3,f#4]@2 [b3,f#4]@2 b3@2 ~@2 [b3,f#4]@4 b3@2 [b3,f#4]@2, ~ g#4@24 g#4@2 g#4@2 g#4@2 g#4]/8", // B5 E5 A5 B5
Y: "[[b3,f#4]!2 b3 ~ [b3,f#4]@2 g#4@4 ~@6, ~@2 g#4@4 b3 ~@9]/2", // B5
})).s("gm_distortion_guitar").gain(0.46)
// chords · distortion guitar · "E. Guitar 2, 3, 5" · soft notes
const distortion_guitar_soft = note("<~@132 A B@5>".pickRestart({
A: "~@7 [b3,f#4]", // B5
B: "[[b3,f#4]!2 b3 ~ [b3,f#4]@2 b3 [b3,f#4] [b3,f#4]!2 b3 ~ [b3,f#4]@2 b3 [b3,f#4] [b3,f#4]!2 b3 ~ [b3,f#4]@2 b3 [b3,f#4] [b3,f#4]!2 b3 ~ [b3,f#4]@2 b3 [b3,f#4] [b3,f#4]!2 b3 ~ [b3,f#4]@2 b3 [b3,f#4], ~@2 g#4@4 g#4@4 g#4@4 g#4@4 g#4@4 g#4@4 g#4@4 g#4@9 ~]/5", // B5
})).s("gm_distortion_guitar").gain(0.15)
// chords · electric guitar muted · "E. Guitar 2, 3, 5"
const electric_guitar_muted_2 = note("<~@33 A@4 B C@8 ~@13 D@4 B C@8 ~@54 E@3 F ~@8>".pickRestart({
A: "[~@6 b3 ~@5 b3@14 [b3,f#4]@2 ~@14 [e4,b4] ~ [e4,b4] ~@19, ~@3 f#4@10 ~ [b3,f#4]@18, ~@3 g#4@13]/4", // B5 E5 B5
B: "~@3 b3@3 b3@2, ~@3 f#4@5", C: "[~@10 [b3,f#4]@2 ~@14 [e4,b4] ~ [e4,b4] ~@99, ~@3 [b3,f#4]@29]/8",
D: "[~@6 b3@6 b3@14 [b3,f#4]@2 ~@14 [e4,b4] ~ [e4,b4] ~@19, ~@3 f#4@10 ~ [b3,f#4]@18, ~@3 g#4@13]/4", E: "[b3,f#4]!8",
F: "[b3,f#4]!2 [b3,f#4]@5 ~", // B5
})).s("gm_electric_guitar_muted").gain(0.46)
// bass · electric bass finger · "Bass"
const bass = note(`<
~@18 A@4 B@5 C@2 D E@2 F G H I J K@3 L M N O P Q@4 R@4 C@2 D S@3 T@2 I J K@3 U V W X Y Z@4 AA AB AA AC AD@6 AE@2 AF@2
AG@2 AH@2 AI AJ AK AL AM ~@8 AN@3 D AO AP AQ@2 AR@2 AS@2 AT@2 AU@2 AV@2 AD@2 AW@3 AX@3 AY ~@5
>`.pickRestart({
A: "[~@14 a1@9 g2 a2@2 e2@2 e2@2 a1@5 g2 a2@3 g2 a2@2 g2@2 e2@2 a1@5 g2 a2@3 g2 a2@2 g2@2 e2@2 a1@2, ~@24 g#2 ~@11 g#2 ~@3 g#2 ~@11 g#2 ~@3 g#2 ~@7]/4",
B: "[~ a1 a1@2 a1!2 a#1 b1@3 b2@5 b1@3 b2@5 b1@3 b2@5 b1@3 b2 a2 b2 a2 b2 a2]/5",
C: "[e1@2 g1 g#1 e2 e1@2 b1@3 a1@2 g1 g#1 e1 d2]/2", D: "~ d2 a1@3 b1 ~ b1", E: "[f#1@2 a1 a#1 b1 d2 e2 e1@2 e1!7]/2",
F: "e1!3 d2 ~ a1 ~ a1", G: "b1@2 ~ b1!4 a1", H: "b1!5 d2 d#2!2", I: "e2!8", J: "e2!3 d2 ~ a1 ~ a1",
K: "[b1!2 d2 d#2 e2 d2 d#2 b1@2 b1 d2 d#2 e2 d2 d#2 e2@2 e2!7]/3", L: "e2!3 b1 ~ e2 ~ b1", M: "a1!2 ~ d2 ~ d2 ~ b1",
N: "b1 ~ e2@5 b1", O: "c#2!2 ~ f#1 ~ f#1 ~ d#2", P: "~@2 d#2@2 ~@2 g#2@8 e2!2", Q: "[e2@12 f#1!2 g1@18]/4",
R: "[b1@7 b1@8 b1@8 b1@3 b1!5 e1]/4", S: "[f#1@2 a1 a#1 b1 d2 e2 e1@2 d2 e2!5 e2@3 d2@2 ~ a1 ~ a1, ~@20 d#2 ~@27]/3",
T: "[b1@2 d2 d#2 e2 d2 d#2 b1@3 d2 d#2 e2 d2 d#2 e2]/2", U: "e2!3 a1 ~ d2 ~ a1", V: "g1!2 ~ c2 ~ c2 ~ a1",
W: "~ a1 ~ d2@4 d2", X: "[b1,d#2]!3 [b1,e2] ~ [b1,e2] ~ [c#2,f2]",
Y: "~@2 [c#2,f2]@2 ~@2 [c#2,f#2]@4 [c#2,f#2]@4 d2!2", Z: "[d2@12 e1!2 ~ a1@17]/4", AA: "b1!7 e2", AB: "e2!3 a1!4 a#1",
AC: "e2!3 a2!4 b2", AD: "[b1@2 b1@2 b1@2 b1@2 b1@2 d2@2 d#2@2 e2@4 f#2@2 g#2@2 a2@4 g#2@2 f#2@2 d2 d#2]/2",
AE: "[b1!5 d2 d#2 e2@2 f#2 g#2 a2@2 g#2 a2 g#2]/2", AF: "[b2!7 e2@2 g#2 e2 a2@2 g#2 a2 a#2]/2",
AG: "[b2!5 f#2 f2 e2@2 e2 g#2 a2@2 g#2 a2 a#2]/2", AH: "b2!8", AI: "[g2,b2]!2 ~ [g2,c3] ~ [g2,c3] ~ [a2,c#3]",
AJ: "~ [a2,c#3] ~ [a2,d3] [a2,d3]@4", AK: "[b2,d#3]!2 ~ [b2,e3] ~ [b2,e3] ~ [c#3,f3]",
AL: "~ [c#3,f3] ~ [c#3,f#3] [c#3,f#3]@3 [d3,a3]", AM: "[d3,a3]",
AN: "[~@7 e1@3 g1 g#1 e2 e1@2 b1@3 a1@2 g1 g#1 e1 d2]/3", AO: "f#1@3 a1 ~ a1 e1@2", AP: "a1 a#1 b1 d2 e2 e1@2 a#1",
AQ: "[b1@2 b1!5 e1@2 f#1 g#1 a1@2 g#1 a1 a#1]/2", AR: "[b1!5 d2 d#2 e2@2 f#2 g#2 a2@2 g#2 a2 a#2]/2",
AS: "[b2!5 a2 f#2 e2@2 g#2 a2 a2@2 a2!3, ~@22 g#2 ~@3 g#2 ~@5]/2", AT: "[b2!5 a2 f#2 e2@2 f#2 g#2 a2@2 g#2 a2 a#2]/2",
AU: "[b2 b1!4 d2 d#2 e2@2 e2!2 a2@2 g#2 a2 a#2, ~@26 g2 ~@5]/2",
AV: "[b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 e2@4 e2@2 e2@2 a2@4 g#2@2 e2@2 d2 d#2]/2", AW: "b1!8",
AX: "[b2!5 a2 f#2 b1@2 b2!4 a2 g#2 b2@2 a2 g#2 b2@2 a2 g#2 a2]/3", AY: "b2!7 ~",
})).s("gm_electric_bass_finger").gain(0.51)
// bass · electric bass finger · "Bass" · soft notes
const bass_soft = note("<~@132 [~@7 b2] [b2!8]!5>").s("gm_electric_bass_finger").gain(0.15)
// chords · overdriven guitar · "Lead E. Guitar 1, 2"
const overdriven_guitar_2 = note(`<
~@48 A B@4 ~@22 C D E@3 F G H I J K L M N O P Q R ~@18 S@2 T U V W X Y Z@8 AA@3 AB AC AD ~@5
>`.pickRestart({
A: "~@5 [f#5,b5]@3", // B5
B: "[a5@4 b5@9 g5 a5@6 b5@9 g5 a5@6 b5@5 b5@2 ~@2 g5 a5@6 b5@12, ~@4 a#5 ~@9 g#5 ~@5 a#5 ~@9 g#5 ~@5 a#5 ~@7 d#5@2 g#5 ~@5 a#5 ~@11]/4",
C: "~@2 [d5,d#5,f5,f#5,a#5,b5] [d#5,f#5,b5]!4 d5", // Bmaj7 B
D: "d5 ~ d5 ~ d5 g#4 ~ [a4,c#5] [a#4,b4,d5,d#5]@2 [a4,c#5]@2 [f#4,b4]@2 [e5,a5]@2, ~@3 b4 ~@4", // A D#maj7 A B5 A5
E: "[[f5,f#5,a#5,b5]@2 [f#5,b5]@2 [e5,g#5]@2 [e5,g#5]@2 [f#5,b5]@2 [e5,g#5]@2 [d5,d#5]@2 b4@5 f#4 [g4,g#4]@2 b4@2 b4@2 g#4@2 [c#5,d#5]@2 b4@3 [e5,a5] [f5,f#5,a#5,b5]@2 [f#5,b5]@2 [f#5,b5]@2 [f#5,b5]@2 [e5,g#5]@2 [d5,d#5,f#5]@2 ~ [e5,g5], ~@23 b4]/3", // F#maj7 B5 E B5 E D#maj7 G#maj7 C#sus2 …
F: "[f5,f#5,g#5,a5] [f#5,a5]!4 [e5,g#5]!2 [d5,f#5]", // F#m E D
G: "[d#5,f#5] b4 [e5,g#5] [d5,f#5] [d#5,f#5] b4 [e5,g#5] [d5,f#5]", // D#m E D D#m E D
H: "d#5 f#5@2 [e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2 [f#5,a5]@3 [e5,g5] [d#5,f5,f#5,g#5,a5] ~ [f#5,a5]@2", // Em F#m Em D#dim F#m
I: "[f#5,a5]@3 [e5,g5] [d#5,f5,f#5,g#5,a5] ~ [f#5,a5]@2 [f#5,a5]@3 [e5,g5] [d#5,f5,f#5,g#5,a5] ~ [f#5,a5]@2", // F#m Em D#dim F#m Em D#dim F#m
J: "[f#5,a5]@3 [e5,f#5,g5,a5] [d#5,f#5,g5,g#5,a#5,b5] ~ [g#5,b5]@2 [g#5,b5]@2 e5 [d5,d#5,e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2", // F#m F#m7 G#m7 G#m D#maj7 F#m
K: "[f#5,a5]@2 e5 d5 f5 e5 d5@2 d#5@2 b4@2 [d#5,f#5]@2 [d#5,f#5] [f5,a5]", // F#m D#m F
L: "[e5,g5]@2 d5@2 e5@2 [c#5,d5]@2 b4 a4 f#4@2 [d5,f#5]@2 b4@2", // Em Dmaj7 D
M: "~ [e5,a5] [f5,f#5,a#5,b5]@2 [f#5,b5]@2 [e5,g#5]@2 ~ d#5 b4@2 [f#5,b5]@2 [e5,g#5]@2, b4 ~@3 [d5,f#5] ~@3", // A5 F#maj7 B5 E B5 E D
N: "~ d#5 b4@2 [f#5,b5]@2 [e5,g#5]@2 ~ d#5 b4@2 [f#5,b5]@2 [f#5,b5]@2, [d5,f#5] ~@3 [d5,f#5] ~@3", // B5 E B5 D
O: "~ [d#5,e5,g#5,a5] [c#5,f5,f#5,a#5,b5] ~ [f#5,b5]@2 ~ [e5,a5] [f5,f#5,a#5,b5]@2 [f#5,b5]@2 [f#5,b5]@2 [a5,b5]@2, [f#5,b5] ~@2 [f#5,b5] ~@4", // Emaj7 F#maj7 B5 A5 F#maj7 B5 Asus2 B5
P: "b5 f#5 [a5,b5] b5 [a5,b5]!2 b5!2", // Asus2
Q: "[a5,b5]@2 [a5,b5]@2 [a5,b5]@2 [a5,b5]@2 ~@2 [e5,g#5]@2 ~ d#5 b4@2, ~@4 b5@2 [d5,f#5] ~", // Asus2 E D
R: "a4 f#4 e4 [d4,d#4] b3@3 ~", S: "[~@6 [b3,f#4]@7 [f5,f#5,g#5,a5] [f#5,a5]!2]/2",
T: "~ [e5,g5] [d#5,f5,f#5,g#5,a5] ~ [f#5,a5]@2 [f#5,a5]@2 ~ [e5,g5] [d#5,f5,f#5,g#5,a5] ~ [f#5,a5]@2 [f#5,a5]@2, [f#5,a5] ~@3 [f#5,a5] ~@3", // Em D#dim F#m Em D#dim F#m
U: "[f#5,a5]@2 ~@2 [e5,g#5]@2 [d5,f#5]@2 [d#5,f#5]@2 ~ [e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2, ~@5 b4 ~@2", // F#m E D D#m Em F#m
V: "[f#5,a5]@2 ~ [e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2 ~ [e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2 [f#5,a5]@2, ~@4 [f#5,a5] ~@3", // F#m Em F#m Em F#m
W: "[f#5,a5]@2 [f#5,a5]@2 ~ [e5,g5] [f5,f#5,g#5,a5]@2 [f#5,a5]@2 [f5,f#5,g#5,a5,d6,d#6]@2 [f#5,a5,d#6]@2 [f#5,a5,d#6]@2, ~@2 [f#5,a5] ~@5", // F#m Em F#m D#dim F#m
X: "[f#5,a5,d#6] [f5,f#5,g#5,a5,d6,d#6] [f#5,a5,d#6]!2 [f5,f#5,g#5,a5,d6,d#6] [f#5,a5,d#6]!2 [f5,f#5,g#5,a5,d6,d#6]", // D#dim
Y: "[f#5,a5,d#6]!2 [f5,f#5,g#5,a5,d6,d#6] [f#5,a5,d#6]!2 [f5,f#5,g#5,a5,d6,d#6] [f#5,a5,d#6]!2", // D#dim
Z: "[[f5,f#5,g#5,a5,d6,d#6]@2 [f#5,a5,d#6]@2 [f#5,a5,d#6]@2 [e5,g#5]@2 ~ d#5 b4@2 [d5,f#5]@2 [d5,f#5]@4 b4@2 [d5,f#5]@2 [d5,f#5]@4 b4@2 [d5,f#5]@2 [d5,f#5]@4 b4@2 [d5,f#5]@2 [d5,f#5]@4 b4@2 [e5,g#5]@2 [d#5,f#5]@4 b4@2 [e5,g#5]@2 [d5,f#5]@4 b4@2 [e5,g#5]@2 [d5,f#5]@4 b4@2 [e5,g#5]@2 [d#5,f#5]@2 b4 a4 f#4@2 [d5,d#5]@2 b4@4 b4@2 [d5,f#5]@2 b4@2 [d5,f#5]@2 [d5,f#5]@2 b4@2 b4@4 b4@2 [d5,d#5]@2 b4@2 [e5,g#5]@2 ~ d#5 b4 a4 b4@4 b4@2 [d5,f#5]@2 [d#5,g5]@2 [d5,f#5]@2 [d#5,g5]@2 ~@2 b4@2, ~@4 [d5,f#5] ~@48 [d5,f#5] ~@10]/8", // D#dim E D E D#m E D E …
AA: "[~ b4 [d5,f#5] [d#5,g5] [d5,f#5] [d#5,g5] ~ b4@2 b4 [d5,f#5] [d#5,g5] [d5,f#5] [d#5,g5] ~ b4@2 [e5,f#5,g#5,a5] [f#5,a5]!3 [f#5,b5] ~ [f#5,b5]]/3", // D D# D D# D D# D D# …
AB: "~ f#5 [e5,g#5] d5 d#5 b4 ~@2", AC: "~ [e5,f#5,g#5,a5] [f#5,a5]!3 [f#5,b5] ~ [f#5,b5]",
AD: "~ [f#5,b5] [e5,g#5] d5 d#5 b4 ~@2", // B5 E
})).s("gm_overdriven_guitar").gain(0.51)
// chords · overdriven guitar · "Lead E. Guitar 1, 2" · soft notes
const overdriven_guitar_soft_2 = note("<~@133 A B C@3>".pickRestart({
A: "~ [c6,c#6,d#6,e6] [c#6,e6]!6", B: "[d6,d#6,f6,f#6] [d#6,f#6] [c#6,e6]!2 [b5,d#6]!2 [a5,c#6]!2",
C: "[[f#5,b5]!2 [e5,g#5] [d5,f#5] d#5 b4 [a4,d5,f#5] [a4,d5,f#5]@2 f#4 [a4,d5,f#5] [a4,d5,f#5]@2 f#4 [a4,d5,f#5] [a4,d5,f#5]@2 f#4 [a4,d5,f#5] [a4,d5,f#5]@2 f#4 [a4,d5,f#5]!2]/3", // B5 E D
})).s("gm_overdriven_guitar").gain(0.15)
// chords · piano · "Piano & Organ"
const piano = note("<~@74 A B C D E F G F G F G F G F G F G H I ~@45>".pickRestart({
A: "~@8 a1@7 ~", B: "[d#5,f#5,b5]!7 [e5,g#5,b5]", C: "[e5,g#5,b5]!3 [c#5,e5,b5]!4 [d#5,f#5,b5]",
D: "[d#5,f#5,b5]!2 [e5,g#5,b5]!2 [d#5,f#5,b5]!2 [e5,g#5,b5]!2", E: "[e5,g#5,b5]!3 [c#5,e5,b5]!3 [c#5,e5,b5]@2",
F: "[d#4,f#4,b4]!2 [e4,g#4,b4]!2 [d#4,f#4,b4]!2 [e4,g#4,b4]!2", G: "[e4,g#4,b4]!3 [c#4,e4,b4]!4 [d#4,f#4,b4]",
H: "[d#4,f#4,b4]!8", I: "[d#4,f#4,b4]!7 ~",
})).s("gm_piano").gain(0.51)
// chords · drawbar organ · "Piano & Organ"
const drawbar_organ = note("<~@93 A@2 B@2 C@7 ~@34>".pickRestart({
A: "[[g4,d5]@3 [g4,c5,e5]@4 [a4,c#5,e5]@4 [a4,d5,f#5]@5, b4 ~@31]/2", // G5 C A D
B: "[[b4,d#5,f#5]@3 [b4,e5,g#5]@4 [c#5,f5,g#5]@4 [c#5,f#5,a#5]@5]/2", C: "[[d5,f#5,a5] ~@6, d4]/7",
})).s("gm_drawbar_organ").gain(0.51)
// drums · kick
const kick = s("bd").struct(`<
~@11 A ~@3 A ~@2 B@8 ~ C D@2 C@2 E C F D@2 C F G D@2 H C D C I ~@2 J B@2 K C D@2 C L G C H C D C F G D@2 H C D C I ~@2
L M L N L O C F C D@3 L P C D F ~ D H D Q K ~@8 B G D@4 F R L S L S C D@3 L G C D@5 T@3 ~@5
>`.pickRestart({
A: "~@5 x ~ x", B: "~@7 x", C: "x ~@3 x!2 ~@2", D: "x!2 ~@2 x!2 ~@2", E: "x!2 ~@3 x ~ x", F: "x!2 ~@2 x!2 ~ x",
G: "~ x ~@2 x!2 ~@2", H: "x!2 ~@2 x ~@3", I: "x!2 ~ x ~ x!3", J: "x ~@6 x", K: "x", L: "x ~@3 x!2 ~ x",
M: "~@2 x ~@5 x ~ x ~@2 x ~@2", N: "~@2 x ~@3 x ~@3 x ~@2 x ~@2", O: "~@2 x ~@7 x ~@2 x ~@2", P: "x!2 ~ x ~ x ~@2",
Q: "x!2 ~ x ~ x ~ x", R: "~ x ~@6", S: "~@2 x ~@6 x ~ x ~ x ~@2", T: "x ~ x!2 ~@4 x ~ x!2 ~@4",
})).gain(0.51)
// drums · kick · soft notes
const kick_soft = s("bd").struct(`<
~@133
// … 73 more lines
More by Queen
We Are The Champions1978 · F major · 95 bpmRadio Ga GaF major · 110 bpmWho Wants to Live ForeverG major · 72 bpmAnother One Bites The DustG major · 115 bpmBohemian RhapsodyB♭ major · 70 bpmUnder PressureD major · 113 bpmCrazy Little Thing Called LoveD major · 233 bpmFriends Will Be FriendsG major · 74 bpm
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.