0:00/0:00
// Mars, the Bringer of War — Emerson, Lake & Palmer
// 160 bpm, 5/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (5/4 at bar 1, 5/2 at bar 95, 5/4 at bar 125, 3/4 at bar 193) are rendered on a constant 5/4 grid of one bar per cycle
// note: Full arrangement: all 205 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(160/5)
// 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.
// other · pizzicato strings · "PIZZICATO" · G C
const pizzicato_strings = note(`<
[~@2 [g2,g3,g4]!2 ~ [g2,g3,g4]@2 ~@3 [g2,g3,g4]@2 ~@2 [g2,g3,g4]@2 ~ [g2,g3,g4]@2 [g2,g3,g4]@2 ~@3]
[[g2,g3,g4] ~ [g2,g3,g4]!2 ~ [g2,g3,g4]@2 ~@3 [g2,g3,g4]@2 ~@2 [g2,g3,g4]@2 ~ [g2,g3,g4]@2 [g2,g3,g4]@2 ~@3]!38
[[c3,c4,c5] ~ [c3,c4,c5]!2 ~ [c3,c4,c5]@2 ~@3 [c3,c4,c5]@2 ~@2 [c3,c4,c5]@2 ~ [c3,c4,c5]@2 [c3,c4,c5]@2 ~@3]!10
[c3 ~ c3!2 ~ c3@2 ~@3 c3@2 ~@2 c3@2 ~ c3@2 c3@2 ~@3]!7
[c3 ~ c3!2 ~ c3@2 ~@3 c3@2 ~@12]
~@148
>`).s("gm_pizzicato_strings").gain(0.22)
// chords · french horn · "FR.HORN"
const french_horn = note(`<
~@2 A@2 B@2 ~ A@2 C D@2 ~ E@3 ~@8 F G H I J@2 K@2 L M N O@2 P Q R@3 ~@2 S@2 T U@2 ~@2 V W X Y Z AA AB AC AD AE AF@2 AG
AH AI ~@8 AJ AK AL ~@2 AM AN AO AP AQ ~@8 AR@2 AS@3 ~@8 AT@8 ~@4 AU@2 AV@2 AW@2 AX@2 AY@3 AZ@5 BA@2 BB@7 ~@3 BC@5 BD@2
~@6 BE@2 BF BE@2 BG BH@2 BI ~ BJ@2 BK BL BM@2 BN@2 BO@2 BP@2 BQ@3 ~@5 BR@3 ~@3 BS@3 ~@8
>`.pickRestart({
A: "[g2@38 d3@9 ~]/2", B: "[db3@13 ~@3]/2", C: "db3@14 ab3@9 ~", D: "[g3@9 ~@7]/2",
E: "[[f3,ab3,db4,f4,ab4]@53 ~@19]/3", F: "eb3@13 ~ [eb3,ab3,c4]@9 ~", G: "[db3,f3,bb3]@13 ~ [bb3,db4,f4]@9 ~",
H: "[ab3,c4,eb4]@14 [eb4,ab4,c5]@9 ~", I: "[db4,f4,bb4]@14 [db4,f4,ab4]@9 ~",
J: "[[eb4,gb4,b4]@35 ~@3 [db4,f4,ab4]@9 ~]/2", K: "[[eb4,gb4,b4]@18 ~ [db4,f4,ab4]@4 ~]/2",
L: "[eb4,gb4,b4]@6 ~ [db4,f4,ab4]@4 ~", M: "~@13 g3 g4@9 ~, [eb4,gb4,b4]@3 ~",
N: "~@13 g3 g4@9 ~, [eb4,gb4]@19 ~@5, b4@17 ~@7", // Ebm
O: "[~@8 g3 ~@10 [eb4,gb4,b4]@7 ~@2 g3 ~@5 [eb4,gb4,b4]@2 ~ g3 g4@6 ~@4, [eb4,gb4,b4] ~@2, ~@10 g4@13 ~@6 g4@7 ~@12]/2", // B
P: "~@4 g3 g4@5 ~@3 g3 g4@6 ~@3 g3", Q: "g4@6 ~@2 g3 ~ g4@7 ~ g3 [g3,g4]@4 ~", R: "[[f3,ab3,db4,f4,ab4]@71 ~]/3",
S: "[[db4,f4,ab4]@7 [c4,e4,g4]@2 ~ [b3,eb4,gb4]@7 [c4,e4,g4]@2 [db4,f4,ab4]@7 [eb4,g4,bb4]@2 ~ [f4,a4,c5]@7 [d4,g4,b4]@2 [eb4,ab4,c5]@7 ~ [d4,g4,b4]@2]/2", // Db C B C Db Eb F G …
T: "[c4,e4,c5]@7 [b3,eb4,b4] ~@2 [c4,e4,c5]@6 ~ [a3,db4,a4]@2 [b3,eb4,b4]@3 ~@2, ~@17 bb3 ~@6", // C B C A B
U: "[[c4,e4,c5]@7 [b3,eb4,b4] ~@2 [c4,e4,c5]@7 [a3,a4] ~ [ab3,b3,ab4]@7 [g3,c4,g4]@2 ~ [e4,ab4,b4]@6 ~ [eb4,g4,c5]@2 [b3,eb4,gb4]@7 ~ [c4,e4,g4]@2, ~@17 c4@2 ~@29]/2", // C B C A Abm C5 E Cm …
V: "[db4,f4,ab4]@6 ~ [c4,e4,g4] ~@2 [b3,eb4,gb4]@6 ~ [c4,e4,g4] ~ [db4,f4,ab4]@5", // Db C B C Db
W: "~@2 [eb4,g4,bb4] ~@2 [f4,a4,c5]@6 ~ [d4,g4,b4] ~ [eb4,ab4,c5]@6 ~@2 [d4,g4,b4] ~", // Eb F G Ab G
X: "[c4,e4,g4]@6 ~ [b3,eb4,gb4] ~@2 [c4,e4,g4]@6 ~ [a3,db4,e4] ~ [b3,eb4,gb4]@2 ~@3", // C B C A B
Y: "[d4,gb4,a4]@6 ~ [db4,f4,ab4] ~@2 [d4,gb4,a4]@6 ~ [b3,eb4,gb4] ~ [c4,e4,g4]@2 ~@3", // D Db D B C
Z: "[db4,gb4,bb4]@6 ~ [c4,f4,a4] ~@2 [db4,gb4,bb4]@6 ~ [e4,ab4,b4] ~ [f4,a4,c5]@5", // Gb F Gb E F
AA: "~@2 [d4,f4,a4] ~@2 [eb4,gb4,bb4]@6 ~ [c4,e4,g4] ~ [db4,f4,ab4]@6 ~@2 [c4,e4,g4] ~", // Dm Ebm C Db C
AB: "[b3,eb4,gb4]@6 ~ [c4,e4,g4] ~@2 [db4,f4,ab4]@6 ~ [eb4,g4,bb4] ~ [f4,a4,c5]@5", // B C Db Eb F
AC: "~@2 [d4,g4,b4] ~@2 [eb4,ab4,c5]@6 ~ [d4,g4,b4] ~ [bb3,eb4,g4]@6 ~@2 [a3,d4,gb4] ~", // G Ab G Eb D
AD: "[ab3,db4,f4]@6 ~ [a3,d4,gb4] ~@2 [bb3,eb4,g4]@6 ~ [c4,f4,a4] ~ [d4,g4,b4]@5", // Db D Eb F G
AE: "~@2 [db4,e4,a4] ~@2 [d4,f4,bb4]@6 ~ [db4,e4,a4] ~ [bb3,db4,gb4]@6 ~@2 [a3,c4,f4] ~", // A Bb A Gb F
AF: "[ab3,b3,e4]@6 ~ [g3,bb3,eb4]@2 ~ [ab3,b3,e4]@2 [a3,c4,f4]@2 [bb3,db4,gb4]@6 ~@2 [a3,c4,f4]@2", // E Eb E F Gb F
AG: "[ab3,b3,e4]@6 ~ [g3,bb3,eb4]@2 ~ [ab3,b3,e4]@6 ~ [a3,c4,f4]@2 [bb3,db4,gb4]@5", // E Eb E F Gb
AH: "~@2 [c4,eb4,ab4]@2 ~ [c4,f4,bb4]@6 ~ [eb4,g4,c5]@2 [db4,ab4,db5]@6 ~@2 [c4,g4,c5]@2", AI: "[bb3,eb4,bb4] ~@7",
AJ: "[a3,db4,e4,ab4,a4] ~@4 [a3,db4,e4,ab4,a4] ~@4 [a3,db4,e4,ab4,a4] ~@3 [a3,db4,e4,ab4,a4] ~@4 [a3,db4,e4,ab4,a4] ~@4", // Amaj7
AK: "[a3,b3,eb4,gb4] ~@4 [a3,b3,eb4,gb4] ~@4 [a3,db4,e4,ab4] ~@2 ab4 [a3,b3,eb4,gb4] ~@4 [a3,b3,eb4,gb4] ~@4, b4@4 ~@3 b4@4 ~", // B7 Amaj7 B7
AL: "[ab3,b3,e4,ab4]@2 ~@3 [ab3,b3,e4,ab4,b4]@2 ~@3 [ab3,b3,e4,ab4]@2 ~@2 [a3,c4,eb4,g4]@9 ~", // E Am7b5
AM: "[f3,a3,c4,eb4,g4,a4]@7 ~@3 [f3,a3,c4,eb4,g4,a4]@2 ~ [f3,a3,c4,eb4,g4,a4] [f3,a3,c4,eb4,g4,a4]@9 ~", // F7
AN: "d4 ~@3 d4!2 db4 ~ d4 ~ f4 e4 ~ f4 bb4@5 ~@2 f4 d4 ~",
AO: "[a3,c4,eb4,g4,a4]@8 ~@2 [a3,c4,eb4,g4,a4]@2 ~ [a3,c4,eb4,g4,a4] [a3,c4,eb4,g4,a4]@9 ~", // Am7b5
AP: "d4 ~@3 d4!2 db4 ~ d4 ~ f4 e4 ~ f4 bb4@2 ~@8", AQ: "[c4,e4,ab4]", AR: "[[ab3,c4,e4,gb4,a4,c5]@23 ~]/2",
AS: "[~@10 [c3,e3,a3]@45 ~@17]/3", AT: "[~ [ab3,ab4]@63]/8",
AU: "[~@3 [e3,g3,c4]@7 [eb3,gb3,b3]@2 ~ [d3,f3,bb3]@7 [eb3,gb3]@2 [e3,g3,c4]@7 ~ [f3,a3,d4]@2 [a3,c4,f4]@7 [ab3,b3,e4]@2 ~ [g3,bb3,eb4]@6, ~@20 b3 ~@27]/2", // C B Bb Ebm C Dm F E …
AV: "[~ [ab3,b3,e4]@2 [c4,eb4,ab4]@7 [b3,d4,g4]@2 ~ [bb3,db4,gb4]@7 [b3,d4,g4]@2 [c4,eb4,ab4]@7 ~ [db4,e4,a4]@2 [e4,g4,c5]@7 [eb4,gb4,b4]@2 ~ [d4,f4,bb4]@6]/2", // E Ab G Gb G Ab A C …
AW: "[~ [eb4,gb4,b4]@2 [c4,e4,a4]@7 [b3,eb4,ab4]@2 ~ [bb3,d4,g4]@7 [b3,eb4,ab4]@2 [c4,e4,a4]@7 ~ [b3,eb4,ab4]@2 [d4,gb4,a4]@7 [c4,e4,g4]@2 ~ [b3,eb4,gb4]@6]/2", // B Am Abm Gm Abm Am Abm D …
AX: "[~ [c4,e4,g4]@2 e4@7 d4@2 ~ db4@7 d4@2 g4@7 ~ f4@2 c5@7 ~@9]/2", // C
AY: "~@3 [g3,g4] ~@2 [g3,g4] ~ [g3,g4] ~@4 [g3,g4] ~@4 [g3,g4] ~ [g3,g4] ~ [g3,g4] ~", // G
AZ: "[~@3 g3@37 ~@2 [d3,d4]@9 [db3,db4]@51 ~@18]/5", BA: "[~@3 g3@37 ~@2 [d3,d4]@6]/2",
BB: "[~@3 [db3,db4]@13 ~@2 [ab2,eb3,ab3]@9 [g2,d3,g3]@13 ~@2 [d3,g3,d4]@9 [g3,db4]@14 ~ [ab3,eb4,ab4]@9 [g3,d4,g4]@13 ~@2 [g3,d4,g4]@8 ~ [f3,ab3,db4,f4,ab4]@50 ~@19, ~@17 db3@4 ~@35]/7", // Db Ab5 G5 Gdim Ab5 G5 Db
BC: "[~@3 eb3@14 ~ [eb3,ab3,c4]@9 [db3,f3,bb3]@14 ~ [bb3,db4,f4]@9 [ab3,c4,eb4]@14 ~ [eb4,ab4,c5]@9 [f4,bb4]@14 ~ [f4,ab4,db5]@9 [d4,g4,b4]@4 ~@17, ~@15 db4 ~@8]/5", // Ab Bbm Ab Bb5 Db G
BD: "[~@18 [f4,ab4,db5]@9 [eb4,g4,b4]@19 ~@2]/2", // Db Ebaug
BE: "[~@3 [ab3,c4,eb4]@7 [g3,b3,d4]@2 ~ [gb3,bb3,db4]@7 [g3,b3,d4]@2 [ab3,c4,eb4]@7 ~ [bb3,d4,f4]@2 [c4,e4,g4]@7 [d4,gb4,a4]@2 ~ [eb4,g4,bb4]@6]/2", // Ab G Gb G Ab Bb C D …
BF: "~ [d4,gb4,a4]@2 ~@21", // D
BG: "~ [d4,gb4,a4]@2 [d4,g4,b4]@7 [db4,gb4,bb4]@2 ~ [d4,g4,b4]@7 [b3,e4,ab4]@2 [db4,gb4,bb4]@2", // D G Gb G E Gb
BH: "[~@3 [d4,g4,b4]@7 [db4,gb4,bb4]@2 ~ [d4,g4,b4]@7 [b3,e4,ab4]@2 [bb3,eb4,gb4]@7 ~ [b3,d4,g4]@2 [bb3,eb4,gb4]@7 [b3,d4,g4]@2 ~ [gb3,bb3,db4]@6]/2", // G Gb G E Ebm G Ebm G …
BI: "~ [g3,b3,d4]@2 ~@21", // G
BJ: "[~@3 [db4,f4,ab4]@7 [c4,e4,g4]@2 ~ [b3,eb4,gb4]@7 [c4,e4,g4]@2 [db4,f4,ab4]@7 ~ [eb4,g4,bb4]@2 [f4,a4,c5]@7 [d4,g4,b4]@2 ~ [eb4,ab4,c5]@6]/2", // Db C B C Db Eb F G …
BK: "~ [d4,g4,b4]@2 [c4,e4,g4]@7 [b3,eb4,gb4]@2 ~ [c4,e4,g4]@7 [a3,db4,e4]@2 [b3,eb4,gb4]@2", // G C B C A B
BL: "~@3 [d4,gb4,a4]@7 [db4,f4,ab4] ~@2 [d4,gb4,a4]@7 [b3,eb4,gb4] ~ [c4,e4,g4]@2", // D Db D B C
BM: "[~@3 [db4,gb4,bb4]@7 [c4,f4,a4]@2 ~ [db4,gb4,bb4]@7 [e4,ab4,b4]@2 [f4,a4,c5]@7 ~ [d4,gb4,a4]@2 [eb4,g4,bb4]@7 [c4,e4,g4]@2 ~ [ab3,c4,eb4]@6]/2", // Gb F Gb E F D Eb C …
BN: "[~ [g3,b3,d4]@2 [gb3,bb3,db4]@7 [g3,b3,d4]@2 ~ [ab3,c4,eb4]@7 [bb3,d4,f4]@2 [c4,e4,g4]@7 ~ [d4,gb4,a4]@2 [eb4,g4,bb4]@7 [d4,gb4,a4]@2 ~ [bb3,d4,f4]@6]/2", // G Gb G Ab Bb C D Eb …
BO: "[~ [a3,db4,e4]@2 [ab3,c4,eb4]@7 [a3,db4,e4]@2 ~ [bb3,d4,f4]@7 [c4,e4,g4]@2 [d4,gb4,a4]@7 ~ [e4,ab4,b4]@2 [f4,a4,c5]@7 [e4,ab4,b4]@2 ~ [db4,f4,ab4]@6]/2", // A Ab A Bb C D E F …
BP: "~ [c4,e4,g4]@2 [b3,eb4,gb4]@7 [bb3,d4,f4]@2 ~ [b3,eb4,gb4]@2 [c4,e4,g4]@2 ~ [db4,f4,ab4]@6", // C B Bb B C Db
BQ: "[~ [c4,e4,g4]@2 [b3,eb4,gb4]@7 [bb3,d4,f4]@2 ~ [b3,eb4,gb4]@7 [c4,e4,g4]@2 [db4,f4,ab4]@7 ~ [eb4,g4,bb4]@2 [f4,a4,c5]@7 [d4,g4]@2 ~ [eb4,ab4]@7 [d4,g4]@2 ~@21, ~@14 [b3,b4]@3 ~@7]/3", // C B Bb B C Db Eb F …
BR: "[~@11 g4@43 ~ f4@11 ~@6, ~@11 [ab3,db4]@55 ~@6]/3", BS: "[~ [eb3,gb3,b3,eb4,gb4,b4]@62 ~@9]/3",
})).s("gm_french_horn").gain(0.56)
// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
~@27 A B@2 C@2 D E@6 F@10 G@2 H@2 I J K L M@2 N@2 O P Q@2 R@2 S T U S V W X Y Z AA AB AC AD AE AF AG ~@7 AH AI AJ AK
AL@3 AM@2 AN@2 AO@2 AP@2 AQ@2 AR@2 AS@2 AT@2 AU@2 AV@2 AW@2 AX@2 AY@2 AZ@2 BA BB BC BD@5 BE@5 BF@4 ~@3 BG@5 BH@16 BI@2
BJ@2 BK BL BM@6 BN@4 BO@3 BP@6 ~@2 BQ@4 BR BS@2 BT BU BV@3
>`.pickRestart({
A: "~@14 db6@9 ~", B: "[b5@35 ~@3 db6@8 ~@2]/2", C: "[b5@36 ~@2 db6@9 ~]/2", D: "b5@13 ~ db6@9 ~",
E: "b5 gb5 b5 ~ gb5 b5 gb5 b5 gb5 ~ b5 gb5 b5 gb5 b5 ~ gb5 b5 gb5 b5 gb5 ~ b5 gb5",
F: "[c4,c6] ~ [c4,c6]!2 ~ [c4,c6]@2 ~@3 [c4,c6]@2 ~@2 [c4,c6]@2 ~ [c4,c6]@2 [c4,c6]@2 ~@3", // C
G: "[db4@6 ~ c4@2 ~ b3@6 ~ c4@2 db4@6 ~ eb4@2 ~ [c5,c6]@3 ~@4 g4@2 ab4@6 ~@2 g4 ~, [db5,db6]@9 ~ [eb5,eb6]@9 [db5,db6]@9 ~ f4@7 ~@12]/2", // C Db Eb Db
H: "[db4@6 ~ c4@2 ~ b3@6 ~ c4@2 db4@6 ~ eb4 ~@2 f4@7 g4 ~ ab4@7 ~ g4@2, db6@9 ~ eb6@9 db6@9 ~ c6@2 ~@17]/2",
I: "[e5,g5]@6 ~ gb5@2 ~ [e5,g5]@7 [db5,e5]@2 [eb5,gb5]@3 ~@2, ~@7 eb5 ~@16", // Em Dbm Ebm
J: "[gb5,a5]@6 ~ f5@2 ~ [gb5,a5]@6 ~ [eb5,gb5]@2 [e5,g5]@3 ~@2, ~@7 ab5 ~@16", // Gbm Ebm Em
K: "[bb5,db6]@7 c6@2 ~ [bb5,db6]@7 [ab5,b5] ~ [a5,c6]@5, ~@7 a5 ~@16", // Bbm Abm Am
L: "~@2 a5@2 ~ [g5,bb5]@7 g5@2 db6@8 g5@2, ~@2 gb5 ~@9 e5 ~ ab5@7 ~@3", // Gm
M: "[[b3,gb5]@6 ~ c4@2 ~ [db4,ab4,ab5]@7 [bb4,bb5]@2 [f4,c5,c6]@7 [g4,d5] ~@2 [ab4,eb5,eb6]@7 [g4,g5] ~@2 eb4@6 ~ d4@2, g2@36 ~@2 [g2,bb5]@7 ~ a5 ~, ~@7 g5 ~@9 eb4 ~@8 d6@2 ~@8 d6@2 eb6@10]/2", // B5 Db5 Bb F5 G5 Ab5 G Gm
N: "[[db4,ab5]@6 ~ d4@2 ~ [eb4,bb4,bb5]@6 ~ [f4,c5,c6]@2 [g4,d5,d6]@7 [e5,e6]@2 ~ [bb4,f5,f6]@7 [a4,a5,e6]@2 [bb2,gb6]@8 c6@2, a2@37 ~@11, db6@3 ~@4 a5 ~@18 a4 ~@11 db6@7 ~@3]/2", // Db5 Eb5 F5 G5 E Bb5 A5 Ebm
O: "b5@5 ~@2 bb5@2 ~ b5@2 c6@2 db6@7 ~ c6@2, c3@7 [bb2,gb6]@5, e6 ~@11", // Ebm
P: "b5@6 ~ bb5@2 ~ b5@2 c6@2 [bb2,db6,gb6]@8 c6@2, c3@7 ~@5, e6 ~@11", // Gb
Q: "[b5@7 bb5 ~@2 b5@6 ~ c6 ~ db6@6 ~ eb6 ~@2 f6@6 ~ g6 ~@8 g6@2 ~, c3@37 ~ [c3,e6,ab6]@8 ~@2, e6 ~@12 c2@3]/2", // Caug
R: "[gb2,eb4,bb4,bb5] ~@4 [gb2,eb4,bb4,bb5] ~@4 [gb2,eb4,bb4,bb5] ~@3 [gb2,eb4,bb4,bb5] ~@4 [gb2,eb4,bb4,bb5] ~@4", // Ebm
S: "[gb2,d4,eb4,bb4] ~@4 [gb2,d4,eb4,bb4] ~@4 [gb2,d4,eb4,bb4] ~@3 [gb2,d4,eb4,bb4] ~@4 [gb2,d4,eb4,bb4] ~@4", // Ebm
T: "[ab2,b3,eb4,ab4] ~@4 [ab2,b3,eb4,ab4] ~@4 [gb2,d4,eb4,bb4] ~@3 [ab2,b3,eb4] ~@4 [ab2,ab4]@2 ~@3, ~@14 ab4@2 ~@3 [b3,eb4] ~@4", // Abm Ebm Abm Ab B
U: "[g2,d4,b4] ~@4 [g2,d4,b4] ~@4 [g2,d4,b4] ~@3 [g2,d4,b4] ~@4 [g2,d4,b4] ~@4", // G
V: "[ab2,b3,eb4,ab4] ~@4 [ab2,ab4]@2 ~@3 [gb2,d4,eb4] ~@3 [ab2,b3,eb4] ~@4 [ab2,ab4]@2 ~@3, ~@5 [b3,eb4] ~@4 bb4@2 ~@2 ab4@2 ~@3 [b3,eb4] ~@4", // Abm Ab D Abm Ab B
W: "[g2,d4] ~@4 [g2,d4,b4] ~@4 [g2,d4,b4] ~@3 [gb2,d4,b4] ~@4 [d4,b4] ~@4, b4@2 ~@17 gb2@2 ~@3", // G5 G Bm G
X: "[f2,d4,bb4] ~@4 [f2,d4,bb4] ~@4 [d4,bb4] ~@3 [d4,bb4] ~@4 [d4,bb4,b4] c5 d5 [eb5,e5] f5, ~@10 gb2@2 ~@2 g2@2 ~@3 ab2@2 ~@3", // Bb Gm G Emaj7
Y: "[a2,ab5] ~@4 [a2,ab5] ~@4 a2 ~@3 a2 ab5 g5 ~ ab5 [a2,ab5] ~ g5 ab5 ~, ~@9 ab5@2 ~@13", // Amaj7
Z: "a2 ~@4 a2 ~@4 [a2,ab5] ~@2 ab5 a2 ~@4 a2 ~@4, b5@8 ~@7 b5@7 ~@2", // Amaj7
AA: "[ab2,ab4] ~@2 ab4 ~ [ab2,ab4] g4 ~ ab4 b4 ab2 ab4 e4 ~ a2 ~@4 a2 ~@4, db6@9 ~ e6@5 [eb4,c6]@8 ~", // Ab Cm
AB: "b4 [e4,b4]!2 e4 [e4,b4]!2 b4 [e4,b4]!2 e4 [e4,b4]!2 b4 [e4,b4]!2 e4 [e4,b4]!2 b4 [e4,b4]!2 e4 [e4,b4]!2, db6@19 e6@5", // E5
AC: "~ g3 a3 ~ b3 c4 d4 eb4 f4 ~ g4 a4 b4 c5 d5 ~ eb5 f5 g5 a5 b5 c6 d6 eb6, c6@17 ~@7",
AD: "f6@9 ~ c6 ~@2 c6 f6@9 ~, f2 ~@11", AE: "~@5 f2@2 ~@3 f2 ~@3 f2 ~@4 f2@2 ~@3, g6",
AF: "[eb4,c5] ~@9 c6 ~@2 c6 f6@7 ~@3, f6 ~@2, f2 ~@11", // Cm
AG: "~@5 [d4,bb4] ~@4 [d4,bb4] ~@3 [f2,d4,bb4] ~@4 [d4,bb4] ~@4, a6@11 ~, ~@5 f2@2 ~@3 f2@2 ~@7 f2@2 ~@3", // Gm Bb Gm
AH: "~@6 [c5,e5] [db5,eb5,gb5] [db5,e5,ab5] ~ [c5,gb5,a5] [gb4,a4,c5] [ab4,db5] [gb4,a4,eb5] [ab4,b4,e5] ~@9", // C Ebm7 Dbm Gbdim Db5 Ebdim E
AI: "~@6 [b4,e5] [eb5,gb5] [db5,e5,ab5] ~ [c5,gb5,a5] [gb4,a4,c5] [ab4,db5] [gb4,a4,eb5] [ab4,b4,e5] ~@9", // E5 Ebm Dbm Gbdim Db5 Ebdim E
AJ: "~ [c5,e5] [eb5,gb5] ~ [db5,e5,ab5] [c5,gb5,a5] [gb4,a4,c5] [ab4,db5] [gb4,a4,eb5] ~ [e4,c5,e5] [e4,ab4] [gb4,a4] [f4,ab4,b4] [e4,a4,c5] ~ [c4,e4] [db4,eb4,gb4] [db4,e4,ab4] [c4,gb4,a4] [a3,b3,c4] ~ [ab3,a3,db4] [gb3,b3,eb4]", // C Ebm Dbm Gbdim Db5 Ebdim C E …
AK: "c4 [c3,e4] [eb3,a4] ~ [e3,c5] [gb3,gb4] [db4,ab4] [c4,a4] [ab4,db5] ~ [gb4,c5,gb5] [c4,db4,e5,ab5] [eb4,a5] [e4,c6,db6] [f4,db5,gb5,c6] ~ [c5,db5,ab5,e6] [c5,ab5,a5,gb6] [gb5,db6,ab6] [gb5,ab5,c6,a6] [ab5,a5,e6] ~ [a5,b5,gb6] [b5,c6,ab6]", // C Ebdim C Gb Db5 F Db5 Gbdim …
AL: "[[c6,a6] ~@9 ab2@44 ~@18]/3", AM: "[~@3 a3@7 ab3@2 ~ g3@7 ab3@2 a3@7 ~ b3@2 c4@7 db4@2 ~ d4@6]/2",
AN: "[~ db4@2 a3@7 ab3@2 ~ g3@7 ab3@2 a3@7 ~ b3@2 db4@6 ~ eb4@3 f4@6]/2",
AO: "[~ e4@2 a3@7 ab3@3 g3@7 ab3@2 a3@7 ~ b3@2 d4@7 db4@3 c4@6]/2",
AP: "[~ db4@2 f4@7 e4@2 ~ eb4@7 e4@2 f4@7 ~ gb4@2 a4@7 ab4@3 g4@6]/2",
AQ: "[~ ab4@2 [d4,d5]@7 [db4,db5]@3 [c4,c5]@7 [db4,db5]@2 [d4,d5]@7 ~ [eb4,eb5]@2 [e4,e5]@7 [f4,f5]@3 [gb4,gb5]@6]/2", // D Db C Db D Eb E F …
AR: "[~ [f4,f5]@2 [d4,d5]@7 [db4,db5]@3 [c4,c5]@7 [db4,db5]@2 [d4,d5]@7 ~@3 [e4,e5]@7 [g4,g5]@3 [a4,a5]@6, ~@15 [eb4,eb5]@2 ~@7]/2", // F D Db C Db D E G …
AS: "[~ [ab4,ab5]@2 [d4,d5]@7 [db4,db5]@3 [c4,c5]@7 [db4,db5]@2 [d4,d5]@7 ~ [eb4,eb5]@2 [gb4,gb5]@7 [f4,f5]@3 [e4,e5]@6]/2", // Ab D Db C Db D Eb Gb …
AT: "[~ [f4,f5]@2 [a4,a5]@7 [ab4,ab5]@3 [g4,g5]@7 [ab4,ab5]@2 [a4,a5]@7 ~ [b4,b5]@2 [d5,d6]@7 [db5,db6]@3 [c5,c6]@6]/2", // F A Ab G Ab A B D …
AU: "[~ [db5,db6]@2 [c3,c4,c5]@7 [b2,b3,b4]@3 [bb2,bb3,bb4]@7 [b2,b3,b4]@2 [c3,c4,c5]@7 ~ [d3,d4,d5]@2 [eb3,eb4,eb5]@7 [e3,e4,e5]@3 [f3,f4,f5]@6]/2", // Db C B Bb B C D Eb …
AV: "[~ [e3,e4,e5]@2 [c3,c4,c5]@7 [b2,b3,b4]@3 [bb2,bb3,bb4]@7 [b2,b3,b4]@2 [c3,c4,c5]@7 ~ [d3,d4,d5]@2 [e3,e4,e5]@7 [gb3,gb4,gb5]@3 [ab3,ab4,ab5]@6, ~@30 db5 ~@17]/2", // E C B Bb B C D E …
AW: "[~ [g3,g4,g5]@2 [c3,c4,c5]@7 [b2,b3,b4]@3 [bb2,bb3,bb4]@7 [b2,b3,b4]@2 [c3,c4,c5]@7 ~ [d3,d4,d5]@2 [f3,f4,f5]@7 [e3,e4,e5]@3 [eb3,eb4,eb5]@6, ~@3 b3 ~@44]/2", // G C B Bb B C D F …
AX: "[~ [e3,e4,e5]@2 [ab3,ab4,ab5]@7 [g3,g4,g5]@3 [gb3,gb4,gb5]@7 ~@2 [ab3,ab4,ab5]@6 ~@2 [a3,a4,a5]@2 [c4,c5,c6]@7 [b3,b4,b5]@3 [bb3,bb4,bb5]@6, ~@5 [g3,g4,g5] ~@6]/2", // E Ab G Gb Ab A C B …
AY: "[~ [b3,b4,b5]@2 [c4,c5]@7 [b3,b4]@3 [bb3,bb4]@7 [b3,b4]@2 [c4,c5]@7 ~ [b3,b4]@2 [d4,d5]@7 [c4,c5]@3 [b3,b4]@6]/2", // B C B Bb B C B D …
AZ: "[~ [c4,c5]@2 [e4,e5]@7 [d4,d5]@3 [db4,db5]@7 [d4,d5]@2 [g4,g5]@7 ~ [f4,f5]@2 [c5,c6]@7 [b4,b5]@3 [e5,e6]@6]/2", // C E D Db D G F C …
BA: "[d5,d6]@3 ~ [g3,g4,g5,g6]!3 ~ [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~ [g3,g4,g5,g6] ~ [g5,a5,g6] [g3,g4]", // D G Gsus2 G
BB: "~@3 [g3,g4,g5,g6] ~ [g3,g4,g5,g6] [g4,g5,g6] g3 [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~ [g3,g4,g5,g6] ~ [g4,g5,g6] g3", // G
BC: "~@3 [g3,g4,g5,g6] ~ [g3,g4,g5,g6]!2 ~ [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~@4 [g3,g4,g5,g6] ~ [g3,g4,g5,g6] ~ [g5,g6] [g3,g4]", // G
BD: "[~@4 g3@38 d4@9 db4@53 ~@16]/5", BE: "[~@3 g3@38 ~ d4@9 db4@14 ~ ab3@9 g3@15 d4@9 db4@15 ab4@6]/5",
BF: "[~@3 g4@14 ~ [d4,g4,d5]@9 [f4,ab4,db5]@51 ~@18]/4", // G5 Db
BG: "[~@3 eb4@14 ~ [ab3,c4]@9 bb3@14 ~ [db4,f4]@9 [c4,eb4]@15 [ab4,c5]@9 [f4,bb4]@15 [db5,db6]@9 [g3,g4] ~ [g3,g4]!2 ~ [g3,g4] ~@4 g3@2 ~@3 [g3,g4] ~ [g3,g4] ~ [g3,g4] ~, ~@109 g4 ~@10]/5", // Ab Db Cm Ab Bb5 Db G
BH: "~@3 [g3,g4] ~ [g3,g4]!2 ~ [g3,g4]@3 ~@2 [g3,g4]@3 ~@2 [g3,g4]@2 [g3,g4]@2 [g3,g4]@2", // G
BI: "[~@4 g3 ~ g3 ~ g3@2 c4@3 g3@3 ~@2 g3@2 [g3,c4]@2 g3@3 ~@2 g3 ~@2 eb4@2 [c5,c6]@4 ~ g3@2 g4@3 g3@2 g3@2 g3@2, ~@4 [db5,db6]@9 [eb5,eb6]@9 db4@7 ~ g3 ~ g3@2 ~@14, ~@4 db4@6 ~@3 b3@7 ~@2 [db5,db6]@10 f4@7 ~@3 ab4@6]/2", // C5 C Db Eb Db
BJ: "[~ g4 ~ g3 ~@2 g3 ~ g3@2 [c4,e4]@3 g3@3 ~@2 g3@2 [g3,c4,e4]@3 g3@3 ~ g3 ~@2 [eb4,g4]@2 [c5,c6]@5 g3@2 [g4,b4]@3 g3@2 g3@2 g3@2, ~@3 [db5,db6]@10 [eb5,eb6]@10 [db5,db6]@9 g3@2 ~@14, ~@3 [db4,f4]@7 ~@3 [b3,eb4]@7 ~@3 [db4,f4]@7 g3 ~ [f4,a4]@7 ~@3 [ab4,c5]@6]/2", // C Eb C G Db Eb Db B …
BK: "~ [g4,b4]@2 g3 ~@2 g3 ~ g3@2 [eb5,gb5] ~@2 g3@3 ~@2 g3@2 [g3,db5,e5]@2 [g3,eb5,gb5]@2, ~@3 [e5,g5]@7 ~@3 [e5,g5]@7 ~@4", // G Ebm Dbdim Cm Em
BL: "~@3 g3 ~@2 g3 ~ g3@2 f5@2 ~ g3@3 ~@2 g3@2 [g3,eb5]@2 [g3,f5,g5]@2, ~@3 [gb5,a5]@7 ab5 ~@2 [gb5,a5]@7 gb5 ~@3", // Cm G7 Gbm
BM: "[~@3 g3 ~@2 g3 ~ g3@2 g5@2 ~ g3@3 ~@2 g3@2 [g3,gb5,b5]@2 g3@3 ~@2 g3 ~@2 [f5,a5]@2 g3@2 ~@3 g3@2 [e5,g5]@2 ~ eb5@6 ~ d5@2 db5@7 d5@3 eb5@7 f5@2 g5@7 ~ a5@2 bb5@7 a5@3 f5@7 e5@2 eb5@7 ~ e5@2 f5@7 g5@3 a5@7 b5@2 c6@7 b5@3 [f2,ab5,db6]@6, ~@3 [ab5,db6]@7 c6 ~@2 [ab5,db6]@7 ~@2 [g5,c6]@7 ~ g3 ~ [gb5,bb5]@7 ~@3 [c2,ab5]@9 d2@35 ~@4 d2@9 ab5@4 ~@41, ~@51 gb5@3 ~@36 bb5@2 ~@7 e2@36 ~@9]/6", // Gmaj7 F Em Db Db5 C5 Gb Fm
BN: "[~ g5@2 gb5@6 ~ f5@3 gb5@2 g5@3 [f2,ab5]@7 g5@2 gb5@7 f5@3 gb5@2 g5@3 [f2,ab5]@7 g5@2 gb5@7 ~ f5@2 gb5@7 g5@3 ab5@7 bb5@2 c6@6 ~ d6@2 ~ [g2,eb6]@6, ~@3 g2@13 ~@11 g2@14 ~@10 g2@35 ~@10, ~@3 b5@4 ~@11 db6@9 b5@3 ~@12 db6@9 b5@4 ~@41]/4", // Fm Cm
BO: "[~ d6@2 ~ [g5,g6]@2 ~@66, ~ c2@17]/3", // G
BP: "[~@8 f2@9 ~ [g2,eb4,b4,b5]@10 ~ [g5,g6]@44 [f3,f5,f6]@10 ~ g5@43 [f2,f5]@11 ~@6, ~@29 db5@54 ~@61, ~@29 c3@42 ~@12 c2@43 ~@18]/6", // Gaug G F
BQ: "[~@2 [b4,eb5] ~ [db5,e5] [eb5,gb5] [b4,g5] [gb4,a4] [g4,b4] ~ [a4,db5] [b4,d5] [eb4,gb4] [e4,g4] [gb4,a4] ~@2 [eb5,gb5] [e5,g5] [gb5,a5] [g5,b5] ~ [b4,eb5] [db5,e5] [d5,gb5] [a4,g5] [gb4,a4] ~ [g4,b4] [a4,c5] ~ [gb5,a5] [g5,b5] ~ [a5,db6] [b5,eb6] [eb5,gb5] [e5,g5] [gb5,a5] ~ [g5,b5] [b4,eb5] [db5,e5] [d5,gb5] [gb4,a4] ~ [g4,b4] [a4,c5] [eb4,gb4] [e4,g4] [gb4,a4] ~ [b3,eb4] [db4,e4] [eb4,gb4] a3 [g3,b3] ~ [a3,c4] g3 a3 b3 db4 ~ eb4 gb4 b4 eb5 g4 ~ a4 b4 db5 eb5 [e5,gb5] ~ [eb5,b5] [db5,eb6] [b4,g5] [g5,a5] [gb5,b5] ~ [e5,db6] [d5,eb6] [c6,e6] [b5,gb6] [a5,a6] ~ [c3,g5,g6] c3 ~ c3 ~ c3@3, ~ g2@86 ~@9]/4", // B Dbm Ebm Em Gbm G A Bm …
BR: "~@13 [c3,ab3,db4,g4]@2 ~ [c3,ab3,db4,g4]@2 ~ [c3,ab3,db4,g4]@4 ~", // Dbmaj7
BS: "[~@7 [c3,ab3,db4,g4]@2 ~ [c3,ab3,db4,g4]@2 ~ [c3,ab3,db4,g4]@5 ~ [c3,ab3,db4,g4]@2 [c3,ab3,db4,g4]@2 [c3,ab3,db4,g4]@2 [c3,ab3,db4,g4]@6 ~@17]/2", // Dbmaj7
BT: "~ [c3,ab3,db4,g4]@6 ~@2 [c3,ab3,db4,g4]@6 ~@9", BU: "~@9 [c3,ab3,db4,g4]@6 ~@2 [c3,ab3,db4,g4]@6 ~",
BV: "[~ [c3,ab3,db4,g4]@6 ~@10 [c2,g3]@33 ~@22]/3", // Dbmaj7 C5
})).s("gm_string_ensemble_1").gain(0.45)
// chords · clarinet
const clarinet = note("<~@27 A B@2 C@2 D E@2 F@2 ~@46 G@3 H@3 I ~@115>".pickRestart({
A: "~@7 [db5,f5,ab5]@4 ~", B: "[[eb5,gb5,b5]@18 ~ [db5,f5,ab5]@4 ~]/2",
C: "[[eb5,gb5,b5]@35 ~@3 [db5,f5,ab5]@8 ~@2]/2", D: "[eb5,gb5,b5]@13 ~ [f5,ab5]@9 ~, ~@14 db5@7 ~@3",
E: "[eb5,gb5,b5]@19 ~@5", F: "[[eb5,gb5,b5]@16 ~@3 [eb5,gb5,b5]@13 ~@16]/2",
G: "[e5,ab5] ~@4 [e5,ab5] ~@4 [e5,ab5] ~@3 [e5,ab5] ~@4 [e5,ab5] ~@4", // E
H: "[ab5,c6] ~@4 [ab5,c6] ~@4 [ab5,c6] ~@3 [ab5,c6] ~@4 [ab5,c6] ~@4", // Ab
I: "[ab5,c6] ~@4 [ab5,c6,db6] ~@4 [ab5,c6] ~@3 [ab5,c6] ~@4 [ab5,c6] ~@4", // Ab Dbmaj7 Ab
})).s("gm_clarinet").gain(0.41)
// chords · church organ · "CLARINET"
const church_organ = note("<~@173 A@2 B@2 C@3 D@2 E@7 ~@16>".pickRestart({
A: "[~@18 [c4,eb4]@7 [b3,d4]@2 [d2,bb3,db4,gb4]@4 ~@17, ~@9 [c2,g4]@5 ~@10]/2", // Cm Bm Gb C5
B: "[~@18 [d4,f4]@7 [db4,e4]@2 [e2,c4,eb4,ab4]@4 ~@17, ~@9 [d2,bb4]@5 ~@10]/2", // Dm Dbm Ab Gm
C: "[~@18 [f4,ab4]@7 [e4,g4]@2 [g2,eb4,gb4,b4]@4 ~@11 [f4,ab4]@7 [e4,g4]@2 [g2,eb4,gb4,b4]@4 ~@11 [f2,f4,ab4,db5]@6, ~@9 [f2,db5]@5 ~@7 [f2,db5]@5 ~@10]/3", // Fm Em B Fm Em B Db
D: "[~ [e4,g4]@2 [eb4,gb4,b4]@4 ~@35 [g2,b3,b4]@6, ~@3 g2@35 ~@10]/2", // Em B G
E: "[~@4 [c2,c3,g4,g5]@76 f4@10 [g2,eb4,gb4,b4]@9 ~@2 [c4,g5]@44 [f4,f5]@11 ~@12, ~@4 [ab4,db5]@88 ~@9 [ab4,db5]@54 ~@13, ~@2 [ab3,db4]@43 ~@39, ~@80 [f2,f5]@13 ~@75, ~@80 e2 ~@87]/7", // C5 B C5 F Db5 F
})).s("gm_church_organ").gain(0.8)
// other · tuba
const tuba = note(`<
~@46 A B@2 ~@34 C D E F G H I J K ~@2 L@3 ~@28 M N@2 O@5 P@2 Q ~ R@2 ~@2 S@2 T ~ U V W X@2 ~ Y Z@2 AA AB AC AD@2 ~ AE
~@12 AF@2 AG@2 AH@4 AI@5 ~@10 AJ AK AL@2 AM AN AO@3
>`.pickRestart({
A: "g3@6 ~ gb3 ~@2 g3@6 ~ e3@2 gb3@2 ~@3", B: "[g3@6 ~ gb3@2 ~ g3@7 e3@2 ~ eb3@6 ~ e3@2 b2@7 c3 ~@2 gb2@6 ~ g2@2]/2",
C: "c4@2 ~@3 c4@2 ~@3 c4@2 ~@2 c4 ~ b3 ~ c4!2 ~ b3 c4 ~", D: "eb4@8 ~@2 c4 ~@2 c4 eb4@8 ~@2",
E: "c4 ~@3 c4 eb4@8 ~@6 eb4@2 ~@3", F: "~@5 e4@8 ~@6 e4@3 ~@2", G: "~@5 f4@8 ~@11", H: "~@5 gb4@8 ~@6 gb4@3 ~@2",
I: "~@5 gb4@8 ~ c4@2 ~@3 gb4@5", J: "c4 ~@3 [c2,c4] [ab2,ab4]@17 ~@2", K: "[c2,c4] ~@3 c4 [ab2,ab4]@17 ~@2",
L: "[~@10 gb1@47 ~@15]/3", M: "~@4 g2 ~@2 g2!2 ~@4 g2 ~@4 g2 ~@4 g2", N: "~@3 g2 ~@3 g2!2 ~@4 g2 ~@4 g2 ~@4 g2",
O: "[~@4 g1@37 ~ d2@9 db2@52 ~@17]/5", P: "[~ g1@12 ~@3]/2", Q: "~@3 db2@14 ~@7",
R: "[~@3 db3@13 ~@2 ab3@9 g3@13 ~@8]/2", S: "[~@3 db2@13 ~@2 bb2@8 ~@22]/2", T: "~ db3@4 ~@3", U: "~ eb2@4 ~@3",
V: "~@3 bb2@13 ~@8", W: "~@3 eb3@13 ~@8", X: "[~@3 bb3@12 ~@3 db4@9 [g2,b3]@4 ~@17]/2",
Y: "~@3 g3@2 ~@3 g3@2 ~@3 g3@2 ~@3 g3 gb3 ~ g3!2 ~",
Z: "[gb3 ~ g3 bb3@8 ~@2 g3 ~@2 g3 ~ bb3@3 ~@2 g3@2 ~@2 g3 ~@3 g3 bb3@8 ~@2 g3 ~@2 g3 bb3@2]/2",
AA: "~@3 g3 ~@3 g3 b3@8 ~@2 g3 ~@2 g3 b3@2", AB: "~@3 g3 ~@3 g3 c4@8 ~@2 g3 ~@2 g3 c4@2",
AC: "~@3 g3 ~@3 g3 db4@8 ~@2 g3 ~@2 g3 db4@2", AD: "[~@3 g3@2 ~@2 g3 db4@7 ~@3 g3 ~@2 g3 db4@4 ~ c4@3 ~@18]/2",
AE: "~@3 g3 ~@3 g3 db4@7 ~@3 g3 ~@2 g3 db4@2", AF: "[~@6 c2@3 d2 ~@6]/2", AG: "[~@6 d2@3 eb2 ~@6]/2",
AH: "[~@18 f2@9 g2@4 ~@11 f1@9 g1@5 ~@10 f1@9 g1@4 ~@17]/4", AI: "[~@18 g2@10 g4@76 [f2,f4]@11 ~@5]/5",
AJ: "~@16 [c2,c3]!2 ~ [c2,c3] ~ [c2,c3]@3", AK: "~@13 [c2,c3]@2 ~ [c2,c3]@2 ~ [c2,c3]@4 ~",
AL: "[~@7 [c2,c3]@2 ~ [c2,c3]@2 ~ [c2,c3]@5 ~ c2@2 [c2,c3]@2 [c2,c3]@2 [c2,c3]@8 ~@15, ~@19 c3 ~@28]/2", // C
AM: "~ [c2,c3]@6 ~@2 [c2,c3]@6 ~@9", AN: "~@9 [c2,c3]@6 ~@2 [c2,c3]@6 ~", AO: "[~ [c2,c3]@6 ~@10 [c2,c3]@33 ~@22]/3",
// … 222 more lines
More by Emerson, Lake & Palmer
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.