0:00/0:00
// Hava Naquila — Party Animals
// 150.1 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: duplicate parts dropped: ch 5 "trum 3" trombone (copy of ch 4 "brass" brass section)
// note: Full arrangement: all 176 bars on a 24-step grid, each part at one level. Source detail keeps the original performance.
setcpm(150.1/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.
// bass · fretless bass · "bass"
const bass = note(`<
~@2 A@8 B@7 C@8 D@4 E@7 F@8 G H I J K J L M N J O P Q R S Q@2 T U V W@2 X Y Z AA AB AC AD AE AF AE AG AH AI AJ@2 AK AL
AK AL AM AN AO@3 AP AQ@7 AR AS@7 AT@8 AU AV@3 AW@6 AX@2 AY AZ@3 BA@3 BB BC BD@3 BE BF BG@2 BH BI BJ BK@5 BL@2 BM@3 BN
BO@4 BP@3 BQ BR ~@4 BS BT BU BV@2 BW ~
>`.pickRestart({
A: "[d2@21 ~@2 a2@23 ~ d2@22 ~@2 a2@22 ~ d#2@22 ~@2 a#2@21 ~@3 d2@21 ~@2 d2@21 ~@3 d2@3]/8",
B: "[~@21 a2@23 ~ d2@22 ~ a2@22 ~@2 d#2@22 ~@2 a#2@21 ~@2 d2@21 ~@3 d2@5]/7",
C: "[~@19 d2@22 ~ a2@21 ~@3 c2@23 ~ g2@23 ~ c2@23 g2@21 ~ d2@20 ~@2 a2@11]/8",
D: "[~@11 d2@21 ~ a2@18 ~@3 c2@21 ~ g2@19 ~]/4",
E: "[~ c2@20 ~ g2@21 ~ d2@19 ~@2 a2@19 ~@3 g2@18 ~@3 g2@19 ~@3 g2@6 ~@4 g2@7 ~@3 g2@7 ~@3 g2@6 ~@2]/7",
F: "[~ g2@16 ~ d2@16 ~ g2@16 d2@16 d2@8 ~@9 a2@15 ~ d2@14 ~@2 a2@15 ~@2 d2@15 ~ d2@14 ~ d2@13 ~ d3@3 ~ c3@3 a#2@3 a2@3 ~]/8",
G: "g2@3 ~@3 d2@5 ~ g2@4 ~@2 d2@5 ~", H: "g2@2 ~ d2@2 ~ g2@2 ~ d2@2 ~", I: "d2@4 ~@2 a1@4 ~@2 d2@5 ~ a1@4 ~@2",
J: "d2@5 ~ a1@5 ~ d2@5 ~ a1@5 ~", K: "d#2@5 ~ a#1@4 ~@2 d#2@5 ~ a#1@5 ~", L: "d2@5 ~ a1@4 d2 ~ d2@3 ~@3 a1@5 ~",
M: "d2@5 ~ a1@4 d2 ~ d2@5 ~ a1@5 ~", N: "d#2@5 ~ a#1@3 ~ d#2 ~ d#2@5 ~ a#1@2 ~ d#2@2 ~",
O: "d2 ~@2 d2@4 d2@3 ~@2 d2 ~@2 a1@2 ~ d2@4 ~@2", P: "d#2@5 ~ c2@4 ~@2 d#2@4 ~@2 c2@4 ~@2",
Q: "c2@5 ~ g2@5 ~ c2@5 ~ g2@5 ~", R: "d2@5 ~ a2@5 ~ d2@4 ~@2 a2@5 ~", S: "d2@4 ~@2 a2@5 ~ d2@5 ~ a2@4 d2 ~",
T: "d2@5 ~ a2@5 ~ d2@5 ~ a2@3 ~@3", U: "g1@7 ~@5 g1@9 ~@3", V: "g2@2 ~ g2@2 ~ g2@2 ~ g2@2 ~",
W: "g2@5 ~ a#2@4 a2 ~ g2@5 ~ a#2@5 ~", X: "d2@6 a2@4 f#2 ~ d2@5 ~ a2@5 ~", Y: "d2@6 a2@4 f#2 ~ d2@5 ~ a2@4 ~@2",
Z: "a2@5 ~ d3@5 ~ a2@5 ~ d3@4 ~@2", AA: "d2@4 ~@2 d2@5 ~ d3@2 ~ c3@2 ~ a#2@2 ~ a2@2 ~",
AB: "g2@4 ~@2 d2@5 ~ g2@5 ~ d2@5 ~", AC: "g2@5 ~ d2@5 ~ g2@4 ~@2 d2@5 ~", AD: "~ g2@6 ~@17", AE: "~ d2@22 ~",
AF: "~ a2@23", AG: "~ a2@22 ~", AH: "~ d#2@22 ~", AI: "~ a#2@21 ~@2", AJ: "~@2 d2@21 ~", AK: "~ d2@11", AL: "~ a2@11",
AM: "~ d#2@11", AN: "~ a#2@7", AO: "~ d2@7", AP: "~ a2@7",
AQ: "[~@3 c2@23 ~ g2@23 ~@2 c2@23 ~ g2@23 ~ d2@22 ~@2 a2@23 d2@21]/7", AR: "~ a2@10 ~",
AS: "[~ c2@22 g2@19 ~@3 c2@20 ~ g2@20 ~@2 d2@19 ~ a2@19 ~@2 g2@17 ~@4 g2@18]/7",
AT: "[~@2 g2@6 ~@3 g2@6 ~@3 g2@6 ~@2 g2@6 ~@2 g2@15 ~@2 d2@15 ~ g2@16 d2@15 ~ d2@8 ~@8 a2@14 ~@2 d2@14 ~ a2@14 ~@2 d2@14 ~ d2@12 ~]/8",
AU: "~ d2@13 d3@3 ~ c3@3 a#2@3",
AV: "[~ a2@3 g2@3 ~@3 d2@5 ~ g2@4 ~@2 d2@5 ~ g2@4 ~@2 d2@4 ~@2 g2@4 ~@2 d2@4 ~@2 d2@4 ~@2 a1@4 ~@2 d2@5 ~ a1@2]/3",
AW: "[~@4 d2@5 ~ a1@5 ~ d2@5 ~ a1@5 ~ d#2@5 ~ a#1@4 ~@2 d#2@5 ~ a#1@5 ~ d2@5 ~ a1@5 ~ d2@5 ~ a1@5 ~ d2@5 ~ a1@4 d2 ~ d2@3 ~@3 a1@5 ~ d2@5 ~ a1@4 d2 ~ d2@5 ~ a1@5 ~ d#2@5 ~ a#1@3 ~ d#2 ~ d#2@5 ~ a#1@2]/6",
AX: "[~ d#2@2 ~ d2@5 ~ a1@5 d2@5 ~ a1@5 ~ d2 ~@2 d2@5 d2@3 ~ d2 ~@2 a1@2 ~ d2@3]/2",
AY: "~@3 d#2@5 ~ c2@4 ~@2 d#2@4 ~@2 c2@3",
AZ: "[~@3 c2@5 ~ g2@5 ~ c2@5 ~ g2@5 ~ d2@5 ~ a2@5 ~ d2@4 ~@2 a2@5 ~ d2@4 ~@2 a2@5 ~ d2@5 ~ a2@3]/3",
BA: "[~@2 d2 c2@5 ~ g2@5 ~ c2@5 ~ g2@5 ~ c2@5 ~ g2@5 ~ c2@5 ~ g2@5 ~ d2@5 ~ a2@5 ~ d2@5 ~ a2@3]/3",
BB: "~@3 g1@7 ~@5 g1@9", BC: "~@3 g2@4 ~@2 g2@4 ~@2 g2@4 ~@2 g2@3",
BD: "[~@3 g2@5 ~ a#2@4 a2 ~ g2@5 ~ a#2@5 ~ g2@5 ~ a#2@4 a2 ~ g2@5 ~ a#2@5 d2@6 a2@5 f#2 d2@5 ~ a2@4]/3",
BE: "~@2 d2@6 a2@5 f#2 d2@5 ~ a2@4", BF: "~@2 a2@5 ~ d3@5 ~ a2@5 ~ d3@4",
BG: "[~@2 d2@4 ~@2 d2@5 ~ d3@2 ~ c3@2 ~ a#2@2 ~ a2@2 ~ g2@4 ~@2 d2@5 ~ g2@5 ~ d2@4]/2",
BH: "~@2 g2@5 ~ d2@5 ~ g2@4 ~@2 d2@4", BI: "~@2 d2@3 ~@2 a1@4 ~@2 d2@5 ~ a1@4 ~", BJ: "~ d2@5 ~ a1@5 d2@5 ~ a1@5 ~",
BK: "[d#2@5 ~ a#1@4 ~@2 d#2@5 a#1@4 ~@2 d2@5 ~ a1@5 ~ d2@4 ~ a1@5 ~ d2@5 ~ a1@4 d2 ~ d2@3 ~@3 a1@5 d2@5 ~ a1@3 ~@2 d2 d2@5 ~ a1@5 ~ d#2@5 a#1@3 ~@2 d#2 d#2@5 ~ a#1@2 ~ d#2@2 ~ d2@4]/5",
BL: "[~ a1@5 ~ d2@5 ~ a1@4 ~@2 d2 ~@2 d2@7 d2!2 ~@2 a1@2 ~ d2@4 ~@2 d#2@5 ~]/2",
BM: "[~ c2@4 d#2@4 ~@2 c2@4 ~ c2@5 ~ g2@5 ~ c2@4 ~@2 g2@5 d2@5 ~ a2@5 ~ d2@4 ~ a2@5 ~ d2@4 ~@2 a2@4]/3",
BN: "~ d2@5 ~ a2@4 d2 ~ c2@5 g2@5 ~",
BO: "[c2@5 ~ g2@5 c2@5 ~ g2@5 ~ c2@5 g2@5 ~ d2@5 ~ a2@5 d2@5 ~ a2@3 ~@3 g1@6 ~@5 g1@8 ~@3 g2@3 ~@3 g2@4 ~@2 g2@4 ~]/4",
BP: "[g2@4 ~@2 g2@4 ~ a#2@4 ~ a2 g2@5 ~ a#2@4 ~ g2@5 ~ a#2@4 a2 g2@5 ~ a#2@5 ~ d2@5 a2@4 f#2 ~ d2@5 a2@5]/3",
BQ: "~ d2@5 ~ a2@4 f#2 d2@5 ~ a2@4 ~@2", BR: "a2@5 d3@5 ~@14", BS: "~@3 d2@5 ~@2 d2@6 ~ d3@2 ~@2 c3@3",
BT: "a#2@2 ~@2 a2@2 ~ g2@5 ~@2 d2@5 ~ g2@4", BU: "~@2 d2@4 ~@2 g2@5 d2@4 ~@2 g2@4 ~",
BV: "[d2@4 ~ g2@4 ~@2 d2@4 ~ g2@4 ~@2 d2@4 ~ g2@4 ~ d2@4 ~@2 g2@4 ~ d2@4 ~]/2", BW: "g2@3 ~@8 d2@3 ~@8 g2@2",
})).s("gm_fretless_bass").gain(0.43)
// chords · acoustic guitar steel · "guitar"
const acoustic_guitar_steel = note(`<
~@2 A B C D E F G H@3 I J K L M@2 N O P Q R S T U V W X Y Z M AA AB@2 AC AD AE AF AG AH AI AJ AK AL@2 AM AN AO AN@3 AO
AN@2 AP AQ AR AS AP AQ AS AT AU AV@2 AN@2 AW AX AL@2 ~ AY AZ BA@2 BB@2 BC@2 BD BC BD BC BE BF BG BH@2 BG BI BJ BK BL
BM@2 BG AJ Y BN BO BP BQ@2 BR BS BT BU BV BW BX AH BY J BZ CA CB CC CD CE CF@2 CD CG CH CI CJ CK CL CM CJ CN CO CP CQ
CR CS CT CU CV@2 CW CX CY CZ DA DB DC DD DE DF DG DH DI DJ DK DL DM DN DO DP DQ CY DR ~@4 DS DT DU DV DW DX ~
>`.pickRestart({
A: "~@11 [a3,d4,f#4]@4 ~@9", B: "~@11 [a3,d4,f#4]@3 ~@10", C: "~@11 [a3,c4,f#4]@3 ~@10", D: "~@10 [a3,c4,f#4]@3 ~@11",
E: "~@10 [g3,a#3,d#4]@3 ~@11", F: "~@5 [g3,a#3,d#4] ~@6", G: "~@5 [a3,c4,f#4] ~@6", H: "~@9 [a3,c4,f#4]@2 ~@13",
I: "~@8 [a3,c4,f#4]@3 ~@13", J: "~@4 [a3,c4,f#4] ~@7", K: "~@8 [g3,a#3,d#4]@3 ~@13", L: "~@7 [g3,a#3,d#4]@3 ~@14",
M: "~@7 [a3,c4,f#4]@2 ~@15", N: "~@7 [a3,c4,f#4]@3 ~@14", O: "~@3 [a3,c4,f#4] ~@8", P: "~@3 [g3,a#3,d4] ~@8",
Q: "~@3 [g3,c4,d#4] ~@8", R: "~@5 [g3,c4]@3 ~@16", S: "~@2 [g3,c4,d#4] ~@9", T: "~ [a3,c4,f#4] ~@10",
U: "[a3,c4,f#4] ~@10 [a3,c4,f#4]", V: "~@19 [a3,c4,f#4]@2 ~@3", W: "~@17 [g3,c4,d#4]@2 ~@5", X: "~@7 [g3,c4,d#4] ~@4",
Y: "~@6 [g3,c4,d#4] ~@5", Z: "~@9 [g3,c4,d#4]@2 ~@13", AA: "~@2 [a3,c4,f#4] ~@9",
AB: "[~@2 [g3,a#3,d4,g4]@4 ~@17 [a#3,d4,g4]@4 ~@17 [d4,g4]@4, ~@22 a#3 ~]/2", // Gm G5
AC: "~@6 [a#3,d4,g4]@4 ~@6 [a#3,d4,g4]@3 ~@5", AD: "~@5 [a#3,d4,g4]@2 ~@5",
AE: "~@2 [a#3,d4,g4]@2 ~@15 [a#3,d4,g4]@2 ~@3", AF: "~@11 [a#3,d4,g4]@2 ~@11",
AG: "~@4 [c4,d4,f#4]@3 ~@13 [a3,c4,f#4]@2 ~@2", AH: "~@6 [a3,c4,f#4] ~@5",
AI: "~@5 [a3,c4,f#4]@2 ~@14 [a3,c4,f#4]@2 ~", AJ: "~@13 [a3,c4,f#4]@2 ~@9", AK: "~@3 [a3,c4,f#4]@2 ~@19",
AL: "~@3 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@2", // Gm
AM: "~@3 [a3,c4,d4] ~@5 [a3,c4,d4] ~@5 [a3,c4,d4] ~@5 [a3,c4,d4] ~@2", // D7
AN: "~@3 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2", // F#dim
AO: "~@3 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@2", // D#
AP: "~@3 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2 [g3,c4,d#4]@4 ~@2", // Cm
AQ: "~@3 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2", // Cm
AR: "~@3 [a3,c4,d4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3 ~@3", // D7 F#dim
AS: "~@3 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2 [a3,c4,f#4]@4 ~@2", // F#dim
AT: "~@3 [g3,a#3,d4,g4]@2 ~@4 [g3,a#3,d4,g4]@2 ~", AU: "~@2 [g3,a#3,d4,g4] ~ [g3,a#3,d4,g4] ~ [g3,a#3,d4,g4] ~",
AV: "~@3 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@2", // Gm
AW: "~@6 [a3,c4,f#4]@5 ~@7 [a3,c4,f#4]@5 ~", AX: "~@6 [a3,c4,f#4]@4 ~@2 d4@2 ~ c4@3 a#3@2 ~ a3@2 ~",
AY: "~@13 [a3,d4,f#4]@4 ~@7", AZ: "~@13 [a3,d4,f#4]@3 ~@8", BA: "~@13 [a3,c4,f#4]@3 ~@8",
BB: "~@13 [g3,a#3,d#4]@3 ~@8", BC: "~@7 [a3,c4,f#4] ~@4", BD: "~@14 [a3,c4,f#4]@3 ~@7", BE: "~@14 [g3,a#3,d#4]@3 ~@7",
BF: "~@5 [g3,a#3,d#4] ~@2", BG: "~@15 [a3,c4,f#4]@2 ~@7", BH: "~@5 [a3,c4,f#4] ~@2", BI: "~@5 [g3,a#3,d4] ~@2",
BJ: "~@15 [g3,c4,d#4]@2 ~@7", BK: "~@16 [g3,c4]@3 ~@5", BL: "~@8 [g3,c4,d#4] ~@3", BM: "~@8 [a3,c4,f#4] ~@3",
BN: "~@5 [g3,c4,d#4] ~@6", BO: "~@4 [g3,c4,d#4] ~@7", BP: "~@5 [g3,c4,d#4]@2 ~@17",
BQ: "[~@2 [a3,c4,f#4]@2 ~@19 [a3,c4,f#4]@2 ~@19 [g3,a#3,d4,g4]@4]/2", BR: "~@4 [a#3,d4,g4] ~",
BS: "~@11 [a#3,d4,g4]@3 ~@6 [a#3,d4,g4]@3 ~", BT: "~@4 [a#3,d4,g4]@3 ~@14 [a#3,d4,g4]@3",
BU: "~@13 [a#3,d4,g4]@2 ~@9", BV: "~@5 [a#3,d4,g4]@2 ~@14 [a#3,d4,g4]@2 ~", BW: "~@13 [c4,d4,f#4]@3 ~@8",
BX: "~@5 [a3,c4,f#4]@2 ~@13 [a3,c4,f#4]@2 ~@2", BY: "~@3 [a3,c4,f#4]@2 ~@13 [a3,c4,f#4]@2 ~@4",
BZ: "~@7 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@4", // Gm
CA: "~ [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@4", // Gm
CB: "~ [g3,a#3,d4] ~@5 [a3,c4,d4] ~@5 [a3,c4,d4] ~@5 [a3,c4,d4] ~@4", // Gm D7
CC: "~ [a3,c4,d4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4", // D7 F#dim
CD: "~ [a3,c4,f#4] ~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@4", // F#dim D#
CE: "~ [g3,a#3,d#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4", // D# F#dim
CF: "~ [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4", // F#dim
CG: "~ [g3,a#3,d#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~@5", // D# F#dim
CH: "[a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5", // F#dim
CI: "[a3,c4,f#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2 [g3,c4,d#4]@3", // F#dim Cm
CJ: "~@6 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5", // Cm
CK: "[g3,c4,d#4] ~@5 [a3,c4,d4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3", // Cm D7 F#dim
CL: "~@6 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3", // F#dim
CM: "~@6 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2 [g3,c4,d#4]@3", // Cm
CN: "[g3,c4,d#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3", // Cm F#dim
CO: "~@9 [g3,a#3,d4,g4]@4 ~@8 [g3,a#3,d4,g4]@3", CP: "~@3 [g3,a#3,d4,g4] ~ [g3,a#3,d4,g4] ~ [g3,a#3,d4,g4]",
CQ: "~@6 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5", // Gm
CR: "[g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5", // Gm
CS: "[g3,a#3,d4,g4] ~@4 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4]", // Gm F#dim
CT: "~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4]", CU: "~@8 [a3,c4,f#4]@5 ~@7 [a3,c4,f#4]@4",
CV: "[~@8 [a3,c4,f#4]@4 ~@2 d4@2 ~ c4@3 a#3@2 ~ a3@2 ~@4 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4]]/2", // F#dim Gm
CW: "~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@5 [g3,a#3,d4]", // Gm
CX: "~@5 [a3,c4,d4] ~@4 [a3,c4,d4] ~@5 [a3,c4,d4] ~@5 [a3,c4,d4] ~", // D7
CY: "~@4 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@2", // F#dim
CZ: "~@3 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@4 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@3", // D#
DA: "~@2 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~@4", // F#dim
DB: "~ [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~@5", // F#dim
DC: "[a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4 [g3,a#3,d#4]", // F#dim D#
DD: "~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@5 [g3,a#3,d#4] ~@5 [a3,c4,f#4]", // D# F#dim
DE: "~@4 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~", // F#dim
DF: "~@4 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [g3,c4,d#4] ~@2", // F#dim Cm
DG: "~@2 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2 [g3,c4,d#4]@4 ~@4 [g3,c4,d#4] ~@4", // Cm
DH: "~ [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@4 [g3,c4,d#4] ~@5 [a3,c4,d4,f#4] ~@5", // Cm D7
DI: "[a3,c4,f#4] ~@4 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3 ~@6 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~", // F#dim
DJ: "~@4 [a3,c4,f#4] ~@2 [a3,c4,f#4]@3 ~@5 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@2", // F#dim Cm
DK: "~@3 [g3,c4,d#4] ~@2 [g3,c4,d#4]@4 ~@4 [g3,c4,d#4] ~@5 [g3,c4,d#4] ~@3", // Cm
DL: "~@2 [g3,c4,d#4] ~@4 [g3,c4,d#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4", // Cm F#dim
DM: "[a3,c4,f#4] ~@2 [a3,c4,f#4]@4 ~@7 [g3,a#3,d4,g4]@4 ~@6", // F#dim Gm
DN: "~@2 [g3,a#3,d4,g4]@3 ~@8 [g3,a#3,d4,g4]@3 ~@3 [g3,a#3,d4,g4]@3 ~@2", // Gm
DO: "[g3,a#3,d4,g4]@3 ~@6 [g3,a#3,d4,g4] ~@4 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@3", // Gm
DP: "~ [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@5 [g3,a#3,d4,g4] ~@4 [g3,a#3,d4,g4] ~@5", // Gm
DQ: "[g3,a#3,d4,g4] ~@4 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@5 [a3,c4,f#4] ~@4 [a3,c4,f#4] ~", DR: "~@5 [a3,c4,f#4]@5 ~@14",
DS: "~@10 [a3,c4,f#4]@4 ~@3 d4@3 ~ c4@3", DT: "a#3@3 ~ a3@2 ~@4 [g3,a#3,d4] ~@6 [g3,a#3,d4] ~@5 [g3,a#3,d4]",
DU: "~@5 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@2", // Gm
DV: "~@3 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@4", // Gm
DW: "[g3,a#3,d4] ~@5 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@4 [g3,a#3,d4] ~@5 [g3,a#3,d4] ~", // Gm
DX: "~@11 [d2,a3,c4,f#4]@4 ~@7 [g2,a#3,d4,g4]@2", // D7 Gm
})).s("gm_acoustic_guitar_steel").gain(0.38).pan(0.2)
// other · brass section · "brass"
const brass_section = note(`<
~@2 A@3 B@8 C@2 D@3 E F G H@3 I@2 J@2 K L M@6 N O P@2 Q R@2 S T@2 ~@27 U@2 V@2 W@2 X Y Z@2 AA@2 AB@2 AC AD AE AF@3 AG
AH AI AJ AK@2 AL@3 AM@3 AN AO AP@2 AQ AR AS AT@2 AU AV@2 ~@59
>`.pickRestart({
A: "[a3@8 ~@3 a3@16 ~@2 d4@5 ~ c4@5 ~ a3@5 ~ d4@9 ~@3 d4@13]/3",
B: "[~@5 d4@5 d#4@4 ~@2 d4@3 ~@3 d#4@9 ~@3 d#4@17 ~ g4@6 f#4@4 ~@2 d#4@5 ~ d4@11 ~ c4@3 d4@2 ~ c4@2 ~@3 c4@16 ~@8 a3@8 ~@4 a3@17 ~ d4@5 ~ c4@5 ~ a3@4 ~@2 d4@9 ~@2 d4@16]/8",
C: "[~@2 f#4@5 ~ d#4@4 ~@2 d4@4 ~@2 d#4@9 ~@3 d#4@16]/2",
D: "[~@2 g4@5 f#4@5 ~ d#4@4 ~@2 d4@12 c4@3 d4@2 ~ c4@3 ~@3 a3@20 ~@4 d4@2 ~@3]/3", E: "~ d4@8 ~@4 c4@3 ~@2 a3@3 ~@3",
F: "a3@2 ~@4 a3@11 ~ c4@2 ~@4", G: "c4@8 ~@7 c4 ~@2 g3@3 ~@3, ~@2 a#3 ~",
H: "[g3 ~@5 g3@7 ~@5 g3@10 ~ a#3@7 ~@2 a3@2 ~ g3@2 ~@4 g3@3 ~@2 d4@8 ~@3 d4@9]/3",
I: "[~@2 c4@2 ~ d4@2 ~ c4@2 a3@3 d4@17 a3@2 c4@2 ~ d4@2 ~@4 d4@7]/2",
J: "[~ c4@2 c4@2 ~ c4@2 ~ a3@2 ~@3 a3@2 ~@3 a3@8 ~@3 c4@2 ~@4 c4@8 a#3@2 c4@2]/2",
K: "~ a#3@2 ~ g3@2 ~@3 g3@2 ~@3 g3@7 ~@3", L: "~ g3@8 ~@3 g3@6 ~@2 g3@2 g3@2",
M: "[~@4 g3@3 ~@2 d#4@8 ~@3 d4@8 c4@3 d4@2 c4@2 ~ a3@3 ~@2 a3@14 ~@8 d4@15 ~@6 d4@15 ~@7 d4@6 ~@4 d4@6 ~@4 d4@5 ~@5 d4@3 ~@4 d4]/6",
N: "~ d4@2 ~@2 d4@2 ~@3 g4@6 f#4@2 d4@2 ~@2 g4@2", O: "~@2 f#4@3 ~@2 d4@2 ~@2 d4@2 ~@2 d4@3 ~ g4@5",
P: "[~ f#4 ~ d4@2 ~@2 g4@3 ~ f#4@3 ~ d4@3 ~ d4@3 ~ d4@3 ~@2 f#4@5 ~ d#4 ~ d4@3 ~ f#4@3 ~ d#4@3 ~]/2",
Q: "d4@2 ~@2 d4@2 ~@2 d4@2 ~@2 f#4@4 ~@2 d#4 ~ d4@3 ~",
R: "[~ f#4@3 ~ d#4@3 ~ d4@2 ~@2 d4@2 ~@2 d4@2 ~@2 f#4@6 ~@2 d4@2 ~@2 d4@2 ~@2 f#4@5 ~@2 a3@4]/2",
S: "~@3 a3@7 a4@2 ~@2 a4@2 ~ f#4@2 ~ f#4@2 ~@2", T: "[d4@11 ~]/2", U: "[~ a3@8 ~@4 a3@17 ~ d4@5 ~ c4@5 ~ a3@5]/2",
V: "[~ d4@9 ~@3 d4@15 ~@3 d4@5 ~ d#4@4 ~@2 d4@3 ~@2]/2", W: "[~ d#4@10 ~@2 d#4@18 g4@6 f#4@4 ~@2 d#4@5]/2",
X: "~@2 d4@11 ~ c4@3 d4@2 ~ c4@2 ~@2", Y: "~@2 c4@17 ~@5", Z: "[~@2 a3@8 ~@4 a3@17 ~ d4@5 ~ c4@5 ~ a3@4]/2",
AA: "[~@2 d4@9 ~@3 d4@16 ~@2 f#4@6 d#4@4 ~@2 d4@4]/2", AB: "[~@2 d#4@9 ~@3 d#4@17 ~@2 g4@5 ~ f#4@5 ~ d#4@3]/2",
AC: "~@3 d4@12 c4@3 d4@2 ~ c4@3", AD: "~@3 a3@20 ~", AE: "~@3 d4@2 ~@4 d4@9 ~@3 c4@3",
AF: "[~@3 a3@3 ~@3 a3@2 ~@4 a3@11 ~ c4@2 ~@4 c4@9 ~@6 c4 ~@2 g3@3 ~@3 g3 ~@5 g3@7 ~@2, ~@15 a#3@2 ~@7]/3",
AG: "~@2 g3@5 ~ a#3@4", AH: "~ a3@2 ~ g3@3 ~@3 g3@3 ~@3 d4@8", AI: "~@4 d4@11 ~ c4@2 ~ d4@3 c4@2",
AJ: "~ a3@3 d4@18 a3@2", AK: "[~ c4@2 d4@2 ~@4 d4@9 c4@2 c4@2 ~ c4@2 ~ a3@2 ~@4 a3@2 ~@3 a3@9 ~@2]/2",
AL: "[~ c4@2 ~@3 c4@8 ~ a#3@2 ~ c4@2 a#3@2 ~ g3@2 ~@4 g3@2 ~@3 g3@7 ~@4 g3@8 ~@3 g3@6 ~@2 g3@2 g3@2 ~@4]/3",
AM: "[g3@3 ~@2 d#4@8 ~@10 c4@3 d4@2 ~ c4@2 a3@3 ~@2 a3@14 ~@7 d4@15, ~@16 d4@9 ~@47]/3", AN: "~@3 d4@7 ~@2",
AO: "~@2 d4@6 ~@3 d4@5 ~@4 d4@4",
AP: "[~@4 d4@3 ~@3 d4 ~ d4@2 ~@3 d4@2 ~@2 g4@5 ~ f#4@2 d4@2 ~@2 g4@3 ~ f#4@3 ~ d4@2 ~@2 d4@2 ~]/2",
AQ: "~ d4@3 ~ g4@5 ~ f#4 ~ d4@2 ~@2 g4@3 ~ f#4@3", AR: "~ d4@3 ~ d4@3 ~ d4@3 ~ f#4@5 ~ d#4 ~ d4@3",
AS: "~ f#4@3 ~ d#4@2 ~@2 d4@2 ~@2 d4@2 ~@2 d4@2 ~ f#4@4",
AT: "[~@2 d#4 ~ d4@2 ~@2 f#4@3 ~ d#4@2 ~@2 d4@2 ~@2 d4 ~@2 d4@2 ~@2 f#4@6 ~@2 d4@2 ~@2 d4@2 ~ f#4@5 ~]/2",
AU: "~ a3@5 ~@2 a3@6 a4@2 ~@2 a4@2 ~ f#4@2 ~", AV: "[~ f#4@2 ~ d4@44]/2",
})).s("gm_brass_section").gain(0.64).pan(0.9)
// drums · kick
const kick = s("bd").struct(`<
~@2 A B@2 C@3 D@4 E@3 F@3 G@4 H I J K L M N O E H I P Q M R K S P T J U Q V@10 W@2 V@2 W@2 V@12 X@7 Y@7 Z@7 N@4 Z Y AA
D G AB P L M AC P AD J AD J T K AE AF@9 AG AH@2 AI@2 AH@2 AI@6 AJ@6 AK AL AM AN AO AI AJ AP AQ AR AG AS AT AU AO AV AK
AU AG AW AL AX B ~@2 AB AY AZ BA BB AW BC ~
>`.pickRestart({
A: "x ~@22 x", B: "~@23 x", C: "~@11 x", D: "~@7 x", E: "~@5 x", F: "~@19 x ~@4", G: "~@3 x", H: "~@17 x ~@6",
I: "~@5 x ~@2", J: "~@13 x ~@10", K: "~@11 x ~@12", L: "~@3 x ~@4", M: "~ x ~@2", N: "~ x ~@4", O: "~ x ~@20 x ~",
P: "~ x", Q: "~@5 x ~@6", R: "~ x ~@16 x ~@5", S: "~@3 x ~@15 x ~@4", T: "~ x ~@3 x", U: "~@5 x ~@14 x ~@3", V: "x!4",
W: "x ~@6 x ~@4 x ~@5 x ~@5", X: "~ x ~@22", Y: "~ x ~@10", Z: "~ x ~@6", AA: "~ x ~@21 x", AB: "~@2 x",
AC: "~ x ~@8 x ~", AD: "~@5 x ~@15 x ~@2", AE: "~ x ~@12 x ~@9", AF: "~@2 x ~@2 x ~@2 x ~@2 x",
AG: "~@4 x ~@5 x ~@4 x ~@5 x ~@2", AH: "~@3 x ~@7 x ~@3 x ~@5 x ~@2", AI: "~ x ~ x ~ x ~ x",
AJ: "~ x ~@2 x ~@2 x ~@2 x ~", AK: "~@2 x ~@4 x ~@5 x ~@5 x ~@4", AL: "~ x ~@5 x ~@4 x ~@5 x ~@5",
AM: "x ~@5 x ~@5 x ~@4 x ~@5 x", AN: "~@5 x ~@5 x ~@4 x ~@5 x ~", AO: "~@4 x ~@5 x ~@5 x ~@4 x ~@2",
AP: "~ x ~@5 x ~@5 x ~@5 x ~@2 x ~", AQ: "~@2 x ~@3 x ~@2 x ~@2 x ~@5 x ~@5",
// … 133 more lines
More by
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.