0:00/0:00
// I'm So Glad That I'm a Woman — Love Unlimited Orchestra
// 118 bpm, 4/4, key A# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: ch 6 "MT TRUMPET" named as a brass, played on trumpet (its electric guitar muted patch is not one)
// note: Full arrangement: all 117 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(118/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 · "HONKY TONK"
const piano = note(`<
A@2 B@2 C@2 D@2 A@2 B@2 C@2 E@2 F G H@2 I J@2 K F G L@2 M N O P Q R S T U V W@2 X Y Z@2 AA@2 AB@2 A@2 B@2 C@2 E@2 F G
H@2 AC AD@2 AE F AF L@2 M N O AG AH AI S AJ U V AK AL AH AI S AM U V AK AN AH AI S AO U V AK AP AQ R S AR U V AK AL AH
AI S AJ U V AK AL AH AI S AS ~
>`.pickRestart({
A: "[[bb1,bb2,bb3,db4,f4,ab4]@23 ~ [bb1,bb2,bb3,db4,f4,ab4]@3 [bb1,bb2,bb3,db4,f4,ab4]@2 ~ [bb1,bb2,bb3,db4,ab4]@2, ~@29 f4@2 ~]/2", // Bbm7
B: "[[bb1,bb2,bb3,db4,eb4,gb4]@20 ~@2 [bb1,bb2,bb3,db4,eb4,gb4]!2 [bb1,bb2,bb3,db4,eb4,gb4]@3 [bb1,bb2,bb3,db4,eb4,gb4]@2 ~ [bb1,bb2,bb3,db4,eb4,gb4]@2]/2", // Ebm7
C: "[[bb1,bb2,ab3,bb3,db4,f4]@23 ~ [bb1,bb2,ab3,c4,db4,f4]@7 ~]/2", D: "[[bb1,bb2,ab3,bb3,db4,f4]@31 ~]/2",
E: "[[ab3,bb3,db4,f4]@16 [bb3,f4]@3 ~ [bb3,eb4]@3 ~ [bb3,db4]@4 [f3,eb4]@4, [bb1,bb2]@31 ~]/2", // Bbm7 Bb5 Eb5 Bbm F7 Bb
F: "gb2 ~@5 eb4 f4, [ab3,bb3,db4]@15 ~, f4@3 ~, ~@3 gb2@12 ~", // Bbm7
G: "f2@6 ~@4 [f3,ab3,c4,eb4]@3 [f3,ab3,c4,eb4]@3, [f3,ab3,c4,eb4]@5 ~@3, ~@7 f2@8 ~", // Fm7
H: "[gb2@2 ~@10 f4@2 gb4 f3@3 ~@8 [f3,ab3,c4,eb4]@3 [f3,ab3,c4,eb4]@3, [ab3,bb3,db4]@14 ~ [ab3,c4,eb4]@11 ~@6, f4@6 ~@4 f3@3 ~@3, ~@3 gb2@12 f2@2 ~ f2@4 ~ f2@9]/2", // Fm7 Bbm7 Ab
I: "bb3@2 bb3 ~ gb2@2 ~@2 [ab3,bb3,db4,f4]@4 [ab3,bb3,db4,f4]@4, [gb2,ab3,db4,f4]@3 bb3@5 ~@8, ~ [ab3,db4,f4] ~@2, ~@6 gb2@9 ~", // Bbm7 Db
J: "[[f2,f3,ab3,c4,eb4]@2 f3 ~ [f2,ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@3 ~ [f3,ab3,c4,eb4]@2 ~@3 e2 [a2,g3,a3,db4,e4]@3 [g3,a3,db4,e4]@2 ~ [g3,a3,db4,e4]@4 [a2,g3,a3,db4,e4]@2 [g3,a3,db4,e4] ~ [g3,a3,db4,e4]@2, ~@3 f3@2 ~ f2@4 ~@2 [f2,f3,ab3,c4,eb4]@4 ~@3 a2@6 ~@3 a2@4, ~@14 a1@17 ~]/2", // Fm7 A7 Fm7
K: "[ab3,eb4]@2 [gb3,ab3,c4,eb4] ~@3 [ab1,ab2] ab2 [ab3,ab4]@2 [ab1,ab2]@2 [ab3,ab4]@2 [ab1,ab2]@2, [ab1,ab2]@6 ~ ab1@2 ~@7, [gb3,c4] ~@2 [gb3,ab3,c4,eb4]@5 ~@8", // Ab5 Ab7 Ab Gbdim Ab7
L: "[[gb2,ab3,bb3,db4,f4]@2 bb3 [ab3,bb3,db4,f4]@3 [ab3,bb3,db4,f4]@4 [ab3,bb3,db4,f4]@2 [ab3,bb3,db4,f4]@2 gb4 f3@3 ~@8 [f3,ab3,c4,eb4] ~ [f3,ab3,c4] ~ [f3,ab3,c4,eb4]@2, ~@3 gb2@12 [ab3,c4,eb4]@11 ~@2 eb4@2 ~@2, ~@15 f2@2 ~ f2@4 ~ f2@9, ~@10 f3@3 ~@3]/2", // Gbmaj7 Bbm7 Fm7 Fm Fm7 Ab
M: "[gb2,ab3,bb3,db4,f4]@2 bb3 ~ gb2@2 [ab3,bb3,db4,f4]@4 [bb3,db4,eb4]@2 [bb3,db4,eb4]@2 [ab3,bb3,db4,f4]@2, ~@3 [ab3,bb3,db4,f4]@2 ~ gb2@9 ~, ~@10 ab3 ~ ab3 ~@3", // Gbmaj7 Bbm7 Eb7 Bbm7
N: "[f2,f3,ab3,c4,eb4]@2 f3!2 [f2,f3,ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@3 ~ [f3,ab3,c4,eb4]@2 ~@2 f1@2, ~@3 f2@2 ~ [f2,f3,ab3,c4,eb4]@2", // Fm7
O: "[a2,g3,a3,db4,e4]@3 [g3,a3,db4,e4]@2 ~ [g3,a3,db4,e4]@4 [a2,g3,a3,db4,e4]@2 [g3,a3,db4,e4] ~ [g3,a3,db4,e4]@2, a1@5 ~ a1@10, ~@3 a2@6 ~@3 a2@4", // A7
P: "[ab3,eb4]@2 [gb3,ab3,c4,eb4] [gb3,ab3,c4,eb4]@3 [ab1,ab2,ab3,ab4]!2 [ab3,ab4]@2 [ab2,ab3,ab4] ~ [ab1,ab2]@2 [ab2,ab3,ab4]@2, [ab1,ab2]@6 ~@2 [ab1,ab2] ~ ab1@2 ~@2 ab1 ~, [gb3,c4] ~@11 [ab3,ab4] ~@3", // Ab5 Ab7 Ab Gbdim Ab
Q: "f2@2 ~@8 [f3,ab3,c4,eb4]@3 [f3,ab3,c4,eb4]@3, [f3,ab3,c4,eb4]@5 ~@3, ~@3 f2@12 ~", // Fm7
R: "[f3,ab3,bb3,db4]@3 [f3,ab3,bb3,db4]@2 ~@5 f3@2 db4@2 f3@2, bb2@6 [ab3,bb3]@9 ~, ~@6 db4@5 ~@5, ~@6 f3@3 ~@7, ~@7 bb2@8 ~", // Bbm7 Absus2
S: "[eb2,eb3,gb3,bb3,db4]@2 ~ [eb3,gb3,bb3,db4]@2 ~ [eb3,gb3,bb3,db4]@4 [eb3,gb3,bb3,db4]@3 [eb3,gb3,bb3,db4]@2 ~, ~@3 eb2@12 ~", // Ebm7
T: "[ab2,gb3,bb3,db4,gb4]@2 ab2 ~ ab2@4 [ab2,gb3,c4] ~ [ab2,gb3,c4,eb4] ~ [gb3,bb3,c4,eb4] ~ [gb2,bb3,db4]@2, ~@3 [gb3,bb3,db4,f4]@4 ~ [bb3,eb4]@2 bb3@2 ab2@2 gb3 ~", // Gb Ab7 Cm7b5 Gb Gbmaj7 Eb5
U: "[f2,f3,ab3,c4,eb4]@2 ab3 ~ f2@2 [f3,ab3,c4,eb4]@4 [ab3,c4,eb4]@2 [ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@2, ~@3 [f3,ab3,c4,eb4]@2 ~ f2@9 ~, ~@10 f3 ~ f3 ~@3", // Fm7 Ab Fm7
V: "[bb2,f3,ab3,bb3,db4]@2 f3!2 [bb2,f3,ab3,bb3,db4]@2 ~@8 f4@2, ~@3 [bb2,ab3,bb3,db4,f4]@3 [bb2,db4]@2, ~@5 f3@3", // Bbm7 Bbm
W: "[[eb2,eb3,gb3,bb3,db4]@3 [eb3,gb3,bb3,db4]@2 ~ [eb3,gb3,bb3,db4]@4 [eb2,eb3,gb3,bb3,db4]@2 [eb3,gb3,bb3,db4] ~ [f2,a3,c4,eb4,f4]@17 ~, ~@3 eb2@6 ~@3 eb2@4 ~@16]/2", // Ebm7 F7
X: "[bb1,bb2,bb3,db4,f4,ab4]", // Bbm7
Y: "[bb1,bb2,bb3,db4,f4,ab4]@2 ~ [bb1,bb2,bb3,db4,f4,ab4]@2 ~ [bb1,bb2,bb3,db4,f4,ab4]@2 [bb1,bb2,bb3,db4,f4,ab4]@3 [bb1,bb2,bb3,db4,f4,ab4]@2 ~ [bb1,bb2,bb3,db4,ab4]@2, ~@13 f4@2 ~", // Bbm7
Z: "[[bb1,bb2,bb3,db4,eb4,gb4]@18 [bb1,bb2,bb3,db4,eb4,gb4]!2 [bb1,bb2,bb3,db4,eb4,gb4]@4 [bb1,bb2,bb3,db4,eb4,gb4]!2 [bb1,bb2,bb3,db4,eb4,gb4]@3 ~ [bb1,bb2,bb3,db4,eb4,gb4]@2]/2", // Ebm7
AA: "[[bb2,ab3,bb3,db4,f4]@15 ~ [bb2,f3,bb3,db4,f4]@4 [bb2,f3,bb3,eb4]@4 [bb2,f3,bb3,db4]@4 [bb2,f3,bb3,eb4]@4, bb1@31 ~]/2", // Bbm7 Bbm Bbsus4 Bbm Bbsus4
AB: "[[ab3,bb3,db4,f4]@15 ~, [bb1,bb2]]/2", // Bbm7 Bb
AC: "bb3@2 bb3!2 gb2@2 ~@2 [ab3,bb3,db4,f4]@4 [ab3,bb3,db4,f4]@4, [gb2,ab3,db4,f4] [ab3,bb3,db4,f4] ~@2, ~@6 gb2@9 ~", // Bbm7 Db Bbm7
AD: "[[f2,f3,ab3,c4,eb4]@2 f3!2 [f2,f3,ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@3 ~ [f3,ab3,c4,eb4]@2 ~@3 e2 [a2,g3,a3,db4,e4]@3 [g3,a3,db4,e4]@2 ~ [g3,a3,db4,e4]@4 [a2,g3,a3,db4,e4]@2 [g3,a3,db4,e4] ~ [g3,a3,db4,e4]@2, ~@6 f2@4 ~@2 [f2,f3,ab3,c4,eb4]@4 ~@3 a2@6 ~@3 a2@4, ~@14 a1@17 ~]/2", // Fm7 A7 Fm7
AE: "[ab3,eb4]@2 [gb3,ab3,c4,eb4] ~@3 [ab1,ab2] ab2 [ab3,ab4]@2 [ab1,ab2,ab3,ab4]@2 [ab3,ab4]@2 [ab1,ab2]@2, [ab1,ab2]@6 ~ ab1@2 ~@7, [gb3,c4] ~@2 [gb3,ab3,c4,eb4]@5 ~@8", // Ab5 Ab7 Ab Gbdim Ab7
AF: "f2@6 ~@4 [c4,eb4,f4,ab4]@3 [ab3,c4,eb4,f4]@3, [f3,ab3,c4,eb4]@5 ~@3, ~@7 f2@8 ~", // Fm7
AG: "[ab1,ab2]@2 [ab1,ab2]@2 [ab1,ab2,ab4]@2 [ab1,ab3,ab4]@2 [ab4,ab5]@2 [ab2,ab4,ab5] ~ [ab1,ab2]@2 [ab2,ab5,ab6]@2, [gb3,ab3,c4,eb4]@4 ab3 ~ ab2 ~ [ab1,ab2] ~ ab1@2 [ab5,ab6] ~ ab1 ~", // Ab Ab7 Ab
AH: "[f2,f3,ab3,c4,eb4]@2 ab3 [f3,ab3,c4,eb4]@2 ~ [f3,ab3,c4,eb4]@4 [ab3,c4,eb4]@2 [ab3,c4,eb4]@2 [f3,ab3,c4,eb4]@2, ~@3 f2@12 ~, ~@10 f3 ~ f3 ~@3", // Fm7 Ab Fm7
AI: "[f3,ab3,bb3,db4]@3 [f3,ab3,bb3,db4]@2 ~@7 db4@2 f4@2, bb2@6 [ab3,bb3]@9 ~, ~@6 db4@5 ~@5, ~@6 f3@3 ~ f3@5 ~, ~@7 bb2@8 ~", // Bbm7 Absus2
AJ: "[ab2,gb3,bb3,db4,gb4]@2 ab2 ~ ab2@3 ab2 ab1 [ab2,ab3,ab4]!2 ~ [ab2,ab3,ab4] ~ [gb2,gb3,gb4]@2, ~@3 [gb3,bb3,db4,f4]@4 [ab3,ab4]@2 ~@7", // Gb Ab Gb Gbmaj7 Ab
AK: "[eb2,eb3,gb3,bb3,db4]@3 [eb3,gb3,bb3,db4]@2 ~ [eb3,gb3,bb3,db4]@4 [eb2,eb3,gb3,bb3,db4]@2 [eb3,gb3,bb3,db4] ~ [eb3,gb3,bb3,db4]@2, ~@3 eb2@6 ~@3 eb2@4", // Ebm7
AL: "[ab2,gb3,bb3,db4,eb4]@2 ab2 ~@3 c4@2 [ab2,ab3] ~ [ab2,ab3,eb4] ~ [ab2,ab3] ~ [ab2,ab3,db4]@2, ~@3 [gb3,bb3,db4,eb4]@4 ~ eb4@2 ~@2 eb4@2 ~@2, ~ ab2 ~@2", // Ebm7 Ab Ab5 Ab Db5 Ebm7
AM: "[ab2,gb3,bb3,db4,gb4]@2 ab2 ~ ab2@2 ~ ab2@2 ~ [ab2,c4]@2 [ab2,c4]@2 [ab2,gb3,db4]@2, ~@3 [gb3,bb3,db4,f4]@3 [gb3,c4,eb4]@4 [gb3,eb4] ~ [gb3,eb4] ~@3", // Gb Ab Dbsus4 Gbmaj7 Cdim Ebm
AN: "ab2@2 ab2 ~ [ab2,ab3,ab4]@4 [ab4,ab5]@2 ab2 ~ [ab4,ab5]@2 ab2@2, [ab3,ab4]@4 ~@4 ab2 ~@3 ab2 ~@3", // Ab
AO: "ab2@2 ab2 ~ [ab2,ab3,ab4]@3 ab2 ab1 ab2!2 ~ [ab3,ab4]@2 gb2@2, [gb3,bb3,db4,eb4]@4 ~@4 [ab4,ab5]@4 ab2 ~@3", // Ab Ebm7 Ab
AP: "[ab2,gb3,bb3,db4,eb4]@2 [ab3,ab4]@2 ~ [ab3,ab4]@2 ~ [ab3,ab4]@2 ab2 ~ ab2 ~ [ab2,ab3,ab4]@2, ~@2 ab2 ~ ab2@4 ab2 ~@2 [ab3,ab4]@2 ~@3", // Ebm7 Ab
AQ: "[f2,f3,ab3,c4,eb4]@3 [f3,ab3] [c4,eb4]@2 [f3,ab3,c4,eb4]@3 ~ [f3,ab3,c4,eb4]@3 [f3,ab3,c4,eb4]@3, ~@3 f2@12 ~", // Fm7 Fm Cm Fm7
AR: "[ab2,gb3,bb3,db4,eb4]@2 ab2 ~ ab2@4 [ab2,gb3,db4] ~ [ab2,gb3,c4,eb4] ~ [gb3,bb3,c4,eb4] ~ [gb2,bb3,db4]@2, ~@3 [gb3,bb3,db4,eb4]@4 ~ [bb3,eb4]@2 bb3@2 ab2@2 gb3 ~", // Ebm7 Dbsus4 Ab7 Cm7b5 Gb Ebm7 Eb5
AS: "ab2@2 ab2 ~ [ab2,ab3,ab4]@3 ~@9, [gb3,bb3,db4,eb4] ~@3", // Ab Ebm7
})).s("gm_piano").gain(0.32)
// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
A@16 B C B C B C D E B C B C B C F G H I J K H I L@2 A@16 B C B C B C D E B C B C B C M N H I J O H I J O H I J P H I
J O H I J P H I J P Q R J S T U J P V W J P H I J X Y W J P ~
>`.pickRestart({
A: "bb1@2 ~@2 bb1@2 ~@3 db2 db2@2 bb1 ~ f1@2", B: "gb2@2 ~@2 gb2@2 ~@3 db3!2 ~ bb2 ~ gb2@2",
C: "f2@2 ~@2 f2@2 ~@3 c3!2 ~ ab2 ~ f2@2", D: "a2@2 ~@2 a2@2 ~@3 e3!2 ~ db3 ~ a2@2",
E: "ab2@2 ~@2 ab2@2 ~@3 eb3!2 ~ c3 ~ ab2@2", F: "a2@3 ~ e2@3 ~ db2@3 ~ a1@3 ~", G: "eb2@3 ~ eb2@3 ~ ab2@3 ~ gb2@3 ~",
H: "f2@3 ~ ab2@3 ~ c3@3 ~ eb3@3 ~", I: "db3@3 ~ c3@3 ~ bb2@3 ~ f2@3 ~", J: "eb2@3 ~ gb2@3 ~ bb2@3 ~ eb3 f3@3",
K: "~@2 [ab2,bb2] ~ gb2@3 ~ ab2@2 ab2@2 ab2@2 gb2@2", L: "[eb2@3 ~ gb2@3 ~ bb2@3 ~ gb2@2 f2@17 ~]/2",
M: "a1@3 ~ db2@3 ~ e2@3 ~ a2@3 ~", N: "ab2@3 ~ eb2@3 ~ ab1@3 ~ gb1@3 ~",
O: "~@2 [ab2,bb2] ~ gb2@3 ~@2 ab2!2 ~ ab2@2 gb2@2", P: "ab2@2 eb2 ~ bb2@2 ab2@3 ab2!2 ~ ab2@2 gb2@2, ~@4 ab2 ~@11",
Q: "f2@3 ~ ab2@3 ~ c3@3 ~ eb3@2 eb3@2", R: "db3!2 c3!2 bb2!2 f2 eb2", S: "~@2 bb1@2 gb1@3 ~@2 ab1!2 ~ ab1@2 gb1@2",
T: "f1@3 ~ ab1@3 ~ c2@3 ~ f2@3 ~", U: "db2@3 ~ c2@3 ~ bb1@3 ~ bb1 db2!2 ~", V: "f2@3 ~ c2@3 ~ ab1@3 ~ eb2@3 ~",
W: "db2@3 ~ c2@3 ~ bb1@3 ~ f2@3 ~", X: "ab2@3 ~ eb2@3 ~ ab2@3 ~ gb2@3 ~", Y: "f2 c2!2 ~ ab1@3 ~ c2@3 ~ eb2@3 ~",
})).s("gm_electric_bass_finger").gain(0.57)
// other · string ensemble 1 · "+ORCHESTRA"
const string_ensemble_1 = note(`<
A@2 B@2 C@2 D E F@2 G@2 H I J K L@2 M@2 N O@2 P L@2 M@2 N O@2 P Q R S T U V W@2 A@2 B@2 C@2 D E X Y Z AA AB AC AD AE
AF AG AH AG AI AG AJ@2 AF AG AH AG AI AG AJ@2 AK AL AM@2 AK AL AN@2 Q R S T U V AO T Q R S T U V AO T Q R S T U V AO T
Q R S T U V AO T Q R S T ~
>`.pickRestart({
A: "[[ab3,ab4]@18 [bb3,bb4]@2 [f4,f5]@4 [bb3,bb4]@2 [f4,f5]@5 ~]/2", // Ab Bb F Bb F
B: "[[gb3,gb4]@9 [bb3,bb4] [f4,f5]@2 [bb3,bb4] [f4,f5]@3]/2", // Gb Bb F Bb F
C: "[[f3,f4]@9 [bb3,bb4] [f4,f5]@2 [bb3,bb4] [f4,f5]@3]/2", D: "[f3,f4]", E: "[bb3,bb4] [c4,c5] [f3,f4]@2",
F: "[[ab3,ab4]@3 [f4,f5]@3 [bb3,bb4]@2]/2", G: "[[gb3,gb4]@3 [f4,f5]@3 [bb3,bb4]@2]/2",
H: "[bb3,bb4]@11 ~ f5@4, ~@11 f4@4 ~", I: "[f4,f5] [bb3,bb4]", J: "[bb3,bb4]@15 ~",
K: "[f4,bb4] [eb4,c5] [db4,db5] [eb4,eb5]", L: "[[f4,db5,f5]@15 ~ eb5@16, ~@15 [eb4,c5]@16 ~]/2",
M: "[~@15 c5@17, [f4,db5,f5] ~, ~@7 [eb4,eb5]@9]/2", N: "[f4,db5,f5]",
O: "[[eb4,c5,eb5]@15 ~ [db4,e4]@16, ~@15 e3@17]/2", P: "[eb3,c4,eb4]", Q: "[ab4,c5,ab5]@3 [eb5,ab5,eb6]",
R: "[db5,f5,db6]", S: "[gb4,gb5]@7 [db4,db5]@9", T: "[gb4,gb5] [f4,f5] [eb4,eb5] [db4,db5]",
U: "[ab4,c5,ab5]@13 ~ [ab4,ab5] [bb4,bb5]", V: "[ab4,db5,ab5]@6 [db4,db5] [eb4,eb5]",
W: "[[gb4,gb5]@4 [db4,db5]@3 [a3,c4,eb4,eb5]@9]/2", X: "f5@3 [bb3,bb4], f4 ~",
Y: "[eb4,eb5]@2 [db4,db5]@2 [c4,c5]@3 [db4,db5]", Z: "[bb3,bb4]@11 ~ bb3@4, ~@11 bb4@4 ~",
AA: "[f4,f5]@3 ~ eb5@2 [db4,db5]@2 [c4,c5]@6 [db4,ab4]@2, ~@3 eb4@2 ~@11", AB: "[bb3,bb4]@3 f4",
AC: "ab4 bb4 db5 bb4", AD: "ab4 f4 eb4 db4", AE: "bb3 db4 eb4 f4", AF: "~@2 ab5 [db4,f4,db5,f5], ab4@3 ~",
AG: "[c4,eb4,c5,eb5]", AH: "~ [db4,f4,db5,f5]", AI: "~ bb3 [db4,f5] [db4,f4,f5,ab5]",
AJ: "[[db4,e4,db5,e5]@14 [eb4,gb4,eb5,gb5] [c4,eb4,c5,eb5]@17]/2", AK: "eb4", AL: "f4", AM: "[db4@14 eb4 db4]/2",
AN: "[db4@12 c4@2 eb4 db4]/2", AO: "[gb4,gb5] [db4,db5]",
})).s("gm_string_ensemble_1").gain(0.4)
// chords · trumpet
const trumpet = note("<A B C D E ~@3 A F C F E ~@27 A B C D E ~@3 A F C F E ~@64>".pickRestart({
A: "~@12 bb4@3 eb5", B: "f5@2 ~ eb5@3 db5@2 c5@4 db5@4, e5 ~@15", C: "bb4@10 ~@2 bb4@3 eb5",
D: "f5@2 ~ eb5@3 db5@2 c5@6 db5@2, e5 ~@15", E: "bb4@5 ~@3", F: "f5@2 ~ eb5@3 db5@2 c5@6 ab4@2, e5 ~@15",
})).s("gm_trumpet").gain(0.39).pan(0.4)
// chords · trumpet · soft notes
const trumpet_soft = note("<A B C B D ~@3 A B E B F ~@27 A B C B D ~@3 A B E B F ~@64>".pickRestart({
A: "~@15 d5", B: "~@3 e5 ~@2 d5 ~@9", C: "b4 ~@14 d5", D: "b4 ~@15", E: "a4 ~@14 d5", F: "a4 ~@15",
})).s("gm_trumpet").gain(0.22).pan(0.4)
// other · trumpet · "MT TRUMPET"
const trumpet_2 = note(`<
A@16 B@6 C D B@6 C E B@3 F B@3 ~ A@16 B@6 C D B@6 C E B@3 F B@3 F B@3 F B@3 F B@3 F B@3 F B@3 F B@3 F B@3 F B@3 F B@3
F ~
>`.pickRestart({
A: "~@2 ab3 ~ ab3 bb3 ~@10", B: "~@2 bb3 ~ ab3 bb3 ~@10", C: "~@2 a3 ~ ab3 a3 ~@10", D: "~@2 b3 ~ b3 c4 ~@10",
E: "~@2 c4 ~ b3 c4 ~@10", F: "~@2 ab3 ~ gb3 ab3 ~@10",
})).s("gm_trumpet").gain(0.2).pan(0.8)
// drums · kick
const kick = s("bd").struct("<A@23 B A@14 C ~ A@15 B A@7 D A@7 E A@7 D A@15 F A@7 E A@7 G A@4 ~>".pickRestart({
A: "x!4", B: "x ~ x!6", C: "x ~ x ~ x ~ x!2", D: "x!2 ~@2", E: "x ~ x ~ x!4", F: "~ x!2 ~ x!2 ~ x", G: "x!3 ~",
})).gain(0.56)
// drums · snare
const snare = s("sd").struct("<A@23 B A@15 C A@15 B A@7 D A@7 E A@7 D A@15 F A@7 E A@7 G A@4 ~>".pickRestart({
A: "~ x ~ x", B: "~ x!7", C: "~@3 x", D: "~@4 x ~@2 x!9", E: "~@2 x ~ x!4", F: "x ~@3 x ~ x!3 ~@3 x!4",
G: "~@4 x ~@7 x!4",
})).gain(0.56)
// drums · hihat
const hihat = s("hh").struct(`<
A@7 B A@7 B A@6 B C D A@6 E A@6 B F D A@6 B A@6 B C G B A@5 H D A@6 I D A@2 B A@3 H D A@2 B A@3 E A@3 B A@2 B ~ D A@2
B A@3 I D A@2 B A@3 J D A@2 B ~
>`.pickRestart({
A: "x!8", B: "x!7 ~", C: "x", D: "~ x!7", E: "x!5 ~ x ~", F: "x!3 ~", G: "~ x!6 ~", H: "x!4 ~@4", I: "x!3 ~ x ~@3",
J: "x!6 ~@2",
})).gain(0.48)
// drums · open hat
const open_hat = s("oh").struct(`<
~@7 A ~@7 A ~@6 A ~@8 B ~@15 A ~@6 A ~ A@2 ~@13 C ~@3 A ~@7 A ~@3 B ~@3 A ~@7 A ~@3 C ~@3 A ~@7 A ~
>`.pickRestart({
A: "~@7 x", B: "~@5 x ~ x", C: "~@3 x ~@4",
})).gain(0.56)
// drums · crash
const crash = s("cr").struct(`<
~@16 A ~@7 A ~@7 A ~@5 B ~ A ~@15 A ~@7 A ~@7 A ~@7 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@3 A ~@4
>`.pickRestart({
A: "x", B: "~@7 x",
})).gain(0.48)
stack(piano, bass, string_ensemble_1, trumpet, trumpet_soft, trumpet_2, kick, snare, hihat, open_hat, crash)
More by Love Unlimited Orchestra
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.