0:00/0:00
// Are You Going With Me — Pat Metheny
// 118 bpm, 4/4, key G minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 179 bars on a 24-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.
// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
~ A@4 B@4 A@4 B@4 C@2 D@2 E F G@2 H@2 I@2 J K L@2 M N O@2 P@2 E Q R@2 S@2 T@2 U V W@2 X@2 Y Z AA AB AC@3 AD AE@2 AF AG
C@2 D@2 E F G@2 AH@2 I@2 AI AJ AK@2 M N AL@2 AM@2 E Q AN@2 AO@2 AP@2 U V AQ@2 AR@2 AS AT@2 AU AI@3 AV AW@2 AX AY AZ@2
BA@2 M BB BC@2 BD@2 BE@2 BF BG BH@2 BI BJ BK@2 BL@2 M BM BN@2 BO@2 BP@2 BQ BR BS@2 BT@2 BU BV BW BX BY@3 BZ CA@2 CB CC
CD CE CF ~ CG CH CI@2 CJ ~@9
>`.pickRestart({
A: "~ c2@6 ~@3 c2 ~@2 c2@5 ~@4 c2 ~", B: "~ ab1@6 ~@3 ab1 ~@2 ab1@5 ~@4 ab1 ~",
C: "[~ c2@8 ~ g2 ~@2 g2@8 ~ c2@11 ~ g2@4 ~@2 g2 ~@2 g1@5]/2",
D: "[~ c2@8 ~ g2 ~@2 g2@6 ~@3 c2@9 ~@3 g2@2 ~ c2 ~@2 c2@2 ~ bb1@5]/2", E: "~ ab1@8 ~ eb2 ~@2 eb2@8 ~ ab1 ~",
F: "~ ab1@7 ~@2 eb2@5 ~ eb2@3 eb1@5", G: "[~ ab1@8 ~ eb2 ~@2 eb2@6 ab1 ~@2 ab1@9 ~@3 eb2@4 ~@2 eb2 ~@2 ab1@4 ~]/2",
H: "[~ c2@9 g2 ~@2 g2@8 ~ c2@11 ~ g2 ~@2 g2@5 ~ g1@5]/2",
I: "[~ c2@8 ~ g2 ~@2 g2@6 c2 ~@2 c2@10 ~@2 g2@3 c2 ~@2 c2@3 bb1@4 ~]/2", J: "~ ab1@9 eb2 ~@2 eb2@8 ~ ab1 ~",
K: "~ ab1@8 ~ eb2@4 ~@2 eb2 ~@5 ab1 ~",
L: "[~ ab1@8 ~ eb2 ~@2 eb2@6 ab1 ~@2 ab1@10 ~@2 eb2@5 ~ eb1 ~@2 eb1@3 ab1 ~]/2", M: "~ bb1@8 ~ f2 ~@2 f2@8 ~ bb1 ~",
N: "~ bb1@8 ~ f2@9 f1@5", O: "[~ bb1@8 ~ f2 ~@2 f2@6 bb1 ~@2 bb1@9 ~@3 f2@6 bb1 ~@2 bb1@4 ~]/2",
P: "[~ ab1@8 ~ eb2 ~@2 eb2@6 ~@3 ab1@12 eb2 ~@2 eb2@3 ~@3 eb1@5]/2", Q: "~ ab1@8 ~ eb2@5 ~ ab1 ~@2 eb1@2 ~ ab1 ~",
R: "[~ bb1@9 f2 ~@2 f2@7 ~@2 bb1@10 ~@5 f2@3 ~@3 f1@5]/2",
S: "[~ bb1@8 ~ f2 ~@2 f2@6 ~@3 bb1@9 ~@3 f2@5 ~ bb1 ~@2 bb1@3 f1 ~]/2",
T: "[~ ab1@9 eb2 ~@2 eb2@7 ~@2 ab1@10 ~@2 eb2 ~@2 eb2@3 ~@3 eb1@5]/2", U: "~ ab1@8 ~ eb2 ~@2 eb2@5 ~ ab1@5",
V: "~ g1@9 d2@3 g2@2 ~ d2 ~@2 g1 ~@2 g1 ~", W: "[~ c2@8 ~ g1 ~@2 g1@7 ~@2 c2@10 ~@2 g1@6 ~@3 g2@2 ~@3]/2",
X: "[~ c2@8 ~ g1 ~@2 g1@7 ~@2 c2@9 g1 ~@2 g1@6 c2 ~@2 c2@2 ~@3]/2", Y: "~ a1@8 ~ eb2 ~@2 eb2@9 ~@2",
Z: "~ a1@10 ~@13", AA: "~@13 eb2@9 ~@2", AB: "~ a1@8 ~@15", AC: "~ ab1@9 ~@14", AD: "~ ab1@9 ~@9 ab1@5",
AE: "[~@13 d2@8 ~ g1@12 ~@3 d2@4 ~@7]/2", AF: "~@13 d2@10 ~", AG: "~ g1@8 ~@4 d2@4 ~@7",
AH: "[~ c2@9 g2 ~@2 g2@8 ~ c2@11 ~ g2 ~@2 g2@6 g1@5]/2", AI: "~ ab1@9 eb2 ~@2 eb2@9 ab1 ~",
AJ: "~ ab1@8 ~ eb2@5 ~ eb2 ~@5 ab1 ~",
AK: "[~ ab1@8 ~ eb2 ~@2 eb2@6 ab1 ~@2 ab1@9 eb2 ~@2 eb2@5 ~ eb1 ~@2 eb1@3 ab1 ~]/2",
AL: "[~ bb1@9 f2 ~@2 f2@6 bb1 ~@2 bb1@9 f2 ~@2 f2@6 bb1 ~@2 bb1@4 ~]/2",
AM: "[~ ab1@8 ~ eb2 ~@2 eb2@6 ~@3 ab1@11 ~ eb2 ~@2 eb2@3 ab1 ~@2 eb1@5]/2",
AN: "[~ bb1@9 f2 ~@2 f2@7 ~@2 bb1@10 ~@5 f2@3 bb1 ~@2 f1@5]/2",
AO: "[~ bb1@8 ~ f2 ~@2 f2@6 bb1 ~@2 bb1@9 ~@3 f2@5 ~ bb1 ~@2 bb1@3 f1 ~]/2",
AP: "[~ ab1@9 eb2 ~@2 eb2@7 ~@2 ab1@10 ~@2 eb2 ~@2 eb2@3 ab1 ~@2 eb1@5]/2",
AQ: "[~ c2@8 ~ g1 ~@2 g1@6 c2 ~@2 c2@10 ~@2 g1@6 c2 ~@2 g2@2 ~@3]/2",
AR: "[~ c2@8 ~ g1 ~@2 g1@6 c2 ~@2 c2@9 g1 ~@2 g1@6 c2 ~@2 c2@3 bb1 ~]/2", AS: "~ a1@8 ~ eb2 ~@2 eb2@9 a1 ~",
AT: "~ a1@9 eb2 ~@2 eb2@9 a1 ~", AU: "~ a1@8 ~ eb2@7 ~@2 a1@4 ~", AV: "~ ab1@9 eb2@7 ~@2 ab1@5",
AW: "[~ g1@9 d2 ~@2 d2@8 ~ g1@12 d2 ~@2 d2@3 d1 ~@2 d1@5]/2", AX: "~ g1@9 d2 ~@2 d2@9 g1 ~",
AY: "~ g1@8 ~ d2@2 ~ d2@3 g1 ~@2 g1@5", AZ: "[~ d2@9 a2 ~@2 a2@8 ~ d2@11 ~ a2@4 ~@2 a2 ~@2 a1@5]/2",
BA: "[~ d2@8 ~ a2 ~@2 a2@6 ~@3 d2@9 ~@3 a2@2 ~ d2 ~@2 d2@3 c2@5]/2", BB: "~ bb1@7 ~@2 f2@5 ~ f2@3 f1@5",
BC: "[~ bb1@8 ~ f2 ~@2 f2@6 bb1 ~@2 bb1@9 ~@3 f2@4 ~@2 f2 ~@2 bb1@4 ~]/2",
BD: "[~ d2@8 ~ a2 ~@2 a2@8 ~ d2@11 ~ a2 ~@2 a2@5 ~ a1@5]/2",
BE: "[~ d2@8 ~ a2 ~@2 a2@6 d2 ~@2 d2@10 ~@2 a2@3 d2 ~@2 d2@3 c2@4 ~]/2", BF: "~ bb1@9 f2 ~@2 f2@8 ~ bb1 ~",
BG: "~ bb1@9 f2@4 ~@2 f2 ~@5 bb1 ~", BH: "[~ bb1@8 ~ f2 ~@2 f2@6 bb1 ~@2 bb1@10 ~@2 f2@5 ~ f1 ~@2 f1@3 bb1 ~]/2",
BI: "~ c2@8 ~ g2 ~@2 g2@8 ~ c2 ~", BJ: "~ c2@8 ~ g2@9 g1@5",
BK: "[~ c2@8 ~ g2 ~@2 g2@6 c2 ~@2 c2@9 ~@3 g2@6 c2 ~@2 c2@4 ~]/2",
BL: "[~ bb1@8 ~ f2 ~@2 f2@6 ~@3 bb1@11 ~ f2 ~@2 f2@3 ~@3 f1@5]/2", BM: "~ bb1@8 ~ f2@5 ~ bb1 ~@2 f1@2 ~ bb1 ~",
BN: "[~ c2@9 g2 ~@2 g2@7 ~@2 c2@10 ~@5 g2@3 ~@3 g1@5]/2",
BO: "[~ c2@9 g2 ~@2 g2@6 ~@3 c2@9 ~@3 g2@5 ~ c2 ~@2 c2@3 g1 ~]/2",
BP: "[~ bb1@9 f2 ~@2 f2@7 ~@2 bb1@10 ~@2 f2 ~@2 f2@3 ~@3 f1@5]/2", BQ: "~ bb1@8 ~ f2 ~@2 f2@5 ~ bb1@5",
BR: "~ a1@9 e2@3 a2@2 ~ e2 ~@2 a1 ~@2 a1 ~", BS: "[~ d2@8 ~ a1 ~@2 a1@7 ~@2 d2@10 ~@2 a1@6 ~@3 a2@2 ~@3]/2",
BT: "[~ d2@8 ~ a1 ~@2 a1@7 ~@2 d2@9 a1 ~@2 a1@6 d2 ~@2 d2@2 ~@3]/2", BU: "~ b1@8 ~ f2 ~@2 f2@9 ~@2",
BV: "~ b1@10 ~@13", BW: "~@13 f2@9 ~@2", BX: "~ b1@8 ~@15", BY: "~ bb1@9 ~@14", BZ: "~ bb1@9 ~@9 bb1@5",
CA: "[~@13 e2@8 ~ a1@13 ~@2 e2@4 ~@7]/2", CB: "~@13 e2@10 ~", CC: "~ a1@9 ~@3 e2@4 ~@7", CD: "~ d2@10 ~@2 a1@8 ~@3",
CE: "~ d2@9 ~@9 a1@5", CF: "~ d2@9 ~@14", CG: "~ d2@10 ~@2 a2@9 ~@2", CH: "~ d2@9 a2@7 ~@2 a1@5",
CI: "[~@13 a2@7 ~@2 d2@12 ~@9 a1@5]/2", CJ: "~ d2@20 ~@3",
})).s("gm_electric_bass_finger").gain(0.4)
// bass · electric bass finger · "FINGERDBAS" · soft notes
const bass_soft = note(`<
~@32 A ~@3 B ~ C ~@3 D E ~@2 C ~@2 F G F H I J K L M@3 N O P Q R ~@63 B ~@3 S ~ D ~@3 G F ~@2 D ~@2 T U T V W X Y Z
AA@3 AB AC AD AE AF AG AH AI@2 AJ AK AL AH ~@10
>`.pickRestart({
A: "~@7 eb2 ~@16", B: "~@7 f2 ~@16", C: "~@16 ab1 ~@7", D: "~@16 bb1 ~@7", E: "~@19 bb1 ~@4", F: "~@19 c2 ~@4",
G: "~@16 c2 ~@7", H: "~@22 bb1 ~", I: "~@22 a1 ~", J: "~@10 eb2 ~@2 eb2@9 a1 ~", K: "~ a1@9 eb2 ~@11 a1 ~",
L: "~@10 eb2@7 ~@2 a1@4 ~", M: "~@10 eb2 ~@2 eb2@9 ab1 ~", N: "~@10 eb2@7 ~@7", O: "~ g1@9 d2 ~@13",
P: "~@10 d2 ~@5 d1 ~@2 d1@5", Q: "~ g1@9 d2 ~@11 g1 ~", R: "~@10 d2@2 ~@4 g1 ~@2 g1@5", S: "~@7 g2 ~@16",
T: "~@19 d2 ~@4", U: "~@16 d2 ~@7", V: "~@22 c2 ~", W: "~@22 b1 ~", X: "~@10 f2 ~@2 f2@9 b1 ~",
Y: "~ b1@9 f2 ~@11 b1 ~", Z: "~@10 f2@8 ~ b1@4 ~", AA: "~@10 f2 ~@2 f2@9 bb1 ~", AB: "~@10 f2@7 ~@7",
AC: "~ a1@9 e2 ~@13", AD: "~@10 e2 ~@5 e1 ~@2 e1@5", AE: "~ a1@9 e2 ~@11 a1 ~", AF: "~@10 e2@2 ~@4 a1 ~@2 a1@5",
AG: "~@10 a1 ~@11 d2 ~", AH: "~@10 a2@6 a1 ~@7", AI: "[~@10 a2 ~@2 a2@7 ~@2 d2@12 a2@6 a1 ~@2 a1@5]/2",
AJ: "~@10 a2 ~@11 d2 ~", AK: "~@16 a1 ~@7", AL: "~ d2@9 a2 ~@8 d2 ~@4",
})).s("gm_electric_bass_finger").gain(0.2)
// chords · lead 1 square · "SQUAREWAVE"
const lead_1_square = note(`<
~ A B A B A B A C A C A C D E A B F@2 G@2 H@5 I J K L@6 M@2 N@2 O@3 P@3 Q@5 R S T U@2 V@2 W@2 X@2 Y@4 Z@2 G@2 H@5 I AA
AB@7 M@2 AC@2 O@3 AD AE@2 AF@5 AG AH@4 AI@2 AJ@4 AK@4 AL@2 AM@2 AN@5 AO AP AQ AR@4 AS@2 AT@2 AU@2 AV@6 AW AX AY@2 AZ@4
BA@2 BB@2 BC@4 BD@4 BE BF BE BF BG BF BG BH ~@10
>`.pickRestart({
A: "~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@4", B: "~ [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~",
C: "~ [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~", D: "~ d3@2 ~@4 [c3,g3] ~@11 [d3,g3] ~@4, ~ g3 ~@22",
E: "~ [c3,g3] ~@8 d3@2 ~@4 [c3,g3] ~@5 [c3,g3] ~, ~@10 g3 ~@13", // C5
F: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~, ~ c4@12 d4@12 eb4@12 f4@11]/2", // G5 C5 G5 C5 G5 C5
G: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~, ~ g4@39 f4@6 ~@2, ~@11 eb4]/2", // G5 C5 G5 C5 G5 C5
H: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@4, ~ c4@48 bb3@48 c4@12 d4@11]/5", // G5 C5 G5 C5 G5 C5 G5 C5 …
I: "~ [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, eb4@13 f4@11", J: "~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@4, ~ g4@23",
K: "~ [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, ~ g4@12 c5@11", // C5 G5 C5
L: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~ c5 ~@3 [d3,g3] ~@5 d3 ~, ~ bb4@72 c5@12 eb5@12 g4@12 f4@24 d5@11]/6", // G5 C5 G5 C5 G5 C5 G5 C5 …
M: "[~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ f4@12 eb4@26 ~ eb4@4 f4@4]/2", // Eb G5 Eb G5 Eb G5
N: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, ~ g4@5 ab4@4 g4@30 f4@4 eb4@4]/2", // G5 C5 G5 C5 G5 C5
O: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~@2 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@4, ~ c4@48 bb3@23]/3", // G5 C5 G5 C5 G5 C5 Eb G5 …
P: "[~ [d3,g3,g4] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~@2 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ ab4@12 g4@12 f4@12 eb4@27 g4@5 bb4@3]/3", // G5 Eb G5 Eb G5 Eb G5 Eb …
Q: "[bb4 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@2 f5@3 [c3,c5] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [c3,g3] ~@5 [b2,g3] ~@8 [b2,g3] ~@5 g4@3 [d3,g3] ~ g4@4 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@4, ~@2 c5@32 d5@3 eb5@6 ~@3 d5@41 ~ c3 ~@8 [eb5,g5]@11 d5@12, ~@109 f5@11]/5", // G5 C5 G5 C5 G5 C5 C G5 …
R: "~ [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 [d3,g3] ~, ~ [c5,eb5]@11 [bb4,d5]@12", // G5 Eb G5 Cm Bb
S: "~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@4, ~ [g4,c5]@12 [f4,bb4]@11", // Eb G5 Eb C5 Bb5
T: "~ [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ eb4@11 ~ f5@11, ~ g4@9 ~@2 d5@12", // G5 Eb G5
U: "[~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@2 b4@3 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ [c5,eb5]@20 d5@5 ~ c5@16 ~ f5@3 ~, ~@28 eb5@17 d5@3]/2", // Eb G5 Eb G5 Eb G5 Cm
V: "[~ [eb3,g3,f5] ~@5 [d3,g3] ~@11 [eb3,g3] ~@2 d5 eb5 ~ [d3,g3] ~@8 [eb3,g3] d5 ~@4 [d3,g3] ~@5 [d3,g3] ~, ~ eb5@21 ~@3 d5@9 eb5@2 ~ c5@8 c5@3, ~@2 g5@43 ~@3]/2", // Eb G5 Eb G5 Eb G5
W: "[~ [d3,g3,g5] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~, ~ c5@11 g5@28 ab4@8, ~@2 ab5@11 bb4@27 f5@5 eb5@3]/2", // G5 C5 G5 C5 G5 C5
X: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, ~ g4@38 ~ ab4@8, ~ f5@6 g5@4 f5@34 c5@3]/2", // G5 C5 G5 C5 G5 C5
Y: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [c3,g3] eb5@3 f5@2 [b2,g3] c5 ~@10 [c3,g3] ~@5 [b2,g3] ~@8 [c3,g3] ~@5 [b2,g3] ~@5 b2 ~, d5@25 c5@19 ~ d5@3 ~@9 d5@37 ~@2, ~ ab5@5 b5@4 g5@86]/4", // G5 C5 G5 C5 G5 C5 Em C5 …
Z: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~, ~ c4@11 ~ d4@12 eb4@12 f4@11]/2", // G5 C5 G5 C5 G5 C5
AA: "~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@4, ~ g4@22 ~", // G5 C5 G5
AB: "[~ [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~ c5 ~@3 [d3,g3] ~@5 d3 ~, ~ g4@12 c5@12 bb4@72 c5@12 eb5@12 g4@12 f4@24 d5@11]/7", // C5 G5 C5 G5 C5 G5 C5 G5 …
AC: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, ~ g4@5 ab4@4 g4@30 f4@5 eb4@3]/2", // G5 C5 G5 C5 G5 C5
AD: "~ [d3,g3,g4] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ ab4@11 ~ g4@11", // G5 Eb G5
AE: "[~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ f4@12 eb4@27 g4@5 bb4@3]/2", // Eb G5 Eb G5 Eb G5
AF: "[bb4 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@2 f5@3 [c3,c5] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [c3,g3] ~@5 [b2,g3] ~@8 [b2,g3] ~@5 g4@3 [d3,g3] ~ g4@4 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@4, ~@2 c5@32 d5@3 eb5@6 ~@3 d5@42 c3 ~@8 [eb5,g5]@11 d5@12, ~@109 f5@11]/5", // G5 C5 G5 C5 G5 C5 C G5 …
AG: "~ [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 [d3,g3] ~, ~ [c5,eb5]@11 d5@12, ~@13 bb4@11", // G5 Eb G5 Cm
AH: "[~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@5 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~@2 [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@2 b4@3 [d3,g3] ~@8 [eb3,g3] ~@5 [d3,g3] ~@5 d3 ~, ~ [g4,c5]@12 [f4,bb4]@12 eb4@11 ~ f5@13 ~@19 d5@5 ~@2 eb5@17 d5@3, ~@25 g4@9 ~@2 d5@13 [c5,eb5]@21 ~@5 c5@16 ~ f5@3 ~]/4", // Eb G5 Eb G5 Eb G5 Eb G5 …
AI: "[~ [eb3,g3] ~@5 [d3,g3] ~@11 [eb3,g3] ~@2 d5 eb5 ~ [d3,g3] ~@8 [eb3,g3] d5 ~@4 [d3,g3] ~@5 [d3,g3] ~, ~ eb5@21 ~@3 d5@9 eb5@2 ~ c5@8 c5@3, ~ f5@2 ~@45, ~ g5@21 ~@2]/2", // Eb G5 Eb G5 Eb G5
AJ: "[~ [d3,g3,g5] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 c3 ~, ~ c5@11 g5@28 ab4@9 g4@38 ab4@9, ~@2 ab5@11 bb4@27 f5@5 eb5@4 f5@6 g5@4 f5@34 c5@3]/4", // G5 C5 G5 C5 G5 C5 G5 C5 …
AK: "[~ [d3,g3] ~@5 [c3,g3] ~@11 [d3,g3] ~@5 [c3,g3] ~@8 [d3,g3] ~@5 [c3,g3] ~@5 [c3,g3] ~@2 [c3,g3] eb5@3 f5@2 [b2,g3] c5 ~@10 [c3,g3] ~@5 [b2,g3] ~@8 [c3,g3] ~@5 [b2,g3] ~@5 b2 ~, d5@25 c5@19 ~ d5@3 ~@9 d5@38 ~, ~ ab5@6 b5@3 g5@86]/4", // G5 C5 G5 C5 G5 C5 Em C5 …
AL: "[~ [e6,a6] ~@5 [d6,a6] ~@11 a6@2 ~@4 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~, ~ d5@12 e5@13 ~@22, ~@19 e6 ~@5 f5@12 g5@11]/2", // A5 D5 A5 D5
AM: "[~ [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@5 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~, ~ a5@39 g5@6 ~@2, ~@11 f5]/2", // A5 D5 A5 D5 A5 D5
AN: "[~ [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@5 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~@2 [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@5 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 d6 ~@2 [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@4, ~ d5@48 c5@48 d5@12 e5@11]/5", // A5 D5 A5 D5 A5 D5 A5 D5 …
AO: "~ [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 d6 ~, f5@13 g5@11", // D5 A5 D5
AP: "~ [e6,a6]@2 ~@4 [d6,a6] ~@11 [e6,a6] ~@4, ~ a5@23", // A5 D5 A5
AQ: "~ [d6,a6] ~@8 [e6,a6] ~@2 d6@3 d6@6 d6@2, ~ a5@12 ~@3 a6 ~@7", // D5 A5
AR: "[~ [e6,a6]@2 ~@4 [d6,a6] ~@11 [e6,a6] ~@5 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~@2 [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@5 a6 ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~, ~ c6@72 d6@12 f6@11]/4", // A5 D5 A5 D5 A5 D5 A5 D5 …
AS: "[~ [f6,a6] ~@5 [e6,a6] ~@11 [f6,a6] ~@5 [e6,a6] ~@8 [f6,a6] ~ d6 e6@3 e6@6 e6@2, ~ a5@12 g5@24 ~@3 a6 ~@7]/2", // F A5 F A5 F
AT: "[~ [f6,a6]@2 ~@4 [e6,a6] ~@11 [f6,a6] ~@5 [e6,a6] ~@8 [f6,a6] ~@5 [e6,a6] ~@5 e6 ~, ~ g5@12 f5@26 ~ f5@4 g5@4]/2", // F A5 F A5 F A5
AU: "[~ [e6,a6]@2 ~@4 [d6,a6] ~@11 e6@2 ~@4 [d6,a6] ~@8 [e6,a6]@2 ~@4 [d6,a6] ~@5 d6 ~, ~ a5@5 bb5@4 a5@30 g5@4 f5@4, ~@19 a6 ~@28]/2", // A5 D5 A5 D5
AV: "[~ a6@2 ~@4 [d6,a6] ~@11 [e6,a6] ~@5 d6@2 ~@7 e6@2 ~@4 d6@2 ~@4 d6 ~@2 f6@2 ~@4 e6@2 ~@10 a6@2 ~@4 [a5,e6,a6] ~@8 [f6,a6]@2 ~@4 [e6,a6] ~@5 e6 ~@2 f6@2 ~@4 e6@2 ~@10 [f6,a6]@2 ~@4 [e6,a6] ~@8 [f6,a6]@2 ~@4 [e6,a6] ~@5 e6 ~, ~ d5@48 d5@48 a6 ~@5 a6 ~@17 g4@12 a4@11, ~ e6 ~@23 a6 ~@8 a6 ~@2 a4@11 ~ c5@24 ~@24 [c5,g5]@12 d5@13 ~@14 a5@5 c6@3, ~@40 a6 ~@8 a6 ~@5 a6 ~@11 f6 ~@5 bb5@12 a5@13 ~@11 f5@28 ~@7]/6", // D5 A5 F A5 F A5 F A5 …
AW: "c6 ~ d6@5 a6 ~@11 e6@2 ~@3, ~ bb4@12 c5@11, ~ [e6,a6]@2 ~@4 d6@17, ~@19 a6 ~@4", // A5
AX: "~ d6@9 e6@3 ~@3 [d6,a6] ~@2 g6@3 e6@2, ~ d5@12 e5@11, ~ a6 ~@8 a6 ~@2 f6@6 ~@3 d6 ~", // D5
AY: "[~ a6@2 ~@4 [d6,a6] ~@11 [d6,a6] ~@5 [db6,a6] ~@8 db6@2 ~@4 a5@3 e6@2 a5@3, ~ e6@39 d6 ~@7, ~ f5@12 g5@12 a5@15 ~@8, ~@34 a6 ~@8 a6 ~@4]/2", // D5 Gbm
AZ: "[~ [f6,a6]@2 ~@4 e6@2 ~@10 [f6,a6] ~@5 [e6,a6] ~@8 [f6,a6] ~@5 [e6,a6] ~@5 [e6,a6] ~@2 [f6,a6]@2 ~@4 e6@2 ~@10 [f6,a6] ~@5 [e6,a6] ~@8 a6@2 ~@4 e6@2 ~@4 e6 ~, ~ [f5,a5]@12 g5@13 ~@10 [c5,e5]@13 [f4,a4,d5]@13 ~@11 [d4,f4]@11 ~@4 a6 ~@7, ~@7 a6 ~@4 e5@13 [a4,d5,f5]@12 g4@13 ~@5 a6 ~@5 [e4,g4,c5]@12 a4@9 f6 ~ [e5,g5]@12]/4", // F A5 F A5 F A5 F C …
BA: "[~ [f6,a6]@2 ~@4 e6@2 ~@10 [f6,a6] ~@2 db5@2 ~ [e6,a6]@2 ~@7 [f6,a6] ~@5 [e6,a6] ~@5 e6 ~, f5@20 ~ e5@5 ~@2 f5@17 e5@3, ~ d5@21 ~@5 d5@16 ~ g5@3 ~, ~@7 a6 ~@40]/2", // F A5 F A5
BB: "[~ [f6,a6] ~@5 [e6,a6] ~@11 [f6,a6]@2 ~ e5 f5 ~ [e6,a6] ~@9 e5@2 ~@3 [e6,a6] ~@5 [e6,a6] ~, g5 a5@21 ~@2, ~ f5@21 ~@3 e5@9 [f5,f6,a6]@2 ~ d5@8 d5@3]/2", // F A5 F A5 F
BC: "[~ a5 ~@5 [d6,a6] ~@11 a6@2 ~@4 [d6,a6]@2 ~@7 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~@2 [e6,a6] ~@5 [d6,a6] ~@11 [e6,a6] ~@5 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 d6 ~, ~ d5@12 c5@27 bb4@8 ~ a4@38 bb4@9, ~ [e6,a6]@2 ~@9 a5@28 g5@5 f5@5 ~@9 g5@34 d5@3, ~@2 bb5@11 ~@6 e6 ~@29 g5@6 a5@4 ~@37]/4", // D5 A5 D5 A5 D5 A5 D5 A5 …
BD: "[~ [e6,a6] ~@5 [d6,a6] ~@11 e6@2 ~@4 [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@3 e5@2 [d6,a6] ~@2 [d6,a6] f5@3 g5@2 [db6,a6] d5 ~@10 [d6,a6] ~@5 [db6,a6] ~@8 [d6,a6] ~@5 [db6,a6] ~@5 db6 ~, e5@25 d5@19 ~@13 e5@38 ~, ~ bb5@5 db6@4 a5@86, ~@19 a6 ~@76]/4", // A5 D5 A5 D5 Gbm D5 Gbm D5 …
BE: "~ e6@2 ~@4 [d6,a6] ~@11 [e6,a6] ~@4, ~ a6 ~@22", BF: "~ [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 d6 ~",
BG: "~ [e6,a6]@2 ~@4 [d6,a6] ~@11 [e6,a6] ~@4", BH: "~ [d6,a6] ~@8 [e6,a6] ~@5 [d6,a6] ~@5 [d6,a6] ~",
})).s("gm_lead_1_square").gain(0.32)
// chords · string ensemble 1 · "STRINGS"
const string_ensemble_1 = note(`<
~@4 A@5 ~@8 B@8 C@8 D@4 E@4 F@7 G H I J K L@4 M@6 N@2 O@8 P@8 D@4 Q@4 R@7 S T U V W L@4 X@6 Y@2 Z ~@65
>`.pickRestart({
A: "[~@23 c4@80 ~@17]/5",
B: "[~ g3@11 bb3@12 ~@12 [a3,d4]@12 eb4@47 ~ ab3@48 g3@24 f3@24, ~ g4@89 ~@102, ~ c4@24 c4@68 ~@3 [c4,eb4,g4]@95 ~, ~@48 bb3@143 ~]/8", // D5 Cm
C: "[bb3@24 c4@23 ~ d4@24 c4@12 ~ d4@9 ~@2 ab3@48 ~ g3@23 f3@23 ~, [eb4,g4]@95 ~, ~@48 bb3@22 ~@14 bb3@85 ~@23, ~@48 c4@47 ~]/8", // Eb
D: "[ab3,bb3,c4,eb4]/4", E: "[~@13 g3@5 f3@6, [c4,eb4]@47 ~, ~ [bb3,g4]@95]/4",
F: "[[c4,eb4]@24 d4@24 eb4@37 d4@10 ~@25 g3@24 f3@24, bb3@55 ~, ab3@48 [c4,eb4]@35 ~, ~@96 g4@67 ~@5]/7", // Cm
G: "~ a3 ~@22, [f3,g3,b3,d4]", H: "[c4,eb4]@12 ~ [bb3,d4]@11", I: "[g3,c4] [f3,bb3]", J: "~@13 [d3,f3]@11",
K: "~ eb3@12 [d4,f4]@11", L: "[a3@47 ~]/4",
M: "[eb4@24 ~@48 d4@11 ~@13 [g3,d4,g4]@48, [ab3,bb3]@95 ~@49, c4@36 ~@6 c4@29 ~, ~ f4@3 ~@2]/6", // G5 Absus2
N: "[~ [f3,g3]@45 ~@2, d4@47 ~, b3@11 ~]/2", // Fsus2
O: "[[g3,bb3,d4,f4] [eb3,g3]@11 [f3,bb3]@12 ~ c4@11 [a3,d4]@12 eb4@47 ~ ab3@48 g3@24 f3@24, ~ g5@90 ~@5 g4@95 ~, ~@24 g3@12 ~@12 bb3@143 ~]/8", // Gm7 Eb Bb5 D5
P: "[bb3@24 c4@23 ~ d4@24 c4@12 ~@12 ab3@49 g3@23 f3@22 ~@2, [eb4,g4]@191 ~, ~@24 bb3@11 ~@13 c4@47 ~]/8", // Eb
Q: "[~@53 g3@20 ~@23, c4@47 ~, ~ [bb3,g4]@95]/4", // Eb
R: "[~@48 eb4@37 ~@35 g3@25 ~@23, bb3@83 ~, ab3@32 c4@23 ~, ~@96 g4@67 ~@5]/7", S: "[f3,b3,d4]",
T: "[c4,eb4,g4]@12 ~ [bb3,f4]@11, ~ d4", U: "[g3,c4,eb4] [f3,bb3,d4]", V: "[g3,c4]@13 [d3,f3,bb3]@11",
W: "~ c3@11 ~ [d4,f4]@11, g3 ~", X: "[~@2 [g3,d4,g4], ab3@95 ~@49, c4@72 ~@12 c4@59 ~, ~@24 f4@73 ~@47]/6",
Y: "[d4@47 ~, b3@11 ~]/2", Z: "g3 ~@23",
})).s("gm_string_ensemble_1").gain(0.21)
// chords · string ensemble 1 · "STRINGS" · soft notes
const string_ensemble_1_soft = note(`<
~@3 A@2 B@7 C@6 ~@47 D@4 E@4 ~@3 F@5 ~@4 G@4 H I ~ J K@3 L ~@2 M N O@4 P@4 ~@2 Q@2 R ~@65
>`.pickRestart({
A: "[~ bb3@44 ~@3, [c4,d4]@47 ~, [g3,eb4]@15 ~]/2", B: "[~@2 g4@77 ~@16 [g4,bb4,d5,f5]@73, [ab3,eb4]@10 ~@11]/7",
C: "[~@5 [d4,eb4,g4]@82 ~@6 [bb3,c4,eb4,g4]@28 ~@23, ~@5 bb4@80 ~@59]/6", D: "[~ c5@92 ~@3]/4",
E: "[~ c4@93 ~@2, eb4@95 ~]/4", F: "[~@13 d4@9 ~@98, ~@12 bb3@85 ~@23]/5", G: "[~@3 f3, eb4@47 ~]/4", H: "[c4,eb4]",
I: "d4", J: "~@13 d4@10 ~", K: "[~@2 f3, eb4@35 ~]/3", L: "g3, a3 ~@23", M: "eb3@13 ~@11", N: "eb3 ~",
O: "[[c4,eb4]@95 ~]/4", P: "[eb4@24 ~@48 d4@11 ~@13, bb3@95 ~]/4", Q: "[~ [f3,g3]@45 ~@2]/2", R: "[bb3,d4,f4] ~@23",
})).s("gm_string_ensemble_1").gain(0.1)
// chords · french horn · "STRINGS"
const french_horn = note("<~@113 A@8 B@8 C@4 D@4 E@7 F G H I J K@4 L@6 M@2 N@8 O@5 ~@5>".pickRestart({
A: "[~ [f3,a3]@11 [g3,c4]@12 ~ d4@11 [b3,e4]@12 f4@47 ~ bb3@48 a3@24 g3@24, ~ a5@89 ~@6 a4@95 ~, ~@24 a3@12 ~@12 c4@143 ~, ~@32 d4@31 ~]/8", // F C5 E5
B: "[c4@24 d4@23 ~ e4@24 d4@12 ~ e4@9 ~@2 bb3@49 a3@23 g3@22 ~@2, [f4,a4]@95 ~, ~@24 c4@11 ~@7 c4@42 ~@12, ~@48 d4@47 ~]/8", // F
C: "[bb3,c4,d4,f4]/4", D: "[~@13 a3@5 g3@6, [d4,f4]@95 ~, ~ [c4,a4]@95]/4",
E: "[d4@24 e4@24 f4@37 e4@10 ~@25 a3@25 ~@23, c4@55 ~, bb3@32 [d4,a4]@23 ~]/7", F: "~ b3 ~@22, [g3,a3,db4,e4]",
G: "[d4,f4,a4]@12 ~ [c4,g4]@11, ~ e4", H: "[a3,d4,f4] [g3,c4,e4]", I: "[f3,a3,d4]@13 [e3,g3,c4]@11",
J: "~ d3@12 [e4,g4]@11, [f3,a3] ~", K: "[[b3,d4]@95 ~]/4",
L: "[~@72 e4@11 ~@13 [a3,e4,a4]@48, [bb3,c4]@95 ~@49, d4@72 ~@12 d4@59 ~, ~@24 g4@73 ~@47]/6", // A5 Bbsus2
M: "[~ [g3,a3]@45 ~@2, e4@47 ~, db4@11 ~]/2", N: "[~@97 g3@95, [a3,g4]]/8", O: "[d2@39 ~, d3@47 ~@13]/5",
})).s("gm_french_horn").gain(0.17)
// chords · french horn · "STRINGS" · soft notes
const french_horn_soft = note("<~@113 A@4 B@4 ~@16 C ~@3 D@3 ~@5 B@4 C ~@7 E@5 F@7 ~@6>".pickRestart({
A: "[~ d5@92 ~@3]/4", B: "[f4@95 ~]/4", C: "f4", D: "[~@2 g3, f4@35 ~]/3", E: "[c4,e4]/5", F: "[~ e4@166 ~]/7",
})).s("gm_french_horn").gain(0.1)
// drums · kick
const kick = s("bd").struct("<[~@11 x] [~ x ~@11 x ~@10]!168 ~@10>").gain(0.37)
// drums · kick · soft notes
const kick_soft = s("bd").struct(`<
// … 92 more lines
More by Pat Metheny
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.