0:00/0:00
// Ich bin verliebt in Dich — G. G. Anderson
// 128 bpm, 1/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 406 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(128/1)
// 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 · string ensemble 2 · "Slow-Strin"
const string_ensemble_2 = note(`<
~@4 A@8 B@8 C@4 D@4 B@8 E@8 A@8 ~@8 F@4 D@4 E@8 G@8 F@4 D@4 H@5 ~@3 I@8 J@8 K@8 L@8 M@8 ~ N@7 O@4 P@4 B@8 E@8 A@8 ~@8
F@4 D@4 E@8 Q@8 F@4 D@4 H@5 ~@3 I@8 J@8 K@8 L@8 M@8 ~ N@7 O@4 P@4 B@8 A@8 B@8 R@8 S@4 ~@4 T@8 U@8 V@8 W@8 X@8 ~ Y@7
Z@8 AA@8 Z@8 AB@6 ~@4
>`.pickRestart({
A: "[e3,g#3,b3]/8", B: "[a3,c#4,e4]/8", C: "[d3,f#3,a3]/4", D: "[e3,g#3,b3]/4", E: "[a2,c#3,e3]/8",
F: "[a2,c#3,e3]/4", G: "[[f#3,a3]@127 ~, d3@13 ~@3]/8", H: "[[a2,c#3,e3]@37 ~@3]/5", I: "[e4,g#4,b4]/8",
J: "[c#4,e4]/8", K: "[[e4,g#4,b4]@19 f#4@13]/8", L: "[~@3 [a3,c#4,e4]@29]/8", M: "[~ [e4,g#4,b4]@15]/8",
N: "[a3,c#4,e4]/7", O: "[d4,f#4,a4]/4", P: "[e4,g#4,b4]/4", Q: "[d3,f#3,a3]/8",
R: "[[d4,f#4,a4]@17 ~ b3@14, ~@17 e3@15, ~@17 g#3@13 ~@2]/8", S: "[a3,c#4,e4]/4", T: "[f4,a4,c5]/8", U: "[d4,f4]/8",
V: "[[f4,c5]@19 g4@13]/8", W: "[~@3 [a#3,d4,f4]@29]/8", X: "[~ [f4,a4,c5]@15]/8", Y: "[a#3,d4,f4]/7",
Z: "[[d#4,g4,a#4]@17 ~ c4@14, ~@17 [f3,a3]@15]/8", AA: "[a#3,d4,f4]/8", AB: "[a#3,d4,f4]/6",
})).s("gm_string_ensemble_2").gain(0.17).pan(0.4)
// chords · string ensemble 2 · "Slow-Strin" · soft notes
const string_ensemble_2_soft = note(`<
~@82 A@2 ~@24 B@8 ~@4 C@5 ~@111 B@8 ~@4 D@5 ~@59 E ~@2 F ~@16 G@8 ~@4 H@5 ~@27 I ~@15 I ~@13
>`.pickRestart({
A: "[~ d3@3]/2", B: "a3/8", C: "[~@3 a4@13 a4@4, ~@3 d4@17]/5", D: "[~@3 [d4,a4]@16 ~]/5", E: "~ b3 ~@2", F: "~ g#3",
G: "a#3/8", H: "[~@16 g4@3 ~, ~@3 [d#4,a#4]@17]/5", I: "~ c4 ~@2",
})).s("gm_string_ensemble_2").gain(0.09).pan(0.4)
// bass · synth bass 2 · "Synt-Bass2"
const bass = note(`<
~@4 A B A C A C D@2 E F G H E H I@2 J K L M N C O@2 E H P@2 Q R S T E F U H E H V R A C A W N C N C A W N C X W Y Z E
F AA R N W AB@2 E H AC H AC H U H AD AE AD AE AF AE AG@2 AC H U H N C AH W AC F V F AI ~@3 X C X AJ X C AH C AC R U H
U R V R X B N AJ AD AE AD AE AC H U H U H AK AL AM AJ AM C AM W Y C AC F U F AC F AN AO AD AP AQ AR X B AH B U F V F
AI F V T E F U H E H V R A C A W N C N C A W N C X W Y Z E F AA R N W AB@2 E H AC H AC H U H AD AE AD AE AF AE AG@2 AC
H U H N C AH W AC F V F AI ~@3 X C X AJ X C AH C AC R U H U R V R X B N AJ AD AE AD AE AC H U H U H AK AL AM AJ AM C
AM W Y C AC F U F AC F AN AO AD AP AQ AR X B AH B U F V F AI F V T X W X W X W AH C AC F AC F U H AS@2 AD AT AU AT X C
AM C U H AN F AV ~@3 AW AX AW AY AW AX AZ AX BA BB BC BD BC BB BE BB AW BF BG AY BH BI BH BI BA BD BC BD BC BD BJ BK
BL AY BL AX BL BM BN AX BA BO BC BO BA BO BP BQ BH BR BS BT AW BF AZ BF BC BO BE BO BP BO BP BQ BH BR BS BT AW BF AZ
BF BC BO BE BO BU ~@5
>`.pickRestart({
A: "e1@13 ~@3", B: "g#1@7 ~ b1@7 ~", C: "g#1@7 ~ b1@8", D: "[e1@10 ~@6 g#1@7 ~ b1@8, ~@13 e1@5 ~@14]/2", E: "a1@3 ~",
F: "c#2@7 ~ e2@8", G: "a1@13 ~@3", H: "c#2 e2", I: "[a1@8 ~@8 c#2@8 e2@7 ~, ~@13 a1@6 ~@13]/2", J: "d1@11 ~@5",
K: "f#1@5 ~@3 a1@7 ~", L: "d1@7 ~@6 d1@3", M: "f#1@7 ~ a1@8", N: "e1@3 ~",
O: "[e1@9 ~@7 g#1@8 b1@5 ~@3, ~@13 e1@5 ~@14]/2", P: "[a1@9 ~@7 c#2@8 e2@8, ~@13 a1@5 ~@14]/2", Q: "a1@13 a1@3",
R: "c#2@8 e2@7 ~", S: "a1@8 ~@5 a1@3", T: "c#2@7 ~ e2@7 ~", U: "a1@5 ~@3", V: "a1@2 ~ a1", W: "g#1 b1",
X: "e1@11 ~@5", Y: "e1@9 ~@3 e1@4", Z: "g#1@6 ~@2 b1@7 ~", AA: "a1@15 ~", AB: "[e1 ~ g#1 b1, ~@12 e1@7 ~@13]/2",
AC: "a1@11 ~@5", AD: "d2@3 ~", AE: "f#2 a2", AF: "d2@13 ~@3", AG: "[d2@5 ~@3 f#2@4 a2@4, ~@12 d2@7 ~@13]/2",
AH: "e1@2 ~ e1", AI: "a1 ~", AJ: "g#1@8 b1@7 ~", AK: "a1@5 ~@7 a1@4", AL: "c#2@7 ~ e2@6 ~@2", AM: "e1@5 ~@3",
AN: "a1@7 ~@5 a1@4", AO: "c#2@4 e2@3 ~", AP: "f#2@7 ~ a2@7 ~", AQ: "d2@2 ~ d2", AR: "f#2@4 a2@3 ~",
AS: "[a1@8 ~@4 a1@8 c#2@4 e2@7 ~]/2", AT: "f#2@8 a2@7 ~", AU: "d2@11 ~@5", AV: "a#1@9 ~@7", AW: "f1@11 ~@5",
AX: "a1@7 ~ c2@8", AY: "a1@8 c2@7 ~", AZ: "f1@2 ~ f1", BA: "a#1@11 ~@5", BB: "d2@8 f2@7 ~", BC: "a#1@5 ~@3",
BD: "d2 f2", BE: "a#1@2 ~ a#1", BF: "a1@7 ~ c2@7 ~", BG: "f1@3 ~", BH: "d#2@3 ~", BI: "g2 a#2", BJ: "a#1@5 ~@7 a#1@4",
BK: "d2@7 ~ f2@6 ~@2", BL: "f1@5 ~@3", BM: "a1 c2", BN: "f1@9 ~@3 f1@4", BO: "d2@7 ~ f2@8", BP: "a#1@7 ~@5 a#1@4",
BQ: "d2@4 f2@3 ~", BR: "g2@7 ~ a#2@7 ~", BS: "d#2@2 ~ d#2", BT: "g2@4 a#2@3 ~", BU: "a#1 ~",
})).s("gm_synth_bass_2").gain(0.36)
// other · synth brass 2 · "Synt-Bras2"
const synth_brass_2 = note(`<
~@44 A B C D E F ~@10 G H I J E K L M ~@24 C N O P Q ~@59 R S T U V W X@2 ~@8 A B C D E F ~@10 G H I J E K L M ~@24 C
N O P Q ~@59 R S T U V W X@2 ~@88 Y Z AA AB AC AD ~@8 Y Z AA AB ~@8
>`.pickRestart({
A: "~@2 e3 ~", B: "b3 e4", C: "~@8 e4@7 ~", D: "b3@7 ~ e3@8", E: "~@8 e3@7 ~", F: "b3@7 ~ e4@8", G: "~ e3",
H: "a3 e4", I: "~@8 d4@7 ~", J: "c#4@8 b3@7 ~", K: "b3@8 e4@7 ~", L: "~ e4", M: "b3 e3", N: "a4@3 ~ b4@4",
O: "~@2 c#5 ~", P: "e5@9 ~@7", Q: "a5@11 ~@5", R: "~@4 e4@3 ~", S: "a4@5 ~@3 b4@7 ~", T: "~ c#5", U: "~@8 e5@7 ~",
V: "~@8 c#5@7 ~", W: "b4@5 ~@3 a4@7 ~", X: "[e4@25 ~@7, f#4 ~@31]/2", Y: "~@4 f4@3 ~", Z: "a#4@5 ~@3 c5@7 ~",
AA: "~ d5", AB: "~@8 f5@7 ~", AC: "~@8 d5@7 ~", AD: "c5@5 ~@3 a#4@7 ~",
})).s("gm_synth_brass_2").gain(0.57).pan(0.6)
// other · pad new age · "Fantasia"
const pad_new_age = note(`<
A B C@2 D E F ~ E G H I J K L ~ A B C@2 D M J N D O P N Q R A K A S T ~@57 Q R A L D ~@3 U V ~@6 W X ~@14 Q R A K ~@4
U V ~@6 W X ~@15 R A K A S Y ~@57 Q R A L D ~@3 U V ~@6 W X ~@14 Q R A K ~@4 U V ~@6 W X ~@15 R A K A S Y ~@12 D L
~@11 Q R A L Z ~@3 AA AB ~@6 U AC ~@14 AD AE AF AG ~@4 AA AB ~@6 U AC ~@30 AD AE AF AG AH ~@5
>`.pickRestart({
A: "~@8 c#5 ~@7", B: "c#5 ~@7 e5 ~@7", C: "a5 ~@7 a5 ~@7", D: "a5 ~@15", E: "~@8 g#5 ~@7", F: "b5 ~@15",
G: "g#5 ~@7 a5 ~@7", H: "b5 ~@7 b5 ~@7", I: "a5 ~@7 g#5 ~@7", J: "f#5 ~@15", K: "~@8 e5 ~@7", L: "e5 ~@15",
M: "~@8 f#5 ~@7", N: "~@8 a5 ~@7", O: "g#5 ~@15", P: "f#5 ~@7 g#5 ~@7", Q: "~@8 e4 ~@7", R: "a4 ~@7 b4 ~@7",
S: "b4 ~@7 a4 ~@7", T: "e4 ~@15", U: "~@8 d4 ~@7", V: "e4 ~@7 g#4 ~@7", W: "~@8 c#4 ~@7", X: "e4 ~@7 a4 ~@7",
Y: "[e4,f#4] ~@15", Z: "f5 ~@15", AA: "~@8 d#4 ~@7", AB: "f4 ~@7 a4 ~@7", AC: "f4 ~@7 a#4 ~@7", AD: "~@8 f4 ~@7",
AE: "a#4 ~@7 c5 ~@7", AF: "~@8 d5 ~@7", AG: "~@8 f5 ~@7", AH: "a#5 ~@15",
})).s("gm_pad_new_age").gain(0.64).pan(0.6)
// chords · electric guitar clean · "Clean-Git."
const electric_guitar_clean = note(`<
~@4 A B@2 C A D C E F G H G I G@3 J K@3 A B@3 L M@3 F M N G O G N@2 P Q M G R S@3 T U S@2 T S@3 T S@2 V I M@3 W V S V
X@7 G Y@7 Z AA AB@3 AC AD@3 F M@3 ~@4 AE B C B A B@3 F M G@2 F N G M AE B@2 C AF AG@2 K L M G M L M G@2 AE B@3 A B C B
F M@3 L M@2 G AH AI K AJ A B@3 F M@2 AK AL M@2 G ~ G N@2 P Q M G R S@3 T U S@2 T S@3 T S@2 V I M@3 W V S V X@7 G Y@7 Z
AA AB@3 AC AD@3 F M@3 ~@4 AE B C B A B@3 F M G@2 F N G M AE B@2 C AF AG@2 K L M G M L M G@2 AE B@3 A B C B F M@3 L M@2
G AH AI K AJ A B@3 F M@2 AK AL M@2 G AM AN@5 S AO F AK M@2 L M@3 J AG@2 AP ~ S@3 F M@3 ~@4 AQ AR AS AR AT AR@3 AU AV
AW@2 AU AX AW AV AQ AR@2 AS AY AZ@2 BA BB AV AW AV BB AV AW@2 AQ AR@3 AT AR AS AR AU AV@3 BB AV@2 AW BC BD BA BE AT
AR@3 AU AV@2 ~@2 BF AV AW BC BD BA BE AT AR@3 AU AV@2 BF ~@6
>`.pickRestart({
A: "~@8 [e3,g#3,b3] ~@3 [e3,g#3,b3]@2 ~@2", B: "~@4 [e3,g#3,b3] ~@3", C: "~@8 [e3,g#3,b3]@3 ~@5",
D: "[e3,g#3,b3] ~@7 [e3,g#3,b3]@2 ~@6", E: "~@2 [e3,g#3,b3] ~", F: "~@4 [a2,c#3,e3] ~ [a2,c#3,e3] ~",
G: "~@8 [a2,c#3,e3]@3 ~@5", H: "~@2 [a2,c#3] ~, ~@4 e3 ~@3", I: "~@8 [a2,c#3,e3]@2 ~@2 [a2,c#3]@3 ~, ~@12 e3 ~@3",
J: "~@8 [d3,f#3,a3]@2 ~@2 [d3,f#3,a3]@3 ~", K: "~@8 [d3,f#3,a3]@3 ~@5", L: "~@8 [a2,c#3,e3] ~@3 [a2,c#3,e3]@2 ~@2",
M: "~@4 [a2,c#3,e3] ~@3", N: "~@8 [a2,c#3]@3 ~@5, ~@8 e3 ~@7", O: "~@8 [a2,c#3,e3]@2 ~@2 [a2,c#3,e3]@3 ~",
P: "~@4 [c#3,e3] ~ [a2,c#3,e3] ~", Q: "[a2,c#3,e3] ~@3 [a2,c#3,e3] ~@3", R: "~@4 [e2,g#2,b2] ~ [e2,g#2,b2] ~",
S: "~@4 [e2,g#2,b2] ~@3", T: "~@8 [e2,g#2,b2] ~@3 [e2,g#2,b2]@2 ~@2", U: "[e2,g#2,b2] ~@3 [e2,g#2,b2] ~@3",
V: "~@8 [e2,g#2,b2]@3 ~@5", W: "~@8 [g#2,b2]@2 ~@2 [e2,g#2,b2]@3 ~",
X: "[~@8 [a2,c#3,e3] ~@3 [a2,c#3,e3]@2 ~@10 [a2,c#3,e3]@2 ~@14 [a2,c#3,e3]@2 ~@14 [a2,c#3,e3]@2 ~@14 [a2,c#3,e3] ~@3 [a2,c#3,e3]@2 ~@10 [a2,c#3,e3]@2 ~@14 [a2,c#3,e3]@3 ~@5, [a3,c#4,e4]@7 ~]/7", // A
Y: "[~@8 [f#2,a2]@2 ~@2 [f#2,a2]@3 ~@9 [f#2,a2]@3 ~@13 [f#2,a2]@3 ~@13 [f#2,a2]@3 ~@13 [d2,f#2,a2]@2 ~@2 [d2,f#2]@4 ~@8 [d2,f#2,a2]@3 ~@13 [f#2,a2]@2 ~@6, [d4,f#4,a4]@7 ~, ~@8 d2@8 ~@8 d2@5 ~@11 d2@5 ~@11 d2@5 ~@15 a2@2 ~@26 d2@4 ~@4]/7", // F#m D F#m D
Z: "~@8 [d2,f#2,a2]@3 ~@5", AA: "~@8 [a2,c#3,e3] ~@3 [c#3,e3]@4, ~@6 a2 ~",
AB: "[a3@7 ~ [a2,c#3,e3]@3 ~@13 [a2,c#3,e3]@2 ~@14 [a2,c#3,e3]@3 ~@5, ~ e4@5]/3", // A
AC: "~@8 [e2,b2] ~@3 [e2,g#2,b2]@2 ~@2, ~ e3, ~@4 g#2 ~@3", // E5 E
AD: "[b3@7 ~ [e2,g#2,b2]@3 ~@13 [e2,g#2,b2]@2 ~@14 [e2,g#2,b2]@2 ~@6, ~@4 e4@17 ~@3]/3", // E
AE: "~@4 [e3,g#3,b3] ~ [e3,g#3,b3] ~", AF: "~@8 [f#3,a3]@3 ~ [f#3,a3]@3 ~, ~ d3", AG: "~@4 [d3,f#3,a3] ~@3",
AH: "~@8 [f#3,a3]@2 ~@2 [f#3,a3]@3 ~, ~@8 d3@7 ~", AI: "~@4 [f#3,a3] ~@3, ~@2 d3 ~", AJ: "~@2 [d3,f#3,a3] ~",
AK: "~@8 [a2,c#3,e3] ~@7", AL: "[a2,c#3,e3]@2 ~@6 [a2,c#3,e3] ~@3 [a2,c#3,e3]@2 ~@2",
AM: "~@4 [e2,g#2,b2] ~ [e2,g#2,b2] ~, ~ e3", // E
AN: "[g#3@6 ~@2 [e2,g#2,b2]@2 ~@14 [e2,g#2,b2]@2 ~@14 [e2,g#2,b2]@2 ~@14 [e2,g#2,b2] ~@3 [e2,g#2,b2]@2 ~@10 [e2,g#2,b2] ~@7, ~@4 b3@35 ~]/5", // E
AO: "~@4 [e2,g#2,a2,b2] ~@3", AP: "~@2 [d3,a3] ~, ~@4 f#3 ~@3", AQ: "~@4 [f3,a3,c4] ~ [f3,a3,c4] ~",
AR: "~@4 [f3,a3,c4] ~@3", AS: "~@8 [f3,a3,c4]@3 ~@5", AT: "~@8 [f3,a3,c4] ~@3 [f3,a3,c4]@2 ~@2",
AU: "~@4 [a#2,d3,f3] ~ [a#2,d3,f3] ~", AV: "~@4 [a#2,d3,f3] ~@3", AW: "~@8 [a#2,d3,f3]@3 ~@5",
AX: "~@8 [a#2,d3]@3 ~@5, ~@8 f3 ~@7", AY: "~@8 [g3,a#3]@3 ~ [g3,a#3]@3 ~, ~ d#3", AZ: "~@4 [d#3,g3,a#3] ~@3",
BA: "~@8 [d#3,g3,a#3]@3 ~@5", BB: "~@8 [a#2,d3,f3] ~@3 [a#2,d3,f3]@2 ~@2",
BC: "~@8 [g3,a#3]@2 ~@2 [g3,a#3]@3 ~, ~@8 d#3@7 ~", BD: "~@4 [g3,a#3] ~@3, ~@2 d#3 ~", BE: "~@2 [d#3,g3,a#3] ~",
BF: "~@8 [a#2,d3,f3] ~@7", // A#
})).s("gm_electric_guitar_clean").gain(0.34).pan(0.3)
// chords · epiano2 · "E-Piano 2"
const epiano2 = note(`<
~@60 A@4 B@4 C@5 D E F G@4 ~@4 H@3 ~ I@3 ~ J@4 ~@92 A@4 B@4 C@5 D E F G@4 ~@4 H@3 ~ I@3 ~ J@4 ~@182
>`.pickRestart({
A: "[[a3,c#4,e4]@53 ~@3 [a3,c#4,e4]@3 ~@5]/4", B: "[[e3,g#3,b3]@61 ~@3]/4", C: "[~@32 d4@7 ~, [a3,c#4,e4]@15 ~]/5",
D: "c#4@15 ~", E: "b3@15 ~", F: "c#4@7 ~", G: "[[d3,f#3,a3]@53 ~@11]/4", H: "[[a3,c#4,e4]@11 ~]/3",
I: "[e3,g#3,b3]/3", J: "[a3,c#4,e4]/4",
})).s("gm_epiano2").gain(0.36)
// chords · acoustic guitar steel · "Steel-Git."
const acoustic_guitar_steel = note(`<
~@4 A B@3 C D@3 A E@2 F G H@3 I@4 J K@3 L M@3 A N@3 O P@2 F Q@2 P R S T@2 U V@3 U W T@2 U X T@2 U Y P Z@2 V@3 AA AB
P@2 AC Y P@2 F AD AE@2 AF AG@2 AE@2 AH@2 AI@2 AJ@2 AK@2 AL@4 AM ~@3 AN AO@3 AP AQ@2 AR AS AT AU AV AW AX@2 AY AZ BA@3
BB BC BD BE AS AX@2 BF AS AX@2 BG AZ BH@2 BI BJ BH@2 AR BK BL BM@2 AS BN@2 ~ BO BP@2 BQ BR BS@2 BT AW BU@3 BV BW@2 BX
O P@2 F Q@2 P R S T@2 U V@3 U W T@2 U X T@2 U Y P Z@2 V@3 AA AB P@2 AC Y P@2 F AD AE@2 AF AG@2 AE@2 AH@2 AI@2 AJ@2
AK@2 AL@4 AM ~@3 AN AO@3 AP AQ@2 AR AS AT AU AV AW AX@2 AY AZ BA@3 BB BC BD BE AS AX@2 BF AS AX@2 BG AZ BH@2 BI BJ
BH@2 AR BK BL BM@2 AS BN@2 ~ BO BP@2 BQ BR BS@2 BT AW BU@3 BV BW@2 BX BY@4 AJ@2 BZ@2 CA CB CC@2 CD@4 CE AE@2 CF T@3 AA
CG CB CH@2 ~@4 CI CJ@3 CK CL@2 CM CN CO CP CQ CR CS@2 CT CU CV@3 CW CX CY CZ CN CS@2 DA CN CS@2 DB CU DC@2 DD DE DC@2
CM DF DG DH@2 CN DI@2 ~ DJ DK@2 DL DM DN@2 DO CR DP@4 DQ CP ~ DJ DK@2 DL DM DN@2 DO CR DR@3 ~@6
>`.pickRestart({
A: "[a3,c#4,e4]@10 ~@3 [a3,c#4,e4]@2 ~", // A
B: "[[a3,c#4,e4]@2 ~@6 [e3,g#3,b3]@14 ~@2 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@5 ~@3]/3", // A E
C: "[e3,g#3,b3]@11 ~@2 [e3,g#3,b3]@2 ~", // E
D: "[[e3,g#3,b3]@6 ~@2 [e3,g#3,b3]@14 ~@2 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@3 ~@5, ~@40 a3 ~@7]/3", // E
E: "[[a3,c#4,e4]@3 ~ [a3,c#4,e4]@7 ~ [a3,c#4,e4]@4, ~@24 d#4@5 ~@3]/2", F: "~@2 [a3,c#4,e4] ~",
G: "[a3,c#4,e4]@10 ~ [a3,c#4,e4]@2 ~@3", // A
H: "[[a3,c#4,e4]@7 ~ [a3,c#4,e4]@15 ~ [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@3 ~@5]/3", // A
I: "[[d3,f#3,a3]@10 ~@3 [f#3,a3]@2 ~ [f#3,a3]@5 ~@3 [d3,f#3,a3]@14 ~@2 [d3,f#3,a3]@13 ~@3 [d3,f#3,a3]@8, ~@13 d3@8 ~@43]/4", // D F#m D
J: "[e3,g#3,b3]@10 ~@3 [e3,g#3,b3]@2 ~", // E
K: "[[e3,g#3,b3]@6 ~@2 [e3,g#3,b3]@14 ~@5 [e3,g#3,b3]@13 [e3,g#3,b3]@4 ~@4]/3", // E
L: "[a3,c#4,e4]@9 ~@4 [a3,c#4,e4]@2 ~", // A
M: "[[a3,c#4,e4]@5 ~@3 [a3,c#4,e4]@14 ~@2 [a3,c#4,e4]@14 ~@2 [a3,c#4,e4]@5 ~@3, ~@24 d#4 ~@23]/3", // A
N: "[[a3,c#4,e4]@6 ~@2 [a3,c#4,e4]@15 ~ [a3,c#4,e4]@13 ~@11]/3", O: "[e3,g#3,a3,b3,c#4,e4]@5 ~@3 [a3,c#4,e4]@8",
P: "~ [a3,c#4,e4]", Q: "[[a3,c#4,e4]@5 ~@3 [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@8]/2", R: "~@8 [a3,c#4,e4]@3 ~@5",
S: "[e3,g#3,b3]@3 ~ [e3,g#3,b3]@4", T: "~ [e3,g#3,b3]", U: "~@2 [e3,g#3,b3] ~",
V: "[[e3,g#3,b3]@5 ~@3 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@8]/3", W: "[e3,g#3,b3]@5 ~@3 [e3,g#3,b3]@8",
X: "[e3,g#3,b3] ~ [e3,g#3,b3]@2", Y: "[a3,c#4,e4]@3 ~ [a3,c#4,e4]@4",
Z: "[~@8 [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@3 ~@5]/2", AA: "~@8 [e3,g#3,b3]@3 ~@5", AB: "[a3,c#4,e4] ~ [a3,c#4,e4]@2",
AC: "~@8 [a3,c#4,e4]@5 ~@3", AD: "[d3,a3]@5 ~@3 [d3,f#3,a3]@8, f#3@3 ~@13",
AE: "[~@8 [d3,f#3,a3]@13 ~@3 [d3,f#3,a3]@8]/2", AF: "~@2 [d3,f#3] ~, ~@4 a3 ~@3",
AG: "[[d3,f#3,a3]@5 ~@3 [d3,f#3,a3]@14 ~@2 [d3,f#3,a3]@8]/2", // D
AH: "[[a3,c#4,e4]@2 ~@2 [a3,c#4,e4]@7 ~ [a3,c#4,e4]@4]/2", AI: "[~@4 [a3,c#4,e4]@7 ~ [a3,c#4]@2 ~@2, ~@12 e4 ~@3]/2",
AJ: "[[e3,g#3,b3]@5 ~@3 [e3,g#3,b3]@14 ~@2 [e3,g#3,b3]@8]/2", AK: "[~@8 [e3,b3]@16 g#3@3 ~@5, ~@4 g#3@7 ~@5]/2",
AL: "[[a3,c#4,e4]@6 ~@2 [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@14 ~@2 [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@4 ~@4]/4", // A
AM: "[a3,c#4,e4] ~", AN: "[e3,g#3,b3,e4,g#4,b4]@4 ~@2 [e3,g#3,b3,e4,g#4,b4] ~",
AO: "[[e3,g#3,b3,e4,g#4,b4]@4 ~@4 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@3 ~@5]/3", // E
AP: "[e3,g#3,b3,e4,g#4,b4]@11 ~ [e3,g#3,b3,e4,g#4,b4]@2 ~@2", // E
AQ: "[[e3,g#3,b3,e4,g#4,b4]@5 ~@3 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@8]/2", // E
AR: "~@4 [e3,g#3,b3,e4,g#4,b4] ~@3", AS: "[a2,c#3,e3,a3,c#4,e4]@5 ~ [a2,c#3,e3,a3,c#4,e4] ~",
AT: "[a2,c#3,e3,a3,c#4,e4]@3 ~ [a2,c#3,e3,a3,c#4,e4]@4", AU: "~ [a2,c#3,e3,a3,c#4,e4]",
AV: "~@8 [a2,c#3,e3,a3,c#4,e4]@5 ~@3", AW: "[a2,c#3,e3,a3,c#4,e4]@9 ~@3 [a2,c#3,e3,a3,c#4,e4]@2 ~@2",
AX: "[[a2,c#3,e3,a3,c#4,e4]@6 ~@2 [a2,c#3,e3,a3,c#4,e4]@13 ~@3 [a2,c#3,e3,a3,c#4,e4]@8]/2", // A
AY: "~@8 [a2,c#3,e3,a3,c#4,e4]@3 ~@5", AZ: "[e3,g#3,b3,e4,g#4,b4]@9 ~@3 [e3,g#3,b3,e4,g#4,b4]@2 ~@2",
BA: "[[e3,g#3,b3,e4,g#4,b4]@6 ~@2 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@3 ~@5]/3", // E
BB: "[g#3,a3,g#4,a4] ~@2 [d3,d4], [f#3,f#4]@6 [a3,a4] ~, [d3,d4]@9 ~@7", // Amaj7 D F# A D
BC: "[d3,f#3,d4,f#4]@5 ~@3 [d3,f#3,a3,d4,f#4,a4]@8, [a3,a4]@3 ~@13", BD: "~ [d3,f#3,a3,d4,f#4,a4]",
BE: "~@2 [d3,f#3,a3,d4,f#4,a4] ~", BF: "~@2 [a2,c#3,e3,a3,c#4,e4] ~", BG: "~@4 [a2,c#3,e3,a3,c#4,e4] ~@3",
BH: "[[e3,g#3,b3,e4,g#4,b4]@6 ~@2 [e3,g#3,b3,e4,g#4,b4]@13 ~@3 [e3,g#3,b3,e4,g#4,b4]@8]/2", // E
BI: "~@2 [e3,g#3,b3,e4,g#4,b4] ~", BJ: "[e3,g#3,b3,e4,g#4,b4]@5 ~ [e3,g#3,b3,e4,g#4,b4] ~",
BK: "[a2,c#3,e3,a3,c#4,e4]@9 ~@3 [a2,c#3,e3,a3,c#4,e4]@2 ~@2, [b2,b3] ~@15", // A B
BL: "[a2,c#3,e3,a3,c#4,e4]@7 ~ [a2,c#3,e3,a3,c#4,e4]@8", // A
BM: "[~@8 [a2,c#3,e3,a3,c#4,e4]@13 ~@3 [a2,c#3,e3,a3,c#4,e4]@4 ~@4]/2", // A
BN: "[[a2,c#3,e3,a3,c#4,e4]@5 ~@3 [a2,c#3,e3,a3,c#4,e4]@13 ~@3 [a2,c#3,e3,a3,c#4,e4]@8]/2", // A
BO: "[d3,f#3,a3,d4,f#4,a4]@9 ~@3 [d3,f#3,d4,f#4]@3 ~, ~@12 [a3,a4] ~@3", // D A
BP: "[[d3,f#3,a3,d4,f#4,a4]@7 ~ [d3,f#3,a3,d4,f#4,a4]@13 ~@3 [d3,f#3,a3,d4,f#4,a4]@8]/2", // D
BQ: "~@4 [d3,f#3,a3,d4,f#4,a4]@3 ~", BR: "[e3,g#3,b3,e4,g#4,b4]@7 ~@5 [e3,g#3,b3,e4,g#4,b4] ~@3",
BS: "[[e3,g#3,b3,e4,g#4,b4]@5 ~@3 [e3,g#3,b3,e4,g#4,b4]@14 ~@2 [e3,g#3,b3,e4,g#4,b4]@8]/2", // E
BT: "~@2 [e3,g#3,e4,g#4] ~, ~@4 [b3,b4] ~@3", // E B
BU: "[[a2,c#3,e3,a3,c#4,e4]@5 ~@3 [a2,c#3,e3,a3,c#4,e4]@14 ~@2 [a2,c#3,e3,a3,c#4,e4]@13 ~@3 [a2,c#3,e3,a3,c#4,e4]@5 ~@3]/3", // A
BV: "[a2,c#3,e3,a3,c#4,e4] [a3,c#4,e4]", BW: "[~@8 [a3,c#4,e4]@13 ~@3 [a3,c#4,e4]@8]/2", BX: "~@8 [a3,c#4,e4]@7 ~",
BY: "[[e3,g#3,b3]@5 ~@3 [e3,g#3,b3]@14 ~@2 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@4 ~@4]/4", // E
BZ: "[~@8 [e3,g#3,b3]@13 ~@3 [e3,g#3,b3]@3 ~@5]/2", CA: "[a2,c#3,e3] ~ [a2,c#3,e3]@2", CB: "~ [a2,c#3,e3]",
CC: "[~@8 [a2,c#3,e3]@13 ~@3 [a2,c#3,e3]@4 ~@4]/2", // A
CD: "[[a2,c#3,e3]@5 ~@3 [a2,c#3,e3]@13 ~@3 [a2,c#3,e3]@13 ~@3 [a2,c#3,e3]@13 ~@11]/4", // A
CE: "[d3,f#3,a3]@5 ~@3 [d3,f#3,a3]@8", CF: "~@8 [d3,f#3,a3]@5 ~@3", CG: "[a2,c#3]@5 ~@3 [a2,c#3,e3]@8, e3@3 ~@13",
CH: "[~@8 [a2,c#3,e3]@13 ~@3 [a2,c#3,e3]@7 ~]/2", CI: "[f3,a3,c4,f4,a4,c5]@4 ~@2 [f3,a3,c4,f4,a4,c5] ~",
// … 99 more lines
More by G. G. Anderson
Weisse Rosen schenk' ich dirG major · 80 bpmGitarren klingen leise durch die NachtF major · 114 bpmIch bin so treu wie GoldB major · 120 bpmEngel von ValparaisoA♭ major · 173 bpmLady SunshineF♯ major · 120 bpmMadchen MadchenE major · 139 bpmRosalieC major · 112 bpmSommernacht in RomG major · 126 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.