0:00/0:00
// Only Love — Mouskouri Nana
// 66 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 74 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(66/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, A@4 for four bars: edit a riff to change every repeat.
// chords · piano · "A.Piano"
const piano = note(`<
~ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH J K L M AI AJ P Q R S AK U V W X Y AL AA
AB AC AD AE AF AG AH J K L M N AM P AN AO AP AQ AR@2 ~
>`.pickRestart({
A: "a3@3 ~@3 d4@2 [g1,g2,g3,a3,b3,d4]@8, [g1,g2,g3]@15 ~@17, [b3,d4]@8 a3@7 ~@17, ~@3 d3@5 ~@8, ~@5 b3@3 ~@8", // G Bm
B: "[g3,b3,d4]@8 [g3,b3,d4]@7 ~ [g3,b3,d4]@8 g3@3 ~ g3@4, [g1,g2]@15 ~ [b1,b2]@15 ~, ~@24 [b3,d4]@7 ~", // G B Bm
C: "[g3,c4,e4]@7 ~ [g3,c4,e4]@7 ~ [g3,c4,e4]@8 [c2,c3]@3 ~ [b1,b2]@4, [c2,c3]@23 ~ [g3,c4,e4]@7 ~", // C B C
D: "[a2,g3,c4,e4]@6 e2@2 [a2,g3,c4,e4]@8 [f#3,a3,c4,e4]@8 [f#3,a3,c4,e4]@7 ~, a1@15 ~ [d2,d3]@15 ~", // Am7 F#m7b5 D
E: "[g3,b3,d4]@8 [g3,b3,d4]@7 ~ g3@4 g3@4 [g1,g2]@3 ~ [f#1,f#2]@4, [g1,g2]@23 ~@9, ~@16 [b3,d4]@8 [b3,d4,g4]@7 ~", // G F# G Bm G
F: "[b3,e4,g4]@8 ~@4 [e1,e2]@4 [b3,e4,g4]@8 e4@3 ~ [d1,d2,e4]@4, [e1,e2]@11 ~@5 [d1,d2]@11 ~@5, ~@8 [b3,e4,g4]@7 ~@9 [b3,g4]@7 ~", // Em E Em Dsus2 E D Em
G: "[a3,c#4,e4,g4]@8 ~@4 [c#2,c#3]@4 [d2,d3,a3,d4,f#4]@8 [c2,c3,a3,d4,f#4]@7 ~, [c#1,c#2]@11 ~@21, ~@8 [a3,c#4,e4,g4]@7 ~@17", // A7 C# D D7 C# A7
H: "~@3 g3 [c2,c3,e4,g4,c5]@2 [c2,c3] [b1,b2], [c2,b2] ~, [b3,d4,f4]@8 [f4,d5]@7 ~@9 [e4,g4,c5]@8, ~@4 g3@7 ~@21", // C B Cmaj7 Bdim Dm C
I: "~ g3 ~ g3 ~ c4 ~ d4, [a1,a2]@15 ~ [d2,e4,g4,c5]@8 [d2,f#4,a4,c5,d5]@8, [c4,e4,g4]@8 [c4,e4,g4]@7 ~ d3@15 ~", // A C D7 C
J: "[d4,g4,b4,d5]@8 ~@4 [g1,g2]@4 [d4,g4,b4,d5]@8 d4@3 ~ d4@4, [g1,g2]@11 ~@5 [b1,b2]@15 ~, ~@8 [d4,g4,b4,d5]@7 ~@9 [g4,b4,d5]@8", // G B G
K: "[e4,g4,d5]@7 ~ [e4,g4,c5]@7 ~@5 [c2,c3]@3 ~ [b1,b2,c4,e4,g4,c5]@8, [c2,c3]@19 ~@13, ~@2 [c4,e4,g4,c5] ~", // Em7 C Cmaj7 C
L: "[c4,e4,g4,c5]@8 ~@4 b2 ~ c3 ~ [e4,f#4,a4,c5]@8 ~@4 d3@4, [a1,a2]@12 ~@4 d2@15 ~, ~@8 [e4,g4,c5,e5]@7 ~ d3@12 ~@4, ~@24 [f#4,a4,c5,e5]@7 ~", // C F#m7b5 A C F#m7b5
M: "[d4,g4,b4,d5]@8 [d4,g4,b4,d5]@7 ~@5 [g1,g2]@3 ~ [f#1,f#2]@3 ~ [e1,e2]@4, [g1,g2]@19 ~@13, ~@16 [d4,g4,b4,d5]@8 [g4,b4,d5,g5]@7 ~", // G F# E G
N: "[b3,d#4,f#4]@8 [b3,d#4,f#4]@7 ~ [b3,d#4,f#4,a4]@8 b3@3 ~ b3@4, [d#1,d#2]@15 ~ [b1,b2]@15 ~, ~@3 [d#4,f#4,a4]", // B B7 D# B D#dim
O: "[e4,a4,c5]@8 ~@4 [d2,d3]@4 c#3@4 ~@4 [a3,c#4,e4,a4]@7 ~, [e2,e3]@11 ~@5 c#2@2 ~@2 c#2@11 ~, ~@8 [e4,g4,b4]@7 ~ [b3,c#4,e4,g4]@6 c#3@9 ~", // Am D A E Em C#m7b5
P: "[b3,d4,g4,b4]@8 [g4,b4,d5]@7 ~ [g4,b4,d5,g5]@7 ~@7 d3@2, [d2,d3]@31 ~, ~@24 g4@7 ~, ~@13 b3@3, ~@7 g3", // G D
Q: "[c4,e4,g4,c5]@8 ~@4 d3@3 ~ [a3,d4,f#4,a4]@8 ~@4 f#2@4, d2@15 ~ [d2,d3]@12 ~@4, d3@11 ~@21, ~@8 [c4,e4,g4,c5]@7 ~@9 [c4,d4,f#4,a4]@8", // C D C D7
R: "[g3,c4,d4,g4]@8 [g3,c4,d4,g4]@7 ~ [g3,b3,d4,g4]@8 a3@2 ~@2 g3@4, g2@31 ~, g1@15 ~ g1@15 ~, ~@3 d4, ~@13 b3@3", // Gsus4 G
S: "[f#3,b3,d#4,f#4]@2 ~ [b1,b2] [f#3,b3,d#4,f#4]@2 ~ [d#2,d#3], [b1,b2]@11 ~@5 [d#2,d#3]@11 ~@5, ~@8 [f#3,b3,d#4,f#4]@7 ~@9 [b3,d#4,f#4,a4]@8", // B D# B D# B B7
T: "[b3,e4,g4,b4]@7 ~@5 [e2,e3]@4 [b3,e4,g4,b4]@8 ~@4 [e2,e3,b4]@4, [e2,e3]@11 ~@5 [e2,e3]@11 ~@5, ~@8 [b3,e4,g4,b4]@7 ~@9 [b3,e4,g4]@7 ~", // Em E Em E5 E Em
U: "[a3,d4,f#4,a4]@8 ~@4 [d2,d3]@4 [d2,e4,f#4,a4,c5]@8 d2@4 f#2@3 ~, [d2,d3]@11 ~@13 [e4,f#4,a4,c5]@7 ~, ~@8 [a3,d4,f#4,a4]@7 ~ d3@11 ~@5", // D D7 D F#m7b5 D
V: "[d4,g4,b4,d5]@2 ~ [g1,g2] [d4,g4,b4,d5]@2 ~ [g1,g2], [g1,g2]@11 ~@5 [g1,g2]@11 ~@5, ~@8 [d4,g4,b4,d5]@7 ~@9 [d4,g4,b4,d5]@7 ~", // G
W: "[e4,f#4,a4,c5]@2 ~ [f#1,f#2] b2 ~@2 [b1,b2], [f#1,f#2]@11 ~@5 b1@3 ~ b1@7 ~@5, ~@8 [e4,f#4,a4,c5]@7 ~ [d#4,f#4,a4,b4]@6 b2@5 ~@5, ~@3 [d#4,f#4,a4,b4]", // F#m7b5 F# B F# F#m7b5 B7
X: "[b3,e4,g4,b4]@4 ~@2 [e2,e3]@2 [d2,b3]@2 a3 ~@3 [d2,g3]@2, [e2,e3]@11 ~@11 b3@9 ~, ~@8 [b3,e4,g4,b4]@7 ~ [d3,e4,g4,b4]@6 d2@4 e4@6, ~@3 [d3,f#4]", // Em E G G5 E Em Em7 D
Y: "[c#4,e4,g4,b4]@4 [g4,b4,c#5,e5]@2 [g4,b4,c#5,e5]@2 f#2@2 f#4 ~@3 f#4@2, c#2@15 ~ [f#1,e4,a#4,c#5]@7 ~ [f#1,e4,a#4,c#5]@8, ~@8 c#3@7 ~@7 f#2@9 ~", // C#m7b5 F#7
Z: "~ f#4 [e4,e5] [f#4,f#5] ~ f#4 ~ f#4, [b1,b2]@15 ~ [b1,b2,d#4,b4,d#5]@8 [a2,d#4,b4,d#5]@7 ~, [e4,b4,e5]@8 b4@7 ~@17", // E F# B B7 E5
AA: "[g3,b3,d4]@8 [g3,b3,d4]@7 ~ [g3,b3,d4]@6 f#3@2 ~@4 [d4,g4]@4, [g1,g2]@15 ~ [b1,b2]@15 ~, ~@3 g3, ~@13 b3@3", // G G5 G B
AB: "[g3,c4,e4,g4]@8 [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [g3,c4,e4,g4]@8 [c2,c3]@3 ~ [b1,b2]@4, [c2,c3]@23 ~@9, ~@8 g3@7 ~@9 [g3,c4,e4,g4]@7 ~", // C B C
AC: "[a2,g3,c4,e4,g4]@6 e2@2 [a2,g3,c4,e4,a4]@8 [f#3,a3,c4,e4]@8 [f#3,a3,c4,e4]@7 ~, a1@15 ~ [d2,d3]@15 ~", // Am7 F#m7b5 D
AD: "[g3,b3,d4]@8 [g3,b3,d4]@7 ~ g3@4 g3@4 [g1,g2,g4]@3 ~ [f#1,f#2,f#4]@4, [g1,g2]@23 ~@9, ~@16 [b3,d4]@8 [b3,d4]@7 ~", // G F# G Bm
AE: "[b3,e4,g4]@8 ~@4 [e1,e2]@4 d3@4 ~@4 e4@3 ~ [d2,d3,e4,g4]@4, [e1,e2]@11 ~@5 d2@3 ~ d2@8 ~@4, ~@8 [b3,e4,g4]@7 ~ [b3,e4,g4]@6 d3@5 ~@5, ~@24 b3@7 ~", // Em E Em7 E Em
AF: "[a3,c#4,e4,g4]@4 ~@2 [c#2,c#3,a4]@2 d5@2 [e4,e5]@2 [c2,c3] ~ c3@2, [c#1,c#2]@11 ~@5 [d2,d3,d4,a4]@8 ~@2 c2@5 ~, ~@8 [e4,e5]@8 ~@8 [d4,a4,d5]@7 ~", // A7 F#m E C C# D5 E D5
AG: "~@8 [g3,b3,d4]@4 [b3,d4,f4]@4 [c2,c3,c4,e4,g4,c5]@7 ~ [c2,c3]@4 [b1,b2]@4, c2@15 ~@17, [b2,b3,d4,f4]@3 b2@5 ~@8, ~@4 g3@4 ~@16 [c4,e4,g4,c5]@7 ~", // G Bdim C B Bdim C
AH: "a1@4 ~@8 b2 ~ c3@2 ~@4 c4@4 ~@4 d4@4, [c4,e4,g4]@3 a1@3 ~@2 [d2,e4,g4,c5]@4 [d2,f#4,a4,c5,d5]@4, a2@3 ~ a2@8 g3@4 d3@15 ~, ~@4 g3@4 [c4,e4,g4]@7 ~@17", // C D7 C
AI: "[b3,d#4,f#4]@2 f#4!2 [b3,d#4,f#4,a4]@2 f#4!2, [d#1,d#2]@15 ~ [b1,b2]@15 ~, ~ [f#3,b3,d#4] ~ [a4,b4,d#5]", // B B7 D# B B7
AJ: "[e4,a4,c5]@4 ~@2 [d2,d3]@2 c#3@2 ~@2 g4 ~ g4@2, [e2,e3]@11 ~@5 c#2@2 ~@2 c#2@11 ~, ~@8 [e4,g4,b4]@7 ~ [a3,c#4,e4,g4]@6 c#3@9 ~, ~@13 [c#5,e5,g5]@3", // Am D E Em A7 C#dim
AK: "[b3,e4,g4,b4]@7 ~@5 [e2,e3]@4 [b3,e4,b4]@6 [f#4,a4]@2 ~@4 [e2,e3,b4]@4, [e2,e3]@11 ~@5 [e2,e3]@11 ~@5, ~@8 [b3,e4,g4,b4]@7 ~ g4@5 ~@3 [b3,e4,g4]@7 ~", // Em E E5 F#m E5 E Em
AL: "~ f#4 ~ f#4 ~ f#4 ~ a4, [b1,b2]@15 ~ [b1,b2,d#4,b4,d#5]@8 [a2,d#4,b4]@7 ~, [e4,b4,e5]@8 [e4,b4,e5]@7 ~@17", // B B7 E5
AM: "[e4,a4,c5]@8 ~@4 [d2,d3]@4 c#3@4 ~@4 [a3,c#4,e4,a4]@7 ~, [e2,e3]@11 ~@5 c#2@2 ~@2 c#2@11 ~, ~@8 [e4,g4,b4]@7 ~ [a3,c#4,e4,g4]@6 c#3@9 ~", // Am D A E Em A7
AN: "[c4,e4,g4,c5]@8 ~@4 d3@3 ~ [c4,e4,g4,c5]@8 ~@6 g4@2, d2@15 ~ [d2,d3]@12 [d3,d4]@4, d3@11 ~@13 g3@8, ~@8 [c4,e4,g4,c5]@7 ~@11 c4@6", // C D C
AO: "[a3,d4,f#4]@8 ~@4 d3@3 ~ [d2,d3,d4,f#4,a4,c5,d5]@16, d2@15 ~@17, d3@11 ~@21, ~@8 [d4,f#4,a4,c5,d5]@7 ~@17", // D D7
AP: "[g3,c4,d4,g4]@8 ~@4 g2@3 ~ [g3,c4,d4,g4]@8 ~@4 g2@3 ~, g1@15 ~ g1@15 ~, g2@11 ~@5 g2@12 ~@4, ~@8 [g3,c4,d4,g4]@7 ~@9 [g3,c4,d4,g4]@8", // Gsus4
AQ: "[g3,b3,d4,g4]@8 ~@4 g2@3 ~ [d5,g5,c6,d6]@8 [d6,g6,b6]@8, g1@15 ~ [g1,g2]@15 ~, g2@11 ~@21, ~ [d4,g4,b4,d5] ~@2", // G Csus2 G
AR: "[g1,g2,d3,b3]/2", // G
})).s("gm_piano").gain(0.33)
// bass · electric bass finger · "Fing.Bass"
const bass = note(`<
~@10 A B C D E F G H I J K H L M N O P A Q R S T U V W X Y Z AA AB AC AD H AE J AF AG AH AI N AJ AK X Q AL S AM U V W
X AN AO AP AB AQ AR AS AT AU AV AW@3
>`.pickRestart({
A: "g1@10 ~@2 g1@3 ~ b1@14 ~@2", B: "c2@17 ~@3 c2@3 ~ b1@7 ~", C: "a1@10 ~@2 b1@2 c2@2 d2@10 ~@2 d1@3 ~",
D: "g1@16 ~@4 g2@3 ~ f#2@3 ~ e2@3 ~", E: "d#2@15 ~ b1@14 ~@2", F: "e2@10 ~@2 d2@3 ~ c#2@15 ~", G: "d2@15 ~",
H: "d2@10 ~@2 d2@3 ~ d1@10 ~@2 f#1@3 ~", I: "g1@14 ~@2 g1@11 ~ g1@3 ~", J: "b1@10 ~@2 b1@3 ~ d#2@10 ~@2 d#2@3 ~",
K: "e2@10 ~@2 e2@3 ~ e2@10 ~@2 e2@3 ~", L: "g1@10 ~@2 g1@3 ~ g1@10 ~@2 g1@3 ~",
M: "f#1@10 ~@2 f#1@3 ~ b1@10 ~@2 b1@3 ~", N: "e2@10 ~@2 e2@3 ~ d2@10 ~@2 d2@3 ~",
O: "c#2@7 ~ c#3@7 ~ f#2@6 ~ f#1 f#1@5 ~@3", P: "b2@6 ~@2 b2@7 ~ b1@7 ~ a2@7 ~",
Q: "c2@10 ~@2 c2@3 ~ c2@7 ~ c3@3 ~ b2@3 ~", R: "a2@10 ~@2 a2@3 ~ d2@10 ~@2 d2@3 ~",
S: "g1@10 ~@2 g1@3 ~ g1@6 ~@2 g1@3 ~ f#1@3 ~", T: "e1@10 ~@2 e1@3 ~ d2@10 ~@2 d2@3 ~",
U: "c#2@10 ~@2 c#2@3 ~ d2@7 ~ c2@7 ~", V: "b1@10 ~@2 b1@3 ~ c2@6 ~@2 c2@3 ~ b1@3 ~",
W: "a1@10 ~@2 b1 ~ c2@2 d2@6 ~@2 d1@7 ~", X: "g1@10 ~@2 g1@3 ~ b1@10 ~@2 b1@3 ~", Y: "c2@10 ~@2 g1@3 ~ c2@7 ~ b1@7 ~",
Z: "a1@10 ~@2 a1@3 ~ d2@7 ~ d1@7 ~", AA: "g1@10 ~@2 g1@3 ~ g2@6 ~@2 f#2@3 ~ e2@3 ~",
AB: "d#2@10 ~@2 d#2@3 ~ b1@7 ~ b1@3 ~ b1@3 ~", AC: "e2@10 ~@2 d2@3 ~ c#2@11 ~ c#2@3 ~",
AD: "d2@10 ~@2 d2@3 ~ d2@11 ~ d3@4", AE: "g1@10 ~@2 g1@3 ~ g1@8 ~@8", AF: "e2@10 ~@2 e2@3 ~ e2@7 ~ f#2@3 ~ e2@3 ~",
AG: "d2@10 ~@2 d2@3 ~ d1@10 ~@2 f#1 ~ d1 ~", AH: "g1@10 ~@2 g1@3 ~ g1@8 ~@2 g2@2 e2 ~ d2@2",
AI: "f#1@9 ~ f#1 ~ f#1@3 ~ b1@10 ~@2 b1@3 ~", AJ: "c#2@10 ~@2 c#2@3 ~ f#1@7 ~ f#1@4 f#1 ~ f#1 ~",
AK: "b1@7 ~ b2@3 ~ f#2@3 ~ b1@7 ~ a1@7 ~", AL: "a2@10 ~@2 a2@3 ~ d2@7 ~ d1@7 ~", AM: "e1@10 ~@2 e1@3 ~ d1@7 ~ d2@7 ~",
AN: "c2@10 ~@2 g2@3 ~ c2@7 ~ b1@7 ~", AO: "a1@10 ~@2 a1@3 ~ d2@7 ~ d3@3 ~ d2@3 ~",
AP: "g1@10 ~@2 g1@3 ~ g2@3 ~ g2@3 ~ f#2@3 ~ e2@3 ~", AQ: "e2@7 ~ e2@3 ~ d2@3 ~ c#2@7 ~ c#3@3 ~ c#2@3 ~",
AR: "d2@10 ~@2 d2@3 ~ d2@7 ~ d2@3 ~@2 c#3 [b2,c3] ~, ~@14 d3 ~", AS: "d2@10 ~@2 d2@3 ~ d2@10 ~@2 d2@3 ~",
AT: "d2@10 ~@2 d2@3 ~ d1@15 ~", AU: "g1@10 ~@2 g1@3 ~ g1@10 ~@2 g2@3 ~", AV: "g1@10 ~@2 g1@3 ~ g1@14 ~@2",
AW: "[g1@65 ~@31]/3",
})).s("gm_electric_bass_finger").gain(0.48)
// chords · string ensemble 2 · "#Sl.Strin"
const string_ensemble_2 = note("<A@3 B@2 C@2 D@7 E F@8 G@7 H@2 I@7 E J@8 K@7 H@2 I@7 E L@8 ~>".pickRestart({
A: "[~@31 [g2,b3,d4,g4,b4,d5]@31 ~ g2@16 b2@16 c3, ~@21 [d4,d5]@11]/3", // G D
B: "[~@5 [e4,e5]@2 ~@20 b2@4 ~@6 a4@2 ~@8 d3@15 ~ g4, ~@7 [c4,c5]@57, ~@31 a2@17 ~@14 g2@2, ~@39 f#4@25]/2", // E C
C: "[~@5 [d4,d5]@2 ~@15 g3@5 [f#2,f#3]@4 [e2,e3]@16 [d2,d3]@16 [c#2,c#3,a3,e4], ~@7 [b3,b4]@23 ~ [b3,g4,b4]@33]/2", // D F# E D A B Em
D: "[~@15 [d2,d3]@8 ~@8 [b1,b2,f4]@16 [c2,c3]@12 [b1,b2]@4 [a1,a2]@16 ~@7 [f#3,d4,f#4]@9 [g2,g3,b3]@16 [b2,b3]@16 c3@23 [b2,b3]@9 [a2,a3,e4,g4]@15 ~@17 g3@23 [f#2,f#3]@5 ~@4 [d#2,d#3,f#4], ~@6 a4@27 ~@14 e4@41 ~@7 g4@64 c5@32 g4@33, ~@14 f#4@16 [g3,g4]@58 ~@7 d4@8 ~@24 [c4,e4]@33 ~@14 d4@16 b4@32 a3@2, ~@23 [c2,c3]@10 ~@46 [d2,d3]@17 ~@79 [d3,f#4,a4]@16 d5@29 ~@4, ~@190 g2@26 ~@3 [e2,e3]@5]/7", // D Bdim C B A D G B …
E: "~@7 [b3,b4]@4 [f#4,f#5]@4 [b1,b2,d#4,a4,d#5]@15 ~ [e2,e3,e4,a4,a5], ~@15 c4", // B F# B7 A5
F: "[~@11 [d2,d3]@4 ~@8 a3@8 ~@9 g5@3 ~@4 [d5,g5]@4 ~ g5@3 [b4,d5]@4 ~ d5@3 e4@12 g4@4 ~@32 b4@13 ~@3 [b1,b2,b3]@16 ~@8 f#6@7 ~ b4@8 e4@8 b4@7 ~@29 d5@4 f#5@4 ~@4 c6@8 b5@12 g5@4 b5@4 d6@4 [f#2,f#3,c4,f#4,a4,e6], ~@5 [g4,g5]@26 [b3,g4]@32 a5@29 g5@33 ~@2 f#5@25 ~@6 g6@25 e4@8 [d2,d3]@31 g2@34, ~@5 b3@19 ~@7 [d2,d3]@64 [g1,g2,d4,g4]@30 ~@18 [d#2,d#3,a3]@16 g4@15 ~ g4@15 [f#4,a4]@33 [g3,b3,d4,g4]@33, ~@15 [c#2,c#3]@18 ~@6 b5@4 d6@5 ~@15 c5@47 b3@17 ~@32 [e2,e3,b3]@31 d4@17 c4@17 ~@32, ~@44 b5@5 ~@2 b5@5 ~@3 g5@5 ~@15 [d4,f#4]@16 c4@18 ~@14 [d#4,f#4]@33 ~@22 g5@9 a5@21 ~@7 a5@5 ~@32]/8", // D G5 Bm B F#m7b5 G Em D …
G: "[~@31 e6@8 b5@8 g5@8 e5@8 [c#2,c#3,b3,b4]@16 [f#2,f#3,a#3,a#4]@16 ~@24 [a1,a2,a3]@8 g2@16 b2@16 ~@6 [e4,e5]@2 ~@20 b2@4 ~@6 a4@2 ~@8 d3@15 ~ g4, ~@14 d#6@16 g4@50 ~@15 b4@30 ~@2 g3@81 ~@16, ~@15 [b1,b2,d#4]@16 [e2,e3]@16 [d2,d3]@18 ~@30 [b1,b2,b3]@26 ~@6 [d4,d5]@40 ~@32 f#4@25, ~@16 b3@46 ~ [c#4,e4]@32 e4@15 d#4@17 b3@33 ~@7 [c4,c5]@57, ~@30 e4@32 ~@17 f#4@49 ~@31 c3@30 ~@2 a2@17 ~@14 g2@2]/7", // C#7 F# A E B E D B …
H: "[~@5 [d4,d5]@2 ~@15 g3@5 [f#2,f#3]@4 [e2,e3,e4]@16 ~ d4@15 [c#2,c#3,a3,e4], d3@24 ~@23 [d2,d3]@17, ~@7 [b3,b4]@23 ~ [b3,g4,b4]@33]/2", // D F# E A D B Em
I: "[~@16 d4@7 ~ c4@6 ~ [b1,b2,f4]@16 [c2,c3,c4]@12 [b1,b2,b3]@4 [a1,a2]@16 ~@7 [f#3,d4,f#4]@9 [g2,g3,b3]@16 [b2,b3]@16 c3@23 [b2,b3]@9 [a2,a3,e4,g4]@15 ~@17 g3@23 [f#2,f#3]@5 ~@4 [d#2,d#3,f#4], c#4@14 f#4@16 [g3,g4]@58 ~@87 [d3,f#4,a4]@16 g4@33, ~@6 a4@25 b3@15 ~ e4@41 ~@7 g4@64 c5@32 d5@29 ~@4, ~@15 [d2,d3]@8 [c2,c3]@10 ~@30 c4@25 ~@7 d4@8 ~@24 [c4,e4]@33 ~@14 d4@16 g2@26 ~@3 [e2,e3]@5, ~@79 [d2,d3]@17 ~@94 b4@32 a3@2]/7", // Bdim C B A D G B A7 …
J: "[~@11 [d2,d3]@4 ~@8 a3@8 ~@9 g5@3 ~@4 [d5,g5]@4 ~ g5@3 [b4,d5]@4 ~ d5@3 e4@12 g4@4 ~@32 b4@13 ~@3 [b1,b2,b3]@16 [d#2,d#3,a3]@16 b4@8 e4@8 b4@8 ~@24 c4@15 ~ [g3,b3,d4,g4]@32 [f#2,f#3,c4,f#4,a4], ~@5 [g4,g5]@26 [b3,g4]@32 a5@29 g5@33 ~@65 [f#4,a4]@34 ~@32, ~@5 b3@19 ~@7 [d2,d3]@64 [g1,g2,d4,g4]@30 ~@34 [e2,e3,b3]@31 d4@17 ~@15 g2@34, ~@15 [c#2,c#3]@18 ~@6 b5@4 d6@5 ~@15 c5@47 b3@17 ~@32 g4@15 ~ g4@16 [d2,d3]@33 ~@32, ~@44 b5@5 ~@2 b5@5 ~@3 g5@5 ~@15 [d4,f#4]@16 c4@18 ~@14 [d#4,f#4]@33 ~@23 e4@10 ~@63]/8", // D G5 Bm B D#dim G F#dim G …
K: "[~@31 [e2,e3]@16 [d2,d3]@16 [c#2,c#3,b3]@16 [f#2,f#3,a#3]@16 ~@24 [a1,a2,a3]@8 g2@16 b2@16 ~@6 [e4,e5]@2 ~@20 b2@4 ~@6 a4@2 ~@8 d3@15 ~ g4, ~@15 [b1,b2,d#4]@18 ~@62 [b1,b2,b3]@26 ~@6 [d4,d5]@40 ~@32 f#4@25, ~@16 b3@46 ~ [c#4,e4]@33 ~@14 d#4@17 b3@33 ~@7 [c4,c5]@57, ~@30 g4@50 ~@15 e4@18 ~@14 g3@81 ~@16, ~@30 e4@32 ~@17 f#4@49 ~@31 c3@30 ~@2 a2@17 ~@14 g2@2]/7", // E D C#7 F# A E B D …
L: "[~@11 [d2,d3]@4 ~@8 a3@8 ~@9 g5@3 ~@4 [d5,g5]@4 ~ g5@3 [b4,d5]@4 ~ d5@3 e4@23 ~ e4@4 g4@4 f#4@24 [g4,g5]@8 [c4,d4,g5]@33 d5@5 ~@2 g5@15 ~ b5@3 c6@3 d6@2 g6@65, ~@5 [g4,g5]@26 [b3,g4]@32 a5@57 ~@45 b5@4 ~@87, ~@5 b3@19 ~@7 [d2,d3]@97 ~@128, ~@15 [c#2,c#3]@18 ~@6 b5@4 d6@5 ~@15 c5@64 ~@33 b3@96, ~@44 b5@5 ~@2 b5@5 ~@3 g5@5 ~@31 d4@31 ~ [g2,d3,g3]@129]/8", // D G5 Bm G Csus2 G Em D …
})).s("gm_string_ensemble_2").gain(0.32)
// chords · string ensemble 1 · "#St.Strin"
const string_ensemble_1 = note("<~@22 A B ~@11 C D E F ~@5 G H@2 I J K L@2 ~@8 C D E F ~@10>".pickRestart({
A: "~@5 g3 b3 d4", B: "e4 ~", C: "~@8 b4@4 d5@4 d5@4 g5@3 ~ g5@3 a5@2 b5@2 ~", D: "b5@3 e5 e5@8 a5@2 b5@2",
E: "c6@8 a5@4 g5@4 a5@7 ~ a5@3 b5@2 c6@2 ~",
F: "[c6,e6]@6 [b5,d6]@2 [b5,d6]@7 ~ c6@6 [g5,b5]@2 [g5,b5]@8, ~@15 a5@7 ~@10", // C Bm G
G: "[f#4,f#5]@2 [f#4,f#5]@2 [f#4,f#5]@2 [c5,a5,c6] [b4,g5,b5]", // F# F Em
H: "[[a4,f#5,a5]@8 [g4,e5,g5]@4 [f#4,d#5,f#5]@4 [g4,e5,g5]@15 ~ [a4,a5]@8 [a4,f#5,a5]@8 [a4,f#5,a5]@8 [e5,c6,e6]@4 [d5,b5,d6]@4, ~@31 f#5@8 ~@25]/2", // D C D#m C A D C G
I: "[c5,a5,c6]@2 [b4,g5,b5] [a#4,f#5,a#5] ~ g3 b3 d4, ~ [b4,g5,b5]", // F Em D#m Em
J: "[b4,b5]@2 [a4,a5] [g#4,g#5] [a4,a5]@2 [c5,a5,c6] [b4,g5,b5], e4 ~", // B A G# A F Em
K: "[a4,f#5,a5]@2 [g4,e5,g5] [f#4,d#5,f#5] [g4,e5,g5]@2 [b4,b5] [a4,a5]", // D C D#m C B A
L: "[[g4,g5]@16 [f#4,f#5]@15 ~ e5@16 [d#4,d#5]@16, ~@31 e4@16 ~@17]/2", // G F# D#
})).s("gm_string_ensemble_1").gain(0.48)
// drums · kick
const kick = s("bd").struct(`<
~@10 A@8 B C@2 D@4 E F C@2 D@2 C@2 D C@4 D C@2 D@2 G D@6 C@5 D C@7 D@5 C@3 A ~@2
>`.pickRestart({
A: "x", B: "x ~@4 x ~@2", C: "x ~@2 x!2 ~@3", D: "x ~@2 x!2 ~@2 x", E: "x ~@3 x ~@2 x", F: "x!2",
G: "x ~@2 x!2 ~ x!2",
})).gain(0.48)
// drums · snare
const snare = s("sd").struct("<~@19 A@7 B A@7 B A@8 B A@7 B A@7 B A@8 B A B ~@3>".pickRestart({
A: "~ x ~ x", B: "~ x ~@2",
})).gain(0.48)
// drums · low tom
const low_tom = s("lt").struct("<~@18 A ~@15 B ~@8 C ~@7 B ~@7 D ~@14>".pickRestart({
A: "~@3 x", B: "~@7 x", C: "~@13 x ~@2", D: "~@6 x!2",
})).gain(0.56)
// drums · hihat
const hihat = s("hh").struct(`<
~@10 A B A B A B A B@2 C D@6 E C D@4 F G H C D@2 I D J D@2 E K@8 C D@2 L D@2 G M C D@2 N D@3 O ~ C P ~@3
>`.pickRestart({
A: "~@8 x!4 ~@4", B: "~ x", C: "~ x!7", D: "x!8", E: "x!5 ~ x ~", F: "x ~ x ~ x ~ x ~ x!2 ~@2 x ~ x ~",
G: "x ~ x ~ x ~ x ~ x ~ x!3 ~ x ~", H: "x!3 ~@3 x ~", I: "x!7 ~", J: "x!3 ~ x!4", K: "~ x ~ x", L: "x!6 ~@2",
M: "x!4 ~@2 x ~", N: "x ~ x ~ x ~ x ~ x ~ x!2 ~@4", O: "x!5 ~@3", P: "x!3 ~@5",
})).gain(0.48)
// drums · mid tom
const mid_tom = s("mt").struct("<~@18 A ~@7 B ~@7 A ~@8 C ~@7 A ~@7 A ~@14>".pickRestart({
A: "~@3 x", B: "~@6 x!2", C: "~@10 x ~@2 x ~@2",
})).gain(0.56)
// drums · open hat
const open_hat = s("oh").struct(`<
~@10 A B A B A B A B@2 ~@7 C ~@5 C ~ D ~@3 E ~ F ~@14 G ~@7 G ~@3 H I ~ J ~@3
>`.pickRestart({
A: "~ x ~ x", B: "~ x ~@2", C: "~@5 x ~@2", D: "~@3 x!2 ~@3", E: "~@7 x", F: "~@3 x ~@4", G: "~@6 x!2", H: "~@5 x!3",
I: "x!4 ~@4", J: "~@3 x ~@2 x ~",
})).gain(0.56)
// drums · high tom
const high_tom = s("ht").struct("<~@34 A ~@8 A ~@7 A ~@7 A ~@14>".pickRestart({
A: "~@5 x ~@2",
})).gain(0.48)
// drums · crash
const crash = s("cr").struct("<~@19 A ~@7 A ~@7 A ~@8 A ~@7 A ~@6 B A ~@7 B A B A ~@2>".pickRestart({
A: "x", B: "~ x",
})).gain(0.48)
// drums · ride
const ride = s("rd").struct("<~@11 A ~ A ~ A ~ B ~@9 C ~@16 D E@6 F ~@18 G ~@3>".pickRestart({
A: "~@5 x!2 ~", B: "~@5 x!3", C: "x", D: "~ x!7", E: "x!8", F: "x!5 ~@3", G: "~@3 x",
})).gain(0.48)
// drums · ride · soft notes
const ride_soft = s("rd").struct("<~@11 A ~ A ~ A ~ A ~@56>".pickRestart({
A: "~@5 x ~@2",
})).gain(0.32)
stack(
piano, bass, string_ensemble_2, string_ensemble_1, kick, snare, low_tom, hihat, mid_tom, open_hat, high_tom, crash,
ride, ride_soft
)
More by Mouskouri Nana
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.