0:00/0:00
// Pure Shoes — All Saints
// 100 bpm, 4/4, key F# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 112 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(100/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.
// bass · slap bass 2 · ""Pure Shores""
const bass = note(`<
A B@2 C D@6 E@8 F@6 G@6 H@2 I ~ J@2 ~ K@3 L@8 M@6 N O@4 P@5 ~ Q R ~@2 S@2 ~@8 T U V W X Y Z AA AB@7 AC@2 AD@3 AE@7
AF@2 AG@3 AH
>`.pickRestart({
A: "~@9 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@3", B: "~ c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@3",
C: "~ c#3@4 b2@4 c#3@4 d#3@3 f3@4 f#3@4 f3@4 d#3@4", D: "c#3 b2 c#3 d#3 f3 f#3 f3 d#3",
E: "[c#3@4 b2@4 c#3@4 d#3@4 f3@3 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@3 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@2]/8",
F: "[~@2 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@3 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@3]/6",
G: "~ b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@3", H: "b2 c#3 d#3 f3 f#3 f3 d#3 c#3", I: "b2 ~@7",
J: "[~@4 [f5,f#5] [g5,a5] [a#5,b5] [c6,c#6] [d6,d#6] [e6,f#6] [g6,g#6] [a6,a#6] ~@4 [f#6,g6] [g#6,a6] a#6 ~@45, ~@12 b6@23 ~@29]/2", // F#maj7 Gsus2 Bmaj7 C#maj7 D#maj7 Esus2 G#maj7 A#maj7 …
K: "[~@11 f3 [f#3,g3] [a3,a#3] [b3,c4] [c#4,d4] [d#4,e4] [f#4,g4] [g#4,a4] a#4 ~@15 f3 [f#3,g3] [a3,a#3] [b3,c4] [c#4,d4] [d#4,e4] [f#4,g4] [g#4,a4] a#4 b4@23 ~@29, ~@20 b4@23 ~@53]/3", // Gmaj7 A#maj7 Cmaj7 Dmaj7 Emaj7 Gmaj7 Amaj7 Gmaj7 …
L: "[~@2 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@3 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@3]/8",
M: "~ c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@3", N: "~ c#3@4 d#3@4 f3@4 f#3@3 f3@4 d#3@4 c#3@4 b2@4",
O: "c#3 d#3 f3 f#3 f3 d#3 c#3 b2",
P: "[c#3@4 d#3@4 f3@4 f#3@4 f3@3 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 ~]/5",
Q: "~@30 f5 [f#5,g5]", // Gmaj7
R: "[a5,a#5] [b5,c6] [c#6,d6] [d#6,e6] [f#6,g6] [g#6,a6] a#6 ~@3 [f#6,g6] [g#6,a6] a#6 ~@19, ~@7 b6@23 ~@2", // A#maj7 Cmaj7 Dmaj7 Emaj7 Gmaj7 Amaj7 Gmaj7 Amaj7
S: "[~@5 f3 [f#3,g3] [a3,a#3] [b3,c4] [c#4,d4] [d#4,e4] [f#4,g4] [g#4,a4,a#4] ~@16 [f3,f#3] [g3,a3] [a#3,b3] [c4,c#4] [d4,d#4] [e4,f#4] [g4,g#4] [a4,a#4] b4@23 ~@4, ~@13 b4@23 ~@28]/2", // Gmaj7 A#maj7 Cmaj7 Dmaj7 Emaj7 Gmaj7 F#maj7 Gsus2 …
T: "~@7 d#4@2 g#4@2 d#4@2 g#4 ~@2", U: "~@6 c#4@7 c4@4 a#3@4 g#3@4 c4@7", V: "~@5 c#4@8 c4@12 ~@7",
W: "~@9 c4@16 g#3@7", X: "~@5 c4@20 ~@7", Y: "~ c#4@2 c4 a#3 g#3 c4@2", Z: "~ c#4@2 c4@3 ~@2",
AA: "~@8 c4@15 g#3@8 ~",
AB: "[~@3 c4@20 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@3 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@3 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@3]/7",
AC: "~ f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@3", AD: "f#3 f3 d#3 c#3 b2 c#3 d#3 f3",
AE: "[f#3@3 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@3 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@4 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@3 f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@3]/7",
AF: "~ f3@4 d#3@4 c#3@4 b2@4 c#3@4 d#3@4 f3@4 f#3@3", AG: "f3 d#3 c#3 b2 c#3 d#3 f3 f#3", AH: "f3 d#3 c#3 b2 ~@4",
})).s("gm_slap_bass_2").gain(0.16).pan(1)
// bass · slap bass 2
const bass_2 = note(`<
A B@2 C D@6 E@8 F@6 G@6 H@2 I ~@7 J@8 K@6 L M@4 N@5 ~@15 O P Q R S T U V W@7 X@2 Y@3 Z@7 AA@2 AB@3 AC
>`.pickRestart({
A: "~@9 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@3", B: "~ f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@3",
C: "~ f3@4 c#3@4 f3@4 c#3@3 f3@4 c#3@4 f#3@4 c#3@4", D: "f3 c#3 f3 c#3 f3 c#3 f#3 c#3",
E: "[f3@4 c#3@4 f3@4 c#3@4 f3@3 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@3 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@2]/8",
F: "[~@2 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@3 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@3]/6",
G: "~ c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@3", H: "c#3 f3 c#3 f3 c#3 f#3 c#3 f3", I: "c#3 ~@7",
J: "[~@2 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@3 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@3]/8",
K: "~ f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@3", L: "~ f3@4 c#3@4 f3@4 c#3@3 f#3@4 c#3@4 f3@4 c#3@4",
M: "f3 c#3 f3 c#3 f#3 c#3 f3 c#3",
N: "[f3@4 c#3@4 f3@4 c#3@4 f#3@3 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 ~]/5",
O: "~@7 d#4@2 g#4@2 d#4@2 g#4 ~@2", P: "~@6 c#4@7 c4@4 a#3@4 g#3@4 c4@7", Q: "~@5 c#4@8 c4@12 ~@7",
R: "~@9 c4@16 g#3@7", S: "~@5 c4@20 ~@7", T: "~ c#4@2 c4 a#3 g#3 c4@2", U: "~ c#4@2 c4@3 ~@2", V: "~@8 c4@15 g#3@8 ~",
W: "[~@3 c4@20 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@3 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@3 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@3]/7",
X: "~ c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@3", Y: "c#3 f#3 c#3 f3 c#3 f3 c#3 f3",
Z: "[c#3@3 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@3 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@3 f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@3]/7",
AA: "~ f#3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@4 f3@4 c#3@3", AB: "f#3 c#3 f3 c#3 f3 c#3 f3 c#3", AC: "f#3 c#3 f3 c#3 ~@4",
})).s("gm_slap_bass_2").gain(0.29).pan(0)
// chords · rock organ
const rock_organ = note(`<
A B C D E F G H E F G I J K L I M N O P M N Q@7 R S T U R S V W X Y V W X Z AA AB AC Z AD AE AF AG AH AE AF AG AI AJ
AK AL AI AM AN AO AP AM AQ AR AS AT AU AV AW ~@8 AX AY AZ AY BA BB BC@4 BD BE BF BG BH BI BJ BK BL BM BN BO BP BQ BR
BS@4 BT BU BV
>`.pickRestart({
A: "~@17 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~", // G#
B: "~@3 [g#4,g#5]@2 ~@12 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~", // G# D#
C: "~@3 [d#4,d#5]@2 ~@12 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~", // D# B
D: "~@3 [b4,b5]@2 ~@11 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@2", // B A#
E: "~ [a#4,a#5] ~@6 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~", // A# G#
F: "~ [g#4,g#5] ~@6 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~", G: "~ [d#4,d#5] ~@6 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~",
H: "~ [b4,b5] ~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~", // B A#
I: "~ [b4,b5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3", // B A#
J: "~ [a#4,a#5]@2 ~@12 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@3", // A# G#
K: "~ [g#4,g#5]@2 ~@12 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@3", // G# D#
L: "~ [d#4,d#5]@2 ~@12 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@3", // D# B
M: "[a#4,a#5] ~@6 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2", // A# G#
N: "[g#4,g#5] ~@6 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2", O: "[d#4,d#5] ~@6 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2",
P: "[b4,b5] ~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2", // B A#
Q: "[[d#4,d#5]@2 ~@12 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@3 [b4,b5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@12 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@12 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@12 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@11 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2]/7", // D# B A# G# D# B A# G#
R: "~@6 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5]", S: "~@6 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5]",
T: "~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5]", // A#
U: "~@6 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5]", // G#
V: "~@11 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~", // A#
W: "~@11 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~", // G#
X: "~@11 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~", // D#
Y: "~@11 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~", // B
Z: "~@5 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~", // B
AA: "~@5 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~", // A#
AB: "~@5 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~", // G#
AC: "~@5 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~", // D#
AD: "~@10 [a#4,a#5]@2 ~@3 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3", // A#
AE: "~@9 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@3", // G#
AF: "~@9 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@3", // D#
AG: "~@9 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@3", // B
AH: "~@9 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3", // A#
AI: "~@4 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2", // A#
AJ: "~@4 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2", // G#
AK: "~@4 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2", // D#
AL: "~@4 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2", // B
AM: "~@7 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@5", // G#
AN: "~@7 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@5", // D#
AO: "~@7 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@5", // B
AP: "~@7 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@5", // A#
AQ: "~@3 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@3", // D#
AR: "~@3 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@3", // B
AS: "~@3 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@3", // A#
AT: "~@5 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@7", // G#
AU: "~@5 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@7", // D#
AV: "~@5 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@7", // B
AW: "~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@4", // A#
AX: "~@2 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@3 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@11", // G#
AY: "~ [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@11", // D#
AZ: "~ [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@11", // G#
BA: "[g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@6", // G#
BB: "[d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@6", // D#
BC: "[[g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@11 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@12 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@12 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@11 [b4,b5]@2]/4", // G# D# G# D# B
BD: "~@2 [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@6 [a#4,a#5]", // B A#
BE: "~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@6 [g#4,g#5]", // A# G#
BF: "~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@11 [d#4,d#5]@2 ~", // G# D#
BG: "~@3 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@12 [b4,b5]@2 ~", // D# B
BH: "~@3 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@12 [a#4,a#5]@2 ~", // B A#
BI: "~@3 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@12 [g#4,g#5]@2 ~", // A# G#
BJ: "~ [g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@6 [d#4,d#5] ~", // G# D#
BK: "~ [d#4,d#5] ~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@6 [b4,b5] ~", BL: "~ [b4,b5] ~@2 [b4,b5] ~@2 [b4,b5] ~@6 [a#4,a#5] ~",
BM: "~@2 [a#4,a#5]@2 ~@3 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@12 [g#4,g#5]@2 ~@3", // A# G#
BN: "~ [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@12 [d#4,d#5]@2 ~@3", // G# D#
BO: "~ [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@12 [b4,b5]@2 ~@3", // D# B
BP: "~ [b4,b5]@2 ~@3 [b4,b5]@2 ~@4 [b4,b5]@2 ~@12 [a#4,a#5]@2 ~@4", // B A#
BQ: "[a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@6 [g#4,g#5] ~@2", // A# G#
BR: "[g#4,g#5] ~@2 [g#4,g#5] ~@2 [g#4,g#5] ~@6 [d#4,d#5] ~@2", // G# D#
BS: "[[d#4,d#5]@2 ~@4 [d#4,d#5]@2 ~@3 [d#4,d#5]@2 ~@12 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@4 [b4,b5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@12 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@4 [g#4,g#5]@2 ~@11 [d#4,d#5]@2 ~@4 [d#4,d#5]@2]/4", // D# B A# G# D#
BT: "~@2 [d#4,d#5] ~@2 [d#4,d#5] ~@6 [b4,b5] ~@2 [b4,b5]", BU: "~@2 [b4,b5] ~@2 [b4,b5] ~@6 [a#4,a#5] ~@2 [a#4,a#5]",
BV: "~@2 [a#4,a#5] ~@13", // A#
})).s("gm_rock_organ").gain(0.18)
// chords · rock organ · soft notes
const rock_organ_soft = note(`<
A B C D E F G D E F G H I J K H L M N O L M N P@4 Q@2 R ~ S T R ~ U V W ~ U V W ~ X Y Z ~ AA AB AC ~ AD AB AC ~ AE AF
AG ~ AE AH AI ~ AJ AH AK ~ AL AM AN ~ AO ~@8 AP AQ AR AQ AS AT AU@4 AV AW AX AY AZ BA BB BC BD BE BF BG BH BI BJ BK
BL@3 BM BN BO
>`.pickRestart({
A: "~@17 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~", // C#
B: "~@3 [c#4,c#5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~", C: "~@3 [a#4,a#5]@2 ~@27",
D: "~@8 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~", E: "~ [f#4,f#5] ~@6 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~",
F: "~ [c#4,c#5] ~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~", G: "~ [a#4,a#5] ~@14",
H: "~@15 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@3", // F#
I: "~ [f#4,f#5]@2 ~@12 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@3", // F# C#
J: "~ [c#4,c#5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3", K: "~ [a#4,a#5]@2 ~@29",
L: "[f#4,f#5] ~@6 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2", // F# C#
M: "[c#4,c#5] ~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2", N: "[a#4,a#5] ~@15",
O: "~@7 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2", // F#
P: "[~@13 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@12 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@31]/4", // F# C# A#
Q: "[~@13 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@11 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2]/2", // F# C#
R: "~@6 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5]", // A#
S: "~@6 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5]", // F#
T: "~@6 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5]", // C#
U: "~@11 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~", // F#
V: "~@11 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~", // C#
W: "~@11 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~", // A#
X: "~@5 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~", // F#
Y: "~@5 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~", // C#
Z: "~@5 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~", // A#
AA: "~@10 [f#4,f#5]@2 ~@3 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@3", // F#
AB: "~@9 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@3", // C#
AC: "~@9 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3", // A#
AD: "~@9 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@3", // F#
AE: "~@4 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2", // F#
AF: "~@4 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2", // C#
AG: "~@4 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2", // A#
AH: "~@7 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@5", // C#
AI: "~@7 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@5", // A#
AJ: "~@7 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@5", // F#
AK: "~@3 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@3", // A#
AL: "~@3 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@3", // F#
AM: "~@5 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@7", // C#
AN: "~@5 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@7", // A#
AO: "~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@4", // F#
AP: "~@2 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@3 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@11", // C#
AQ: "~ [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@11", // A#
AR: "~ [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@11", // C#
AS: "[c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@6", // C#
AT: "[a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@6", // A#
AU: "[[c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@11 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@12 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@12 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@13]/4", // C# A# C# A#
AV: "~@15 [f#4,f#5]", AW: "~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@6 [c#4,c#5]",
AX: "~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@11 [a#4,a#5]@2 ~", // C# A#
AY: "~@3 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@15", AZ: "~@29 [f#4,f#5]@2 ~",
BA: "~@3 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@12 [c#4,c#5]@2 ~", // F# C#
BB: "~ [c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@6 [a#4,a#5] ~", BC: "~ [a#4,a#5] ~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@8",
BD: "~@14 [f#4,f#5] ~", BE: "~@2 [f#4,f#5]@2 ~@3 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@12 [c#4,c#5]@2 ~@3",
BF: "~ [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@12 [a#4,a#5]@2 ~@3", // C# A#
BG: "~ [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@17", BH: "~@13 [f#4,f#5] ~@2",
BI: "[f#4,f#5] ~@2 [f#4,f#5] ~@2 [f#4,f#5] ~@6 [c#4,c#5] ~@2", // F# C#
BJ: "[c#4,c#5] ~@2 [c#4,c#5] ~@2 [c#4,c#5] ~@6 [a#4,a#5] ~@2", BK: "[a#4,a#5]@2 ~@4 [a#4,a#5]@2 ~@3 [a#4,a#5]@2 ~@19",
BL: "[~@25 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@4 [f#4,f#5]@2 ~@12 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@4 [c#4,c#5]@2 ~@11 [a#4,a#5]@2 ~@4 [a#4,a#5]@2]/3", // F# C# A#
BM: "~@2 [a#4,a#5] ~@2 [a#4,a#5] ~@10", BN: "~@12 [f#4,f#5] ~@2 [f#4,f#5]", BO: "~@2 [f#4,f#5] ~@13",
})).s("gm_rock_organ").gain(0.11)
// bass · electric bass finger · "Taken from"
const bass_3 = note(`<
// … 301 more lines
More by All Saints
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.