0:00/0:00
// After The Love Has Gone — Earth, Wind & Fire
// 63 bpm, 4/4, key F major. Source: mcgill + 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 20, 4/4 at bar 20) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 81 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(63/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 · piano · "A.PIANO 1"
const piano = note(`<
A B@2 C D@6 E@3 F G H I@2 J@5 K L M@8 N@8 O P@2 Q R S T U V@4 W@3 X Y Z@2 AA AB@2 AC AD AE AF@2 AG AH AI@2 AJ AK@3 AL
AM AN@3
>`.pickRestart({
A: "~@10 [f2,c3,f3,a3,c4]@5 f5", // F
B: "[~@2 f5@2 c5@4 c5@2 ~@2 f3@2 ~@7 f3 ~@15 f4@4 d5@2 ~@4 bb4@5 ~@2 [f2,c3,f3,a3,c4]@8 [g2,d3,f3,g3,bb3]@2, e5@4 [a2,a3,c4]@17 [bb2,c4]@6 bb3@4 c5@2 bb4@4 ~@6 f4@10 ~@11, ~@4 f3@6 a4@5 f3@6 ~@2 f3@12 c5@6 ~@11 a4@12, ~@16 f4@4 ~@5 a3@12 [c3,g3,bb3,d4]@16 ~@11, ~@18 d5@19 ~@27]/2", // F Gm7 Am Bbsus2 Gm
C: "~@6 f3@8 ~@9 [bb2,f3,a3]@9, f5@4 f5@17 d4@11, ~@2 e5@4 a2@13 c4@4 ~@9, ~@3 [a3,c4]@5 a3@3 ~@5, ~@7 f3@4 ~@5", // Bbmaj7 Am
D: "[~@7 [g2,bb3,d4,f4,a4]@8 ~ f4@7 ~ [f2,f3,a3,c4,f4]@16 [f2,f3,bb3,db4,eb4,f4]@17 [f2,f3,a3,c4,f4]@16 [g3,c4]@8 ~ [f3,bb3]@8 ~@10 e4@4 f4@2 ~ a3@4 ~@12 g3@4 ~@2 f4@8 ~@2 f3@2 ~ f3@2 ~@2 e3@2 e3 ~@3 g3@4 g3@8 f3@8 [f2,f3,bb3,db4,f4]@16 ~ [f2,c3,g3,a3,c4]@3, ~ a4@4 c5@10 ~@9 a4@20 ~@46 f4@14 ~@15 g4@21 ~@4 f3@4 ~@44, ~@3 bb4@4 ~@8 [c3,bb3,d4,bb4]@8 ~@50 [a2,db3]@17 [d3,a3,c4]@17 bb2@8 bb2@6 c4@16 c4@11 ~@44, ~@90 e4@10 ~@7 f3@2 ~@2 a3@12 [eb2,bb2]@17 ~@8 [c2,e4]@8 [f2,c3,a3,c4]@16 ~@20, ~@96 d4@10 ~ d4@17 ~@3 g3@12 [c3,g3,bb3]@9 ~@44]/6", // Gm7 F Bbm F C5 Bb5 Bbm F …
E: "[~@8 [g1,g2,f3,bb3]@3 [ab1,ab2,gb3,b3]@3 [g3,c4]@8 [f3,bb3]@8 ~@6 d4@4 ~@4 f4@2 ~@11 d4@4 ~@2 [c3,f3,g3,bb3]@6 c3@2 [c3,f3]@7 c2@2 ~@8 g4@6 ~@2, ~@14 [a1,a2]@16 [d2,d3,a3]@17 [bb1,bb2,a3]@16 c2@15 ~@2 [c2,c3,e3]@14 ~@2, ~@30 [c4,e4,f4]@9 ~@2 e4@6 d4@10 ~@4 c4@33 ~@2, ~@53 e4@10 ~@8 [g3,bb3]@23 ~@2]/3", // Gm7 Abm7 C5 Bb5 Csus4 F5 A D5 …
F: "[bb2,f3,a3,bb3,d4]@15 ~ [a2,f3,a3,c4,f4]@8 [d3,a3,c4,d4,f4]@8", // Bbmaj7 F Dm7
G: "[g2,d3,f3,g3,bb3,d4]@16 [f2,c3,g3,a3,c4]@7 ~ [b2,a3,db4,e4,ab4,b4]@8", // Gm7 F Dbm7
H: "[e3,b3,eb4,gb4,ab4]@2 [eb3,b3,db4,eb4,gb4] [ab2,eb3,ab3,b3,eb4,gb4]", // Emaj7 B Abm7
I: "[[db3,ab3,b3,db4,e4]@15 ~@17 eb3@14 ~@2 [g3,bb3,c4,eb4]@15 ~, ~@8 b2@4 db4 b3 bb3 gb3@8 ~@9, ~@8 [gb3,bb3]@3 eb4@12 ~@9, ~@8 [b3,db4]@2 gb4@13 ~@9, ~@8 eb4 bb4@14 ~@9]/2", // Dbm7 Cm7 Gb Bsus2
J: "[[ab3,c4,eb4,f4]@15 [ab3,bb3,db4,f4]@15 ~ [ab3,db4,f4]@8 [bb3,db4,eb4,g4]@7 ~ [ab3,b3,eb4,gb4]@15 ~ [gb3,b3,eb4,gb4]@7 [ab3,b3,db4,f4]@8 [gb3,bb3,db4,f4]@16 [ab3,b3,eb4,gb4]@8 [ab3,bb3,db4,f4]@8 [g3,bb3,c4,eb4,g4]@15 ~ [ab3,c4,eb4,f4]@15 [ab3,bb3,db4,f4]@15 ~ [ab3,db4,f4]@3]/5", // Fm7 Bbm7 Db Eb7 Abm7 B Db7 Gbmaj7 …
K: "~@5 [bb3,db4,eb4,g4]@8 [ab3,b3,eb4,gb4]@16 [gb3,b3,eb4,gb4]@3", // Eb7 Abm7 B
L: "~@4 [b3,db4,f4]@8 [gb3,bb3,db4,f4]@8 [gb3,ab3,b3,e4]@7 ~ [c3,bb3,d4,f4]@4, ~ ab3 ~@6", // Db7 Gbmaj7 E Bb
M: "[~@4 [bb3,db4,e4]@8 [f2,c3,f3,g3,a3,c4]@15 ~ [f2,f3,ab3,bb3,eb4]@15 [f2,c3,f3,g3,a3,c4]@14 ~@2 [g3,c4]@8 [f3,bb3]@8 [d3,a3,c4,e4,f4]@16 ~@12 f4@3 [eb2,bb2,g3]@13 ~@2 bb3 [c2,c3,f3]@6 e4@2 c2@4 [c2,c3]@4 [g3,c4]@8 ~@6 e4@2 ~@15 c4@2 ~@4 f2@4 ~ [g2,f3,bb3,d4]@2 [ab2,gb3,b3,eb4]@3 g3@8 [f3,bb3]@8 [d3,a3,c4,e4,f4]@16 [bb2,f3,a3,bb3,d4,f4]@15 [g3,bb3,d4,f4]@16 [c4,e4]@8, ~@57 a2@14 ~@20 [bb2,f3,a3,bb3,d4]@16 ~@13 g3@2 [g3,bb3,c4]@16 ~@8 g3@8 ~@15 [c3,g3,f4]@10 ~@6 [a2,db3,c4,f4]@15 ~@32 c3@24, ~@58 db3@17 ~@21 a4@10 ~@24 e4@8 ~@10 c4@6 ~@13 a4@12 ~@77, ~@59 f4@16 ~@16 f4@12 ~@3 [bb3,d4,f4]@10 ~@3 f3@3 ~@16 [f2,c3,a3,f4]@16 [f2,eb3,ab3,bb3,eb4,f4]@15 [f2,a3]@4 a3@6 ~@69 [g3,bb3]@2 ~@6, ~@150 d4@4 ~@10 g4@6 ~ c4@7 ~@78]/8", // Bbdim F Fm7 F C5 Bb5 Dm7 Eb …
N: "[[c3,bb3,e4,c5]@6 ~@2 [bb2,a3,bb3,d4,f4]@15 ~ [a2,a3,c4,f4]@7 [d3,a3,c4,d4,f4]@8 [g2,g3,bb3,d4,f4]@16 [f2,f3,g3,a3,c4]@8 [b2,a3,db4,f4]@8 [bb2,a3,bb3,d4,f4]@16 [a2,a3,c4,f4]@7 [d3,a3,c4,d4,f4]@8 [g2,g3,bb3,d4,f4]@16 [f2,f3,g3,a3,c4]@8 [b2,a3,db4,e4,gb4,a4]@8 [e3,b3,eb4,gb4,ab4]@16 [eb3,b3,eb4,gb4]@8 [ab2,ab3,b3,eb4,gb4]@7 [db3,ab3,b3,db4,e4]@15 ~ [b2,gb3,bb3,b3,eb4]@31 ~ [c3,g3,bb3,c4,eb4]@15 [f2,c3,f3,ab3,c4,eb4]@15 ~ bb2 ~ [ab3,bb3,db4,f4] ~ [g3,bb3,c4,eb4] ~ bb2 ~ [ab3,bb3,f4]@2 bb2 ~, ~@252 db4 ~@3]/8", // C7 Bbmaj7 F Dm7 Gm7 F Dbaug Bbmaj7 …
O: "[g3,bb3,c4,eb4] ~ [ab3,bb3,db4,f4] ~@3 [eb3,ab3,bb3,db4,f4]@4 eb2@2 [g3,bb3,db4,eb4]@3 ~@3 eb3 ~ ab2 [gb3,ab3,b3,eb4] ~ [f3,ab3,bb3,db4] ~ ab2 ~ [gb3,ab3,eb4]@2 ab2 ~ [ab3,bb3,db4], ~@4 eb2@6 ~@2 [eb2,eb3]@7 ~@13, ~@16 [g3,bb3,db4,eb4]@4 ~@7 b3 ~@4", // Cm7 Bbm7 Eb7 Abm7 Bbm7 Ab7 Bbm7 Eb …
P: "[f3 [gb3,ab3,b3,eb4] ~@3 [db3,gb3,ab3,b3,eb4]@4 db2@2 [db2,db3,f3,ab3,b3,db4]@8 [ab3,bb3,db4,f4]@8 [ab3,bb3,db4,f4]@8 [ab2,eb3,gb3,ab3,b3,eb4]@8 [bb2,ab3,bb3,db4,f4]@8 [bb3,c4,eb4,g4] ~ [bb3,c4,eb4,g4] ~ [a3,c4,d4,f4] c3 ~ [bb3,c4,eb4,g4]@2 c3 ~ [a3,c4,f4] d4, ~@3 db2@6 ~@10 [gb2,db3]@16 ~@16 c3@2 ~@11]/2", // Abm7 Db7 Bbm7 Abm7 Bbm7 Cm7 Dm7 Cm7 …
Q: "[c4,eb4,g4] ~@3 [f3,ab3,c4,eb4,f4]@4 [ab3,c4,eb4,f4]@4 ~@2 [ab3,c4,eb4,f4]@2 f3 ~ bb2@2 [ab3,bb3,db4,f4] ~ [g3,bb3,c4,eb4] ~ bb2 ~ [ab3,bb3,db4,f4]@2 bb2@2 [g3,bb3,c4,eb4] ~, bb3@2 f2@15 ~@15, ~@3 f3 ~@4", // Cm Fm7 Bbm7 Cm7 Bbm7 Cm7
R: "[ab3,bb3,db4,f4] ~@3 [eb3,ab3,bb3,db4,f4]@4 eb2@2 [g3,bb3,db4,eb4]@3 ~ [g3,bb3,db4,eb4]@2 eb3 ~@2 [gb3,ab3,b3,eb4] ~ [ab3,bb3,db4] f3 ab2 ~ [gb3,ab3,eb4]@3 ab2 [ab3,db4]@2 [gb3,ab3,b3,eb4], ~@2 eb2@6 ~@2 [eb2,eb3]@7 ~ ab2@2 ~@5 b3 ~@3 [f3,bb3] ~@2", // Bbm7 Eb7 Abm7 Bbm7 Ab7 Db5 Abm7 Eb …
S: "~@3 [db3,gb3,ab3,b3,eb4]@4 db2@2 [db2,db3,f3,ab3,b3,db4]@8 [ab3,bb3,db4,f4]@8 ~@4 db3@3, ~ db2@6 ~@10 gb2@15, ~@17 db3@12 ~@3, ~@25 [ab3,bb3,db4,f4]@7", // Abm7 Db7 Bbm7
T: "~ [ab2,eb3,gb3,ab3,b3,eb4]@8 [bb2,ab3,bb3,db4,f4]@8 [b2,gb3,bb3,b3,eb4]@8 [db3,ab3,b3,db4,e4]@7", // Abm7 Bbm7 Bmaj7 Dbm7
U: "[eb3,bb3,db4,eb4,gb4]@6 ~@4 [c4,eb4,ab4] ~ [bb3,eb4,g4] ~@3 [c4,ab4]@2 ~@2 [eb4,g4]@2 [c4,eb4,f4,ab4] ~@7 bb2@2, ~@4 f2@3 f3@2 f2@2 ~@5, ~@10 f4@2 ~@4 [eb4,f4] ~@3 bb3 ~@11", // Ebm7 Ab Eb Fm Eb Fm7 Ebsus2
V: "[[bb3,db4,f4,ab4]@2 bb2@2 [bb3,db4,f4,ab4]@2 bb2 ~@3 [bb3,db4,eb4,gb4] ~ [ab3,db4,f4] ~ eb3 ~ [bb3,db4,eb4] ~@2 [c4,ab4] eb3@2 bb3 ~@2 [bb3,db4,gb4]@4 ab2@2 [ab3,c4,eb4,gb4]@2 ab2@2 [ab3,c4,eb4,gb4]@2 ab2 ~@3 [b3,e4,ab4] ~ [bb3,eb4] ~@3 [b3,ab4]@2 ~@2 [bb3,eb4] ~ [db3,b3,e4] ~@3 [b3,e4,ab4]@4 ~@2 [bb3,db4,gb4]@4 gb2@4 [gb3,bb3,b3,eb4]@7 ~ [gb3,bb3,b3,eb4]@5 ~@2 [db2,db3,ab3,b3,db4,e4]@8 [eb2,eb3,bb3,db4,eb4,gb4]@7 ~ f2@2 [f4,ab4]@2 [bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3, ~@8 eb2@4 ~@4 gb4@2 eb2@4 ~ ab2@4 ~@12 db2@5 ~ db3@4 db2@4 ~@2 gb2@5 ~ gb2@4 ~@6 b2@11 ~@46, ~@20 eb4 ~ [db4,gb4]@2 ~@19 gb4@2 ~@2 e4 ~@3 gb4@2 ab4@2 ~@49 [c4,eb4] ~@5 [eb4,f4] ~@5 ab4@2 ~@10]/4", // Bbm7 Ebm7 Db Eb7 Fm Gb Ab7 E …
W: "[[bb3,db4,ab4]@2 ~@2 [eb2,eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~ [ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@4, [bb2,f4] ~@15 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~@4 eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@5]/3", // Bbm7 Ebm7 Gb Db Gb Db Dbsus4 Gb …
X: "~@6 [f4,ab4]@2 [bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2, ~@6 [c4,eb4] ~@5 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~", // Fm Eb Fm F Eb F7 Bbm7 Cm …
Y: "~@2 [eb2,eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~ [ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~, ~@14 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@2", // Ebm7 Gb Db Gb Db Dbsus4 Gb Ebm …
Z: "[~ [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6, ~ [b3,ab4]@2 ~@4 eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@7]/2", // Dbm Dbm7 Ebm E Ebm E Gb7 Bmaj7 …
AA: "~@4 [f4,ab4]@2 [bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2 ~@2, ~@4 [c4,eb4] ~@5 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~@3", // Fm Eb Fm F Eb F7 Bbm7 Cm …
AB: "[[eb2,eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~ [ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3, ~@12 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~@4 eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7]/2", // Ebm7 Gb Db Gb Db Dbsus4 Gb Ebm …
AC: "~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6 ~@2, ~@16 [db2,db3,ab3,db4,e4]@7 ~@9", // Bmaj7 Ebm7 Dbm
AD: "~@2 [f4,ab4]@2 [bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2 ~@2 [eb2,eb3,bb3,db4,gb4]@2, ~@2 [c4,eb4] ~@5 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~@5", // Fm Eb Fm F Eb F7 Bbm7 Ebm7 …
AE: "~@2 [bb3,db4,gb4] ~ [ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@2, ~@10 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~", // Gb Db Gb Db Dbsus4 Gb Ebm Dbm …
AF: "[~ [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6 ~@4, ~@3 eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@11]/2", // Dbm7 Ebm E Ebm E Gb7 Bmaj7 Ebm7 …
AG: "[f4,ab4]@2 [bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2 ~@2 [eb2,eb3,bb3,db4,gb4]@2 ~@2, [c4,eb4] ~@5 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~@7", // Fm Eb Fm F Eb F7 Bbm7 Ebm7 …
AH: "[bb3,db4,gb4] ~ [ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4], ~@8 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~@3", // Gb Db Gb Db Dbsus4 Gb Ebm Dbm …
AI: "[~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6 ~@4 [f4,ab4]@2, ~ eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@11 [c4,eb4] ~]/2", // Ebm E Ebm E Gb7 Bmaj7 Ebm7 Fm …
AJ: "[bb3,eb4,g4] ~ f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2 ~@2 [eb2,eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~, ~@4 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~@9", // Eb Fm F Eb F7 Bbm7 Ebm7 Gb …
AK: "[[ab3,db4,f4] ~ eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2 ~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6 ~@4 [f4,ab4]@2 [bb3,eb4,g4] ~, ~@6 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~@4 eb4 ~@7 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@11 [c4,eb4] ~@3]/3", // Db Gb Db Dbsus4 Gb Ebm Dbm Dbm7 …
AL: "f2@2 [c4,ab4]@2 [f2,f3]@2 [bb3,eb4,g4] ~ [c4,eb4,f4] ~ bb2 ~ bb2 ~@3 bb2 ~@3 [bb3,db4,ab4]@2 ~@2 [eb2,eb3,bb3,db4,gb4]@2 ~@2 [bb3,db4,gb4] ~ [ab3,db4,f4] ~, ~@2 [eb4,f4] ~@5 ab4@2 ~@10 [bb2,f4] ~@11", // Fm F Eb F7 Bbm7 Ebm7 Gb Db …
AM: "eb2 ~ [bb3,db4,gb4] ~@2 [db4,f4,ab4] eb3 ~ [ab2,db4,gb4] ~@3 [bb3,db4,gb4] ~@2 ab2 ~ [ab2,bb3,db4,gb4] ~ [bb3,gb4]@2 ~@2 [db2,db3,e4] ~@3 [db2,db3,b3,e4,ab4] ~ [bb3,gb4]@2 db2, ~@4 eb2@2 ~@2 bb3@2 ~@9 [ab2,db4] ~@3 [b3,ab4]@2 ~@4 eb4 ~@2", // Gb Db Dbsus4 Gb Ebm Dbm Dbm7 Ebm …
AN: "[~ [b3,e4,ab4]@2 db2@2 [bb3,gb4]@2 [b3,e4,ab4]@2 ~@2 [b3,e4,ab4]@3 ~ [gb3,b3,e4,ab4] ~ [db4,e4,gb4]@4 gb3@3 ~ [b2,gb3,bb3,b3,eb4]@13 ~@3 b3@6 ~ [eb2,eb3,bb3,db4,eb4,gb4]@6 ~@2 [bb2,bb3,c4,f4,a4]@31 ~@9, ~@5 [db3,eb4] ~@3 gb2@6 ~@2 [gb2,bb3]@7 ~@16 [db2,db3,ab3,db4,e4]@7 ~@49]/3", // E Ebm E Gb7 Bmaj7 Ebm7 F Dbsus2 …
})).s("gm_piano").gain(0.4).pan(0.3)
// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
~@13 A B C D@2 E F G@2 H I J@7 K@2 L M@2 N@2 O@2 P Q@2 R S T@2 U V W X Y@2 Z@3 AA AB AC AD AE AF@3 AG AH AI@3 AJ AK AL
AM AN@2 AO AP AQ@4
>`.pickRestart({
A: "bb1@2 bb1@2 ~@12 a1@2 a1@2 ~@4 d2 ~ d2@2 ~@4", B: "g1 ~ g1@2 ~@10 g1@2 f1 ~ f1@2 ~@4 b1@8",
C: "e1 ~ e1@2 ~@8 b1@2 e2@2 eb2@2 eb2@2 ~@4 ab1@3 ~ eb2@2 d2@2",
D: "[db2@14 db3 b2 b1@30 ~@2 c2 ~ c2@2 ~@10 eb1 ~]/2", E: "f1 ~ f1@2 ~@5 f1@2 c2@2 ab1@2 bb1 ~ bb1 ~@11 bb1@2 eb2",
F: "~ eb2 ~@7 gb1@2 ~@2 gb1 ~ ab1 ~ ab1@2 ~@8 bb1@2 b1@2 db2",
G: "[~ db2 ~@6 ab1@2 db2@2 db1@2 gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ ab1@4 gb1@2 ab1@2 bb1@4 ab1@2 bb1@2 c2@5 ~@9 eb1@2 f1@2]/2",
H: "~@7 f1@2 c2 ~ b1@2 bb1@4 ~@10 bb1@2 eb2@3", I: "~@7 eb1@2 f1@2 gb1@2 ab1@4 ~@6 ab1@2 bb1@2 b1@2 db2@3",
J: "[~@3 db2 db2@2 b1@2 bb1@2 ab1@2 gb1@16 c2@7 ~ c2@8 f1@27 c2@2 eb2@2 f1@16 a1@8 db3@4 a0@2 c1@2 d1@16 bb1@13 bb1@2 eb1@13 ~@2 b0 c1@10 c2@2 g1@2 c1@2 f1@16 f2@11 f2@3 ~ f1@10 ~ g1@2 ab1@3 a1@7, ~@99 c3 ~@52 bb0@2 ~@70]/7",
K: "[~@3 c3 db3@3 a0 c1 d1@16 bb1@15 c2@16 c1@8]/2", L: "c2@8 bb1 ~ bb1@2 ~@12 a1 ~ a1@2 ~@3 d2",
M: "[~ d2@2 ~@4 g1 ~ g1@2 ~@12 f1 ~ f1@2 ~@4 b1@8 bb1 ~ bb1@2 ~@12 a1 ~ a1@2 ~@3 d2 ~]/2",
N: "[d2@3 ~@3 g1 ~ g1@2 ~@12 f1@3 ~@5 b1@7 ~ e1 ~ e1@2 ~@12 eb2@2 eb2@2 ~@3 ab1@3]/2",
O: "[~ eb2@2 d2@2 db2@15 ~ b1@30 ~@2 c2 ~ c2@2 ~@7]/2", P: "~@2 eb1 ~ f1 ~ f1@2 ~@6 f1@2 c2 ~ ab1@2 bb1 ~ bb1@2 ~@8",
Q: "[bb1@2 db2@2 eb2 ~ eb2@2 ~@6 eb1 ~ f1@2 g1@2 ab1 ~ ab1@2 ~@5 ab1@2 bb1@2 b1@2 db2 ~ db2@2 ~@6 db2@2 ab1@2 f1@2 gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1]/2",
R: "~ gb1 ~ ab1@4 gb1@2 ab1@2 bb1@3 ~ ab1@2 bb1@2 c2@4 ~@9",
S: "eb1@2 f1 ~ f1@2 ~@6 c2@2 b1@2 ab1@2 bb1 ~ bb1@2 ~@8 bb1@2",
T: "[db2@2 eb2 ~ eb2@2 ~@6 f1@2 gb1@2 g1@2 ab1 ~ ab1@2 ~@5 ab1@2 bb1@2 b1@2 db2 ~ db2@2 ~@6 db2@2 ab1@2 f1@2 gb1 ~ gb1@2 gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1 ~ gb1]/2",
U: "~ ab1@4 gb1@2 ab1@2 bb1@7 ~ b1@7 db2@8", V: "eb2@7 ~ f2@4 ~@6 ab2@2 f2@2 ab1@2 bb1 ~ bb1@2 ~@4",
W: "~@2 bb1@2 db2@2 ab2@2 eb2@2 eb2@2 ~@6 eb1@2 f1@2 ~ ab1@2 ab1@2 ~@5, ~@11 gb1 ~@4",
X: "~ ab1@2 bb1@2 b1@2 db2 ~ db2@2 ~@10 db2@2 gb1@3 ~@6",
Y: "[~ gb1@2 db2@2 c2@2 b1@4 bb2@2 db3@2 b2@2 db2@2 c2@2 ~ db2@4 b1@2 db2@2 eb2@4 db2@2 eb2@2 f2@3 ~@7 f2@2 eb2@2 ab1@2 bb1 ~ bb1@2 ~@2 bb1@2 ~@2, ~@21 b1@2 ~@41]/2",
Z: "[bb1@2 ~@2 eb2@2 ~@6 bb1@2 eb2@2 eb1@2 f1@2 ~ ab1@2 ~@4 ab1 ~ ab1@2 ab1@2 ~@2 db2@2 ~@4 ab1@2 b1@2 db2@2 ~@2 ab1@2 db1@2 gb1@3 ~@3 gb1 ~ gb1@2 db2@2 ~@2 b1@7 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 db2@4 b1@2 db2@2 eb2@4, ~@10 gb1 ~@37]/3",
AA: "db2@2 eb2@2 f2@3 ~@7 f2@2 eb2@2 ab1@2 bb1 ~ bb1@2 ~@2 bb1@2 ~@2 bb1@2",
AB: "~@2 eb2@2 ~@6 bb1@2 eb2@2 eb1@2 f1@2 ~ ab1@2 ~@4 ab1 ~ ab1@2 ab1@2 ~, ~@9 gb1 ~@6",
AC: "~ db2@2 ~@4 ab1@2 b1@2 db2@2 ~@2 ab1@2 db1@2 gb1@3 ~@3 gb1 ~ gb1@2 db2@2 ~",
AD: "~ b1@7 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 db2@4 b1@2 db2@2 eb2@4 db2@2", AE: "eb2 f2@2 ~@5 ab1 bb1 ~ bb1!2 ~ bb1 ~",
AF: "[eb2@3 ~@3 bb1@2 gb1@2 eb2@2 ~@2 gb1 ~@2 ab1@2 ~@2 ab1 ~ ab1@2 ~@2 ab1@2 ~@2 db2@2 ~@4 ab1@2 b1@2 db2@2 ~@2 ab1 ~ f1 ~ gb1@2 ~@2 gb1 ~ gb1@2 ~@2 db2@2 ~@2 b1@2 ~@4 gb1@2 ab1@2 b1@3 ~ b1 ~ b1 db2@3 ~ b1@2 db2@2 eb2@4 db2@2 eb2@2, ~@8 g1 ~@39]/3",
AG: "f2@3 ~@7 f2@2 eb2@2 ab1@2 bb1 ~ bb1@2 ~@2 bb1@2 ~@2 bb1@2 ~@2 eb2@2",
AH: "~@6 bb1@2 eb2@2 eb1@2 f1@2 ~ ab1@2 ~@4 ab1 ~ ab1@2 ab1@2 ~@2 db2@2 ~, ~@7 gb1 ~@8",
AI: "[~@3 ab1@2 b1@2 db2@2 ~@2 ab1@2 db1@2 gb1@3 ~@3 gb1 ~ gb1@2 db2@2 ~@2 b1@7 ~ b1 ~ b1 ~ b1 ~ b1 ~ b1 db2@4 b1@2 db2@2 eb2@4 db2@2 eb2@2 f2@4 ~@10 ab1@2 bb1@2 ~@2 bb1@2 bb1@2 ~@2 bb1@2 ~@2 eb2@3 ~]/3",
AJ: "~@2 bb1@2 gb1@2 eb2@2 ~@2 gb1 ~@2 ab1@2 ~@2 ab1 ~ ab1@2 ~@2 ab1@2 ~@2 db2@2 ~@3, ~@6 g1 ~@9",
AK: "~ ab1@2 b1@2 db2@2 ~@2 ab1 ~ f1 ~ gb1@2 ~@2 gb1 ~ gb1@2 ~@2 db2@2 ~@2 b1@2 ~@3",
AL: "~ gb1@2 ab1@2 b1@3 ~ b1 ~ b1 db2@3 ~ b1@2 db2@2 eb2@4 db2@2 eb2@2 f2@3 ~",
AM: "~@6 f2@2 eb2@2 ab1@2 bb1 ~ bb1@2 ~@2 bb1@2 ~@2 bb1@2 ~@2 eb2@2 ~@4",
AN: "[~@2 bb1@2 eb2@2 eb1@2 f1@2 ~ ab1@2 ~@4 ab1 ~ ab1@2 ab1@2 ~@2 db2@2 ~@4 ab1@2 b1@2 db2@2 ~@2 ab1@2 db1@2 gb1@3 ~@3 gb1 ~ gb1@2 db2@2 ~@2 b1@7, ~@5 gb1 ~@26]/2",
AO: "~ b1 ~ b1 ~ b1 ~ b1 ~ b1 db2@4 b1@2 db2@2 eb2@4 db2@2 eb2@2 f2@4 ~@2",
AP: "~@8 ab1@2 bb1@2 ~@2 bb1@2 bb1@2 ~@2 bb1@2 ~@2 eb2@3 ~@3 bb1@2",
AQ: "[gb1@2 eb2@2 ~@2 gb1 ~@2 ab1@2 ~@2 ab1 ~ ab1@2 ~@2 ab1@2 ~@2 db2@2 ~@4 ab1@2 b1@2 db2@2 ~@2 ab1 ~ f1 ~ gb1@2 ~@2 gb1 ~ gb1@2 ~@2 db2@2 ~@2 b1@2 ~@4 gb1@2 ab1@2 b1@3 ~ b1 ~ b1 db2@3 ~ b1@2 db2@2 eb2@4 db2@2 eb2@2 bb1@31 ~@9, ~@4 g1 ~@59]/4",
})).s("gm_electric_bass_finger").gain(0.49)
// chords · string ensemble 2 · "SLOWSTRING"
const string_ensemble_2 = note("<~@2 A@4 ~@7 B@2 C D@2 E@8 ~@4 F G@3 ~@2 H@7 I@4 J K@8 L@8 M N@3 O@8 P@5>".pickRestart({
A: "[~@5 [c2,a3,bb3,f4]@16 ~ [f2,a3]@8 [g2,bb3]@8 [a2,c4]@16 ~ [bb2,a3]@16 bb3@7 ~ bb3@8 ~ [f2,a3,c4]@15 ~@25, ~@22 f4@57 ~@49, ~@55 d4@33 ~@40, ~@71 g2@16 ~@41]/4", // F Gm Am Bbmaj7 F
B: "[d4@2 c4 ~ bb3@2 [a3,c4] [db4,e4,ab4,b4], f4@3 ~, a3@31 ~ g3@24 ~@8, ~@24 d4@23 ~@17]/2", // Am Dbm7
C: "[b3,eb4,gb4,ab4]@8 b3@3 ~ ab3@4, ~ [eb4,gb4], ~@22 b3@9 ~", // Abm7 Ebm
D: "[[ab3,b3,db4,e4]@16 [gb3,bb3,b3,eb4]@31 ~ [g3,bb3,eb4]@16]/2", // Dbm7 Bmaj7 Eb
E: "[[ab3,c4]@16 bb3@15 ab3@8 [bb3,eb4,g4]@8 ab3@16 ~@7 ab3@8 [gb3,bb3]@16 [ab3,b3,eb4]@8 ~@2 f5 g5 a5 bb5 c6 d6 [g3,c4,eb4]@15 ~ [ab3,c4]@15 bb3@16 ab3@8 [bb3,eb4,g4]@8 ab3@15 ~@8 ab3@8 [gb3,bb3]@8 [ab3,b3,e4]@8 d4@8 db4@8 c4@20, f4@39 ~@8 [eb4,gb4]@23 f4@24 ~@16 eb6@54 ~ eb6@39 db5@15 ~ c5@36, ~@16 db4@23 ~@24 b3@15 ~@24 [bb3,db4,f4]@8 ~@15 f4@39 ~@9 [eb4,gb4]@23 f4@15 ~@45, ~@141 db4@24 ~@23 b3@15 ~@17 bb3@16 ~@20]/8", // Ab Eb Gb Abm Cm Ab Eb Gb …
F: "~@20 [g4,bb4]@2 [ab4,b4]@3 [a4,c5]@7", // Gm Abm Am
G: "[~ e5 f5@2 e5 ~ f4 ~ g4 [d4,f4,a4]@15 ~ [c4,d4]@15 ~ [d4,f4]@15 [c4,e4]@16 ~@24, ~@5 d5@2 ~@89]/3", // Dm Csus2 Dm C
H: "[~@30 [db4,e4]@8 [b3,eb4]@31 ~ [db4,e4]@15 [b3,eb4,bb4,db6]@31 ~ [g3,bb3,eb4]@15 ~ [ab3,c4]@15 bb3@16 ab3@8 [bb3,eb4,g4]@8 ab3@15 ~@8 ab3@8 [gb3,bb3]@13, ~@38 [b4,b5]@47 ~@47 f4@39 ~@9 [eb4,gb4]@23 f4@21, ~@148 db4@23 ~@24 b3@15 ~@14]/7", // Dbm B Dbm Bmaj7 Eb Ab Eb Gb …
I: "[~@3 [ab3,b3,eb4]@7 ~@3 f5 g5 a5 bb5 c6 d6 ~@5 g3@10 [ab3,c4]@16 bb3@16 [ab3,eb6]@7 ~ [eb4,g4]@7 ab3@15 ~@9 [ab3,f4,eb6]@8 [gb3,bb3,f4,db6]@15, ~@10 [bb3,db4,f4]@7 ~@2 eb6@46 ~@9 eb6@31 ~@23, ~@19 eb4@15 f4@39 bb3@8 ~@16 b3@15 ~@16, ~@21 c4@13 ~@16 db4@24 ~@7 [eb4,gb4]@23 ~@24]/4", // Abm Ab Ab5 Eb Fm7 Gbmaj7 Bbm Ebm
J: "~ [ab3,b3,eb4]@8 [db4,f4]@8 [db4,gb4]@7 [ab3,db4,e4]@8, ~@9 bb3@16 ~@7", // Abm Db Gb5 Dbm
K: "[[bb3,eb4,gb4]@8 ab6@8 ab6@8 ab6@8 ab6@7 ~ ab6@8 ab6@7 ~ ab6@7 ~ ab6@7 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@7 ~ gb6@15 [e3,ab3,db4,e6]@8 ~ gb6@7 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 [db4,ab6]@7 ~ [eb4,ab6]@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@8 [eb4,gb6]@15 ~ e3@7 [gb3,bb3,eb4,gb6]@4, ~@8 f4@31 ~ f4@15 db4@8 [ab3,c4,eb4]@7 ~ [ab3,e4]@24 [gb3,bb3]@23 ~@8 [gb3,bb3,eb4]@8 [ab3,c4,f4]@16 bb3@40 ab3@31 [gb3,bb3]@23 [ab3,db4,e6]@8 ~@4, ~@8 [ab3,c4]@15 ~ [bb3,db4]@15 ~ [gb3,bb3]@24 ~@7 db4@15 ~@16 eb4@15 ~@33 f4@31 ~@8 c4@5 ~ e4@26 ~@35, ~@150 db4@15 ~ gb3@24 ~@5 db4@18 ~@43]/8", // Ebm E Gb Dbm Db5 Ab5 E Gb …
L: "[~@4 ab6@8 ab6@8 ab6@8 ab6@7 ~ ab6@8 ab6@7 ~ ab6@7 ~ ab6@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@7 ~ gb6@15 [e3,ab3,db4,e6]@8 ~ gb6@7 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 [db4,ab6]@7 ~ [eb4,ab6]@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@8 [eb4,gb6]@15 ~ e3@7 [gb3,bb3,eb4,gb6]@8, ~@4 f4@31 ~ f4@15 db4@8 [ab3,c4,eb4]@6 [ab3,e4]@26 [gb3,bb3]@23 ~@8 [gb3,bb3,eb4]@8 [ab3,c4,f4]@16 bb3@40 ab3@31 [gb3,bb3]@23 [ab3,db4,e6]@8 ~@8, ~@4 [ab3,c4]@15 ~ [bb3,db4]@15 ~ [gb3,bb3]@24 ~@5 db4@18 ~@15 eb4@15 ~@33 f4@31 ~@8 c4@5 ~ e4@26 ~@39, ~@146 db4@15 ~ gb3@24 ~@5 db4@18 ~@47]/8", // E Gb Dbm Db5 Ab5 E Gb Ebm …
M: "ab6@8 ab6@8 ab6@8 ab6@7 ~, f4@31 ~, [ab3,c4]@15 ~ [bb3,db4]@15 ~", // Ab Bbm
N: "[ab6@8 ab6@7 ~ ab6@7 ~ ab6@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@7 ~ gb6@15 [e3,ab3,db4,e6]@8 ~ gb6@7 [ab3,c4,f4,ab6]@2, [gb3,bb3]@24 ~@5 db4@18 ~@15 eb4@15 ~@19, f4@15 db4@8 [ab3,c4,eb4]@6 [ab3,e4]@26 [gb3,bb3]@23 ~@8 [gb3,bb3,eb4]@8 ~@2]/3", // E Gb Dbm Fm Gb Ab Dbm Gb …
O: "[~@6 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 [db4,ab6]@7 ~ [eb4,ab6]@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@8 [eb4,gb6]@15 ~ e3@7 [gb3,bb3,eb4,gb6]@8 ab6@8 ab6@8 ab6@8 ab6@7 ~ ab6@8 ab6@7 ~ ab6@7 ~ ab6@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@7 ~ gb6@15 [e3,ab3,db4,e6]@8 ~ gb6@7 [ab3,c4,f4,ab6]@6, ~@14 bb3@40 ab3@31 [gb3,bb3]@23 [ab3,db4,e6]@8 ~@8 [ab3,c4]@15 ~ [bb3,db4]@15 ~ [gb3,bb3]@24 ~@31 [gb3,bb3]@23 ~@8 [gb3,bb3,eb4]@8 ~@6, ~@14 f4@31 ~@8 c4@5 ~ e4@26 ~@39 f4@31 ~ f4@16 ~@13 db4@18 ~@15 eb4@15 ~@23, ~@14 db4@15 ~ gb3@24 ~@5 db4@18 ~@94 db4@8 [ab3,c4,eb4]@6 [ab3,e4]@26 ~@45]/8", // Db5 Ab5 E Gb Ebm E Gb Dbm …
P: "[~@2 ab6@8 ab6@8 ab6@8 ab6@8 ab6@8 [db4,ab6]@7 ~ [eb4,ab6]@5 ~@2 ab6@8 ab6@8 [b3,ab6]@8 [db4,bb6]@8 [eb4,gb6]@15 ~ e3@7 [gb3,bb3,eb4,gb6]@8 [a3,d4,f4,c6]@30 ~@10, ~@10 bb3@40 ab3@31 [gb3,bb3]@23 [ab3,db4,e6]@8 ~@48, ~@10 f4@31 ~@8 c4@5 ~ e4@26 ~@79, ~@10 db4@15 ~ gb3@24 ~@5 db4@18 ~@87]/5", // Db5 Ab5 E Gb Ebm Dm7 Gb Dbm
})).s("gm_string_ensemble_2").gain(0.3).pan(0.2)
// chords · pan flute
const pan_flute = note(`<
~@4 A@7 B@2 C D E F@2 G@4 H@2 I J K@3 L M N O@5 P@4 Q R S T U@2 V W@5 X Y Z AA AB@3 AC ~@2 AD AE@3 AF@6 ~@8
>`.pickRestart({
A: "[~@18 c3@2 d3@2 a3@16 c3@2 c4@4 c4@2 ~ bb3@4 f3@2 g3@2 a3@14 c3@2 c3@2 a3@2 bb3@2 c4@2 d4@4 ~ c4@2 bb3@2 a3 bb3 a3 g3 f3@8 f3@2 g3@2 a3@12 ~ f3@2 g3@2 a3@6 g3@2 g3@6 g3@2 a3@4 c4@2 ~ c4@2 a3@4 c4@2 c4@2 c4@4 a3@12 c3@2 c4@4 c4@2 ~ bb3@4 f3@2 g3@2 a3@17 c3@2 a3@2 bb3@2 c4@2 d4@4 c4@3 bb3@3 a3 bb3]/7",
B: "[a3 g3 f3@6 f3@3 g3@3 g3@12 ~ f3@2 g3@2 a3@4 g3@2 g3@6 ~ g3@2 a3@4 c4@2 d4@6 g3 a3 f3@4]/2",
C: "f3@2 f3@2 f3 c3 d3 f3@2 g3 a3 a3@4 c3", D: "f3 d3 f3 d3 f3 g3 a3 a3@5 ~@4",
E: "[b3,b4]@2 [b3,b4]@2 [b3,b4] [gb3,gb4] [ab3,ab4] [b3,b4]@2 [db4,db5] [eb4,eb5] [eb4,eb5]@3 ~ ab3", // B Gb Ab B Db Eb
F: "[b3 ab3 b3 ab3 b3 db4 eb4 eb4@15 eb4@2 eb4@8]/2",
G: "[bb4 bb4@2 bb4@2 ab4@6 c4@2 db4@11 ~@7 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [eb4,g4,bb4]@6 [db4,f4,ab4]@2 [eb4,gb4,bb4]@10 ~@6 db4@2 [eb4,gb4,bb4]@2 [eb4,gb4,bb4]@2 [eb4,gb4,bb4]@2 [db4,f4,ab4]@5 [b3,eb4,gb4]@2 [db4,f4,ab4]@18 [b3,eb4,gb4]@8 [db4,f4,ab4]@8 [eb4,g4,bb4]@8 ~@8 bb4@2]/4", // Fm Eb Db Ebm Db B Db B …
H: "[bb4@2 bb4@2 ab4@5 c4@2 db4@10 ~@6 db4@2 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [eb4,g4,bb4]@6 [db4,f4,ab4]@2 [eb4,gb4,bb4]@10 ~@6 [gb3,db4,gb4]@2 [eb4,gb4,bb4]@3]/2", // Fm Eb Db Ebm Gb5 Ebm
I: "~ [eb4,gb4,bb4]@2 [db4,f4,ab4]@5 [b3,eb4,gb4]@2 [db4,f4,ab4]@10 ~@12", // Ebm Db B Db
J: "~@6 c4@2 bb3@2 d4@4 a3@3 g3 a3@8 c3@2 c4@4",
K: "[c4@2 bb3@3 f3@2 g3@2 a3@14 c3@2 c3@2 a3@2 bb3@2 c4@2 d4@6 c4@5 bb3@3 a3@6 f3@3 g3@3 g3@11 f3@2 g3@2 a3@4 g3@2 g3@6 g3@2 a3@4 f3@2 f3@2]/3",
L: "d3@4 c4@2 a3@2 c4@2 a3 g3 ~ a3@11 c3@2 c4@4 c4@2", M: "bb3@4 f3@2 g3@2 a3@11 f4@6 e4@2 ~ d4@2 c4@2",
N: "a3 d4@5 a3@3 g3@2 f3@10 d3 d3@2 ~ d3@7",
O: "[~@4 f3@2 g3@2 a3@4 g3@2 g3@6 g3@2 a3@4 c4@2 d4@12 f3@4 f3@4 f3@2 c3@2 d3@2 f3@4 g3@2 a3@2 a3@6 ~ c3@2 f3@2 d3@2 f3@2 d3@2 f3@4 d3@2 d3@14 ~@4 f3@4 f3@4 f3@2 c3@2 d3@2 f3@3 g3@2 a3@2 ~ a3@6 ~@3 f3@2 g3@2 a3@2 bb3@4 a3@2 g3@2 bb3@12]/5",
P: "[~@6 [b3,b4]@4 [b3,b4]@4 [b3,b4]@2 [gb3,gb4]@2 [ab3,ab4]@2 [b3,b4]@4 [db4,db5]@2 [eb4,eb5]@2 ~ gb4@8 gb4@2 eb4@2 db4@2 b3@2 b3@2 db4@2 eb4@2 eb4@29 ~ eb4@4 eb4@15 bb4@2 bb4@2 bb4@2 ab4@6 c4@2 db4@8 ~@6, ~@14 [e4,e5] ~@49, ~@29 eb5@2 ~@97]/4", // B Gb Ab B Db Eb E
Q: "~@2 [f4,ab4,c5]!3 [eb4,g4,bb4]@3 [db4,f4,ab4] [eb4,gb4,bb4]@5 ~@2", // Fm Eb Db Ebm
R: "~ db4@2 [eb4,gb4,bb4]@2 [eb4,gb4,bb4]@2 [eb4,gb4,bb4]@2 [db4,f4,ab4]@6 [b3,eb4,gb4]@2 [db4,f4,ab4]@10 ~@5", // Ebm Db B Db
S: "~@3 [b3,eb4,gb4]@8 [db4,f4,ab4]@8 [eb4,g4,bb4]@8 ~@5", T: "~ bb4!3 ab4@3 c4 db4@5 ~@3",
U: "[db4@2 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [f4,ab4,c5]@2 [eb4,g4,bb4]@6 [db4,f4,ab4]@2 [eb4,gb4,bb4]@10 ~@5 [gb3,db4,gb4]@2 [eb4,gb4,bb4]@4 [eb4,gb4,bb4]@2 [db4,f4,ab4]@6 [b3,eb4,gb4]@2 [db4,f4,ab4]@14 ~@3]/2", // Fm Eb Db Ebm Gb5 Ebm Db B …
V: "~ [b3,eb4,gb4]@8 [db4,f4,ab4]@8 [eb4,gb4,bb4]@7 [e4,ab4,b4]@8", // B Db Ebm E
W: "[[gb4,bb4,db5]@8 [ab4,c5,eb5]@8 ~@8 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [db4,f4,bb4,db5]@6 [eb4,ab4,c5,eb5]@2 [f4,bb4,db5,f5]@10 ~@7 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 [eb4,ab4,c5,eb5]@6 [db4,gb4,bb4,db5]@2 [eb4,ab4,b4,eb5]@10 ~@6 [gb3,gb4]@2 [eb4,ab4,b4,eb5]@4 [eb4,ab4,b4,eb5]@2 [db4,gb4,bb4,db5]@6 [b3,e4,ab4,b4]@2 [db4,gb4,bb4,db5]@4 [bb3,db4,gb4,bb4]@4 [gb3,bb3,db4,gb4]@9 [e4,ab4,b4]@4 [eb4,gb4,bb4]@2 [e4,ab4,b4]@2 [gb4,bb4,db5]@4 [e4,ab4,b4]@2 [gb4,bb4,db5]@2 [ab4,c5,eb5]@8 ~@8 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [db4,f4,bb4,db5]@4, ~@27 ab4 ~@52]/5", // Gb Ab Bbm Ab Bbm Ab Gb Abm …
X: "~@2 [eb4,ab4,c5,eb5]@2 [f4,bb4,db5,f5]@10 ~@7 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 [eb4,ab4,c5,eb5]@5, ~@10 ab4 ~@5", // Ab Bbm Ab
Y: "~ [db4,gb4,bb4,db5]@2 [eb4,ab4,b4,eb5]@10 ~@6 [gb3,gb4]@2 [eb4,ab4,b4,eb5]@4 [eb4,ab4,b4,eb5]@2 [db4,gb4,bb4,db5]@5", // Gb Abm Gb Abm Gb
Z: "~ [b3,e4,ab4,b4]@2 [db4,gb4,bb4,db5]@4 [bb3,db4,gb4,bb4]@4 [gb3,bb3,db4,gb4]@9 [e4,ab4,b4]@4 [eb4,gb4,bb4]@2 [e4,ab4,b4]@2 [gb4,bb4,db5]@4", // E Gb E Ebm E Gb
AA: "[e4,ab4,b4] [gb4,bb4,db5] [ab4,c5,eb5]@4 ~@4 [eb4,ab4,c5,eb5]!3 [db4,f4,bb4,db5]@3", // E Gb Ab Bbm
AB: "[[eb4,ab4,c5,eb5]@2 [f4,bb4,db5,f5]@10 ~@6 ab4@2 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 ~ [eb4,ab4,c5,eb5]@6 [db4,gb4,bb4,db5]@2 [eb4,ab4,b4,eb5]@12 ~@4 [gb3,gb4]@2 [eb4,ab4,b4,eb5]@4 [eb4,ab4,b4,eb5]@2 [db4,gb4,bb4,db5]@6 [b3,e4,ab4,b4]@2 [db4,gb4,bb4,db5]@4 [bb3,db4,gb4,bb4]@4 [gb3,bb3,db4,gb4]@10 [e4,ab4,b4]@4 ~ [e4,ab4,b4]@2 [gb4,bb4,db5]@4 [e4,ab4,b4]@2, ~@24 [f4,bb4,db5,f5]@2 ~@61 [eb4,gb4,bb4]@2 ~@7]/3", // Ab Bbm Ab Gb Abm Gb Abm Gb …
AC: "[gb4,bb4,db5] [ab4,c5,eb5]@4 ~@11", // Gb Ab
AD: "~@8 [e4,ab4,b4]@2 [eb4,gb4,bb4] [e4,ab4,b4] [gb4,bb4,db5]@2 [e4,ab4,b4] [gb4,bb4,db5]", // E Ebm E Gb E Gb
AE: "[[ab4,c5,eb5]@16 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [db4,f4,bb4,db5]@6 [eb4,ab4,c5,eb5]@2 [f4,bb4,db5,f5]@10 ~@6 ab4@2 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 ~ [eb4,ab4,c5,eb5]@6 [db4,gb4,bb4,db5]@2 [eb4,ab4,b4,eb5]@10 ~@6 [gb3,gb4]@2 [eb4,ab4,b4,eb5]@4 [eb4,ab4,b4,eb5]@2 [db4,gb4,bb4,db5]@6 [b3,e4,ab4,b4]@2 [db4,gb4,bb4,db5]@3, ~@26 [f4,bb4,db5,f5] ~@21]/3", // Ab Bbm Ab Bbm Ab Gb Abm Gb …
AF: "[~ [bb3,db4,gb4,bb4]@4 [gb3,bb3,db4,gb4]@9 [e4,ab4,b4]@4 [eb4,gb4,bb4]@2 [e4,ab4,b4]@2 [gb4,bb4,db5]@4 [e4,ab4,b4]@2 [gb4,bb4,db5]@2 [ab4,c5,eb5]@16 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [eb4,ab4,c5,eb5]@2 [db4,f4,bb4,db5]@6 [eb4,ab4,c5,eb5]@2 [f4,bb4,db5,f5]@10 ~@6 ab4@2 [f4,bb4,db5,f5]@2 [f4,bb4,db5,f5]@2 ~ [eb4,ab4,c5,eb5]@6 [db4,gb4,bb4,db5]@2 [eb4,ab4,b4,eb5]@10 ~@6 [gb3,gb4]@2 [eb4,ab4,b4,eb5]@4 [eb4,ab4,b4,eb5]@2 [db4,gb4,bb4,db5]@6 [b3,e4,ab4,b4]@2 [db4,gb4,bb4,db5]@4 [bb3,db4,gb4,bb4]@4 [gb3,bb3,db4,gb4]@9 [e4,ab4,b4]@4 [eb4,gb4,bb4]@2 [e4,ab4,b4]@2 [gb4,bb4,db5]@4 [e4,ab4,b4]@2 [gb4,bb4,db5]@2 [ab4,c5,eb5]@10 ~@26, ~@41 [f4,bb4,db5,f5] ~@54]/6", // Gb E Ebm E Gb E Gb Ab …
})).s("gm_pan_flute").gain(0.07)
// chords · epiano1 · "E.PIANO 1"
const epiano1 = note("<A@4 B@2 C@7 D E F G@2 ~@7 H@4 I@5 J@6 ~@41>".pickRestart({
A: "[~@36 g5@15 ~@2 c4@6 bb3@10 [bb4,d5,f5]@6 ~@2 [c4,a4] [d4,bb4] [e4,c5] [f4,g4,d5,e5] [a4,f5] [bb4,c5,g5,a5] [d5,bb5] [e5,f5,c6,d6] [g5,e6] [f3,a3]@8 [g3,bb3]@8 [a3,c4]@16 ~ [a3,d4]@9, ~@20 [f5,a5,c6]@31 f5@16 ~@19 [a5,f6]@16 ~@26, ~@52 d5@15 ~@61, ~@53 bb4@13 ~@62]/4", // Bb F Gm C Em7 Dm C7 Gm …
B: "[~@7 [bb3,d4,a4]@8 ~ [bb3,d4,a4]@8 [f3,a3,c4]@16 [f3,bb3,db4,eb4]@16 ~ [f3,a3,c4]@7, ~@3 f2@5]/2", // Bbmaj7 F Bbm F
C: "[~@9 [g3,c4]@8 ~ [f3,bb3]@8 ~@8 e6@9 [bb2,f3,a3,bb3,d4]@16 [eb2,g3,bb3,d4]@16 [d4,f4]@9 [c4,e4]@8 g3@8 f3@8 ~@11 eb5@4 ~@16 ab2@2 ~ f4@8 [f3,bb3]@8 [e4,f4]@8 [e4,f4,a4,c5]@8 ~ [bb2,a3,bb3,d4,f4]@16 [bb3,d4,f4]@17 [bb3,c4,e4,g4]@15 ~, ~@9 a2@16 ~ [d2,a3,c4,e4,f4]@16 ~@33 [c2,bb3]@16 ~ f2@31 g5@18 [a2,db3]@17 ~@66, ~@92 [a3,c4]@16 [f3,bb3,db4,bb4,f5]@15 c5@2 [f2,f3,c4,a4,c5]@16 [g3,c4]@9 ~@74, ~@117 [bb5,f6]@7 [d5,e5]@18 ~@82, ~@136 g2@6 ~@16 [d2,d3,a3,c4]@17 ~@16 c2@33]/7", // C5 Bb5 Bbmaj7 Ebmaj7 Dm C Bb5 Fmaj7 …
D: "[a4,bb4,d5,f5]@16 [a4,c5,f5]@7 ~ [a4,c5,d5,f5]@8", E: "[g4,bb4,d5,f5]@16 [f4,g4,a4,c5]@8 [db4,e4,ab4,b4]@7 ~",
F: "[eb4,gb4,ab4,b4]@2 [eb4,gb4,b4] [eb4,ab4,b4]", // Abm7 B Abm
G: "[[db4,e4,ab4,b4]@8 ~@9 gb5@7 ~@8, ~ [gb4,bb4,b4,eb5]@2 ~, ~@30 eb6@17 ~@17, ~@2 bb5 ~]/2", // Dbm7 Bmaj7
H: "[~@12 [f2,c3,f3,g3,c4]@16 f3@12 ~@4 [f2,c3,a4]@15 [a2,g3,db4,f4]@16 ~@12 [f5,a5]@4 [bb2,f3,a4,d5,f5]@15 [eb3,bb3,d4,f4]@15 ~ [c3,bb3,d4]@6, ~@28 [f2,ab3,bb3,eb4]@14 [d5,e5]@17 ~@26 d5@6 ~@37, ~@41 a5@18 ~@69, ~@43 c5@16 ~@16 [d3,a3,c4,e4,f4]@16 ~@37]/4", // Fsus2 F Aaug F Bbmaj7 Bb Gm Fm7 …
I: "[~@2 [g3,c4]@6 ~@10 a6@6 ~@4 f4@10 ~@4 c3@9 ~ [g2,f3,bb3,d4]@2 [ab2,gb3,b3,eb4]@2 ~ [a2,g3,c4,f4]@16 ~@13 d5@3 [bb2,a3,f4,c5]@15 d4@16 [e4,g4]@15 ~ [a4,d5,f5]@15 ~ [a4,c5,f5]@7 [f4,d5], ~@10 [g3,a3,c4,d4]@14 ~ [f5,ab5]@4 ~@54 e5@6 ~@71, ~@16 a5@8 [bb5,eb6]@7 ~@129, ~@17 [c6,e6]@7 ~ eb5@13 ~@122, ~@27 [ab4,bb4]@12 ~@2 [f2,f3,g3,c4]@9 ~@23 [d3,a3,d4,f4]@17 ~@14 [c3,bb3,c5]@31 ~@25]/5", // C5 Gm7 Abm7 F Em Dm F Dm …
J: "[a4@7 [g4,bb4,d5]@15 ~ [f4,a4,c5]@8 [f4,a4,db5]@8 [a4,d5,f5]@15 ~ [a4,c5,f5]@7 [f4,a4,d5]@8 [g4,bb4,d5]@16 [f4,g4,a4,c5]@8 [gb4,a4,db5]@8 [eb4,gb4,ab4,b4]@15 ~ [eb4,gb4,b4]@7 ~ eb4@7 [db4,e4,ab4]@16 [gb4,bb4,eb5]@30 ~@13, ~@125 [ab4,b4]@7 ~@60]/6", // Gm F Faug Dm F Dm Gm F …
})).s("gm_epiano1").gain(0.3).pan(0.6)
// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note("<~@29 A@2 B@3 ~@47>".pickRestart({
A: "[~@20 [c3,c4,e4]@2 [d3,d4,f4]@2 [e3,e4,g4]@2 [f3,f4,ab4]@11 ~@15 [g3,f4]@2 [ab3,gb4,b4]@3 [a3,g4,c5]@7, ~@51 bb4@4 ~@9]/2", // C Dm Em Fm G7 Abm7 Am7
B: "[~ [g4,e5]@3 ~@2 [d4,b4]@2 [e4,a4] [f4,a4]@16 [c4,c5]@41 ~@30, ~@2 [f4,d5] ~@45, ~@5 [e4,c5]@2 ~@89]/3", // C G A5 F C Dm C
})).s("gm_string_ensemble_1").gain(0.25).pan(0.3)
// other · trumpet
const trumpet = note(`<
~@17 A@4 B@5 ~@8 C D E F@3 G H@2 I J K@2 ~ L M@3 ~@3 N@2 ~@2 O P ~@2 Q R ~@2 S ~@3 T U ~@2 V ~@3 W@2
>`.pickRestart({
A: "[~@18 d4@2 ~@2 eb4@2 ~@2 [c5,d5] ~@3 bb4@15 ~@4 c4@2 ~@2 db4@2 ~@2 [bb4,c5] ~@3 ab4@8 g4 ab4 g4@8 gb4@4 db5@2 bb4 ~@3 gb4@13 ~@26]/4", // Csus2 Bbsus2
B: "[~@16 d4@2 ~@2 eb4@2 ~@2 [c5,d5] ~@3 bb4@12 ~@8 c4@2 ~@2 db4@2 ~ bb4 c5 ~@2 ab4@8 g4 ab4 g4@8 gb4@4 db5 ~ bb4@2 ~@2 gb4@14 f4@7 db4@16 d4@8 db4@8 c4@7 ~@13]/5", // Csus2
C: "~@25 b4@2 ~@2 a4@2 ~", D: "~ d4@2 ~@2 f4@24 ~@3", E: "~@12 eb5 ~ db5 ~",
F: "[ab4@2 ~@2 b4@49 eb5@31 ~@3 d4@2 ~@2 eb4@2 ~ c5 d5]/3", G: "~@3 bb4@15 ~@4 c4@2 ~@2 db4@2 ~@2 [bb4,c5] ~",
H: "[~@2 ab4@8 g4 g4@8 ~ gb4@4 db5@2 bb4 ~@3 gb4@13 ~@21, ~@11 ab4 ~@52]/2", I: "~@21 d4@2 ~@2 eb4@2 ~ c5 d5 ~@2",
J: "bb4@12 ~@8 c4@2 ~@2 db4@2 ~@2 [bb4,c5] ~@3", K: "[ab4@8 g4 ab4 g4@8 gb4@4 db5 ~ bb4@2 ~@2 gb4@13 f4@23]/2",
L: "~@5 g4 ~ ab4 ~ g5 ~ eb5@5, ~@18 f5 ~@13",
M: "[~@10 f4@2 ~@2 gb4@2 ~ eb5 f5@2 ~@2 db5@9 c5@8 b4@23 ~ bb4@8 gb4@12 ~@13]/3",
N: "[~@21 e5@7 ~ gb5@7 [ab5,c6]@2 [g5,a5,b5] [e5,f5] [b4,c5,d5] [e4,f4,g4,a4] ~@22, ~@20 ab5@7 ~ bb5@7 ~@29]/2", // Ab G Fmaj7 Bm Fmaj7
O: "~@19 ab5@7 ~ bb5@5, ~@18 e5@7 ~ gb5@6", P: "~@2 [ab5,c6]@3 ~@27", Q: "~@17 ab5@7 ~ [gb5,bb5]@7, ~@2 e5 ~",
R: "[ab5,c6]@2 [a5,b5] [e5,f5,g5] [b4,c5,d5] [e4,f4,g4,a4] ~@26", // Ab Asus2 Em Bm Fmaj7
S: "~@15 [e5,ab5]@7 ~ bb5@7 [ab5,c6]@2, ~@11 gb5@4 ~", // E Ab
T: "~@13 ab5@7 ~ [gb5,bb5]@7 [ab5,c6]@2 [a5,b5] [e5,f5,g5], ~@3 e5@2 ~@3", U: "[b4,c5,d5] [e4,f4,g4,a4] ~@30",
V: "~@11 [e5,ab5]@7 ~ bb5@7 [ab5,c6]@3 ~@3, ~@9 gb5@4 ~@3", W: "[~@9 ab4@7 ~ bb4@7 f4@31 ~@9]/2",
})).s("gm_trumpet").gain(0.35).pan(0.8)
// chords · trombone
const trombone = note(`<
~@17 A@3 B@4 C@2 ~@8 D E F G@4 H I@2 J K L ~@5 M N O@3 P Q R@2 S T U V W X Y ~ Z AA AB AC AD@2 AE AF AG AH AI@2
// … 243 more lines
More by Earth, Wind & Fire
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.