0:00/0:00
// Uncle Albert Admiral Halsey — McCartney
// 74 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: sustain pedal (CC 64) lengthens the held notes
// note: Full arrangement: all 109 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(74/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 1"
const piano = note(`<
~@42 A B@2 C D E F G H I J K L M B@2 C D E F G H I J K L N O P Q R@7 S T U V W X Y Z AA AB AC AD AE AF AG ~@15
>`.pickRestart({
A: "[d4,g4,a#4]@3 ~ [d4,g4,a#4]@2 ~@2 [d1,d4,g4,a#4]@2 ~@2 [d4,g4,a#4]@2 ~@2 [g1,g2,d4,g4,a#4]@3 ~ [d4,g4,a#4] ~@3 [d1,d2,d4,g4,a#4]@3 ~ [d4,a#4]@2 ~@2, [g1,g2]@4 ~@4 d2@4 ~@16 g4 ~@3", // Gm G
B: "[a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [c4,e4,g4] ~ [e4,g4] ~ [c4,e4,g4] ~ [c4,e4,g4] ~, ~@20 c4 ~@11", // Am C Em C
C: "[c4,e4]@2 ~@2 [a3,c4] ~@3 [a3,c4,e4]@2 ~@2 [a3,c4,e4] ~@3 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@3 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@3, a3 ~@3 e4@2 ~@26", // C Am C
D: "[g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3,e4]@2 ~@2 [g3,b3,e4] ~@3, e4 ~ e4 ~ e4 ~ e4 ~ e4 ~ e4 ~@5", // G Em
E: "[g3,e4]@2 ~@2 [g3,b3,e4] ~@3 [b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3, b3 ~@7 g3@2 ~@22", // C Em E5 Em
F: "[c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4]@2 ~@2 [c4,e4,g4]@3 ~ [c4,e4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~, ~@16 g4 ~@15", // C
G: "[a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [a3,d4,f4]@3 ~ [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~", // Dm
H: "[b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [d4,g4]@3 ~, ~@28 b3 ~@3", // G G5
I: "[a3,c4,f4]@3 ~ [a3,c4,f4]@3 ~ [g#3,c4,d#4]@3 ~ [g#3,c4,d#4]@3 ~ [a#3,d4,f4]@3 ~ [a#3,d4,f4]@3 ~ [c4,e4,g4]@2 ~@2 [c4,e4,g4]@3 ~", // F G# A# C
J: "[c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [e4,g4]@3 ~ e4@3 ~ [c4,e4,g4]@3 ~, ~@20 c4@4 g4 ~@7", // C Em C
K: "[a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@2 ~@2 [d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~, ~@16 a3 ~@15", // Dm
L: "[b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,d4,g4]@3 ~ [d4,g4]@2 ~@2 [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,g4]@4, ~@16 b3 ~@11 d4@2 ~@2", // G G5 G Em
M: "[c4,e4,g4]@3 ~@29", N: "[g3,c4,e4]!2 [c4,e4]!2 [g3,c4,e4] g3!2 [g3,c4,e4], ~@2 g3@2 ~ [c4,e4]@2 ~",
O: "[g3,c4,e4]@4 [g3,e4]@4 [g3,e4]@3 ~ [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,e4]@4 [g3,e4]@4 [g3,c4,e4]@2 ~@2, ~@4 c4@7 ~@9 c4@8 ~@4", // C
P: "[g3,c4,e4]!5 g3!2 [g3,c4,e4], ~@5 [c4,e4]@2 ~", // C
Q: "[g3,c4,e4] g3!2 [g3,c4,e4]!2 [g3,e4]!2 [g3,c4,e4], ~ [c4,e4]@2 ~@2 c4@2 ~", // C
R: "[[g3,c4,e4]@4 [g3,e4]@4 [g3,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@3 ~ [g3,b3,d4]@4 g3@4 g3@4 [g3,b3,d4]@4 [g3,b3,d4]@4 g3@4 g3@4 [g3,b3,d4]@3 ~ [g3,c4,e4]@4 g3@4 g3@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@4 g3@4 g3@4 [g3,c4,e4]@4 [g3,c4,e4]@4 g3@4 g3@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@8 [g3,c4,e4]@4 [g3,c4,e4]@4 g3@4 g3@4 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@8 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@8 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@8 [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@3 ~ [g3,b3,d4]@4 g3@4 g3@4 [g3,b3,d4]@4, ~ c4@2 ~@4 [b3,d4]@2 ~@2 [b3,d4]@2 ~@2 [c4,e4]@2 ~@6 [c4,e4]@2 ~@2 [c4,e4]@2 ~@6 [c4,e4]@2 ~@16 [b3,d4]@2 ~]/7", // C G C G Bm C Bm
S: "[g3,b3,d4]@4 [g3,b3,d4]@8 [g3,b3,d4]@3 ~ [g3,c4,e4]@4 g3@4 g3@4 [g3,c4,e4]@4, ~@5 [c4,e4]@2 ~", // G C
T: "[g3,c4,e4]@4 [g3,c4,e4]@8 [g3,c4,e4]@4 [g3,e4] ~@15, ~@8 c4 ~@7", // C
U: "~@8 [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4] ~ [a3,c4,e4] ~", // Am
V: "[c4,e4,g4]@2 ~@2 [e4,g4]@2 ~@2 [c4,e4,g4]@2 ~@2 [c4,e4,g4]@2 ~@2 [a3,c4,e4]@2 ~@2 [a3,c4,e4]@2 ~@2 [a3,c4,e4]@2 ~@2 [a3,c4] ~@3, ~@4 c4 ~@23 e4@2 ~@2", // C Em C Am
W: "[e4,g4]@2 ~@2 [e4,g4]@2 ~@2 [c4,g4]@2 ~@2 [e4,g4] ~@3 [c4,e4]@2 ~@2 [a3,c4] ~@3 [a3,c4,e4]@2 ~@2 [a3,c4,e4] ~@3, c4 ~@3 c4 ~@3 e4 ~@3 c4@2 ~@2 a3 ~@3 e4@2 ~@10", // Em C5 Em C Am
X: "[c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@3 [c4,e4,g4]@2 ~@2 [c4,e4,g4] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3 [g3,b3] ~@3, ~@8 e4 ~ e4 ~ e4 ~ e4 ~", // C G
Y: "[g3,b3] ~@3 [g3,b3] ~@3 [g3,b3,e4]@2 ~@2 [g3,b3,e4] ~@3 [g3,e4]@2 ~@2 [g3,b3,e4] ~@3 [b3,e4] ~@3 [g3,b3,e4] ~@3, e4@2 ~@2 e4@2 ~@10 b3 ~@7 g3@2 ~@6", // G Em C Em E5 Em
Z: "[g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [g3,b3,e4] ~@3 [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4]@2 ~@2 [c4,e4,g4]@3 ~", // Em C
AA: "[c4,e4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~, g4 ~@31", // C Dm
AB: "[a3,d4,f4]@3 ~ [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,d4,g4]@3 ~", // Dm G
AC: "[b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [d4,g4]@3 ~ [a3,c4,f4]@3 ~ [a3,c4,f4]@3 ~ [g#3,c4,d#4]@3 ~ [g#3,c4,d#4]@3 ~, ~@12 b3 ~@19", // G G5 F G#
AD: "[a#3,d4,f4]@3 ~ [a#3,d4,f4]@3 ~ [c4,e4,g4]@2 ~@2 [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~ [c4,e4,g4]@3 ~", // A# C
AE: "[c4,e4,g4]@3 ~ [e4,g4]@3 ~ e4@3 ~ [c4,e4,g4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@2 ~@2, ~@4 c4@4 g4 ~@23", // C Em C Dm
AF: "[d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [a3,d4,f4]@2 ~@2 [a3,d4,f4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,d4,g4]@3 ~, a3 ~@31", // Dm G
AG: "[d4,g4]@2 ~@2 [b3,d4,g4]@3 ~ [b3,d4,g4]@2 ~@2 [b3,g4]@4 [e4,g4]@3 ~@13, b3 ~@11 d4@2 ~@18", // G5 G Em
})).s("gm_piano").gain(0.38)
// bass · fretless bass · "FRETLESS"
const bass = note(`<
~ A@7 B@5 C D@2 E D F G H I J K L M N O P Q R Q P S T U V W X H Y Z AA AB@2 AC AD@2 AE AF AG AH AI AF AJ AK AB@2 AC
AD@2 AE AF AG AH AI AF AJ AL AM@2 AN AO AP AQ AR AQ AS AT AU AV AW AX@2 AY AZ BA BB BC BD BE BF BG BH BI BJ BK BL BM
BN BL BO BP BL BP BL BQ BR@2
>`.pickRestart({
A: "[d2@11 d2@2 ~@2 d2@12 d2@2 ~@2 d2@12 d2@4 d2@16 d2@12 d2@2 ~@2 d2@16 d2@12 d2@2 ~@2 d2@16 d2@12 d2@2 ~@2 d2@16 d2@12 d2@2 ~@2 d2@12 ~@4 g2@12 g2@4 ~ c2@7 c#2@8 ~]/7",
B: "[d2@11 d2@2 ~@2 d2@2 ~@2 d2@12 g2@9 ~@3 g2@2 ~@2 c2@16 g2@10 ~@2 g2@2 ~@2 c2@16 g2@8 ~@4 g2@2 ~@2 c2@16 g2@8 ~@4 g2@2 ~@2 c2@8 c#2@8 ~]/5",
C: "d2 ~", D: "d2@4 d2@7 ~ d2@4 d2@12 ~@4", E: "d2@3 ~ d2@7 ~ d2@3 ~ d2@6 ~@2 d2@5 ~@3",
F: "d2@3 ~ d2@4 ~@4 d2@3 ~ d2@8 a1@8", G: "d2@2 d2 ~@3 d2@2 d2@2 e2@2 f#2@2 a2@2", H: "g2@5 ~ g2@2 c2@4 c#2@4",
I: "d2@7 ~ d2@7 ~ d2@7 ~@9", J: "g2@9 ~@6 d2 c2@12 ~@3 g2", K: "g2@2 ~@2 g2@10 ~ d2 c2@12 ~@3 g2",
L: "g2@10 ~@2 d2@4 c2@12 g2 ~@3", M: "g2 c#2 c2 c#2", N: "d2@4 d2@7 ~ d2@7 ~ d2@6 ~@2 d2@4",
O: "c2@8 d2 ~@3 d2@17 ~@3", P: "d2@4 ~@3 d2 d2@5 ~@3 d2@4 ~@3 d2 d2@6 ~@2",
Q: "d2@5 ~@2 d2 d2@4 ~@3 d2 d2@4 ~@3 d2 d2@5 ~@3", R: "d2@5 ~@2 d2 d2@5 ~@3 d2@4 ~@3 d2 d2@5 ~@3",
S: "d2@4 ~@3 d2 d2@2 ~@2 d2!2 ~ d2 d2@3 ~ d2@3 ~ e2@2 ~@2 f#2@2 ~@2", T: "g2@2 c2 c#2",
U: "d2@2 ~@2 d2@5 ~@3 d2@2 ~@2 d2 ~ d2 ~ d2 ~ d2 ~ d2@2 ~@2 g2@2 ~@2", V: "g2 c2", W: "g2@16 c2@8 g2@2 a2 ~ c3@4",
X: "g2@9 ~@3 g2@4 c2@8 g2 ~ a2@2 c3@4", Y: "d2@6 ~ d2", Z: "c2@23 ~@5 c2@4", AA: "g1@3 ~@29",
AB: "a1@3 ~@5 e1@4 g1@4 c2@3 ~@5 g1@4 ~@4", AC: "a1@3 ~@5 e1@4 g1@4 c2@3 ~@5 g1@4 b1@4",
AD: "e2@4 ~@4 b1@3 ~@5 e2@3 ~@5 b1@3 ~@5", AE: "c2@4 ~@4 g1@5 ~@3 c2@3 ~@5 a1@4 ~@2 a1@2",
AF: "d2@4 ~@4 a1@3 ~@3 a1 ~ d2@4 c2@4 b1@4 a1@4", AG: "g1@5 ~@3 d1@3 ~@5 g1@3 ~@5 d1@5 ~@3",
AH: "f1@6 g#1 ~ g#1@6 a#1 ~ a#1@6 c2 ~ c2@5 ~@3", AI: "c2@4 ~@4 g1@4 ~@4 c2@3 ~@5 a1@4 ~@2 a1 ~",
AJ: "g1@4 ~@4 d2@3 ~@5 g1@4 ~@2 g1 ~ d2@8", AK: "c2@5 ~@27", AL: "c2@5 ~@3 g1@6 ~@2 c2@6 ~@2 g1@4 ~@4",
AM: "c2@3 ~ g1@2 ~@2 c2@2 ~@2 g1@2 ~@2", AN: "c2 ~ g1 ~ c2 ~ g1 ~", AO: "c2@2 ~@2 g1@2 ~@2 c2@2 ~@2 g1@3 ~",
AP: "d2 ~ g1 ~ d2 ~ c2 ~", AQ: "g1 ~ c2 ~ g1 ~ c2 ~", AR: "g1@2 ~@2 c2 ~@3 g1@2 ~@2 c2@2 ~@2",
AS: "g1@2 ~@2 c2@3 ~ g1@2 ~@2 c2@2 ~@2", AT: "g1 ~ c2 ~ g1 ~ d2 ~", AU: "g1@2 ~@2 d2@2 ~@2 c2@3 ~ g1@2 ~@2",
AV: "c2 ~ g1 ~ c2 ~@3", AW: "~@16 a1@3 ~@5 e1@4 g1@4", AX: "c2@3 ~@5 g1@4 ~@4 a1@4 ~@4 e1@4 g1@4",
AY: "c2@3 ~@5 g1@4 b1@4 e2@4 ~@4 b1@3 ~@5", AZ: "e2@3 ~@5 b1@3 ~@5 e2@3 ~@5 b1@4 ~@4",
BA: "e2@2 ~@6 b1@3 ~@5 c2@4 ~@4 g1@5 ~@3", BB: "c2@3 ~@5 a1@4 ~@2 a1@2 d2@4 ~@4 a1@3 ~@3 a1 ~",
BC: "d2@4 c2@4 b1@4 a1@4 g1@5 ~@3 d1@3 ~@5", BD: "g1@3 ~@5 d1@5 ~@3 f1@6 g#1 ~ g#1@6 a#1 ~",
BE: "a#1@6 c2 ~ c2@5 ~@3 c2@4 ~@4 g1@4 ~@4", BF: "c2@3 ~@5 a1@4 ~@2 a1 ~ d2@3 ~@5 a1@3 ~@3 a1 ~",
BG: "d2@3 ~ c2@4 b1@3 ~ a1@4 g1@4 ~@4 d2@3 ~@5", BH: "g1@4 ~@2 g1 ~ d2@8 c2@7 ~ g1@6 ~@2",
BI: "c2@6 ~@2 g1@6 ~@2 c2@7 ~ g1@5 ~@3", BJ: "c2@5 ~@3 g1@7 ~ c2@7 ~ e1@7 ~", BK: "g1@8 a1@8 c2@3 ~ c2@4 e1@8",
BL: "g1@8 a1@8 c2@7 ~ e1@8", BM: "g1@8 a1@8 c2@8 e1@3 ~ e1@4", BN: "g1@3 ~ g1@4 a1@3 ~ a1@4 c2@8 e1@8",
BO: "g1@3 ~ g1@4 a1@8 c2@8 e1@6 ~@2", BP: "g1@6 ~@2 a1@5 ~@3 c2@8 e1@8", BQ: "g1@8 a1@7 ~ c2@8 e1@8",
BR: "[g1@8 a1@4 ~@4 c2@31 ~@17]/2",
})).s("gm_fretless_bass").gain(0.33)
// chords · acoustic guitar steel · "STEEL GTR"
const acoustic_guitar_steel = note(`<
A@2 B C@3 D E F@3 G H I ~@2 J@4 K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG ~@5 AH AI AJ AK@2 AL AJ AM ~@5 AH
AI AJ AK@2 AL AJ AN@8 AO@3 AP@2 AQ ~@4 AR@4 AS@8 AT@5 AU@6
>`.pickRestart({
A: "[~@43 c4@4 ~@4 [e4,a4]@4 ~@5 c4@4, ~@31 c4@5 c4@7 ~@5 c4@12 ~@4, ~@32 [e4,a4]@8 [e4,a4]@11 ~@5 [e4,a4]@8]/2", // A5
B: "~@4 [a3,f#4]@4 a3@4 ~@3 d4@4 ~ e4@4 a3@3 a3@5, d4@15 ~@17, ~@8 f#4@11 ~@5 f#4@8, ~@12 a3@7 g3@4 ~@9", // D
C: "[~@3 [e4,a4]@4 ~ [e4,a4]@7 ~@4 [e4,a4]@4 [e4,a4]@8 ~@4 [d4,f#4]@4 [d4,f#4]@8 ~@4 [d4,f#4]@4 [d4,f#4]@8 ~@4 [e4,a4]@4 ~ [e4,a4]@3 ~ a3@3 ~@4 [e4,a4]@4 ~ a4@8, c4@15 c4@16 a3@16 ~ a3@15 c4@12 c4@4 [a3,c4]@17, ~@29 e4@3]/3", // A5 D A5 Am
D: "d4@7 b3@6 ~@2 d4@6 ~@2 b3@4 ~ a3@4", E: "a#3@15 c4@8 ~ c#4@8",
F: "[~@8 a4@8 ~@4 e4@4 f#4@7 ~@13 [d4,f4]@4 ~@12 [c4,e4]@3 ~@13 [d4,f4]@4 ~@12 [c4,e4]@4, d4@15 ~ d4@16 ~@3 [d4,f4]@8 ~@9 [c4,e4]@8 ~@3 a#3@8 a#3@8 ~ a3@8 a3@8, ~@3 f#4@12 ~@16 a#3@8 ~ a#3@8 a3@8 a3@8 ~@4 [d4,f4]@8 ~@8 [c4,e4]@8 ~@4]/3", // Dm C Dm C Dm C Dm C
G: "~@3 [d4,f4] ~@3 e4, a#3@7 a#3@9 a3@8 a3@8, ~@4 [d4,f4]@8 ~@8 [c4,e4]@7 c4@5", // Dm C
H: "~@12 [d4,f4]@3 ~@5 c4@4 ~@4 [g#3,c#4]@4, a#3@7 a#3@8 a3@9 f3@8, ~@4 [d4,f4]@8 ~@7 e4@5 ~@8", I: "[a3,d4]@9 ~@7",
J: "[~@8 e4@4 ~@12 e4@4 c4@4 ~@8 d4@4 ~@12 d4@4 [a3,d4]@4 ~@8 e4@4 c4@4 ~@8 e4@4 e4@4 ~@8 d4@4 ~@4 d3@7 ~@9, a3@16 a3@16 d3@16 d3@17 ~@7 a4@16 a4@31 ~@9, ~@4 c4@16 c4@8 ~@8 a3@12 ~@4 a3@8 ~@4 a3@16 a3@15 ~ d3@16 ~@16, ~@8 a4@16 a4@9 ~@11 d4@12 ~@12 c4@8 e4@12 ~@16 f#4@15 ~@9, ~@12 e4@12 ~@4 e4@12 f#4@16 f#4@24 ~@4 c4@12 ~@4 a3@8 [a3,d4]@11 ~@9]/4", // D5
K: "[a#3,d4,f4]@4 [a#3,d4,f4]@4 [a#3,d4,f4]@4 [a#3,d4,f4]@3 ~ [a3,c4,e4]@4 [a3,c4,e4]@4 [f3,g#3,c#4]@4 ~ g#3@3, ~@7 [f3,c#4]", // A# Am C#
L: "[f#3,a3,d4]@4 [f#3,a3,d4]@4 [f#3,a3,d4]@4 [f#3,a3,d4]@4 [f#3,a3,d4]@4 [a3,d4]@4 [a3,d4]@3 f#3 [a3,d4]@3 ~, ~@20 f#3@7 ~@5", // D D5
M: "[d4,f4]@4 [d4,f4]@4 [a#3,d4,f4]@7 ~ [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@7 ~, a3 ~", // Dm A# C
N: "[a#3,d4,f4]@4 ~ a#3@3 [a#3,d4,f4]@7 ~ [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@7 ~, ~ [d4,f4] ~@6", // A# C Dm
O: "[a#3,d4,f4]@4 [a#3,d4,f4]@4 [a#3,d4,f4]@7 ~ [g3,c4,e4]@4 [g3,c4,e4]@4 [g3,c4,e4]@7 ~", // A# C
P: "[a#3,d4,f4]@4 [a#3,d4,f4]@4 [a#3,d4,f4]@7 ~@5 g3@4 ~@4 b3@4, ~@2 [e4,g4] g#4", Q: "a4 b4 c5 d5",
R: "e5@8 f#5 ~@3 f#5@18 ~@2",
S: "c4@5 ~@7 c4@4 ~@4 [e4,a4]@4 ~@4 c4@4, [e4,a4]@2 [e4,a4]@3 ~ [e4,a4]@2, ~@5 c4@7 ~@4 c4@12 ~@4", // A5
T: "~ [a3,f#4] a3 ~ d4 [g3,e4] a3!2, d4 a5, ~@8 f#4@11 ~@5 f#4@8, ~@3 d5@5, ~@12 a3@7 ~@13", // D C
U: "~ [e4,a4] [e4,a4]@2 ~ [e4,a4] [e4,a4]@2, c4!2", V: "~ [d4,f#4] [d4,f#4]@2 ~ [d4,f#4] [d4,f#4]@2, a3!2",
W: "~@4 [e4,a4]@4 ~@4 [a3,c4]@3 ~@5 [e4,a4]@4 [e4,a4]@8, c4@3 ~ [a3,c4]@4, ~@8 [e4,a4]@7 ~@17", // A5 Am A5 Am A5
X: "d4@2 ~@2 b3@3 ~ d4@3 ~ b3@2 a3@2", Y: "a#3@3 ~ c4@2 c#4@2", Z: "~@8 a4@9 ~@15, d4@15 ~@17, ~ f#4@3 ~@4",
AA: "~@3 [d4,f4] ~@3 [c4,e4], a#3@8 a#3@8 a3@8 a3@7 ~, ~ [d4,f4]@2 ~@2 [c4,e4]@2 ~", // Dm C Dm C
AB: "~@3 [d4,f4] ~@3 [c4,e4], a#3!2 a3!2, ~ [d4,f4]@2 ~@2 [c4,e4]@2 ~", // Dm C Dm C
AC: "~@12 [d4,f4]@4 a3@3 ~@9 [c4,e4]@4, a#3@8 a#3@9 ~@3 [c4,e4]@8 ~@4, ~ [d4,f4]@2 ~@3 a3@2", // Dm C Dm
AD: "~@3 [d4,f4] ~ [c4,e4] ~ [g#3,c#4], a#3@8 a#3@8 a3@9 ~@7, ~ [d4,f4]@2 ~@3 f3@2", AE: "a4 b4 c5 d5, [a3,d4]@9 ~@7",
AF: "e5 f#5 g5 a5", AG: "a#5@7 ~",
AH: "[c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 ~@2 e4@2 [c4,e4]@2 [g3,c4,e4] ~, ~@6 g3@8 g3@8 g3@3 c4@2 ~@5, ~@12 [c4,e4] g3@2 ~", // C
AI: "[d4,f4]@2 [d4,f4]!2 [d4,f4]@2 [d4,f4]!2 [d4,f4]@2 [d4,f4] d4 [d4,f4]!3 [a3,d4,f4], ~@3 a3@4 a3@4 a3@2 a3@2 ~, ~@22 f4 ~@9", // Dm
AJ: "[b3,d4]@2 [b3,d4]!2 [b3,d4]@2 [b3,d4]!2 [b3,d4]@2 [b3,d4]!5 [g3,b3,d4], ~@3 g3@4 g3@4 g3@2 g3@2 ~", // Bm G
AK: "[[a3,c4]@8 [g#3,d#4]@8 [a#3,d4]@8 e4@8 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [g3,c4,e4] ~, ~@12 g3@7 g3@4 g3@4 g3@2 g3@2 ~]/2", // Am G#5 A# C
AL: "[d4,f4]@2 [d4,f4]!2 [d4,f4]@2 [d4,f4] d4 [d4,f4]@2 [d4,f4]!5 [a3,d4,f4], ~@3 a3@4 a3@4 a3@2 a3@2 ~, ~@14 f4 ~@17", // Dm
AM: "~@3 [d4,f4] [d#4,f#4] [e4,g4] [d4,f4] [c4,e4], ~ [c4,e4] ~@2", // Dm D#m Em Dm C
AN: "[[c4,e4]@4 e4@2 e4@2 ~ e4@3 e4@2 e4@2 [c4,e4]@4 [c4,e4]@4 c4@3 e4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ [c4,e4] [c4,e4]@2 ~ e4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ e4 [c4,e4]@2 ~ e4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ c4 c4@4 [c4,e4]@2 [g3,c4,e4] ~ [b3,d4]@4 [b3,d4]@2 ~@2 b3@4 [b3,d4]@2 [b3,d4]@2 ~@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [g3,b3,d4]@2 [c4,e4]@4 [c4,e4]@2 c4@2 c4@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [g3,e4]@2, ~@4 c4@4 c4@3 ~ c4@4 ~@8 e4@2 ~@32 c4@2 ~@58 c4@2 ~@2 c4@2 ~@18 e4@6 ~@10 d4@6 ~@92, ~@6 g3@8 g3@13 g3@3 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@9 g3@3 g3@4 g3@8 g3@8 ~ g3@7 ~@8 b3@2 ~@8 [b3,d4]@4 ~@82 c4 ~, ~@159 g3@7 g3@4 g3@12 ~@8 [g3,e4]@7 ~ g3@8 g3@4 g3@4 g3@8 g3@8 g3@8 g3@4 g3@4 g3@8 ~@2]/8", // C Bm G C Bm C
AO: "[[c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 c4@2 c4@4 [c4,e4]@2 c4@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [g3,c4,e4] ~ [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2, ~@3 g3@4 g3@4 g3@4 [g3,e4]@4 g3@8 g3@4 g3@4 g3@4 ~@9, ~@38 e4 ~@57]/3", // C Bm C
AP: "[[b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4] ~ [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~@4 e4@2 [c4,e4]@2 [c4,e4]@2 [c4,e4] ~@11 [d4,f4]@4, ~@11 g3@4 g3@4 c4 c4@2 ~@6 [c4,e4]@4, ~@39 [g3,e4]@3 g3@7 ~@15]/2", // Bm C Dm C
AQ: "[d#4,f#4]@2 [e4,g4]@2 [d4,f4]@2 [c4,e4]@3 ~@7", // D#m Em Dm C
AR: "[~@16 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 ~@2 e4@2 [c4,e4]@2 [g3,c4,e4] ~ [d4,f4]@4 [d4,f4]@2 [d4,f4]@2 [d4,f4]@4 [d4,f4]@2 [d4,f4]@2 [d4,f4]@4 [d4,f4]@2 d4@2 [d4,f4]@2 [d4,f4]@2 [d4,f4]@2 [a3,d4,f4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [g3,b3,d4]@2 [a3,c4]@8 [g#3,d#4]@8, ~@22 g3@8 g3@8 g3@3 c4@2 ~@27 f4 ~@57, ~@20 [c4,e4] g3@2 ~@4 a3@4 a3@4 a3@2 a3@2 ~@4 g3@4 g3@4 g3@2 g3@2 ~@9]/4", // C Dm Bm G Am G#5 C
AS: "[[a#3,d4]@8 e4@8 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [g3,c4,e4] ~ [d4,f4]@4 [d4,f4]@2 [d4,f4]@2 [d4,f4]@4 [d4,f4]@2 d4@2 [d4,f4]@4 [d4,f4]@2 [d4,f4]@2 [d4,f4]@2 [d4,f4]@2 [d4,f4]@2 [a3,d4,f4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@4 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [b3,d4]@2 [g3,b3,d4]@2 [c4,e4]@8 ~@8 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ c4 c4@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 c4@2 ~ [c4,e4] [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 c4 e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [g3,c4,e4]@2, ~@4 g3@7 g3@4 g3@4 g3@2 g3@2 ~@4 a3@4 a3@4 a3@2 a3@2 ~@4 g3@4 g3@4 g3@2 g3@2 ~@5 [c4,e4]@4 ~@43 c4 ~@20, ~@62 f4 ~@61 g3@10 g3@8 [g3,e4]@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 ~@2]/8", // A# C Dm Bm G C
AT: "[[c4,e4]@4 [c4,e4]@2 [g3,e4]@6 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [g3,c4,e4]@6 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 e4@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 e4@2 [c4,e4]@2 c4 e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 ~ e4 [c4,e4]@4 [c4,e4]@2 ~ c4 c4@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [g3,c4,e4]@2, ~@6 c4@5 ~@3 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 ~@8 g3@8 g3@8 g3@4 g3@4 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 ~@2, ~@78 c4 ~@11 c4 ~@19 c4@2 ~@7 e4@5 ~@36]/5", // C
AU: "[[c4,e4]@2 [g3,c4,e4]@4 ~ e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 c4 e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 c4 e4 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@2 c4 ~ c4@2 [c4,e4]@2 [c4,e4]@3 ~ e4@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@4 [c4,e4]@2 [c4,e4]@2 [c4,e4]@3 ~ e4@3 [c4,e4] [c4,e4]@32 ~@16, ~@6 g3@8 g3@8 g3@8 g3@8 g3@8 g3@8 g3@4 g3@4 g3@7 ~ g3@8 g3@8 g3@8 g3@8 g3@4 [g3,e4]@4 g3@8 g3@8 g3@8 g3@5 [g3,c4]@3 ~ g3@33 ~@16, ~@6 c4@2 ~@107 c4@2 ~@75]/6", // C C5
})).s("gm_acoustic_guitar_steel").gain(0.27).pan(0.4)
// other · trumpet
const trumpet = note("<~@42 A B C D E ~@34 F G H I@2 J ~@22>".pickRestart({
A: "~@30 a4 a#4", B: "c5 ~ a4 ~ c5 ~@3 a4@4 e4 ~@3 g4 ~ e4 ~ g4 ~@3 e4@4 ~@3 [a4,a#4]",
C: "[b4,c5] ~ a4 ~ c5 ~@3 a4@4 e4@2 ~@2 g4 ~ e4 ~ g4 ~@3 e4@4 ~@3 [a4,a#4,b4]", // Cmaj7
D: "c5 ~ a4 ~ c5 ~@3 a4@4 e4 ~@3 g4 ~ e4 ~ g4 ~@3 e4@4 g4 ~@3", E: "b4 ~ g4 ~ b4@28",
F: "~@14 a4 a#4 c5 ~ a4 ~ c5 ~@3 a4@4 e4 ~@3",
G: "g4 ~ e4 ~ g4 ~@3 e4@4 ~@3 [a4,a#4] [b4,c5] ~ a4 ~ c5 ~@3 a4@4 e4@2 ~@2", // A#maj7 Cmaj7
H: "g4 ~ e4 ~ g4 ~@3 e4@4 ~@3 [a4,a#4,b4] c5 ~ a4 ~ c5 ~@3 a4@4 e4 ~@3",
I: "[g4 ~ e4 ~ g4 ~@3 e4@4 g4 ~@3 b4@2 g4@2 b4@28 ~@16]/2",
J: "~@2 c4@2 ~@3 a#3 a3@2 a#3 ~@2 b3 ~ a3@2 ~@15, a#3@2 ~@3 c4@2 ~@5 c4@2 ~@18, ~ b3@2 ~ c#4@2 b3@2 ~@3 b3@2 ~ a#3@2 ~@16",
})).s("gm_trumpet").gain(0.49)
// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
~@14 A@2 B C D E@2 F ~@6 G@6 H I J K@3 L M ~@19 N@2 O P Q@2 R S@2 ~@16 T@7 U@8 ~@2 V@5 ~
>`.pickRestart({
A: "[g4@31 a4@32 ~]/2", B: "[c4,g4]", C: "[d4,a4]", D: "~@4 [e3,e4] ~@3 [d3,d4] ~@3 [c3,c4]@20, g4@15 ~",
E: "[~@4 [d3,d4] ~@3 [b2,b3] ~@15 [d3,d4]@8 [a#3,f4]@15 ~ [g3,e4,e5]@8 [g#3,f4,a#4,f5]@8, f#4@8 a4@8 d5@31 c5@9 ~@8, ~@3 [a2,a3]@3 ~@10]/2", // D B D A#5 C A#7 A
F: "[a3,f#4,a4,f#5]@29 ~@3", // D
G: "[~@8 a4@4 g4@4 ~@8 c4@8 ~@12 a3@20 ~@8 a4@4 g4@3 ~@9 c4@7 [d4,f#4,a4]@33 ~@8 a4@4 g4@4 ~@8 c4@8 ~@12 a3@20, d3@191 ~, c4@24 ~@8 [d4,f#4]@33 ~@3 e4@16 e4@13 ~@35 e4@15 ~ e4@13 ~@31, ~@3 e4@13 g4@16 ~@48 g4@16 ~@48 g4@16 ~@32, ~@5 e4@3 ~@8 c4@6 ~@10 c4@5 ~@3 [d4,f#4]@8]/6", // D
H: "[g3,a#3] [a3,c4] [a#3,d4]!2 [c4,e4]@2 [c#4,f4]@2", I: "[d4,f#4]",
J: "a3@2 a#3@2 a3@2 ~@2 a#3 ~@3 a3 ~@3 [g3,c4,e4]@16, [d4,f4] ~", // C Dm
K: "[a3@2 a#3@2 a3 ~@3 a#3 ~@3 a3 ~@3 [c4,e4]@15 ~ a3@2 a#3@2 a3 ~@3 a#3 ~@3 a3 ~@3 [g3,c4,e4]@15 ~ a3@2 a#3@2 a3 ~@3 a#3 ~@3 a3 ~@3 [c4,e4]@8 [g#3,c#4,f4]@8, [d4,f4]@16 g3@13 ~@2 f4@16 ~@16 f4@16 g3@9 ~@8, ~@2 d4 ~ d4 ~]/3", // C C# Dm
L: "f#4@4 [a3,a4] ~@3 [a3,a4] ~@3 [a3,a4] ~@3 [a3,a4] ~@3 [a3,a4] ~@2 a4 a3 ~@3 [a3,a4] ~@3, d4, a3 ~@31", // A
M: "[g3,g4] ~@3 [g3,g4] ~@3 [g3,g4] ~@3 [g3,g4] ~@3 [g3,g4] ~@2 g4 g3 ~@2 g4 g3 ~@2 [g3,g4] ~@4, c4@31 ~", // G
N: "[e4@19 d4@2 c4@7 d4@2 g4@6 f4@28]/2", O: "d4@20 ~ a3@6 b3@4 ~, ~@10 b3 ~@5", P: "a3@8 g#3@7 a#3@9 c4@8",
Q: "[e4@20 d4@2 c4@5 d4@3 g4@6 f4@28]/2", R: "d4@20 b3@2 a3@5 b3@5", S: "[g3,c4,e4]/2",
T: "[~@16 e4@19 d4@2 c4@7 d4@2 g4@6 f4@28 d4@20 ~ a3@6 b3@4 ~ a3@8 g#3@7 a#3@9 c4@8 e4@20 d4@2 c4@5 d4@3 g4@6 f4@28 d4@16, ~@50 b3 ~@61]/7",
U: "[~@4 b3@2 a3@5 b3@5 [g3,c4,e4]@240]/8", V: "[~ [a3,f4] [g3,e4]@7 [a3,f4] [g3,e4]@9 ~]/5",
})).s("gm_string_ensemble_1").gain(0.28).pan(0.6)
// other · contrabass
const contrabass = note("<~@14 A B ~@20 C@3 D E F ~@67>".pickRestart({
A: "c3@29 b2 a#2@2", B: "a2@29 ~@3", C: "a3@2 a#3@2 a3 ~@3 a#3 ~@3 a3 ~@3 g3@13 ~@3",
D: "a3@2 a#3 ~ a3 ~@3 a#3 ~@3 a3 ~@3 g3@8 g#3@8", E: "a3 ~@3 a3 ~@3 a3 ~@3 a3 ~@3 a3 ~@3 a3 ~@3 a3 ~@3 a3 ~@3",
F: "g3 ~@3 g3 ~@3 g3 ~@3 g3 ~@3 g3 ~@3 g3 ~@3 g3 ~@3 g3 ~@3",
})).s("gm_contrabass").gain(0.09).pan(0.2)
// chords · electric guitar jazz · "JAZZ GTR"
const electric_guitar_jazz = note(`<
A@2 B@2 C@2 D@3 E F E G H I J ~ K L ~@3 M N O P Q R ~ S T U V ~@3 W F W X Q Y Z ~@8 AA ~@3 AB ~@8 AA ~@15 AC AD ~@2
AE@2 AF ~@2 AG AH ~@18
>`.pickRestart({
A: "[~@31 [g3,c4]@31 ~@2]/2", B: "[~@8 g3@5 ~@3 [f#3,d4]@3 ~ g3@5 ~@3 [f#3,d4]@36, ~@7 e4@6 ~@6 e4@6 ~@39]/2",
C: "[~@11 a3@2 ~@2 f#3@4 d3@2 ~@2 f3@3 ~@2 d3@28 ~@8]/2",
D: "[~@7 g4@5 ~@3 a4@6 ~@2 g4@4 f#4@4 f4@12 ~@4 [e4,g4]@8 [f4,g#4]@6 ~@2 [f#4,a4]@6 ~@7 f#4@19 ~, ~@72 a4@23 ~]/3", // Em Fm F#m
E: "~@15 [c4,e4]@16 ~, ~@3 d4@12 ~@17, ~@7 f4@8 ~@17, ~@11 c5@20 ~", F: "~@2 f4 ~ [c4,e4]@4, ~ d4@2 c5@5",
G: "~@3 d4@4 f4@4 c5@4 e4@4 ~ g3@4 f3@4 b3@4, ~@15 g4@8 ~ g#4@8",
H: "[f#3,a4]@8 [g3,b4]@7 ~ a3@8 [b3,d5]@8, ~@15 c5@8 ~@9", I: "[c4,e5]@7 ~", J: "~@2 [e4,a4]@3 ~ [e4,a4]@10",
K: "~@8 e4@4 ~ d4 ~@2 e4@4 d4@2 ~@2 e4@4 d4@4", L: "c4 ~",
M: "f3 ~@3 [a#3,g4]@2 ~@2 f3@2 ~@2 [a#3,g4]@2 ~@2 e3@2 ~@2 [a#3,g4]@2 e3@5 ~ [a#3,g4]@2 ~@2", // D#
N: "f3@2 ~@2 [a#3,g4]@2 ~@2 f3@2 ~@2 [a#3,g4] ~@3 e3 ~@3 [a#3,g4]@2 e3@5 ~ [a#3,g4] ~@3", // D#
O: "f3@2 ~@2 [a#3,g4]@2 ~@2 f3@2 ~@2 [a#3,g4] ~@3 e3@2 ~@2 [a#3,g4]@2 e3@5 ~ [a#3,g4] ~@3", // D#
P: "f3@2 ~@2 [a#3,g4] ~@3 f3@2 ~@2 [a#3,g4]@2 ~@6 g3@4 ~@4 b3@4, ~@2 [e3,g4] [f3,g#4]", // D# Em Fm
Q: "[f#3,a4] [g3,b4] [a3,c5] [b3,d5]", R: "[c4,e5]@9 ~@3 d4@19 ~, ~@3 f#5@4 ~", S: "~@5 e4@2 d4", T: "c4@25 ~@7",
U: "~@4 [a4,d5]@3 ~ [a4,d5]@4 [a4,d5]@3 ~ [a4,d5]@3 ~ [a4,d5]@4 e4@4 d4@4", V: "c4@7 ~",
W: "~ [c4,e4], ~ d4@3 ~@4, ~ f4 ~@2, ~@3 c5@5", X: "~ d4 f4 c5 e4 g3 f3 b3, ~@2 g4 g#4", Y: "[c4,e5] f#5 g5 a5",
Z: "a#5@27 ~@5", AA: "[c4,a4] [d#4,c5] [f4,d5] [g4,e5]",
AB: "~@8 [c3,e4]@4 [d3,f4]@4 [d#3,f#4]@3 ~ [e3,g4]@4 [d3,f4]@4 [c3,e4]@4", AC: "~@6 [c3,e4] [d3,f4]",
AD: "[d#3,f#4]@3 ~ [e3,g4]@4 [d3,f4]@4 [c3,e4]@4 ~@16", // D#m Em Dm C
AE: "[~@20 a3@3 ~ d4@2 ~@2 e4@12 ~@4 g4@2 f#4@6 g4@2 e4@6 d4 ~@3]/2", AF: "a3@3 ~ g3@2 e3@9 ~@17",
AG: "~@2 [c4,a4] [d#4,c5]", AH: "[f4,d5]@4 [g4,e5]@5 ~@7",
})).s("gm_electric_guitar_jazz").gain(0.27).pan(1)
// chords · french horn · "FR.HORN"
const french_horn = note(`<
~@13 A@2 B C D C E F G ~@6 H@6 I J K@3 L M N ~@5 O P ~@7 Q@5 ~@25 R@4 S@7 T@5 U@6 ~
>`.pickRestart({
// … 141 more lines
More by McCartney
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.