0:00/0:00
// The Night: Nights in White Satin — The Moody Blues
// 76 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: pitch bends are ignored
// note: Full arrangement: all 87 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): OVERDRIVE.
setcpm(76/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 · fretless bass · "FRETLESS"
const bass = note(`<
~ A B C@2 D E@3 F@2 G E@3 H@2 I J K L M@3 N O@2 P@3 N O@2 Q@2 I J K L R@3 S@2 T U@2 V W@2 X Y Z AA AB AC AD AE AF@2
AG@3 AH@2 AD AE AI AJ AK AL@2 AM@2 AD AE AN AO@2 AP@2 AQ AR AS@2 AT AU
>`.pickRestart({
A: "~@6 d2@5 ~", B: "~@3 b1@3 e2@11 ~ e3@3 d3@3", C: "[d2@11 ~@3 b1 b1@2 ~ e2@17 ~ d2@11 ~]/2",
D: "~@2 b1 b1@2 ~ e2@17 ~", E: "[d2@14 ~ d2@2 ~ c2@14 ~ c2@2 ~ g2@14 ~ g2@2 ~ f2@14 ~ f2@2 ~]/3",
F: "[e2@18 e2@17 ~ d2@11 ~]/2", G: "~@2 b1 b1@2 ~ e2@14 ~ e2@2 ~", H: "[e2@14 ~ e2@2 ~ a1@9 a1@9 a1@9 a1@3]/2",
I: "a1!2 c2@3 c2@3", J: "c2@9 c2@3 c2@3 c2@3 e2@3 e2@2 ~", K: "e2@2 ~ e2@3 e2@2 ~ e2@3 d2@2 ~ d2@2 ~ d2@2 ~ d2@3",
L: "d2@2 ~ d2@3 e2@2 ~ e2@2 ~ e2@2 ~ e2@3 e2@2 ~ e2@3",
M: "[d2@2 ~ d2@2 ~ d2@2 ~ d2@3 d2@2 ~ d2@3 e2@8 ~ e2@8 ~ d2@17 ~ e2@9 e3@6 b2@3]/3", N: "d2@14 ~ d2@2 ~ c2@5 ~",
O: "[e2@2 ~ e2@5 ~ c2@2 ~ g2@14 ~ g2@2 ~ f2@14 ~ f2@2 ~]/2", P: "[e2@17 ~ e2@14 ~@4 d2@17 ~ e2@9 e3@6 b2@3]/3",
Q: "[e2@17 ~ a1@9 a1@9 a1@9 a1@3]/2",
R: "[d2@2 ~ d2@2 ~ d2@2 ~ d2@3 d2@2 ~ d2@3 e2@8 ~ e3@3 b2@3 g2@3 e2@18 e2@10 e3@4 ~ e3@3]/3",
S: "[d3@10 d3@4 ~ d3@3 c3@9 c3@7 g2 ~ b2@9 b2@3]/2", T: "b2@3 b2@3 e2@11 ~ e3@3 b2@3",
U: "[d2@11 ~ d3@3 a2@3 c2@11 ~ g1@3 c2@3 b1@11 ~]/2", V: "b1@2 ~ b1@2 ~ e2@11 ~ e3@3 b2@3",
W: "[c2@11 ~ c2@2 ~ c2@2 ~ e2@11 ~ e3@3 b2@3 c2@11 ~]/2", X: "c2@2 ~ c2@2 ~ a1@4 a1 ~ a1@3 a1@3 a1@3 a1@3",
Y: "b1@11 ~ b1@2 ~ b1@2 ~ a1@3 a1!2 ~", Z: "a1@2 ~ a1@2 ~ a1@2 ~ a1@2 ~ b1@2 ~ b1@2 ~ b1@2 ~ b1@2 ~",
AA: "b1@2 ~ b1@2 ~ e2@3 e2@2 ~ e2@2 ~ e2@3 e2@2 ~ e2@3", AB: "d2@2 ~ d2@2 ~ d2@2 ~ d2@3 d2@2 ~ d2@3 c2@2 ~ c2@2 ~",
AC: "c2@2 ~ c2@3 c2@2 ~ c2@3 e2@2 ~ e2@2 ~ e2@2 ~ e2@3", AD: "e2@2 ~ e2@3 d2@2 ~ d2@2 ~ d2@2 ~ d2@3 d2@2 ~ d2@3",
AE: "e2@2 ~ e2@2 ~ e2@2 ~ e2@3 e2@2 ~ e2@3 d2@2 ~ d2@2 ~", AF: "[d2@2 ~ d2@3 d2@2 ~ d2@3 e2@8 ~ e2@8 ~ d2@17 ~]/2",
AG: "[e2@9 e3@6 b2@3 d2@14 ~ d2@2 ~ c2@5 ~ e2@2 ~ e2@5 ~ c2@2 ~ g2@14 ~ g2@2 ~]/3",
AH: "[f2@14 ~ f2@2 ~ e2@17 ~ e2@3 e2@2 ~ e2@2 ~ e2@3]/2", AI: "d2@2 ~ d2@3 d2@2 ~ d2@3 c2@2 ~ c2@2 ~ c2@2 ~ c2@3",
AJ: "c2@2 ~ c2@3 g2@2 ~ g2@2 ~ g2@2 ~ g2@3 g2@2 ~ g2@3", AK: "f2@2 ~ f2@2 ~ f2@2 ~ f2@3 f2@2 ~ f2@3 e2@2 ~ e2@2 ~",
AL: "[e2@2 ~ e2@3 e2@2 ~ e2@3 a1@9 a1@9 a1@9 a1@3 a1@3 a1@3]/2",
AM: "[c2@9 c2@9 c2@9 c2@3 c2@3 c2@3 e2@3 e2@2 ~ e2@2 ~ e2@3]/2",
AN: "d2@2 ~ d2@3 d2@2 ~ d2@3 e2 ~ e2@2 e2 e2@2 ~ e2 ~ e2@2",
AO: "[e2 ~ e2@2 f#2 ~ f#2@2 ~ f#2 f#2@2 ~ g2 g2@2 ~ g2 g2@2 ~ a1@9 a1@9 a1@9]/2",
AP: "[a1!3 c2@3 c2@3 c2@3 c2!3 e2]/2", AQ: "e2@2 ~ e2@2 ~ e2@3 e2@2 ~ e2@3 d2@2 ~ d2@2 ~ d2@2 ~",
AR: "d2@3 d2@2 ~ d2@3 e2@2 ~ e2@2 ~ e2@2 ~ e2@3 e2@2 ~",
AS: "[e2@3 d2@2 ~ d2@2 ~ d2@2 ~ d2@3 d2@2 ~ d2@3 e2@14 e2 ~ e2!6 ~ e2!4]/2", AT: "e2!24", AU: "e2!3 e2@3 ~@18",
})).s("gm_fretless_bass").gain(0.52)
// chords · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note(`<
A B C D E C F G H I E C F G H J K L M N O P E C F G H I N O Q R S J T U V W X Y@2 Z AA@3 AB@3 AC@3 AD@3 AE AF AG AH AI
AJ AK AL AM AN AO AJ AP AQ AR AS AT@2 AU AV AW AP AX@3 AY AZ BA BB BC@3 ~
>`.pickRestart({
A: "~@3 [e3,g3,b3,e4]", // Em
B: "[g3,b3,e4]@2 [g3,b3] [e3,g3,b3,e4]@5 [g3,b3] [g3,b3,e4]@2 [g3,b3] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3", // Em G Em G Em G D D5 …
C: "[a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4]", // D D5 D D5 Em E5 Em E5 …
D: "[d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4]", // D D5 D D5 D D5 D D5 …
E: "[b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3", // Em E5 Em E5 Em E5 D D5 …
F: "[d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [g3,c4,e4,g4]@3 [c4,e4,g4]@2 [c4,e4]", // D D5 D D5 D D5 D D5 …
G: "[c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@3 [c4,e4,g4]@2 [c4,e4] [c4,e4,g4]@2 [c4,e4] [g3,b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@3", // C G Bm G Bm G
H: "[b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4] [f3,a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4]", // G Bm G Bm F Am F Am …
I: "[e3,g3,b3,e4]@5 [g3,b3] [g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4]", // Em G Em E5
J: "[e3,g3,b3,e4]@5 [g3,b3] [g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4]", // Em G Em A
K: "[a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [a3,c#4,e4]@3 [e3,a3,c#4,e4]@3", // A
L: "[e3,a3,c#4,e4]@3 [a3,c#4,e4]@3 [g3,c4,e4,g4]@5 [c4,e4] [c4,e4,g4]@3 [g3,c4,e4,g4]@5 [c4,e4] [c4,e4,g4]@3", // A C
M: "[g3,c4,e4,g4]@5 [c4,e4] [c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [c4,e4,g4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4]", // C Em E5
N: "[b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3", // Em E5 Em E5 Em E5 D D5 …
O: "[d3,a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4]", // D D5 D D5 Em E5 Em E5 …
P: "[d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4]", // D D5 D D5 D Em E5
Q: "[d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [g3,c4,e4,g4]@3 [c4,e4,g4]@2 [c4,e4]", // D D5 D D5 D D5 D D5 …
R: "[c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@2 [c4,e4] [c4,e4,g4]@2 [c4,e4] [g3,b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@3", // C G Bm G Bm G
S: "[g3,b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4] [f3,a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@3 [f3,a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4]", // G Bm G Bm F Am F Am …
T: "[e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3", // A
U: "[e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3 [g3,c4,e4,g4]@5 [c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@5 [c4,e4] [g3,c4,e4,g4]@3", // A C
V: "[g3,c4,e4,g4]@5 [c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4]", // C Em E5
W: "[e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3", // Em E5 Em E5 Em E5 D D5 …
X: "[d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4]", // D D5 D D5 Em E5 Em E5 …
Y: "[[d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [e3,g3,b3,e4]@18 ~@12]/2", // D D5 D D5 D Em
Z: "~@13 e4@4 ~@5 e4 ~, ~@3 e2@5 ~@2 g3@2, ~@6 g3@3 e4@3 b3@4 ~@2 e4@4 ~@2, ~@7 b3@3 g3@4 ~@3 [e3,b3]@4 [e3,b3]@3", // E5
AA: "[~@4 g4@2 ~ g4@2 ~@7 d4 ~@5 e4@2 ~@6 c4@2 ~@2 [g2,g3] ~@5 f#3@2 ~ f#3@2 ~@2 f#3 b3@2 ~@2 f#3 ~@10 g3@2 ~@5 e4 ~, f#3@12 ~@2 d4@2 ~@2 e3@4 ~@5 e3@9 d#3@4 ~@5 d#3@9 ~@3 e4@4 e4@4 ~ e4@4 ~@2, d3@10 ~ d3@4 [d3,a3]@3 c3@9 c3@7 ~@2 b2@9 b2@6 [f#2,b3]@3 e2@9 ~@5 g3@4, ~ a3@2 f#4@3 f#4@2 ~ f#4@9 ~@3 c4@3 c4@4 ~ g3@3 g3@2 ~@5 a3@6 ~@5 f#3@2 ~@2 g3@4 g3@4 ~ e3@6 [e3,b3]@3, ~@3 d4@7 ~@2 e4@4 ~@3 g3@4 ~@2 e4@6 ~@2 c4@3 ~ b3@4 ~ b3@4 ~@9 b3@4 ~ b3@4 ~ b3@4 ~@3]/3", // G D5 B5 E5
AB: "[~@4 g4@2 ~ g4@2 ~@7 d4 ~@5 e4@2 ~@6 c4@2 ~@2 g3 ~@5 f#3@2 ~ f#3@2 ~@2 f#3 b3@2 ~@2 f#3 ~@13 b3@2 ~@2 g3 ~, f#3@12 e4@4 ~@3 g3@4 ~@2 e4@6 ~@8 a3@6 ~@5 f#3@2 ~@2 g3@4 g3@4 ~ e3@6 [e3,b3]@3, d3@9 d3@6 [d3,a3]@3 c3@9 c3@6 [g2,c4]@3 b2@9 b2@6 [f#2,b3]@3 e2@9 g3@4 ~ g3@2 ~@2, ~ a3@2 f#4@3 f#4@2 ~ f#4@9 ~@3 c4@3 c4@4 ~ g3@3 g3@2 ~@3 b3@4 ~ b3@4 ~@9 e4@4 ~ e4@4 e4@7 ~, ~@3 d4@7 a3@4 d4@2 ~@2 e3@4 ~@5 e3@9 d#3@4 ~@5 d#3@9 ~@3 b3@5 b3@4 ~@6]/3", // E5 D5 C5 B5
AC: "[~@4 c4@2 ~@6 c4@2 ~@2 g3 ~@13 b3@2 ~@2 g3 ~@5 c4@2 ~@6 c4@2 ~@2 g3 ~@5 c4@2 ~@10 a3 ~, c3@9 e3@9 ~ e4@3 g3@4 ~ e3@6 [e3,b3]@3 c3@9 c3@6 [g2,c4]@3 a2@9 [a2,e3]@6 [e2,e3]@3, e3@3 e4@3 e4@3 c3@6 [g2,c4]@3 e2@9 g3@4 ~ g3@2 ~@2 e3@4 ~@5 e3@9 e3@4 ~@10 a3@2 ~@2, ~ g3@4 ~@2 c4@4 g3@3 g3@2 ~@2 g3@3 b3@5 b3@4 ~@7 g3@4 ~@2 c4@4 g3@3 g3@2 ~@3 a3@4 ~@2 c4@4 ~ c4@6, ~@24 e4@4 e4@7 ~@4 e4@3 e4@4 ~@11 e4@3 e4@4 ~ e4@7]/3", // E5 C5 A5 E C5
AD: "[~@4 f#3@2 ~ f#3@2 ~@2 f#3 b3@2 ~@2 f#3 ~@5 c4@2 ~@10 a3 ~@10 [b2,a3,d#4,f#4]@2 ~ [b2,a3,d#4,f#4]@2 ~@2 f#3 ~ [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4], b2@9 d#3@9 e3@3 e4@3 e4@4 ~ e4@7 ~@36, d#3@3 a3@6 b2@6 [f#2,b3]@3 a2@9 [a2,e3]@5 a3@2 ~@6 f#3@4 ~@3 f#3@4 ~@21, ~ b3@4 ~ b3@4 ~@4 f#3@2 ~@3 a3@4 ~@2 c4@4 ~ c4@6 ~ b3@4 ~@2 b3@4 ~@3 b3@4 ~@18, ~@11 [e2,e3] [b2,d#3,a3,d#4,f#4] [b2,a3,d#4,f#4]!2 ~@2 [b2,a3,d#4,f#4] ~@6]/3", // B7 Em E5 Em E5 Em E5 Em …
AE: "[d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [c3,g3,c4,e4]@3 [c3,g3,c4,e4]@2 [c3,g3,c4]", // D D5 D D5 D D5 D D5 …
AF: "[c3,g3,c4,e4]@2 [c3,g3,c4] [c3,g3,c4,e4]@3 [c3,g3,c4,e4]@2 [c3,g3,c4] [c3,g3,c4,e4]@2 [c3,g3,c4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@3", // C C5 C C5 C C5 Em E5 …
AG: "[e3,b3,e4,g4]@3 [e3,b3,e4,g4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4]", // Em D D5 D D5 D D5 D …
AH: "[e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4]", // Em E5 Em E5 Em D D5
AI: "[d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3", // D D5 D D5 D D5 Em E5 …
AJ: "[e3,b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4]", // Em E5 Em E5 D D5 D D5 …
AK: "[e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4]", // Em E5 Em E5 Em E5 Em E5 …
AL: "[a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [a3,d4] [a3,d4,f#4]@2 [a3,d4] [g3,c4,e4,g4]@3 [c4,e4,g4]@2 [c4,e4] [c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@3", // D D5 D D5 D D5 C
AM: "[g3,c4,e4,g4]@2 [c4,e4] [c4,e4,g4]@2 [c4,e4] [g3,b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@3 [g3,b3,d4,g4]@2 [b3,d4] [b3,d4,g4]@2 [b3,d4]", // C G Bm G Bm G Bm G …
AN: "[f3,a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@3 [f3,a3,c4,f4]@2 [a3,c4] [a3,c4,f4]@2 [a3,c4] [e3,g3,b3,e4]@5 [g3,b3]", // F Am F Am F Am F Am …
AO: "[g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3", // Em E5 Em E5 Em
AP: "[e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4]", // Em E5 Em E5 Em E5 Em E5 …
AQ: "[d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4] [g3,c4,e4,g4]@3 [c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@3", // D D5 D D5 D D5 C
AR: "[g3,c4,e4,g4]@2 [c4,e4] [g3,c4,e4,g4]@2 [c4,e4] [g3,b3,d4,g4]@3 [b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@3 [g3,b3,d4,g4]@2 [b3,d4] [g3,b3,d4,g4]@2 [b3,d4]", // C G Bm G Bm G Bm G …
AS: "[f3,a3,c4,f4]@3 [a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@3 [f3,a3,c4,f4]@2 [a3,c4] [f3,a3,c4,f4]@2 [f3,a3,c4] [e3,g3,b3,e4]@5 [g3,b3]", // F Am F Am F Am F Em …
AT: "[[e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,g3,b3,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3]/2", // Em A
AU: "[g3,c4,e4,g4]@5 [c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@5 [c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@5 [c4,e4]", // C
AV: "[g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [e3,b3,e4,g4]@3 [b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@3", // C Em E5 Em E5 Em
AW: "[e3,b3,e4,g4]@2 [b3,e4] [e3,b3,e4,g4]@2 [b3,e4] [d3,a3,d4,f#4]@3 [a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@2 [a3,d4]", // Em E5 Em E5 D D5 D D5 …
AX: "[[d3,a3,d4,f#4]@2 [a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [e3,g3,b3]@25 [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 ~ g4@2 [e3,a3,c#4,e4]@5 [e3,a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [e3,a3,c#4] [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@5 [e3,a3,c#4] [e3,a3,c#4,e4]@3, ~@12 e4@16 ~@14 [e3,b3,e4]@3 ~@27]/3", // D D5 D Em A E5
AY: "[e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3 [e3,a3,c#4,e4]@3 [g3,c4,e4,g4]@5 [g3,c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@5 [g3,c4,e4]", // A C
AZ: "[g3,c4,e4,g4]@3 [g3,c4,e4,g4]@5 [g3,c4,e4] [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [g3,c4,e4,g4]@3 [e3,b3,e4,g4]@3", // C Em
BA: "[e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4]", // Em E5 Em E5 Em E5 Em E5 …
BB: "[d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@2 [e3,b3,e4] [e3,b3,e4,g4]@3 [e3,b3,e4,g4]@2 [e3,b3,e4]", // D D5 D D5 Em E5 Em E5 …
BC: "[[e3,b3,e4,g4]@2 [e3,b3,e4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@2 [d3,a3,d4] [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [d3,a3,d4,f#4]@3 [e3,g3,b3,e4]@36 ~@15]/3", // Em E5 D D5 D D5 D Em
})).s("gm_acoustic_guitar_steel").gain(0.18).pan(0.6)
// chords · acoustic guitar steel · "STEEL GTR" · soft notes
const acoustic_guitar_steel_2 = note(`<
~ A B C D B E F G H D B E F G I J K L A M N D B E F G H A M O P Q I R S T U V W ~ X ~@16 Y Z AA AB AC AD AE Z AF AG AH
AI AJ AK AL AM AN AF AO ~@10
>`.pickRestart({
A: "e3@2 e3 ~@5 e3 e3@2 e3 ~@3 d3@2 d3 d3@2 d3 ~@3", B: "d3@2 d3 d3@2 d3 ~@3 e3@2 e3 e3@2 e3 ~@3 e3@2 e3 e3@2 e3",
C: "~@3 d3@2 d3 d3@2 d3 ~@3 d3@2 d3 d3@2 d3 ~@3 e3@2 e3", D: "e3@2 e3 ~@3 e3@2 e3 e3@2 e3 ~@3 d3@2 d3 d3@2 d3 ~@3",
E: "~@3 d3@2 d3 d3@2 d3 ~@3 d3@2 d3 d3@2 d3 ~@3 g3@2 g3", F: "g3@2 g3 ~@3 g3@2 g3 g3@2 g3 ~@3 g3@2 g3 g3@2 g3 ~@3",
G: "g3@2 g3 g3@2 g3 ~@3 f3@2 f3 f3@2 f3 ~@3 f3@2 f3 f3@2 f3", H: "~@5 e3 e3@3 ~@12 e3@2 e3", I: "~@5 e3 e3@3 ~@14 e3",
J: "e3@3 ~@5 e3 e3@3 ~@5 e3 e3@3 ~@3", K: "~@3 e3@3 ~@5 g3 g3@3 ~@5 g3 g3@3", L: "~@5 g3 g3@3 ~@6 g3@3 ~@3 e3@2 e3",
M: "~@2 d3 d3@2 d3 ~@3 e3@2 e3 e3@2 e3 ~@5 e3 e3@2 e3", N: "~@3 d3@2 d3 d3@2 d3 ~@12 e3@2 e3",
O: "~@3 d3@2 d3 d3@2 d3 ~@5 d3 d3@2 d3 ~@3 g3@2 g3", P: "g3@2 g3 ~@5 g3 g3@2 g3 ~@3 g3@2 g3 g3@2 g3 ~@3",
Q: "~@2 g3 g3@2 g3 ~@3 f3@2 f3 f3@2 f3 ~@5 f3 f3@2 f3", R: "~@8 e3 ~@8 e3 ~@6", S: "~@11 g3 ~@8 g3 ~@3",
T: "~@5 g3 ~@15 e3@2 e3", U: "~@2 e3 ~@5 e3 ~@2 e3 ~@3 d3@2 d3 ~@2 d3 ~@3",
V: "~@2 d3 ~@2 d3 ~@3 e3@2 e3 ~@2 e3 ~@5 e3 ~@2 e3", W: "~@3 d3@2 d3 ~@2 d3 ~@15", X: "~@5 g3 ~@2",
Y: "~@15 e3@2 e3 e3@2 e3 ~@3", Z: "~@2 e3 e3@2 e3 ~@3 d3@2 d3 d3@2 d3 ~@5 d3 d3@2 d3",
AA: "~@3 e3@2 e3 e3@2 e3 ~@5 e3 e3@2 e3 ~@3 d3@2 d3", AB: "d3@2 d3 ~@5 d3 d3@2 d3 ~@3 g3@2 g3 g3@2 g3 ~@3",
AC: "~@2 g3 g3@2 g3 ~@3 g3@2 g3 g3@2 g3 ~@5 g3 g3@2 g3", AD: "~@3 f3@2 f3 f3@2 f3 ~@5 f3 f3@2 f3 ~@5 e3",
AE: "e3@3 ~@12 e3@2 e3 e3@2 e3 ~@3", AF: "~@3 e3@2 e3 ~@2 e3 ~@5 e3 ~@2 e3 ~@3 d3@2 d3",
AG: "~@2 d3 ~@5 d3 ~@2 d3 ~@3 g3@2 g3 ~@2 g3 ~@3", AH: "~@2 g3 ~@2 g3 ~@3 g3@2 g3 ~@2 g3 ~@5 g3 ~@2 g3",
AI: "~@3 f3@2 f3 ~@2 f3 ~@5 f3 ~@8 e3", AJ: "~@17 e3 ~@6", AK: "~@2 e3 ~@8 e3 ~@12", AL: "~@5 g3 ~@8 g3 ~@8 g3",
AM: "~@15 e3@2 e3 ~@2 e3 ~@3", AN: "~@2 e3 ~@2 e3 ~@3 d3@2 d3 ~@2 d3 ~@5 d3 ~@2 d3", AO: "~@2 d3 ~@21",
})).s("gm_acoustic_guitar_steel").gain(0.09).pan(0.6)
// other · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
~@9 A@2 B@4 C@8 D@3 ~ E@2 F@4 G@8 ~@6 H I@3 J@3 K@3 L@3 M@3 ~ N@2 O@3 P@3 Q@3 R@8 S@4
>`.pickRestart({
A: "[~@18 e4@25 ~@2 d4 e4 ~]/2", B: "[f#4 g4 ~ f#4 d4 ~ e4@25 ~@2 d4 e4 ~ f#4 g4 ~ f#4 d4 ~ c4@18 b3@18 a3@18]/4",
C: "[g3@18 [a2,e3,a3]@36 [c3,g3,c4]@36 [e3,e4,e5]@18 e5@9 d5@9 [e3,e4]@18 ~@9 d5@9 e5@26 ~@4, ~@36 [d3,d4]@6 e5@9 ~@13, ~@24 [d3,d4]@3 ~@5]/8", // A5 C5 E D
D: "[~@3 e5@13 ~@5 c5@9 ~@6]/3", E: "[~@18 e4@26 ~ d4 e4 ~]/2",
F: "[f#4 g4 ~ f#4 d4 ~ e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~ c4@18 b3@18 a3@18]/4",
G: "[g3@18 ~@9 [c#4,a4]@27 [c3,c4,e4,c5]@36 [e3,e4,e5]@18 e5@9 d5@9 [e3,e4]@18 ~@9 d5@9 [e3,e4,e5]@28 ~@2, ~@6 [a2,e3,a3]@12 ~@18 [d3,d4]@6 e5@9 ~@13, ~@24 [d3,d4]@3 ~@5]/8", // F#m C E A5 D
H: "~@2 e4@5 d4", I: "[c4@5 d4 e4@5 d4 c4@5 b3 a3@6]/3", J: "[b3 a3 b3 [e3,g3,b3,e4]]/3",
K: "[e4 ~ f#4@16 [c3,g3,e4,g4]@18 g3@9 [g4,e5]@9 e5@9 d5@9, [d3,f#3,d4] ~ [e3,b3,e4] [d3,a3,d4,f#4]]/3", // C D E5 D
L: "[[g3,e5]@9 [g4,e5]@9 e5@9 d5@9 e5@26 ~ d5 e5 ~ f#5 ~@2 f#5 d5 ~, [e3,e4] [d3,a3,d4,f#4] ~@2]/3", // C E D
M: "[e5@26 ~ d5 e5 ~ f#5 ~@2 f#5 d5 ~ c5@18 b4@18]/3", N: "[~@12 e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~]/2",
O: "[e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~ c4@18 b3@18]/3", P: "[a3@2 g3@2 ~ [c#4,a4]@3, ~ [a2,e3,a3]]/3",
Q: "[[c3,c4,e4,c5]@4 [e3,e4,e5]@2 e5 d5, ~@3 [d3,d4]]/3", // C E D
R: "[[e3,e4]@6 ~@3 d5@3 [e3,e4,e5]@11 ~@3 [c#4,a4]@9 [c3,c4,e4,c5]@12 [e3,e4,e5]@6 e5@3 d5@3 [e3,e4,e5]@5, e5@9 ~@55, ~@6 [d3,d4]@6 ~@11 [a2,e3,a3]@12 ~@18 [d3,d4]@6 ~@5]/8", // E F#m C E D A5 D
S: "[~@12 d5@9 [e2,g3,b3,e4,e5]@56 ~@19, ~ [d3,d4]@6 ~@25]/4", // Em D
})).s("gm_string_ensemble_1").gain(0.39).pan(0.6)
// other · string ensemble 1 · "STRINGS" · soft notes
const string_ensemble_1_soft = note("<~@22 A B C D@2 E ~@11 F@2 G H@3 I@3 ~@11 J ~ K ~ L@2 ~@22>".pickRestart({
A: "~@21 d5 e5 ~", B: "f#5 g5 ~ f#5 d5 ~@19", C: "~@9 d5 e5 ~ f#5 g5 ~ f#5 d5 ~@7", D: "[~@2 b4@3 a4@3]/2",
E: "g4@3 ~", F: "[~@9 g4@14 ~]/2", G: "~ e4@3", H: "[d4 c4 b3 e4]/3", I: "[d4 c4 b3 ~]/3", J: "~@19 g5 ~@4",
K: "~@7 g5 ~@16", L: "[a4@3 g4@3 ~@2]/2",
})).s("gm_string_ensemble_1").gain(0.22).pan(0.6)
// other · violin
const violin = note("<~@21 A@2 B@4 C@2 D@4 E ~@24 F@2 G@3 H@3 I@3 J@2 ~@16>".pickRestart({
A: "[~@18 e5@26 ~ d5 e5 ~]/2", B: "[f#5 g5 ~ f#5 d5 ~ e5@26 ~ d5 e5 ~ f#5 g5 ~ f#5 d5 ~ c5@18 b4@18 a4@18]/4",
C: "[g4@18 e4@26 ~ d4 e4 ~]/2", D: "[f#4 g4 ~ f#4 d4 ~ e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~ c4@18 b3@18 a3@18]/4",
E: "g3@3 ~", F: "[~@12 e5@26 ~ d5 e5 ~ f#5 g5 ~ f#5 d5 ~]/2", G: "[e5@26 ~ d5 e5 ~ f#5 g5 ~ f#5 d5 ~ c5@18 b4@18]/3",
H: "[a4@18 g4@18 e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~]/3", I: "[e4@26 ~ d4 e4 ~ f#4 g4 ~ f#4 d4 ~ c4@18 b3@18]/3",
J: "[a3@3 g3@3 ~@2]/2",
})).s("gm_violin").gain(0.13).pan(0.3)
// drums · kick
const kick = s("bd").struct(`<
~ A B C D E C F E G H E C F E G I J K F E C H E C F E G H E C F E G I J K F E C L M N O M P O Q P O R S T U T V W C X
Y C F E C T Z AA T Z AA AB AC AD AE AF AA AG AH AI AJ Z AK AL AM ~@2 AN
>`.pickRestart({
A: "~@3 x!2 ~@3", B: "~ x!2 ~", C: "x ~ x ~@2 x!2 ~", D: "~@2 x!2", E: "~ x!2 ~ x ~@2 x", F: "x ~@2 x!2 ~ x ~",
G: "x ~ x ~ x!3 ~", H: "x ~ x!2", I: "~ x ~@2 x ~@2 x", J: "~ x!2 ~@2 x ~@2", K: "x ~@2 x ~ x!2 ~", L: "~@7 x",
M: "~ x ~@2", N: "x ~@2 x", O: "~ x", P: "x ~@4 x!2 ~", Q: "x!3 ~@5", R: "~@3 x ~@2 x ~@3 x ~@10 x ~@2",
S: "x ~@3 x!4", T: "x ~ x!5 ~", U: "~@2 x ~ x!4", V: "x!5 ~ x ~", W: "x!3 ~ x ~ x!2", X: "x ~ x!3 ~ x ~",
Y: "~@2 x ~ x ~@2 x", Z: "x!5 ~ x!2", AA: "x!3 ~ x!4", AB: "x ~ x!3 ~@2 x", AC: "~@2 x ~@2 x ~ x", AD: "x!8",
AE: "x!2 ~ x!4 ~", AF: "x!5 ~@2 x", AG: "x ~@8 x ~@2 x!2 ~@2 x ~ x ~ x ~ x ~",
AH: "x ~ x ~@2 x!2 ~@2 x!2 ~@2 x!2 ~@2 x!2 ~@2 x ~@2", AI: "~ x!2 ~ x!4", AJ: "~@2 x!6", AK: "x!2 ~ x!5",
AL: "~@2 x!4 ~ x", AM: "x!4 ~@3 x", AN: "~ x ~@6",
})).gain(0.37)
// drums · rim
const rim = s("rim").struct("<~@41 [~@5 x ~@2] [~@3 x ~@4] [~ x ~@5 x] ~@43>").gain(0.3)
// drums · snare
const snare = s("sd").struct(`<
~ A B C A B C A B C A B C A B D E F G A B H A B C A B C A B C A B I E F G A B J K ~@3 B C A B C A B C A L C M N C O B
C A B C A B C A B C O P Q R S C T U V W X V W Y ~@3
>`.pickRestart({
A: "~ x ~@5 x", B: "~@5 x ~@2", C: "~@3 x ~@4", D: "~@9 x ~@7 x ~@6", E: "~ x ~@2 x ~@2 x", F: "x!3 ~@2 x ~@2",
G: "x ~@2 x!3 ~@2", H: "~@9 x ~ x ~@12", I: "~@8 x!2 ~@7 x ~@6", J: "~@9 x!3 ~@12", K: "~@4 x ~@2 x",
L: "x!2 ~@3 x ~@2", M: "~@3 x ~@16 x!2 ~@2", N: "~@4 x!2 ~@9 x ~@8", O: "~@2 x!2 ~@2 x ~@3 x!2 ~@9 x ~@2",
P: "~@2 x ~@2 x!3", Q: "x ~@2 x ~@2 x ~", R: "~ x!3 ~@3 x", S: "~@15 x!3 ~@6",
T: "~@3 x ~@2 x!3 ~@3 x!2 ~@2 x ~ x ~ x ~ x ~", U: "x ~ x ~@2 x!2 ~@2 x!2 ~@2 x!2 ~@2 x!2 ~@5", V: "~ x ~@2",
W: "x!3 ~@15 x ~@5", X: "~ x ~@2 x!3 ~", Y: "~@12 x ~@2 x!4 ~@5",
})).gain(0.44)
// drums · snare · soft notes
const snare_soft = s("sd").struct("<~@15 A ~@5 B ~@11 C ~@22 D ~ E ~@11 E ~@16>".pickRestart({
A: "~@10 x!7 ~@7", B: "~@5 x ~@6", C: "~@12 x!2 ~@2 x ~@7", D: "x!2 ~@22", E: "~@7 x ~@16",
// … 65 more lines
More by The Moody Blues
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.