0:00/0:00
// Colors of the Wind — Vanessa Williams
// 84 bpm, 4/4, key A# major. 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 (4/4 at bar 1, 2/4 at bar 79, 4/4 at bar 79) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: Full arrangement: all 87 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(84/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.
// chords · epiano2 · "#FM.Piano"
const epiano2 = note(`<
A@3 B@2 C D E F C G C H I@3 J K G C L M@3 N O P Q R S T@2 U V W X Y Z AA AB AC AD AE AF Y AG AH AI AJ AK AL AM AN AO
AP@2 AQ AR AS AT AU AV AW AX@2 AY AZ BA BB BC@2 BD BE BF BG BH BI@8 BJ@3
>`.pickRestart({
A: "[~@15 [bb4,d5]@4 [c5,f5]@3 ~ [c5,f5]@4 [bb4,d5]@4 [bb4,d5]@14 ~@2 [g4,bb4]@4 ~ [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [g4,bb4]@14 ~@2 g4@4 a4@4 a4@4 bb4@4, ~@15 bb3@32 g3@32 ~ [eb2,bb3,f4]@8 [d2,c4,f4]@8, ~@23 f4@24 ~@9 d4@24 ~@16]/3", // Bb F5 Bb Gm D5 Gm Ebsus2 Dm7
B: "[~ [d4,bb4]@4 [c4,a4]@3 ~ [bb3,g4]@4 [a3,f4]@4 ~ [d4,g4]@4 [d4,g4]@4 ~ [c4,f4]@4 [d4,g4]@4 ~ [bb3,d4]@9 ~ [eb3,a3,c4]@17 ~, ~ g2@8 f2@9 [eb2,g3,bb3]@18 f2@28]/2", // Gm F Eb Dm G5 F5 G5 Bb …
C: "~@2 [bb3,d4] [c4,f4]@2 [bb3,d4] [f3,c4] [d3,bb3], bb2@31 ~, ~@4 f3@19 ~@9", // Bb F5 Bb F5 Gm
D: "~@4 [g3,bb3]@2 ~@8 f2 g2, g2@7 ~, ~@4 d3@15 ~ d3@11 ~, ~@12 [a3,d4]@12 [g3,bb3]@7 ~", // Gm D5 Gm
E: "~@8 [bb3,d4]@4 [c4,f4]@8 bb2 ~ c3 ~ c4@4 bb3@4, bb2@19 ~ [bb3,d4]@4 ~@8, ~@4 f3@19 ~ [d3,f3]@8", // Bb F5 Bb Dm
F: "~@2 [g3,bb3] [a3,d4]@5, g2, ~@4 d3@27 ~", // Gm D5
G: "~@2 [g3,bb3] ~@4 d3, g2, ~@4 d3@15 ~ d3@7 ~@5, ~@3 [a3,d4]@3 [g3,bb3]@2", // Gm D5 Gm
H: "~@4 d3@3 ~ c4 d4 [c4,f4]@2 [d4,g4]@2 [c4,f4]@2, d2, [a3,f4]@14 d3@9 ~ d3@8, ~@4 a2@27 ~, ~@4 g4 ~@3", // F5 G5 F5 Dm
I: "[~@24 d3@6 ~@2 eb2@15 ~@13 f3@2 ~@2 [c3,eb4]@14 ~@2 [f2,a3,d4]@15 ~, [g2,d4,g4]@14 a3@17 ~ c4@24 bb3@8 ~@14 f3@17 ~, ~@8 d3@15 ~@7 g3@17 ~ f3@12 ~@2 g3@17 ~@17, ~@16 [d2,f4]@16 ~@16 d2@15 ~@33]/3", // Cm Dm G5 Dm
J: "[g3,bb3]@4 [a3,c4]@3 ~ [a3,c4]@3 ~ [bb3,d4]@3 ~ [bb3,d4]@3 ~ [c4,d4,f4]@3 ~ [d4,g4]@2 c4@2 [c4,f4]@4, g2@15 ~ f2@15 ~", // Gm Am Bb Dm7 G5 F5
K: "~@2 [bb3,d4] [c4,f4]@2 [bb3,d4] [f3,c4] [d3,bb3], bb2@31 ~, [d4,g4] ~@3, ~@4 f3@19 ~@9", // Bb F5 Bb F5 Gm G5
L: "~@4 d3@3 ~ bb3@2 c4@2 d4@2 f4@2, d2, [a3,f4]@14 d3@9 ~ [d3,c4]@8, ~@4 a2@27 ~, ~@2 f4 ~", // Dm D7
M: "[~@24 d3@6 ~@10 c4@8 ~@12 f3@2 ~@2 [c3,eb4]@14 d4@2 ~@4 c3 ~ f3 ~ [f2,eb3,bb3]@8, [g2,d4,bb4]@14 c4@15 ~ c4@9 ~@23 g3@17 ~ c4@15 ~, ~@8 d3@15 ~@73, ~@16 [d2,a4]@16 [eb2,g3,g4]@16 [d2,bb3,f4]@15 ~@17 [f2,a3]@8 ~@8]/3", // Cm Ebsus2 Gm D5 Eb Bb F
N: "[bb2,d3,bb3]@15 ~ [a2,f3,d4]@15 ~", // Bb Dm
O: "[d4,bb4]@4 d4 ~ [d4,a4]@5 ~ [d4,g4]@8 [f3,c4,f4]@3 ~ [f3,a3,d4]@8, g2@31 ~, ~@6 g3@13 ~@13", // Gm D5 G5 F5 Dm
P: "[a3,d4]@7 ~ c4@4 d4@4 c4@8 bb3@7 ~, d3@15 ~ [eb2,g4]@15 ~, ~ f4 ~@2", // D5 Eb
Q: "[g3,d4]@4 [d4,g4,bb4]@3 ~@13 [f3,d4]@4 [d3,bb3,d4,g4]@8, g2@3 ~, ~ d3@2 a4@3 ~@2, ~@8 [g4,bb4]@15 ~@9, ~@2 [g3,d4]@3 ~@3", // G5 Gm Dm Gm G5
R: "a3 [bb3,bb4] [d4,d5] [f4,f5], d2, f4 ~", // Bb D F
S: "[bb4,bb5]@11 ~ [a4,a5]@4 [g4,c5,g5]@7 ~ [f4,c5,f5]@7 ~, eb2@15 ~ eb2@15 ~", // Bb A C5 F5
T: "[~@4 bb4@4 a4@2 ~@4 f3 ~ [eb2,c4]@8 ~@4 c4@4, [d2,d4,f4,c5]@16 g2@14 g3@17 ~ [d2,f3,bb3]@16, ~@20 f5@11 ~@33]/2", // Cm Dm7 Bb
U: "~@3 c6 ~@3 bb4, [g2,d3,bb3]@31 ~, ~@8 f5@8 [f6,c7]@15 ~", V: "[c3,bb3,c4,f4]@14 d4 ~ c4@2 bb3@14, ~ [f2,eb3]",
W: "[bb4,d5]@4 [c5,f5]@3 ~ [c5,f5]@4 [bb4,d5]@4 [bb4,d5]@12 g4 ~ a4@2, bb3@31 ~, ~@8 f4@23 ~", // Bb F5 Bb
X: "[g4,bb4]@4 [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [c4,a4]@3 ~ [c4,g4]@4 [f2,a3,f4]@6 g3@2, g3@7 ~ f3@7 ~ eb2@7 ~@7 eb4 ~", // Gm D5 Gm F C5 F
Y: "~@16 [f2,a3,c4]@15 ~, [bb2,f3,d4] ~, ~@12 f4@19 ~", // F Bb
Z: "[g2,d3,bb3]@12 [eb2,eb3,g3,bb3]@10 f3@2 [g3,bb3,eb4]@3 ~ [g3,bb3,eb4]@4, ~@3 f2", // Gm Eb
AA: "[f3,bb3,d4]@15 ~ [d4,g4]@4 [c4,f4]@7 ~ [c4,f4]@2 [d4,g4]@2, bb2@31 ~", // Bb G5 F5 G5
AB: "~@8 d3@4 ~@4 [d4,g4]@7 ~ [gb3,d4,a4]@8, d2@3 ~, c4@14 d3@9 ~@9, [a3,f4]@3 [a3,f4] ~@4, ~ a2@5 ~@2", // G5 D Dm
AC: "[g2,d4,bb4]@7 bb4 [f2,d4,a4]@8", AD: "[eb2,c4,g4]@15 ~ c4@8 ~@4 f3@2 f4@2, ~@16 [d2,f4]@15 ~, ~@3 bb3",
AE: "~@12 f3@2 eb4@2 [bb3,d4]@7 ~ [a3,c4]@8, [c3,g3,eb4]@15 ~ f2@15 ~", // Bb Am Cm
AF: "~@8 c4@3 ~ f4@3 ~ [c4,g4]@7 ~ [c4,f4]@8, [g2,g3,bb3]@16 a2@15 ~", // C5 F5 Gm
AG: "[g2,bb3,d4]@15 ~ [bb3,f4]@8 [g3,eb4]@8, ~@16 eb2@15 ~", // Gm Bb5 Cm
AH: "d4@8 [c4,f4]@3 ~ [c4,f4]@7 ~ [c4,f4]@7 ~ [c4,f4]@2 [d4,g4]@2, bb2@31 ~, [f3,bb3]@15 ~@17", // F5 G5 Bb5
AI: "~@8 d3@4 f5@2 g5@2 [g4,d5] ~ [g4,d5]@2 [f4,c5]@4 [f4,c5]@2 [g4,d5]@2 [f4,c5]@4, d2, [a3,c4,f4]@14 d3@17 ~, ~@4 a2@27 ~, ~@3 c5 ~@4", // G5 F5 G5 F5 F
AJ: "[g2,d4,bb4]@14 bb4@2 d4@7 ~ d4@7 ~, ~ [f2,a4]", AK: "[eb2,c4,g4]@15 ~ c4@8 bb3@7 ~, ~@16 [d2,f4]@15 ~",
AL: "[c3,g3,bb3,eb4]@16 c4@8 bb3@7 ~, ~@16 [f2,f3,eb4]@15 ~", // Cm7 F7
AM: "~@2 d3@2 ~ f4 ~ f4, [bb2,bb3,c4,f4]@16 [bb2,bb3,d4]@7 ~ [a2,a3,d4]@8, ~ f3@3 ~@4", // Bbsus2 Bb D5
AN: "[d4,bb4]@4 [d4,a4]@2 ~@2 [d4,a4]@3 ~ [d4,g4]@3 ~ [d4,g4]@3 ~ [f3,c4,f4]@3 ~ [f3,a3,d4]@8, g2@31 ~, ~@6 g3@13 ~@13", // Gm D5 G5 F5 Dm
AO: "[a3,d4]@7 ~ c4@4 d4@4 [bb3,f4]@8 [bb3,eb4]@8, d3@15 ~ eb2@15 ~, ~ f4 ~@2", // D5 Bb5 Eb5
AP: "[[g3,d4]@4 [d4,g4]@3 ~ [d4,g4]@3 ~ [d4,g4]@8 [f3,c4,f4]@4 [d3,a3,d4]@6 ~@2 a4@11 ~ [f4,a4]@2 [d4,g4]@2 [c4,f4]@2 [f4,a4]@2 [d4,g4]@4 [c4,f4]@8, g2@3 ~ [d2,d3]@4, ~@4 d3@15 ~@12 [d4,f4]@13 ~@20, ~@8 g3@11 ~@11 c4@14 ~@20]/2", // G5 F5 D5 F G5 F5 F G5 …
AQ: "[eb4,g4]@4 [eb4,g4,d5]@4 [eb4,bb4]@4 [eb4,g4,d5]@2 c5@2 [c4,f4,c5]@7 ~ [c4,f4,a4]@7 ~, [eb2,bb3]@15 ~ eb2@15 ~", // Eb Ebmaj7 Eb5 Ebmaj7 F5 F Eb5
AR: "[c4,f4,a4]@7 ~ [c4,f4,a4,c5]@7 ~ [d4,bb4]@5 ~ [c4,a4]@5 ~ [c4,f4]@4, d2@15 ~ g2@15 ~", // F Gm F F5
AS: "[c2,bb3,d4,eb4,g4] [d2,bb3,c4,f4]", // Cm7 Bb
AT: "~@7 f4, [g2,d3,bb3]@31 ~, ~ f5@2 bb4, ~@9 [bb5,d6]@15 ~@8, ~@10 f6@6 c7@15 ~", // Gm Bb
AU: "eb4@12 d4@3 ~ c4@8 bb3@7 ~, [c3,bb3]@15 ~ [f2,eb3]@16", // C7 F7
AV: "f4@11 ~ f4@4 ~@12 c5@4, bb2@31 ~, [bb3,c4]@15 ~ c4@15 ~, ~@5 f4@3, ~@3 bb4", // Bbsus2
AW: "[d2,c4,f4,a4]@15 ~ [f4,a4,c5]@12 bb4@4, ~@16 eb2@15 ~", // Dm7 F
AX: "[[c4,f4,a4]@7 ~ [c4,d4,f4,bb4]@7 ~ [c4,f4,a4]@7 ~ [d4,f4,bb4]@7 ~@9 g4@4 eb4@4 bb4@4 eb4@4 bb4@4 eb4@3 ~, d2@15 ~ g2@15 c4@31 ~@2, ~@31 eb4@12 ~@21, ~@31 g4 bb4@15 ~@17, ~@32 ab2@31 ~]/2", // F Bb F Bb
AY: "[f2,c4,eb4,g4,bb4]@15 ~ a4@12 g4 ~ a4 ~, ~@16 [f2,c4,d4,f4]@15 ~", // Cm7 Dm7
AZ: "bb4@7 ~ c5@7 ~ f4@7 ~ f4@8, f2, [c4,eb4,g4]@15 ~ [c4,a4]@16", // Cm F
BA: "~@25 a5@7, ~ g2@31, ~ [g4,bb4,d5,f5]@15 [d4,g4,bb4]@5 [d5,f5]@11, ~@13 g3@19, ~@5 a4@3", // Gm7 Gm Dm
BB: "~ [d4,a4,e5]@15 ~ [bb3,g4,bb4,g5]@3 ~ [a3,f4,a4,f5]@3 ~ [c4,g4,c5,g5]@3 ~ [bb3,f4,bb4,f5]@3, [c5,f5]@15 ~@2 eb3@7 ~ f3@7", // Dsus2 Eb Dm C5 Bb5 F5
BC: "[~@5 d3@15 ~@5 d3@6 ~@10 [bb3,bb4]@7 ~ [d4,d5]@7 ~ [f4,f5]@7, ~ g2@23 c5@8 a4@8 ~@24, ~ [g3,bb3,c4,f4]@20 c4@10 c4@16 ~@17, ~@22 f4@9 ~ [d4,f4]@16 ~@16, ~@33 [d2,d3]@31]/2", // Bb D F Gm7 Dm D
BD: "~ [bb4,d5,bb5]@5 ~ [a4,c5,a5]@5 ~ [g4,c5,g5]@4 [g4,c5,g5]@7 ~ [f4,f5]@7, ~ eb2@15 ~ a2@15, ~@24 c5@7 ~", // Bb Am C5 F
BE: "~ [d4,f4,c5]@6 [c4,f4,bb4]@5 ~ [c4,f4,a4]@4 [g2,bb3,d4,f4]@15, ~ d2@15 ~@16", // Dm7 Fsus4 F Gm7
BF: "~ [c2,bb3,eb4,g4]@16 [d2,bb3,c4,f4]@15, d4 ~", // Cm7 Bb
BG: "~@13 f4@3 ~ f4@14 ~, ~ [g2,d3,bb3]@31, ~ bb4@9 d6@15 ~@7, ~@7 a4@4 f6@13 ~@8, ~@9 [f5,bb5]@16 ~@7", // Gm Bb5
BH: "~@29 f4@3, ~ [c3,bb3,eb4]@31", // Cm7
BI: "[~ [d3,a3,bb3,c4,f4]@15 ~ [bb3,f4]@26 [bb3,g4]@4 ~ [c4,a4]@4 [g3,d4,f4,bb4]@9 ~ [a3,c4,f4]@10 [eb3,d4]@12 ~ c4@21 ~ [bb4,d5]@4 [c5,f5]@4 [c5,f5]@4 ~ [bb4,d5]@4 [bb4,d5]@13 g4@2 a4@2 [g4,bb4]@4 [a4,d5]@3 ~ [a4,d5]@4 [g4,bb4]@4 [g4,bb4]@14 ~@3 g4@4 a4@4 [f4,bb4]@4 ~ [f4,a4,c5]@4 [d4,bb4]@4 ~ [c4,a4]@4 [bb3,g4]@5 ~ f4@5 [eb2,g3,bb3,d4,g4]@11 [f2,bb3,c4,eb4,g4]@32 ~@2, ~@16 g3@35 ~@21 [bb3,f4]@33 ~@2 bb3@33 ~ g3@32 ~ eb2@17 [g2,f4]@9 f2@10 ~@46, ~@17 [eb3,d4]@34 ~@10 d3@11 ~@12 f3@22 ~@9 f4@24 ~@10 d4@24 ~ [bb3,f4]@8 d4@8 ~@15 [a3,d4]@5 ~@46]/8", // Dm7 Bb5 Eb F Gm7 F Ebmaj7 Bb …
BJ: "[~@17 [d3,f3]@55 ~@24, ~@14 f4@57 ~@25, ~@15 [bb3,c4]@58 ~@23, ~@2 bb2@7 ~@3]/3", // Dm Bbsus2
})).s("gm_epiano2").gain(0.3)
// bass · synth bass 1 · "Synth.Bas"
const bass = note("<~@2 A B@2 ~@12 C D E F G H I J K L M N O P Q R S T U ~@51>".pickRestart({
A: "~@16 eb2@8 d2@7 ~", B: "[~ g2@8 f2@8 ~ eb2@17 ~ f2@26 ~@2]/2", C: "bb1@11 ~ bb1@15 ~ f1@3 ~",
D: "g1@10 ~@2 g1@15 ~ f2 ~ f1@2", E: "bb1@11 ~ bb1@8 g1@3 ~ bb1@3 ~ c2@3 ~",
F: "d2@10 ~@2 d2@3 ~ d2@3 ~ f2@3 ~ f2@3 ~ f2@4", G: "g2@11 ~ bb2@3 ~ d2@11 ~ d2@3 ~",
H: "eb2@10 ~@2 eb2@3 ~ d2@3 ~ d2@3 ~ d2@3 ~ d2@4", I: "c2@11 ~ c2@2 d2@2 f2@11 ~ eb2@3 ~",
J: "bb1@10 ~@2 bb1@3 ~ a2@3 ~ a2@7 ~ a2@4", K: "g2@11 ~ g2@14 ~@2 d2@3 ~", L: "d2@10 ~@2 d2@3 ~ eb2@10 ~@2 d2 ~ f2@2",
M: "g2@11 ~ g2@7 ~ g2@3 ~ f2@3 ~ d2@3 ~", N: "d2@11 ~ bb2@2 d2@2 d2@3 ~ d2@7 ~ d2@4",
O: "eb2@11 ~ eb2@3 ~ eb2@14 ~@2", P: "d2@10 ~@2 d2@3 ~ g2@11 ~ g2 ~ f2@2", Q: "eb2@11 ~ eb2@3 ~ d2@11 ~ d2 ~ f2@2",
R: "g2@11 ~ g2 ~ bb2@2 bb2@5 ~ a2@2 g2@3 ~ g2 ~ d2@2", S: "c2@11 ~ c2@3 ~ f2@3 ~ f2@3 ~ f2@3 ~ f2@3 ~",
T: "bb1@16 ~@12 bb2 ~ a2@2", U: "g2@7 ~ f2@5 ~ d1 ~@17",
})).s("gm_synth_bass_1").gain(0.2)
// bass · electric bass finger · "Synth.Bas"
const bass_2 = note(`<
~@35 A B C D E F G H I B J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF@2 AG AH AI@3 AJ@2 AK@4 ~ AL@3 AM@3
>`.pickRestart({
A: "~@16 eb1@7 ~ f1@7 ~", B: "bb1@11 ~ bb1 ~ f1 ~ f1@12 ~@2 f1 ~", C: "g1@9 ~ f1 ~ eb1@9 ~ f1@2 g1@3 f1 g1@4",
D: "bb1@11 ~ bb1 ~ bb1@2 bb1@4 bb1@9 ~ f1@2", E: "d1@10 ~@2 d1 ~ d1@2 d1@5 ~ e1@2 gb1@7 ~",
F: "g1@11 ~ g1@3 ~ f1@13 ~ f1 ~", G: "eb1@10 ~@2 eb1@3 ~ d1@15 ~", H: "c1@11 ~ c1 ~ g1@2 f1@15 ~",
I: "g1@4 g1 ~ g1@2 g1@3 ~ g1@3 ~ a1@10 ~@2 f1 ~ a1@2", J: "g1@11 ~ g1 ~ f1@2 eb1@3 ~ eb1@3 ~ eb1 ~ g1 ~ g1@3 ~",
K: "bb1@11 ~ bb1 ~ bb1@2 bb1@3 ~ bb1@9 ~ f1@2", L: "d1@10 ~@2 d1 ~ d1@2 d2 ~ d1 ~ d1@3 ~ d1@3 ~ f1@3 ~",
M: "g1@11 ~ g1 ~ g1 ~ f1@15 ~", N: "eb1@10 ~@2 eb1 ~ eb1 ~ d1@7 ~ d1@3 ~ d1@3 ~", O: "c1@11 ~ c1 ~ c1@2 f1@13 ~ f1@2",
P: "bb1@11 ~ bb1 ~ f1@2 bb1@3 ~ bb1@3 ~ a1@7 ~", Q: "g1@11 ~ g2@14 ~@2 d2 ~ g1@2",
R: "d1@10 ~@2 d1@3 ~ eb1@10 ~@2 d1 ~ f1@2", S: "g1@11 ~ g2@5 ~ d2 ~ g1@7 ~ bb1 ~ c2 ~",
T: "d1@9 ~ d2@2 c2 ~ d1@2 d1@3 ~ d1@7 ~ d1@4", U: "eb1@11 ~ eb1@3 ~ eb1@7 ~ eb2 ~ eb1 ~ eb1@4",
V: "d1@10 ~@2 d1 ~ f1@2 g1@10 bb1 ~ bb1 ~ c2@2", W: "c1@9 ~ c1 ~ c1 ~ c1@2 d1@11 ~ d1@3 ~",
X: "g1@11 ~ g1 ~ f1@2 g1 ~ g1 ~ bb2@3 ~ g2 ~ d2 ~ g1@4", Y: "c1@11 ~ c1 ~ d1 ~ f1@3 ~ f1@3 ~ f1@3 ~ f1@3 ~",
Z: "bb1@11 ~ bb2 ~ a2 ~ g2@4 bb2 ~ a2 ~ g2 ~ bb1 ~ c2@3 ~", AA: "d1@11 ~ d1@3 ~ eb1@14 ~@2",
AB: "d1@10 ~@2 d1 ~ f1@2 g1@11 ~ g1 ~ g1@2", AC: "ab1@11 ~ bb1@2 ab1@2 ab1 ~ ab1 ~ ab1@7 ~ g1@3 ~",
AD: "f1@12 f2 ~ g2 ~ f2@11 ~ c2 ~ bb1@2", AE: "f1@11 ~ f1@3 ~ f1@7 ~ f1@3 ~@2 d1@3",
AF: "[~ g1@4 ~@2 g1@4 ~@2 g1@3 ~ g1@11 ~ bb1 ~ c2@2 d2 ~ a1 ~ d1@6 ~@2 d1@3 ~ eb1@7 ~ f1@7]/2",
AG: "~ g1@11 ~ bb2@3 ~ g2 ~ d2 ~ g1@11", AH: "~ d1@5 ~ d1@4 ~@2 d1@7 ~ d1@3 ~ d1@3 ~ d1@3",
AI: "[~ eb1@9 ~@3 c2 ~ bb1 ~ a1@11 ~ f1 ~ g1@2 d1@10 ~@2 d1 ~ f1@2 g1@10 bb1 ~ bb1 ~ c2@2 c2@10 ~@2 c2 ~ c2@2 d2@12 ~@2 f1]/3",
AJ: "[~ g1@4 ~@2 g1@4 ~@2 g1@11 ~ f2@2 g2@2 c2 ~ g2@2 c1@11 ~ c1 ~ c1 ~ c1@3 ~ c1@7 ~ c1 ~ db1]/2",
AK: "[~ d1@11 ~ d1@3 ~ eb1@29 ~@2 f1@4 g1@8 ~ d1@9 ~@2 eb1@11 ~ f1@21 ~@23]/4",
AL: "[~@12 f1@2 eb1@13 ~@2 eb1@2 g1@8 ~ f1@9 ~@2 eb1@9 ~ f1@32 ~@3]/3", AM: "[~@17 bb1@55 ~@24]/3",
})).s("gm_electric_bass_finger").gain(0.24)
// chords · string ensemble 2 · "#St.Sl.St"
const string_ensemble_2 = note("<~@2 A@3 ~@19 B@2 C@7 D@2 E@7 F@8 G H@7 I@5 J@8 K@8 ~@2 L@6>".pickRestart({
A: "[~@15 g4@4 a4@4 ~ a4@4 ~@8 a4@4 g4@4 f4@4 [eb3,d4,g4]@18 [f3,bb3,d4]@11 ~ eb3@10 ~@8, ~@15 f4@17 [g3,bb3]@9 ~@7 bb3@17 ~@12 [a3,c4]@12 ~@7, ~@15 [eb3,bb3]@8 [d3,c4]@9 d4@16 ~@48, ~@28 bb4@9 ~@3 [f3,a3]@10 ~@46]/3", // Ebmaj7 Bb Gm Am Eb5 D7 F
B: "[bb2@15 a2@15 ~ g5@16 d4@4 [c4,f4]@4 d4@7 ~ [f3,c4,f4], ~@30 bb3@33 ~, ~@15 [bb4,d5]@9 ~@7 d2, ~@31 [g2,g4]@33]/2", // F5 Bb G
C: "[~@7 a3@7 ~ c4@8 bb3@7 ~ [g2,bb3,d4,g4]@31 ~ a3@8 bb4@8 ~@8 f5@7 ~@13 a5@4 g5@8 ~@16 bb3@7 ~ a3@4 [bb3,d4]@11 ~@57 f5@7 ~ c3, ~@14 eb2@18 ~@30 d2@32 eb3@33 d3@16 f4@17 ~@11 bb4@4 d3@15 f4@33 ~, ~@15 [g3,g4]@17 ~@31 [c4,f4]@16 d4@16 g4@24 [f4,f5]@25 ~@15 c4@32 [g2,a3]@33, ~@71 [f3,bb3]@24 bb5@12 ~@4 c4@37 ~@10 eb3@16 bb3@48 [g3,c4]@2, ~@79 d5 [f4,bb4]@16 [bb3,d4]@15 a3@25 ~@6 g2@17 g3@15 f3@9 c5@33 ~@8]/7", // Gm Bb G F5 F Gsus2 Bb5 C5 …
D: "[~@15 [f2,eb3,g3]@15 [bb2,f3]@18 ~@16, ~@7 bb4@42 ~@15, ~@15 bb3@33 ~@16]/2", // Cm Bb5
E: "[~@30 bb3@17 [a3,c4]@15 ~ d4@12 [eb3,bb3]@19 ~@17 g4@15 ~ f4@16 g4@8 [gb3,a4]@7 ~ bb4@15 ~ a4@16 [eb3,c4,g4]@16 [d3,bb3,f4,bb4]@15 [g3,c4,eb4]@2, ~@30 f3@32 g3@33 ~@31 a3@33 ~@15 f3@17 ~@33, ~@62 bb3@11 ~@21 [f3,bb3]@32 d3@26 ~@6 g3@18 ~@48, ~@126 c4@17 d4@49 ~@32]/7", // Am Eb5 Gbm Cm Bb Cm Bb5
F: "[~@15 bb3@8 a3@8 [d3,g3,bb3]@18 ~@14 d5@16 c5@16 bb4@31 d5@25 f5@40 bb5@16 a5@8 d5@8 [g4,g5]@16 [f4,f5]@8 bb4@8 eb5, ~@14 f4@17 ~@225, ~@7 d4@5 ~@116, ~@15 f3@16 ~@225]/8", // Gm G F
G: "~@7 d5@7 c5@9 bb4@7 bb2@2",
H: "[~@23 [a2,d5]@7 ~@5 [a4,a5]@8 [g4,g5]@8 ~@12 [c4,a4]@15 ~ [bb3,bb4]@15 ~@21 d5@4 ~@32 c6@7 ~ bb5@12 ~@4 g5@8 f5@7 ~@24 bb5@8 ~ [bb3,d4,eb4], ~@30 [bb4,bb5]@6 ~@26 d2@16 g4@15 ~ [g4,bb4]@32 [d2,f4,a4]@34 ~@14 f4@49 ~, ~@31 [d4,d5]@49 ~@14 d4@65 ~@12 a5@5 ~@14 [d3,a3]@16 [g2,bb3,d4]@17 ~, ~@31 g2@33 ~@14 eb2@17 g2@33 ~@30 eb3@33 f6@25 ~@6 [c3,g4]@2, ~@31 g4@12 ~@8 [f4,f5]@45 ~@23 f5@33 ~@6 [bb3,eb4,g4]@16 [c4,a4]@33 bb4@17]/7", // D5 A G F Bb Ebmaj7 Bb Gm …
I: "[~@15 d3@15 ~@45 d4@4 c4@8 bb3@7 ~ [f3,c4,d4]@31 ~ [d3,a4,f6]@15 ~ a6@11 bb6@5 [d3,c4,f4,a4,c7], ~@14 [bb3,c4,f4]@16 [a3,bb3,f4]@32 bb3@18 ~@46 [c4,f4]@17 ~@17, ~@15 c6@39 bb5@73 ~@15 [f4,a4]@16 ~@2, ~@31 g2@31 eb4@13 ~@4 [f2,eb3,f3]@16 ~@65, ~@63 c3@17 ~@14 bb2@33 ~@16 [eb3,c5]@17]/5", // Dm7 Dm Dm7 Bbsus2 Bbmaj7 F5 F F7 …
J: "[~@7 [d4,bb4,bb6]@7 ~ [c4,a4,a6]@7 ~ f6@7 ~@29 g2@4 ~@16 [d4,f4,a4]@15 ~@17 a6@8 f6@8 ~@32 [d3,f4,e5]@16 ~ g6@4 f6@3 ~ g6@4 f6@3 ~ [g5,g6]@10 [f5,f6]@6 [g5,g6]@4 f5@11 ~@8 bb5@9 d6@8 f6@7 [bb3,d4,bb4,d5], ~@14 g2@16 ab2@29 ~@4 f2@31 ~ f2@32 [g2,bb3]@21 a6@28 d5@16 ~@20 f6@20 ~@24, ~@22 d4@9 c4@63 c4@33 bb6@17 a4@33 ~@7 f3@9 ~@30 [d3,f4,c5]@33, ~@23 bb4@56 f6@32 [f4,a4]@16 bb4 d5@33 ~@14 [eb3,bb3,g4]@10 ~@6 [d4,bb4]@33 [a3,d4]@32, ~@31 [eb4,g4,g6]@49 ~@14 [eb4,g4,bb4]@18 ~@7 d4@39 c4@19 ~@6 [c4,a4]@9 [g2,f4]@33 ~@31]/8", // Gm F Dm G F G Bb Gm …
K: "[bb6@5 ~ a6@6 g6@3 ~ g6@7 ~ f6@7 ~@32 [c3,eb4]@16 ~@40 f6@8 ~ bb5@31 ~@17 eb3@34 ~@2 bb4@10 ~@9 eb3@12 g3@13, eb3@15 a2@16 [d3,c5]@16 [g2,d4,f4]@17 ~@16 d3@17 ~@30 [c3,g3,eb4]@34 ~@15 bb5@28 ~@52, ~@5 a4@27 f6@24 bb5@33 ~@6 [g2,bb3]@33 ~@32 d3@18 ~@78, ~@5 c5@10 [a3,c4]@33 ~@31 [a3,c4,f4]@49 ~@47 [g3,d4,f4]@31 ~@6 d4@33 ~@11, ~@15 g4@8 f4@24 [g3,bb3]@34 ~@6 c6@33 ~@7 bb3@31 ~ [bb3,c4,f4,a4,c6]@18 ~@34 f4@21 ~@24]/8", // Cm D7 G7 Cm Gm Am F G7 …
L: "[~@18 [a3,c4]@4 bb4@4 [c5,f5]@4 ~ bb5@4 [a4,c6]@4 ~ [g4,d6]@5 [f4,f6]@5 ~@11 g3@27 ~@5 bb5@74 ~@25, ~@13 f4@31 ~@7 f6@26 ~@115, ~@13 eb3@17 bb4@5 ~@4 [f3,a3]@12 ~@141, ~@13 g4@4 a4@5 d4@28 ~@10 bb3@27 ~@105, ~@14 [g3,bb3]@5 ~@11 [g3,bb3]@10 ~@10 [eb3,g3,d4]@11 ~@131]/6", // Am F5 Am G5 F Gm Ebmaj7
})).s("gm_string_ensemble_2").gain(0.25)
// chords · string ensemble 2 · "#St.Sl.St" · soft notes
const string_ensemble_2_soft = note("<~@4 A ~@27 B@2 ~ C@2 D@2 ~@3 E@2 ~@3 F@2 G@3 ~@24 H I@3 ~ J K@5>".pickRestart({
A: "~@2 f2@23 ~@7", B: "[~@31 bb3@16 ~@17]/2", C: "[~@31 d4@17 ~@16]/2", D: "[~@31 d4@32 ~]/2",
E: "[~@23 c4@7 g2@17 ~@17]/2", F: "[~@31 bb4@16 a4@8 d4@9]/2", G: "[~@23 bb3@8 eb4@8 d4@7 c4@9 bb3@32 d4@8 ~]/3",
H: "~@15 bb3@17", I: "[~@19 g3@9 ~ d3@10 [bb3,g4]@12 [f2,eb3,bb3,c4]@23 ~@22, ~@7 [c4,a4]@3 ~@14]/3",
J: "~@21 bb3@5 c4@5 ~",
K: "[~@18 bb3@10 ~ [f2,eb3]@27 ~@23 d3@56 ~@25, ~@28 eb4@27 ~@6 f6@74 ~@25, ~@76 [f3,c4]@59 ~@25, ~@77 bb2@58 ~@25, ~@39 [bb4,f5]@29 ~@12]/5", // F7 F5 Bb5
})).s("gm_string_ensemble_2").gain(0.15)
// other · blown bottle · "Bttle Blo"
const blown_bottle = note("<~@5 A B C ~@8 D E ~@7 F@3 ~@3 A G ~@41 H I J@2 ~@9>".pickRestart({
A: "~@31 f5", B: "d5@4 f5@3 g5 f5@4 d5@3 f5 d5@4 c5@3 d5 c5@4 bb4@4", C: "bb4", D: "~@15 f5 d5@4 f5@3 d5 f5@4 d5@4",
E: "d5 ~", F: "[~@15 f5 d5@4 f5@3 c5 d5@7 c5@8 f5 d5@4 f5@3 c5 d5@25 ~@23]/3", G: "d5@4 f5@3 d5 f5@4 d5@4 d5@13 ~@3",
H: "g4", I: "~@3 g4", J: "[~ a4@12 f5@4 c5 ~ c5 ~ [c5,d5]@2 d5@5 bb4@17 ~@19, ~@9 d5 ~@22]/2",
})).s("gm_blown_bottle").gain(0.21).pan(0.8)
// chords · electric guitar muted · "#Muted Gt"
const electric_guitar_muted = note(`<
~@17 A B@2 C D@2 E F@2 G H@4 I@2 J ~@2 K L M N O P Q R S T U V W X Y@2 Z AA AB@4 AC@3 AD@6 AE AF AG AH AI@2 AJ@2 AK
AL@2 ~@9
>`.pickRestart({
A: "d3 ~ bb3@2 bb3@2 c4@9 ~, ~ f3@3 f3@11 ~",
B: "[~@8 d4@4 c4@2 ~@2 d3 ~ bb3@2 bb3@2 c4@9 ~, ~@14 bb3@3 f3@3 f3@11 ~]/2", C: "~@8 g4 f4 d4@2 d4@4",
D: "[~@2 [g4,bb4]@13 ~ a4@14 ~@2 g3@11 ~ [bb3,d4]@2 [c4,eb4]@2 [bb3,d4]@15 ~, d4@15 [c4,f4]@15 c4@13 ~@21]/2", // Gm Bb Cm Bb F5
E: "[g3,bb3,eb4]@15 ~ f3@8 eb3@7 ~", F: "[[f4,bb4]@4 [f4,bb4] ~@3 [f4,bb4]@16 ~@8 d4@31 ~, ~@31 [g3,bb3]@31 ~@2]/2",
G: "~ a3 ~ bb3, c4 eb3, ~@19 c4@12 ~",
H: "[~@4 [d4,g4,bb4]@7 ~ [d4,a4,bb4]@12 [d4,g4]@7 ~ [f4,a4]@8 f4@16 ~@8 g4@15 ~ g4@8 f4@7 ~ f4@14 ~ c4@5 [bb3,d4]@12, ~@31 a3@16 ~@32 [a3,c4]@15 ~ [a3,c4]@15 a3@5 ~@13, ~@32 c4@16 ~@15 d4@16 ~@32 f4@15 ~@2]/4", // Gm Bbmaj7 G5 F Bb Am
I: "[[g3,c4]@15 ~ [f3,bb3]@14 ~@2 a3@23 ~@9, ~@15 [c4,f4]@13 ~@4, ~@31 bb3@25 ~@8]/2", // C5 Bb5 F5
J: "[c4,g4]@15 ~ [g3,bb3]@15 ~, ~@15 eb3@15 ~@2", // C5 Gm
K: "~@16 c4@15 ~, bb2@15 ~@17, ~@4 f3@27 ~, ~@8 c4@7 ~@17, ~@12 f4@19 ~",
L: "~@8 [c4,f4]@3 ~ [d4,f4]@4 c4@4 bb3@3 f3 g3@3 ~ g3@4, ~@12 c4 ~@3 f4@8 ~@4 f3 ~@3", // F5 Dm
M: "~@4 d4@4 [c4,f4]@23 ~, f3@31 ~", N: "~@4 c4 ~@3 c4 d4 c4 ~@3 c4@2 a3 c4 ~@4 f3@2 gb3@8, ~@19 d4@13",
O: "bb3@4 g3@4 bb3@3 ~ bb3@3 ~ a3@3 ~ f3@3 ~ a3@8", P: "g3@4 ~@4 [g3,bb3]@3 ~ a3@2 a3@2 ~@2 bb3 ~@3 f3 ~ c4@4 d4@4",
Q: "[g3,c4]@4 g3@3 ~ [g3,bb3]@8 f3@3 ~ f3@3 ~ [f3,c4]@3 ~ [f3,c4]@3 ~, c3@15 ~@17", // C5 Gm F5
R: "~@14 g3 ~ g4@4 f4@4 c4@4 bb3@4, ~@2 c5 ~", S: "f3@4 ~@2 bb2@2 ~@12 bb3 ~@3 f3 ~@3 g2 ~@3, ~@8 [c4,f4]@23 ~",
T: "g2 ~@5 g3 ~ [c4,f4]@3 ~ [d4,f4]@4 c4@4 bb3@3 f3 g3@3 ~ g3@4, ~@12 c4 ~@3 f4@8 ~@4 f3 ~@3", // F5 Dm
U: "f3@4 f3 ~ bb3 ~ [c4,f4]@4 [c4,f4]@8 [bb3,f4]@10 ~@2", V: "~@4 c4 ~@3 f4 g4 f4 ~@4 c4 [d4,f4]@7 ~ c4 ~ bb3@2 g3@4",
W: "g3@4 g3@4 bb3@4 g3@3 ~ a3@3 ~@3 a3 ~ [c4,f4]@4 [a3,d4]@4", // F5 D5
X: "~@4 g3@4 c4@2 bb3@2 g3@2 ~@2 f3 ~@7 c4@4 bb3@4, ~@5 f3@3",
Y: "[~@8 bb3@4 ~@2 bb3@2 ~@4 [f3,bb3]@3 ~ [f3,bb3]@3 ~ [f3,bb3]@3 ~ [c4,f4]@16 bb2@7 ~ a2@7 ~, ~@4 f3@12 ~@15 bb3@16 ~@17]/2", // Bb5 F5
Z: "~@4 [d4,a4]@5 ~@3 [d4,g4]@4 ~@8 d4@7 ~, g3@16 ~@4 [bb3,f4]@9 ~@3", // D5 G5 Bb5
AA: "d4@8 f4@7 ~ [bb3,f4]@8 eb4@7 ~, a3@13 ~@3 g3@16", // Bb5
AB: "[d4@3 ~ [d4,g4]@3 ~ [d4,g4]@3 ~ [d4,g4]@7 ~ [c4,f4]@3 ~ d4@4 f4@3 ~@9 a3@4 c4@4 a3@4 c4@4 a3@6 ~@2 g4@15 ~ f4@7 ~ f4@6 ~@2 f4@14 ~@2 d4@4 [c4,f4]@4 [a3,d4]@3 ~ [c4,f4]@4, g3@16 ~@8 a3@7 a3@8 ~@40 [a3,c4]@15 a3@15 ~@2 a3@5 ~@12, ~@31 c4@4 ~ c4@8 ~@19 d4@16 ~@16 c4@15 ~@18, ~@4 [f4,a4] ~@11]/4", // G5 F5 D5 F5 Am F
AC: "[[g3,c4]@15 ~ [f3,bb3]@14 ~@14 bb3 ~ bb3 ~@3 g3 ~ g3 ~@3 g3 ~@3 f4@3 ~ [g3,bb3]@15 ~ c4@8 bb3@7 [f3,bb3], ~@30 [c4,f4]@26 ~@7 eb4@17 ~@16, ~@31 bb3@11 ~@38 f3@15 ~, ~@32 a3@23 ~@24 eb3@15 ~@2]/3", // C5 Bb5 Gm Bb5 F5
AD: "[c4@3 ~@25 f4@3 ~ [a3,c4]@15 ~ [c4,f4]@15 ~ [c4,f4]@15 ~ [a3,c4]@8 [bb3,d4]@7 ~ [eb4,g4]@30 ~@2 [c4,eb4,g4]@15 ~ [d4,f4]@14 ~@2 [bb3,eb4]@15 ~ [c4,f4]@16, f4@8 bb3@8 c4@15 ~@49 [g3,f4]@15 [ab3,c4]@31 ~ bb3@15 ~ a3@14 ~@2 g3@15 ~ a3@16 ~, ~@4 c4@7 ~ f4@15 ~@165, ~@20 bb3@11 d3@15 ~ [eb3,a3]@16 [d3,a3]@16 ~@113, ~@3 d4 ~@20]/6", // Am F5 Am Bb Eb Cm Dm Eb5 …
AE: "~ d4@31, [d3,g3,bb3]@31 ~", AF: "~ e4@15 ~ [g3,bb3]@7 ~ [a3,c4]@7, [f3,a3,c4]@8 eb3@3 ~ f3@4",
AG: "~@13 bb3@4 c4@4 ~@8 f4@3, [bb3,c4]@12 ~@9 bb3@11, ~ f4@20 ~@4 d4@7", AH: "~ [c4,f4]@30 ~, [d3,a3]@15 ~",
AI: "[~ g4@15 ~ g4@7 ~ f4@6 ~ [c4,f4]@15 ~ [g3,bb3,d4,f4]@15 ~, d4@16 [a3,c4]@15 a3@15 ~@18]/2", // F5 Gm7 Am
AJ: "[~ c4@14 ~@2 bb3@14 ~@2 a3@23 ~ f4@7, g3@15 ~ f3@15 [c4,f4]@26 ~@7, ~@32 bb3@21 ~@11]/2", // F5
AK: "~ eb4@30 ~, [c3,bb3]@31 ~", AL: "[~ f4@15 ~@3 g3@32 ~@13, [a3,c4]@16 [d4,f4]@35 ~@13, ~@9 bb3@17 ~@6]/2",
})).s("gm_electric_guitar_muted").gain(0.2).pan(0.3)
// chords · electric guitar muted · "#Muted Gt" · soft notes
const electric_guitar_muted_2 = note(`<
~@28 A@2 B@2 ~@2 C ~@4 D ~ E F G H I ~ J K L M N ~@3 A@2 B@2 ~@10 O P@2 ~ Q ~ R S@2 ~@9
>`.pickRestart({
A: "[~@30 bb3@17 ~@17]/2", B: "[~@31 eb3@15 ~ d3@16 ~]/2", C: "[bb2,f3]@15 ~", D: "~@6 a3 ~@5 a3 ~@19",
E: "~@6 g3 ~@13 f3 ~@11", F: "~@4 bb3@3 ~@9 bb3@3 ~ bb3@3 ~@9", G: "g3@2 ~@2 g3 ~ g3 ~@5 g3 ~@3 f4 ~@15",
H: "~@4 bb2 ~@25 f2 ~", I: "~@4 g3 ~@27", J: "~@6 a3 ~@5 d4@4 ~@16", K: "~@20 a3 ~@11", L: "~@7 f3 ~@8",
M: "~@12 g3@2 ~@2 f3 ~@15", N: "~ d3 ~@2, ~ f3@3 ~@4", O: "g3", P: "[~@31 bb3@17 ~@16]/2", Q: "eb3@15 ~ d3@16",
R: "g3@31 ~", S: "[~@19 eb3@32 ~@13]/2",
})).s("gm_electric_guitar_muted").gain(0.15).pan(0.3)
// other · orchestral harp · "Harp"
const orchestral_harp = note("<~@24 [~@16 g3 ~@2 f4 g4 bb4 ~ d5 f5 ~@7, ~@17 bb3@2 ~@13, ~@9 d4 ~@6] ~@62>")
.s("gm_orchestral_harp").gain(0.2).pan(0.7)
// … 146 more lines
More by Vanessa Williams
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.