0:00/0:00
// Cold Day in Hell — Gary Moore
// 100 bpm, 4/4, key C# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 100 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(100/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 guitar jazz · "BASS GTR"
const bass = note(`<
A B C D E F G H I J K L M L N L O P Q R S T U V W J K L M L N L O P Q R S T U M X Y Z AA AB AC AD AE AF J K L M L N L
O P Q R S T U V W J K L M L N L O P Q R S T U J AG AH AI AJ AK AL AM M AN AJ N L AO M AP AQ AA AR@2 AS
>`.pickRestart({
A: "c#2@2 ~@4 b1 g#1", B: "a1@2 a1 ~ a1 ~ a1 ~ a1 ~ a1@2 a1@2 a1 ~", C: "a1 ~ a1@2 a1 ~ a1@2 a1 ~ a1@2 a1 ~ a1@2",
D: "c#2 ~ c#2@2 c#2 ~ c#2 ~ c#2 ~ c#2@2 c#2 ~ c#2@2", E: "c#2 ~ c#2@2 c#2 ~ c#2@2 c#2 ~ c#2@2 c#2 ~ c#2@2",
F: "a1 ~ a1 ~ a1 ~ a1@2 a1 ~ a1@2 a1 ~ a1@2", G: "g#1 ~ g#1 ~ g#1 ~ g#1 ~ g#1 ~ g#1 ~ g#1 ~ g#1@2",
H: "c#2 ~ c#2@3 ~@2 g#2 b2@2 g#2@2 b2@2 g#2 ~", I: "c#2@3 ~ g#1@9 ~@3", J: "c#2@5 ~ g#2!2 b2@2 g#2@2 b2@2 c#3@2",
K: "f#1@3 c#2 e2 c#2 e2 f#2", L: "c#2@3 g#2 b2 g#2 b2 c#3", M: "c#2@6 g#2!2 b2@2 g#2@2 b2@2 c#3@2",
N: "f#1@6 c#2!2 e2@2 c#2@2 e2@2 f#2@2", O: "c#2@6 g#2!2 b2@2 g#2@2 b2@2 c#3 ~",
P: "e2@2 e2 ~ e2@2 e2@2 e2@2 e2 ~ e2@2 e2@2", Q: "f#2@2 f#2@2 f#2@2 f#2 ~ f#2 ~ f#2 ~ f#2@2 f#2@2",
R: "g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2@2 g#2 ~", S: "f#2 ~ f#2 ~ f#2@2 f#2 ~ f#2 ~ f#2 ~ f#2@2 e2 ~",
T: "e2@4 ~@2 e2@3 ~ c#2@2 b1 ~ e1@2", U: "f#1@4 ~@2 f#1@2 a1@5 ~@3", V: "c#2@4 ~@2 g#2!2 b2@2 g#2@2 b2@2 c#3@2",
W: "c#2 ~@3 g#1@9 ~@3", X: "c#2 ~ c#2@4 g#2@2 b2@2 g#2@2 b2@3 ~", Y: "a1@5 ~ f#2@2 e2 ~ e2@4 a1 ~",
Z: "a1 ~ a1@4 f#2@2 e2 ~ e2@3 ~ a1@2", AA: "c#2 ~ c#2@4 g#2@2 b2@2 g#2@2 b2@2 c#3@2",
AB: "c#2@4 ~@2 c#2@3 ~ c#2@3 ~ b1@2", AC: "a1@4 ~@2 f#2@2 e2 ~ e2@4 b1@2", AD: "a1@4 ~@2 f#2@2 e2 ~ e2@2 ~@2 e2 ~",
AE: "d#2 ~ d#2@3 ~ d#2 ~ d#2 ~ d#2@3 ~ d#2@2", AF: "~@2 d2@2 ~@2 d2@2 ~@2 d2@3 ~ d2 ~", AG: "c#2@3 g#2 b2 g#2 b2 g#2",
AH: "e2 ~ e2@3 ~ e2@4 c#2@2 b1@2 e1@2", AI: "f#1 ~ f#1@3 ~ f#1@2 a1@7 ~", AJ: "c#2@2 ~ g#2 b2 g#2 b2 c#3",
AK: "c#2@6 g#2!2 b2@2 g#2@2 f#2@4", AL: "e2@2 e2@2 b1 ~ e2@4 c#2@2 b1@2 e1@2",
AM: "f#2 ~ f#2@2 c#2@2 f#2@2 g#1@4 b1@3 ~", AN: "~ c#2@2 ~ e2@2 ~ c#2@2 ~ b1@3 ~ b1@2",
AO: "c#2@6 c#3 b2 g#2@2 b2@2 g#2 f#2 e2@2", AP: "f#1@5 ~ c#2@2 e2@2 c#2@2 e2@2 f#2@2",
AQ: "c#2@6 ~ c#2 b2@2 g#2@2 b2@2 c#3@2", AR: "[c#2 ~@3 g#1@20 ~@2 g#1!2 b1@2 g#1@2]/2", AS: "c#2 ~@3",
})).s("gm_electric_guitar_jazz").gain(0.5)
// chords · overdriven guitar · "OVERDRIVE"
const overdriven_guitar = note(`<
A B C D@2 B E D F G H I J I K L M N O E O P Q R S I H I J I K L M N O E O P Q T@2 B C D@2 B@2 U V W X W Y Z K Y@2 P O
E O P AA R AB W AC Y W AD AE AF W P O E O P AG R AH P AI AJ AH P AK R ~ AL K W AM AN W@2 AO AP@2 AQ
>`.pickRestart({
A: "[c#4,g#4,c#5,g#5,c#6]@5 ~@11", // C#5
B: "[a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~", // A5
C: "[a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4] ~ [a3,e4]@2", // A5
D: "[c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~ [c#4,g#4] ~", // C#5
E: "[g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~ [g#3,d#4] ~", // G#5
F: "c#4 ~@3 [g#3,d#4,b4,f#5,b5]@8 ~@4", G: "g#4@4 [c#5,g#5,c#6]@2 ~ [c#5,g#5,c#6] ~@8",
H: "[c#5,c#6] ~@3 [c#5,f#5,c#6]@2 ~ [c#5,f#5,c#6] ~@8", I: "~@4 [c#5,g#5,c#6]@2 ~ [c#5,g#5,c#6] ~@8",
J: "~@4 [d#5,g#5,c#6]@2 ~ [e5,g#5,c#6] ~@8, ~@4 [c#4,g#4]@3 ~@9", K: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,f#5,c#6] ~@8",
L: "~@4 [d#5,g#5,c#6]@2 ~ [e5,g#5,c#6] ~@6 [e5,g#5,c#6] ~, ~@4 [c#4,g#4]@3 ~@9", // C#sus2 C#m C#5
M: "~@4 [d#5,g#5,c#6]@2 ~ [e5,g#5,c#6] ~@2 [e5,g#5,c#6] ~@5, ~@4 [c#4,g#4]@3 ~@9", // C#sus2 C#m C#5
N: "[e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3,c#4] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~", // E5 C#m7 E5
O: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~", // F#5
P: "[e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~ [e3,b3] ~", // E5
Q: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [a3,e4,g4]@4 ~@4", // F#5 A7
R: "~@4 [c#5,g#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5", // C#5
S: "[g#4,c#5,g#5,c#6] ~@3 [b4,f#5,b5]@9 ~@3, ~@4 g#4@7 ~@5", // C#5 B5
T: "~@4 [c#4,g#4,d#5,g#5,c#6]@2 ~ [c#4,g#4,e5,g#5,c#6] ~@2 [c#4,g#4,e5,g#5,c#6] ~@5", // C#sus2 C#m
U: "[a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~ [a#3,d#4] ~", // D#5
V: "~@2 [d4,a4,c5,e5,g5]@2 ~@2 [d4,a4,c5,e5,g5]@3 ~ [d4,a4,c5,e5,g5]@3 ~ [d4,a4,c5,e5,g5]@2", // Am7
W: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5", // F#5 C#5
X: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,f#5,c#6] ~@2 [c#5,f#5,c#6] ~@5", Y: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,g#5,c#6] ~@8",
Z: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,g#5,c#6]@2 ~@7", AA: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [a3,e4,g4]@7 ~",
AB: "[c#5,g#5,c#6] ~@3 [g#4,b4,f#5,b5]@10 ~@2, ~@4 c5 ~@11", // C#5 G#m7
AC: "~@4 [c#5,f#5,c#6] ~@2 [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5", // F#5 C#5
AD: "~@4 [c#5,f#5,c#6]@2 f#5 [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5", AE: "~@4 [c#5,f#5,c#6] ~@2 [c#5,f#5,c#6] ~@8",
AF: "~@5 f#5 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5, ~@2 [c#5,f#5,c#6] ~@5", // C#5 F#5
AG: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [a3,e4,g4]@5 ~@3", // F#5 A7
AH: "~@4 [c#5,g#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6]@3 ~ [c#5,g#5,c#6]@2", // C#5
AI: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ a3@8, ~@8 e4@5 ~@3", // F#5
AJ: "~@4 [c#5,g#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6]@3 ~@3", // C#5
AK: "[f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [f#3,c#4] ~ [g#3,d#4]@2 ~@2 [b3,f#4]@2 ~@2", // F#5 G#5 B5
AL: "~@5 f#5@2 [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~@5, ~@2 [c#5,g#5,c#6] ~@5", // C#5
AM: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6] ~ c#6 ~@3", // F#5 C#5
AN: "~@4 [c#5,g#5,c#6]@2 ~ [c#5,f#5,c#6] ~@2 [c#5,g#5,c#6] ~@5", // C#5 F#5 C#5
AO: "~@4 [c#5,f#5,c#6]@2 ~ [c#5,g#5,c#6] ~@2 [c#5,g#5,c#6]@2 ~@4", // F#5 C#5
AP: "[[c#5,g#5,c#6] ~@3 [g#4,b4,f#5]@14 ~@10 b4 g#4 [f#4,g4] ~, ~ b5@3 ~@4]/2", AQ: "[c#4,g#4,c#5]@3 ~@5",
})).s("gm_overdriven_guitar").gain(0.41).pan(0.6)
// chords · brass section · "BRASS"
const brass_section = note(`<
A B C D E F G H I ~@8 J K L M J N ~ O ~@8 P K L Q R@2 ~ S T S D U V W X Y ~@8 J Z AA AB AC AD AE O ~@8 P K AF Z AG@2 D
AH AI AJ AK@2 AL@2 AM ~@9 AN@2 AO
>`.pickRestart({
A: "[b3,c#4,e4] ~ [c#4,c#5]@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,g#5] [e4,f#4,e5,f#5] [c#4,c#5] ~ [e4,e5] [f#4,f#5] ~@2", // C#m7 C# E F# G# Esus2 C# E …
B: "[g4,g5]@7 ~", // G
C: "~@2 c#4@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,f#5,g#5] [f#4,e5] [c#4,e4,c#5] ~ [e4,e5] [f#4,f#5] ~@2, ~@2 c#5 ~@13", // E F# G#7 F#7 C#m E F#
D: "[c#4,c#5]", // C#
E: "~@2 [c#4,c#5]@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,g#5] [e4,f#4,e5,f#5] [c#4,c#5] ~ [e4,e5] f#4@2 ~, ~@13 f#5 ~@2", // C# E F# G# Esus2 C# E
F: "[g4,g5]", G: "[f#4,f#5]@3 [e4,e5]", H: "[c#4,c#5]@15 ~", I: "[c#4,g#4,c#5] ~@3 [g#3,b3,f#4,b4]@11 ~, ~@4 c4 ~@11",
J: "[g#3,b3,e4]@15 ~", K: "[a#3,c#4,f#4]", L: "[c4,d#4,g#4]", M: "[a#3,c#4], f#4@7 ~",
N: "[a#3,c#4,f#4]@7 ~ [a3,c#4,e4,a4]@5 ~@3", O: "~ [g#3,b3,f#4,b4]@3", P: "[g#3,b3,e4]", Q: "[a#3,c#4,f#4]@13 ~@3",
R: "[[e4,b4,e5]@11 ~ [e4,b4,e5]@2 [f#4,c#5,f#5]@10 [g4,g5]@7 ~]/2", // E5 F#5 G
S: "~@2 [c#4,c#5]@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,f#5,g#5] [e4,f#4,e5] [c#4,c#5] ~ [e4,e5] [f#4,f#5] ~@2", // C# E F# G#7 Esus2 C# E F#
T: "[g4,g5] ~", // G
U: "~@2 [c#4,c#5]@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,g#5] [f#4,e5,f#5] [c#4,e4,c#5] ~ [e4,e5] [f#4,f#5] ~@2", // C# E F# G# F#7 C#m E F#
V: "[g4,g5]@13 ~@3", // G
W: "~@2 [c#4,c#5]@2 [e4,e5] ~ [f#4,f#5] ~ [g#4,g#5] [e4,f#4,e5,f#5] [c#4,c#5] ~ [e4,e5] [f#4,f#5] ~@2", // C# E F# G# Esus2 C# E F#
X: "[d#4,a#4,c#5,f#5]@3 [c#5,f#5] ~ [d#4,c#5,f#5] ~ [d#4,f#5], ~@6 [d#4,a#4] ~@7 [a#4,c#5] ~", // D#m7 F#5 D#m7 D#m D#5 A#m
Y: "~ [a4,c5,e5,g5] ~ [a4,c5,e5,g5] ~ [a4,c5,e5,g5] ~ [a4,c5,e5,g5]", Z: "[a#3,c#4,f#4]@15 ~", AA: "[g#3,d#4,g#4]",
AB: "[a#3,c#4,f#4]@7 ~, f#3@9 ~@7", AC: "[g#3,e4], b3@7 ~", AD: "[a#3,c#4,f#4] [g3,g4]", AE: "[e3,e4]",
AF: "[c4,d#4,g#4]@15 ~", AG: "[[e4,e5]@11 ~ [e4,e5]@2 [f#4,f#5]@10 [g4,g5]@8, d5 ~@31]/2",
AH: "[b3,b4]@2 [c#4,c#5] ~@3 [c#4,c#5]@9 ~", AI: "[e4,e5]", AJ: "[f#4,f#5] g5, ~@4 g4@3 ~",
AK: "[[c#4,c#5] ~@3 c#5@2 [b3,b4]@4 [c#4,c#5]@10 [c#4,c#5]!2 [b3,b4] ~ [c#4,c#5]@8, ~@4 c#4 ~@27]/2", // C# B C# B C#
AL: "[[e4,e5]@14 [f#4,f#5]@9 ~ [g#4,g#5]@2 ~@2 [b4,b5]@2 ~@2, ~@28 a5 ~@3]/2", AM: "[c#5,c#6] ~@3",
AN: "[~@4 [g#3,b3,f#4,b4]@25 ~@3]/2", AO: "[c#3,c#4,c#5] ~@7",
})).s("gm_brass_section").gain(0.5)
// chords · piano · "A.PIANO"
const piano = note(`<
A B@2 C@2 D E F G H I J@3 K L M N K O P Q R S G T U T@3 V T@2 W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM V AN AO@2
V AP AN AQ AR AS AT AU AV AW AX AN V AO AY AN V AN@2 AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR BS@2 BT
BU BV BW@2 BX
>`.pickRestart({
A: "[c#3,g#3,b3,c#4,e4] ~@7", B: "[[a3,c#4,e4]@19 ~@5 [a2,a3,e4,a4]@6 ~@2, a2@21 ~@11]/2",
C: "[[g#3,b3,c#4,e4]@19 ~ [b3,c#4,e4] ~ [b3,c#4,e4]@3 ~ [b3,c#4,e4]@3 ~@3, c#3@11 ~@5]/2", D: "[a2,a3,e4,a4]@3 ~",
E: "[g#2,g#3,c4,d#4,g#4]@13 ~@3", F: "[c#3,b3,c#4,e4]@3 ~, g#3@5 ~@3",
G: "[c#3,g#3,b3,c#4,e4] ~@3 [g#2,b3,f#4,b4]@9 ~@3", H: "[g#3,b3,c#4,e4], c#3@3 ~@5", I: "[f#3,a#3,c#4]@13 ~@3",
J: "[[c#3,g#3,b3,c#4,e4]@23 ~@5 [g#3,b3,c#4] c#3 [g#3,b3,c#4] ~ [g#3,b3,c#4,e4]@13 ~@3, ~@31 c#3@15 ~@2]/3", // C#m7 C#7 C#m7
K: "[f#3,a#3,c#4,f#4]@13 ~@3", L: "[c#3,g#3,b3,c#4,e4]",
M: "c#3 ~ [g#3,b3,c#4,e4] ~ c#3 [g#3,b3,c#4,e4] ~ c#3 c#4 c#4@5 g#3 ~, ~@4 [g#3,b3,e4]@3 ~", N: "[e3,g#3,b3,e4]@3 ~",
O: "[g#3,c4,d#4,g#4]@13 ~@3", P: "[a#3,c#4,f#4]@9 ~ [a#3,c#4,f#4] ~@5, f#3@5 ~@3",
Q: "g#3@5 ~ g#3@3 ~ [g#3,b3,e4]@4 g#3 ~, e3@13 ~@3, [b3,e4]@9 ~@7", R: "[f#3,a#3,c#4,f#4]@3 ~ [a3,c#4,e4,a4]@2 ~@2",
S: "[c#3,g#3,b3,c#4,e4]@7 ~", // C#m7
T: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~", // C#m
U: "[a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4] ~, ~@7 f#4", // F# A#m
V: "[a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~", // F#
W: "g#3@6 ~@4 b3@2 e4@2 b3 ~, g#4@7 ~, e4@11 ~@5, b3@4 g#3@3 ~, e3@5 ~ e3@8 ~@2",
X: "[a#3,c#4,f#4]@6 ~@2 [c#4,f#4]@5 ~ f#3 ~, f#3@5 ~ f#3@7 ~@3", // F# F#5
Y: "[g#3,c4,d#4]@4 g#3@5 ~ [g#3,c4,d#4,g#4]@4 g#3 ~, g#4@9 ~@7", // G#
Z: "[f#3,c#4]@4 a#3 ~ [f#3,a#3,c#4] ~ [f#3,a#3,c#4,f#4] ~ [f#3,a#3,c#4,f#4]@3 ~ a#3 ~, f#4@7 ~@9, a#3@3 ~@13", // F#5 F#
AA: "[g#3,b3,e4]@3 ~ g#3@3 ~ g#3@2 e3@2 [b3,e4]@2 g#3 ~, e3 ~, ~@4 [b3,e4]@7 ~ g#3 ~@3", // E E5
AB: "[f#3,c#4,f#4]@4 a#3 ~@3 [e3,a3,c#4,e4]@4 ~@4, a#3@3 ~@13", // F#5 A
AC: "[b3,c#4,e4,g#4]@2 g#3 ~ [c#4,f#4,a#4]@3 g#3 c#4@5 ~ c#4@2, c#3@13 ~@3, g#3 ~@7 [e4,g#4]@8", // C#m7 F# E
AD: "g#3 ~ g#3 ~ [c#4,a#4]@2 f#4 g#3 [c#4,e4,g#4]@5 ~@3, ~@4 f#4 ~@11", AE: "[a3,c#4,e4]@6 ~ a3, b3@5 ~@11",
AF: "~@2 [a3,e4,a4]@3 ~ [a3,e4,a4] ~ [a3,e4,a4]@5 ~@3", // A5
AG: "[g#3,e4,g#4] ~ g#3@2 [c#4,f#4,a#4]@3 ~ [c#4,e4]@3 ~ [c#4,e4] ~ [c#4,e4,g#4] g#3, c#4 ~@3 g#4@2 ~@2", // C#m F# C#m
AH: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,f#4,a#4]@2 c#4 g#3 c#4@2 g#3@2 c#4@2 g#3 ~, ~@4 [e4,g#4]@3 ~", // C#m F# E
AI: "[a3,a4]@4 [e4,a4] ~ a3@3 ~ a3@4 c#4@2, e4@3 ~@3 [e4,a4]@10", // A A5
AJ: "a3 ~ [c#4,e4,f#4,a4]@4 a3@2 c#4@2 a3@2 c#4@2 a3 ~, ~@2 a3@3 ~@3 [e4,f#4,a4]@5 ~@3", // F#m7
AK: "[a#3,b3] ~ [a#3,d#4]@3 ~ [a#3,c#4,d#4,f#4]@3 ~ [a#3,c#4,d#4,f#4]@4 ~@2, [c#4,f#4]@5 ~@11, d#4 ~@7", // Bmaj7 D#5 D#m7 F#5
AL: "~@2 [d3,a3,c4,e4,g4]@3 ~ [d3,a3,c4,e4,g4]@3 ~ [d3,a3,c4,e4,g4]@3 ~ [a3,c4,e4,g4] ~, ~@7 d3", // Am7
AM: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,f#4,a#4] ~ [c#4,f#4,a#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~, c#3@3 ~@5", // C#m F# C#m
AN: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,f#4,a#4]@3 ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~", // C#m F# C#m
AO: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,f#4,a#4] ~ [c#4,f#4,a#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~", // C#m F# C#m
AP: "[g#3,c#4,e4,g#4] ~ [g#3,c#4,e4,g#4] ~ [c#4,f#4,a#4]@3 ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~", // C#m F# C#m
AQ: "[e3,b3]@3 ~ b3@2 ~@6 b3@2 g#3@2, [e4,g#4]@6 g#3@7 ~@3, g#3@4 e3@9 ~@3, ~@2 b3 ~, ~@5 e4@2 ~", // E5 E
AR: "f#3@2 a#3@2 ~@2 a#3@3 ~ a#3@2 ~@2 a#3 ~, [c#4,f#4]@5 ~ c#4@9 ~, a#3 ~@3 f#3@6 ~@2 f#3@4, ~@6 f#4@7 ~@3", // F#5
AS: "g#3@2 c4@2 ~@2 [d#4,g#4]@4 g#3@2 [d#4,g#4]@2 g#3 ~, [d#4,g#4]@4 g#3@5 ~@7", // G#5
AT: "[f#3,a#3,c#4,f#4] ~ f#3@2 ~@6 c#4@2 f#4 ~ a#3 ~, ~ f#4@4 ~@3, ~@2 [a#3,c#4]@6 a#3@5 ~@3, ~@3 f#3@4 ~", // F# A#m
AU: "[g#3,b3,e4]@2 ~@2 [g#3,b3,e4]@3 ~ [g#3,b3,e4] ~ [b3,e4]@4 g#3 ~, e3@6 ~ e3@8 ~, ~@5 g#3 ~@2", // E E5
AV: "a#3@3 ~ a#3 ~@3 [e3,a3,c#4,e4]@5 ~@3, [f#3,c#4,f#4]@3 ~@5", // A F#5
AW: "[g#3,b3,c#4,e4]@2 ~@2 [g#3,b3,e4]@3 c#3 [g#3,b3,c#4,e4] ~ c#3 ~ [a#3,c#4,f#4]@3 ~, c#3@4 c#4 ~@11", // C#m7 E C#m7 F#
AX: "[c#3,g#3,b3,c#4,e4] ~@3 [b3,f#4,b4]@9 ~@3, ~ g#2@3", // C#m7 B5
AY: "[c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,f#4,a#4]@2 f#4 ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~ [c#4,e4,g#4] ~", // C#m F# C#m
AZ: "e3@3 ~@7 e4@4 g#3@2, g#4@7 ~, e4@8 b3@5 ~ b3 ~, [g#3,b3]@6 g#3@7 ~@3, ~@4 e3@9 ~@3", // G#m
BA: "f#3@2 a#3@2 ~@2 [a#3,c#4,f#4]@4 f#3@2 [a#3,c#4]@3 f#3, [c#4,f#4]@4 f#3@5 ~@3 f#4 ~@3", // F# A#m F#5
BB: "[g#3,d#4,g#4]@4 [d#4,g#4]@2 g#3@2 [c4,d#4,g#4] ~ [g#3,c4,d#4,g#4]@4 g#3 ~", // G#5 G#
BC: "[f#3,a#3,c#4,f#4] ~ [f#3,a#3,c#4,f#4]@4 f#3@2 [a#3,c#4,f#4]@3 ~ [a#3,c#4,f#4]@2 f#3 ~, ~@11 f#3@2 ~@3", // F#
BD: "[g#3,b3,e4]@2 ~@2 [g#3,b3,e4]@3 e3 [g#3,b3,e4] ~ [e3,g#3,b3,e4]@4 e3@2, e3@7 ~@7 g#3 ~", // E
BE: "[f#3,a#3,c#4,f#4]@4 [c#4,f#4] ~ f#3 ~ [e3,a3,c#4,e4]@5 ~@3, ~@2 a#3 ~@5", // F# F#5 A
BF: "[g#3,e4]@2 ~@2 [g#3,b3,e4]@2 g#3 c#3 ~@2 c#3 ~ [a#3,c#4,f#4] ~ c#3 ~, c#3 ~@3, [b3,c#4] ~@3 c#4 ~@11", // C#m E F# Bsus2
BG: "[g#3,b3,e4]@2 c#3 ~ [g#3,b3,c#4,e4] c#3 ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] c#3 ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~, c#4 ~@12 c#3@3", // E C#m7
BH: "[g#3,b3,e4]@3 ~ [g#3,b3,e4]@3 ~ [g#3,b3,e4] ~ [e3,g#3,b3,e4]@4 [e3,g#3] ~, e3@9 ~@7", // E
BI: "[f#3,f#4]@4 a#3@2 f#3 ~ a3@4 a3 ~ e3@2, [a#3,c#4]@3 ~ c#4 ~@3 [e3,c#4,e4]@6 ~@2", // F# A#m C#m
BJ: "[g#3,b3,e4]@2 ~@2 [a#3,c#4,f#4]@3 c#3 [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4]@2 c#3 [g#3,b3,c#4,e4] c#3@2, c#3 ~@3, c#4 ~@15", // E F# C#m7
BK: "[g#3,b3,c#4,e4]@2 c#3@2 [a#3,c#4,f#4]@2 ~ c#3 [g#3,b3]@4 g#3@3 ~, c#3 ~@7 [c#4,e4]@6 ~@2", // C#m7 F# G#m C#m
BL: "[e3,g#3,b3,e4]@3 ~ [g#3,b3,e4]@2 ~@4 [b3,e4]@4 [e3,g#3] ~, ~@3 e3@3 ~@2, ~@10 g#3@3 ~@3", // E E5 E
BM: "[f#3,a#3,c#4,f#4]@5 ~@3 [g#3,c4,d#4,g#4]@2 ~@2 [b3,d#4,f#4,b4]@3 ~", // F# G# B
BN: "c#3@4 [g#3,b3,c#4,e4]@3 c#3 ~@2 c#3!2 [g#3,b3]@2 c#3@2, ~@12 [c#4,e4] ~ e4 ~", // C#m7 G#m C#m
BO: "~ [c#3,c#4]@3 [e3,e4]@3 [c#3,c#4]@2 ~ b2@2 [b3,c#4]@2 b2 ~", // C# E C# Bsus2
BP: "e3 ~ c#3@2 [g#3,b3,c#4,e4]@3 c#3 [a#3,c#4,f#4] ~ c#3@2 [g#3,b3]@2 c#3 ~, ~@12 [c#4,e4] ~@3", // C#m7 F# G#m C#m
BQ: "[a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4]@3 ~", // F#
BR: "[g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [a#3,c#4,f#4]@3 ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~@2 [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4]", // C#m7 F# C#m7
BS: "[~@2 [g#3,b3,c#4,e4] ~ [a#3,c#4,f#4]@4 [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~@2 [g#3,b3,c#4,e4] ~ [g#3,b3,e4]@2 ~ [g#3,b3,c#4,e4] ~@3 [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~, ~@15 c#4 ~@16]/2", // C#m7 F# C#m7 E C#m7
BT: "[a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~@2 [a#3,c#4,f#4] ~ [a#3,c#4,f#4] ~@2 [a#3,c#4,f#4]@2 ~@2", // F#
BU: "[g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [a#3,c#4,f#4]@3 ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~", // C#m7 F# C#m7
BV: "[g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4] ~ [a#3,c#4]@3 ~ [g#3,b3,c#4,e4] ~ [g#3,b3,c#4,e4]@3 ~ [g#3,b3,c#4,e4] ~, ~@4 f#4 ~@11", // C#m7 A#m C#m7
BW: "[[g#3,b3,c#4,e4] ~@3 g#2@20 ~@2 g#2@2 b2@2 g#2 ~, ~ [b3,f#4,b4]@6 ~]/2", BX: "[c#2,g#3,b3,c#4,e4] ~, c#3@5 ~@11",
})).s("gm_piano").gain(0.3).pan(0.3)
// chords · rock organ · "ELEC ORGAN"
const rock_organ = note(`<
A B@2 C@3 D E F ~@8 G H I J G K L M ~@8 G H N O P@2 Q@4 R@2 B@2 S T U V@2 W X Y Z AA AB AC N O AD AE AF AG AH AI AJ AK
AL S AM AN AB AC N O AO@2 AP@2 AB AQ AR@2 AB AS AT AU AV@3 AW AX AY AZ BA BB@2 BC
>`.pickRestart({
A: "[b4,c#5,e5]@5 ~@11", B: "[[a4,c#5,e5]@31 ~]/2", C: "[b4@32 a4@15 ~, [c#5,e5]]/3",
D: "[g#4,c5,f#5] ~ [g#4,f#5]@13 ~, ~ c5@4 ~@3", E: "[b4,c#5,e5]", F: "~ [b4,f#5,b5]@2 ~", G: "[b4,e5]",
H: "[c#5,f#5]", I: "[d#5,g#5]", J: "[c#5,f#5]@15 ~", K: "[c#5,f#5]@8 [e5,g5]@7 ~",
L: "~@5 [g#4,b4,c#5] ~ [g#4,b4,c#5]", M: "~@4 [b4,f#5,b5]@11 ~", N: "[g#4,d#5,g#5]", O: "[f#4,c#5,f#5]@15 ~",
P: "[g#4 g#4@13 [f#4,c#5,f#5]@9 ~ [a4,e5,g5]@6 ~@2, [b4,e5]@7 ~@9]/2", // F#5 A7 E5
Q: "[[g#4,b4,c#5]@9 ~ [g#4,b4,c#5]@2 ~@2 [g#4,b4]@6 [b4,e5]@5 ~ [b4,c#5,e5]@3 ~ b4@2 a4@31 ~, ~@7 c#5@6 ~@2 [c#5,e5]@17]/4", // C#7 G#m E5 C#m7 C#m
R: "[[b4,c#5,e5]@31 ~]/2", S: "[a#4,c#5,f#5]",
T: "~@2 [a4,c5,e5,g5]@2 ~@2 [a4,c5,e5,g5]@3 ~ [a4,c5,e5,g5]@3 ~ [a4,c5,e5,g5] ~", // Am7
U: "[b4,c#5,e5] ~ [b4,c#5,e5] ~ [f#5,a#5]@4 [e5,g#5]@7 ~, ~@4 c#5@11 ~", // C#m7 F# E
V: "[f#5@8 f#4@7 ~ [b4,e5]@3 ~ [f#5,a#5]@4 [e5,g#5]@8, c#5@19 ~ c#5@12, a#4@15 ~@17]/2", // E5 F# E
W: "g#4 ~ g#4@2 [a#4,c#5,f#5]@4 [g#4,c#5,e5]@7 ~", X: "[g#4,c#5,e5]@4 [a#4,c#5,f#5]@3 ~ [g#4,c#5,e5]@7 ~",
Y: "[f#4,a#4,c#5]@15 ~", Z: "[g#4,b4,c#5]@3 ~ [a#4,f#5]@3 ~ [b4,e5]@8, ~ c#5@3, ~@8 g#4@5 ~@3",
AA: "[g#4,c#5] ~ g#4 ~ [a#4,f#5]@3 ~ [g#4,b4,e5]@7 ~, ~@4 c#5@11 ~", AB: "[e4,b4,e5]", AC: "[f#4,c#5,f#5]",
AD: "[g#4,b4,e5]", AE: "[f#4,c#5,f#5]@4 [e5,g5]@3 ~, ~ a4",
AF: "[g#4,b4]@3 ~ [g#4,b4]@2 ~ [g#4,b4,c#5] ~@2 [g#4,b4,c#5]@3 ~ [g#4,b4,c#5]@2, c#5@7 ~@9", // G#m C#7
// … 114 more lines
More by Gary Moore
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.