0:00/0:00
// Let Me Be There — Olivia Newton-John
// 130 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 94 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(130/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 · "A.PIANO 1"
const piano = note(`<
~ A B C D E F G H E I J K L M N O P Q R S T U V W X Y Z AA AB AC AD AE AF AG AH@2 AI AJ AK AL AM@2 AN AO AP@2 AQ AR
AS@2 AT AU AV AW AX AY AZ BA BB BC BD@2 BE AA BA BF BG BH BI BJ BK AY ~@4 BL BM BN BO BP@2 BQ@2 BR BS BT BU BV BW BX
BY ~
>`.pickRestart({
A: "[a3,f#4]@2 ~@2 [d4,f#4]@6 ~@2 d4@2 f#4 ~, d4 ~@3 a3@4 ~@2 a3@4 ~@2", // D
B: "[a3,d4,f#4]@2 ~@2 [a3,d4]@5 ~ a3@2 d4@2 f#4 ~, ~@2 f#4@3 ~@3", // D D5
C: "[a3,d4,f#4]@2 ~@2 [a3,d4,f#4]@6 ~@2 d4@2 f#4 ~, ~@5 a3@2 ~", D: "[a3,d4,f#4]@3 ~",
E: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~", // D F#m
F: "[d4,f#4,a4]@2 ~@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~, ~ d4 ~@2", // D F#m
G: "[d4,g4,b4]@2 ~@2 [g4,b4]@6 d4@2 [g4,b4]@2 d4 ~, ~@4 d4@5 ~@7", // G
H: "[d4,f#4,a4] ~ [d4,f#4,a4] ~ [d4,f#4,a4] ~ [d4,f#4,a4] ~", I: "[d4,f#4,a4] ~@3 [d4,f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~",
J: "[e4,a4,c#5] ~ [e4,a4,c#5] ~ [a4,c#5] e4 [a4,c#5] e4", // A
K: "[a4,c#5]@2 e4 ~ [e4,a4,c#5]@3 ~ [e4,a4,c#5]@3 ~ [e4,a4,c#5]@2 ~@2", // A
L: "d4 f#4 d5 f#4 d4 f#4 [a4,d5] f#4, ~ a4 ~@2", M: "d4 f#4 [a4,d5] f#4 d4 f#4 [a4,d5] f#4",
N: "[d4,g4,b4] ~@3 [g4,b4]@6 d4@2 [g4,b4]@2 d4@2, ~ d4 ~@2", O: "[f#4,a4]@2 d4@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~",
P: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@5 ~ d4@2 [f#4,a4]@2 d4 ~", // D F#m
Q: "[e4,a4] ~@3 [e4,a4,c#5]@6 e4@2 [a4,c#5]@2 e4 ~, c#5 ~@7", // A5 A
R: "[d4,f#4,a4]@2 ~@2 [d4,f#4]@5 ~ d4@2 [e4,g4]@3 ~, ~@2 a4@3 ~@3", S: "[d4,f#4]@3 ~",
T: "[d4,f#4,a4]@3 ~ [d4,f#4,a4]@3 ~ [f#4,a4]@2 ~@2 [f#4,a4]@3 ~, ~@5 d4@2 ~", // D F#m
U: "[d4,f#4,a4]@3 ~ [d4,f#4,a4]@3 ~ [f#4,a4]@2 d4 ~ [d4,f#4,a4]@3 ~, ~@8 d4 ~@7", // D F#m D
V: "[d4,g4,b4]@2 ~@2 [d4,g4,b4]@3 ~ [g4,b4]@2 d4 ~ [g4,b4]@2 d4 ~, ~@8 d4 ~@3 d4 ~@3", // G
W: "[d4,g4,b4]@2 ~@2 [d4,g4,b4]@3 ~ [g4,b4]@2 d4 ~ [d4,g4,b4]@3 ~, ~@8 d4 ~@7", // G
X: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@3 ~ [f#4,a4]@2 d4 ~ [f#4,a4]@2 d4 ~, ~@8 d4 ~@3 d4 ~@3", // D F#m
Y: "[d4,f#4,a4]@3 ~ [d4,f#4,a4]@3 ~ [f#4,a4]@2 d4 ~ [d4,f#4,a4]@2 ~@2, ~@8 d4 ~@7", // D F#m D
Z: "[e4,g#4,b4]@2 ~@2 [e4,g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4] ~@3", // E G#m
AA: "[a4,c#5]@2 e4@2 [a4,c#5]@2 e4@2 [a4,c#5]@2 e4@2 [a4,c#5]@2 e4 ~", // A
AB: "[d4,f#4,a4]@3 ~ [d4,f#4,a4]@3 ~ [f#4,a4]@2 ~@2 [f#4,a4]@3 ~, ~@8 d4 ~ d4@5 ~", // D F#m
AC: "[d4,f#4,a4]@3 ~ [f#4,a4]@3 ~ [f#4,a4]@2 d4 ~ [d4,f#4,a4]@2 ~@2, ~@2 d4@3 ~@3", // D F#m D
AD: "[d4,g4,b4]@3 ~ [d4,g4,b4]@3 ~ [g4,b4]@2 d4 ~ [d4,g4,b4]@3 ~, ~@8 d4 ~@7", // G
AE: "[d4,g4,b4]@3 ~ [d4,g4,b4]@3 ~ [g4,b4]@2 ~@2 [g4,b4]@2 ~@2, ~@8 d4 ~ d4@4 ~@2", // G
AF: "[d4,f#4,a4]@3 ~ [f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4] ~@3, ~ d4 ~@2", // D F#m
AG: "[e4,a4]@2 c#4@2 [e4,a4]@2 c#4@2 [e4,a4]@2 c#4@2 [e4,a4]@2 c#4 ~", // A5
AH: "[[d4,f#4,a4]@3 ~ [d4,f#4,a4]@3 ~ [d4,g4,b4] ~ [d4,g4,b4]@3 ~ [d4,f#4,a4]@15 ~@3]/2", // D G D
AI: "[f#4,a4]@3 ~ [f#4,a4]@3 ~ [f#4,a4,d5]@3 ~ [f#4,a4]@3 ~, d5@4 ~@8 d5 ~@3", // F#m D F#m
AJ: "[e4,a4,c#5]@3 ~ [e4,a4]@3 ~ [e4,a4,c#5]@3 ~ [e4,a4,c#5]@3 ~", // A A5 A
AK: "[f#4,a4,d5]@3 ~ [f#4,a4]@3 ~ [f#4,a4,d5]@3 ~ [f#4,a4]@4", AL: "[f#4,a4,d5]@3 ~",
AM: "[[d4,f#4,a4]@2 ~@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 ~@2 [f#4,a4]@2 ~@2 [d4,a4]@5 ~ d4@2 [f#4,a4]@2 d4 ~, ~@2 d4@2 ~@3 d4@2 ~ f#4@3 ~@3]/2", // D F#m D5 F#m
AN: "[d4,g4,b4]@2 ~@2 [g4,b4]@6 d4@2 [g4,b4]@2 d4 ~, ~ d4 ~@2", // G
AO: "[f#4,a4]@2 d4@2 [f#4,a4]@2 d4@2 [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~", // F#m
AP: "[[d4,f#4,a4]@2 ~@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 ~@2 [f#4,a4]@2 ~@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~, ~@2 d4@2 ~@3 d4@2 ~ d4@2 ~@4]/2", // D F#m
AQ: "[e4,a4,c#5] ~ [a4,c#5]@3 e4 [a4,c#5] e4, ~ e4 ~@2", // A
AR: "[a4,c#5]@2 e4 ~ e4 ~ e4 ~@3 e4@2 [a4,c#5]@2 e4 ~, ~@4 [a4,c#5]@7 ~@5", // A
AS: "[[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@6 d4@2 [f#4,a4]@2 ~@2 [f#4,a4]@2 ~@2 [f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~, ~@7 d4@2 ~ d4@2 ~@4]/2", // D F#m
AT: "[d4,g4,b4]@2 ~@2 [d4,g4,b4]@5 ~ d4@2 [g4,b4]@2 d4 ~", // G
AU: "[d4,f#4] ~@3 [d4,f#4,a4]@6 d4@2 [f#4,a4]@2 d4@2, a4 ~@7", AV: "[f#4,a4] ~@3 [d4,f#4,a4]@6 d4@2 [f#4,a4]@2 d4 ~",
AW: "[e4,a4,c#5]@2 ~@2 [e4,a4,c#5]@4 e4 ~ [e4,a4,c#5]@5 ~", // A
AX: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@3 ~ [g4,b4]@2 d4 ~ [d4,g4,b4]@2 ~@2", AY: "[d4,f#4,a4]@13 ~@3",
AZ: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~", // D F#m
BA: "[d4,f#4,a4]@2 ~@2 [d4,f#4,a4]@4 [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~", // D F#m
BB: "[d4,g4,b4]@2 ~@2 [g4,b4]@3 ~ [g4,b4]@2 d4@2 [g4,b4]@2 d4@2, ~ d4 ~@2", // G
BC: "[g4,b4]@2 ~@2 [d4,g4,b4]@3 ~ [g4,b4]@2 d4@2 [g4,b4]@2 d4@2, d4 ~@15", // G
BD: "[[f#4,a4]@2 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4]@2 ~@2 [f#4,a4]@2 ~@2 [d4,f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~, ~@2 d4@2 ~@3 d4@2 ~@7]/2", // F#m D F#m
BE: "[e4,g#4,b4]@2 ~@2 [g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4]@2 e4 ~, ~ e4 ~@2", // E G#m
BF: "[d4,f#4,a4]@2 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~, ~ d4 ~@2", // D F#m
BG: "[d4,g4,b4]@2 ~@2 [g4,b4]@3 ~ [g4,b4]@2 d4@2 [g4,b4]@2 d4 ~, ~ d4 ~@2", // G
BH: "[g4,b4]@2 ~@2 [g4,b4]@3 ~ [g4,b4]@2 d4@2 [g4,b4]@2 d4@2, ~ d4 ~@2", // G
BI: "[d4,a4]@2 ~@2 [f#4,a4]@3 ~ [f#4,a4]@2 d4@2 [f#4,a4]@2 d4 ~, f#4 ~@3 d4@4 ~@8", // D5 F#m
BJ: "[e4,a4,c#5] ~@3 [e4,a4,c#5]@4 [a4,c#5]@2 e4@2 [a4,c#5]@2 e4 ~", // A
BK: "[f#4,a4] ~@3 [f#4,a4]@2 d4@2 [g4,b4]@2 d4@2 [g4,b4]@2 ~@2, d4@2 ~@2 d4 ~@11", // F#m G
BL: "[e4,g#4,b4] ~ [e4,g#4,b4]@2 [g#4,b4] ~ [g#4,b4] ~, ~@8 e4 ~ e4@5 ~", // E G#m
BM: "[e4,g#4,b4]@3 ~ [e4,g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4] ~@3, ~@8 e4 ~@7", // E G#m
BN: "[a#4,c#5]@2 ~@2 [a#4,c#5]@3 ~ [a#4,c#5]@2 f#4@2 [a#4,c#5] ~@3", // A#m
BO: "[b4,d#5]@3 ~ [b4,d#5]@3 ~ [b4,d#5]@2 f#4@2 [b4,d#5] ~@3", // B
BP: "[[e4,g#4,b4]@2 ~@2 [e4,g#4,b4]@4 [g#4,b4]@2 e4@2 [g#4,b4]@2 ~@2 [g#4,b4]@2 ~@2 [e4,g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4] ~@3, ~@8 e4 ~@5 e4@5 ~@13]/2", // E G#m E G#m
BQ: "[[e4,a4,c#5]@3 ~ [e4,a4,c#5]@3 ~ [a4,c#5]@2 e4@2 [a4,c#5]@2 ~@2 [a4,c#5]@2 ~@2 [e4,a4,c#5]@4 [a4,c#5]@2 e4@2 c#5@2 e4 ~, ~@14 e4@5 ~@5 e4 ~@3 a4 ~@3]/2", // A
BR: "[e4,g#4,b4]@3 ~ [e4,g#4,b4]@4 [g#4,b4]@2 e4@2 [g#4,b4] ~@3", // E G#m
BS: "[b4,d#5]@2 ~@2 [f#4,b4,d#5]@3 ~ [b4,d#5]@2 f#4@2 [b4,d#5] ~@3", // B
BT: "[e4,g#4,b4]@3 ~ [e4,g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4]@2 e4 ~", // E G#m
BU: "[e4,a4,c#5]@3 ~ [e4,a4,c#5]@4 [a4,c#5]@2 e4@2 [a4,c#5]@2 ~@2, ~@8 e4 ~@7", // A
BV: "[e4,g#4,b4]@3 ~ [g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [g#4,b4] ~@3, ~ e4 ~@2", // E G#m
BW: "[b4,d#5]@3 ~ [b4,d#5]@3 ~ [b4,d#5]@2 f#4@2 [b4,d#5] ~@3, f#4 ~@3 f#4 ~@11", // B
BX: "[e4,g#4,b4]@3 ~ [g#4,b4]@2 e4@2 [a4,c#5]@2 e4@2 [a4,c#5]@2 e4 ~", BY: "[e4,g#4,b4]",
})).s("gm_piano").gain(0.29).pan(0.8)
// bass · electric bass finger · "FINGERDBAS"
const bass = note(`<
~ A B C D E F G H I J K L I M N I O P Q R S T U V S@2 W X S@2 Y Z AA AB S D AC AD AE AF H AG AH AI H AJ AK AL H AM AN
H AO AP S D S AQ AR Z S AS AT AU AV AW AX Z AY AZ AQ BA ~@2 BB BC BD@2 BE BF BD BG BH BI BG BJ BG BK BG BL BM BN@2
>`.pickRestart({
A: "d2@3 ~ d2@3 ~ a1 ~ a1 ~ b1@2 c#2@2", B: "d2@3 ~ d2@3 ~ f#2@2 a2@2 f#2@3 ~", C: "d2@2 a2 b2 d3 b2 a2 f#2",
D: "d2@3 ~", E: "d2@3 ~ d2@3 ~ a1 ~ a1@2 b1@2 a1@2", F: "d2@4 ~@2 d2@2 d2 ~ d2@2 e1@2 f#1@2",
G: "g1@6 d2@2 g2 ~ g2@2 d2@2 b1@2", H: "d2@4 ~@2 d2@2 a1 ~ a1@2 b1@2 a1@2", I: "d2@5 ~ d2@2 a1 ~ a1@2 b1@2 a1@2",
J: "d2@5 ~ d2 ~ d2 ~ d2@2 c#2@2 b1@2", K: "a1@4 ~@2 a1@2 e1 ~ e1@2 f#1@2 e1@2",
L: "a1@3 ~ a1@3 ~ b1@2 a1@2 b1@2 c#2@2", M: "d2@5 ~ d2@2 a1 ~ a1@2 b1@2 a1 ~", N: "g1@5 ~ d2@2 g2 ~ g2@2 d2@2 b1@2",
O: "d2@4 ~@2 d2 ~ d2 ~ d2@2 c#2@2 b1@2", P: "a1@5 ~ a1 ~ a1 ~ a1@2 b1@2 a1@2", Q: "d2@5 ~ e2@2 f#2@2 a2@2 b2@2 a2@2",
R: "d3@3 ~", S: "d2@4 b1@4 a1 ~ a1@2 b1@2 a1@2", T: "d2@4 b1@3 ~ a1 ~ a1@2 e1@2 f#1@2",
U: "g1@4 e2@4 d2@3 ~ e2@2 d2@2, ~@4 d#2 ~@11", V: "g2@4 e2@4 d2 ~ d2@2 b1@4", W: "e1 f#1 g1 g#1",
X: "a1 ~ a1@2 b1@4 c2 ~ c2@2 c#2@3 ~", Y: "g2@4 e2@4 d2 ~ d2@2 e2@2 d2@2", Z: "g2@4 e2@4 d2 ~ d2@2 a1@2 b1@2",
AA: "d2@4 b1@4 a1 ~ a1@2 b1@2 f#1@2", AB: "a1@4 g1@4 f#1 ~ f#1@2 e1@4", AC: "d2@4 ~@4 d2 ~ d2@2 c#2@2 b1@2",
AD: "a1@4 ~@2 a1 ~ a1 ~ a1@2 b1@2 c#2@2", AE: "d2@2 f#2 a2 b2 d3 b2 a2", AF: "d2@5 ~@3",
AG: "d2@4 ~@2 d2@2 a1 ~ a1@2 b1@2 a1 ~", AH: "g1@5 ~ b1@2 d2 ~ d2@2 b1@2 g1@2",
AI: "d2@4 ~@2 b1@2 a1 ~ a1@2 b1@2 a1@2", AJ: "d2@4 ~@2 d2@2 a1 ~ a1@2 f#1@2 g1@2",
AK: "a1@3 ~@3 a1@2 e1 ~ e1@2 f#1@2 e1 ~", AL: "a1 ~ a1@2 b1 ~ b1@2 c#2 ~ c#2@2 a1 ~ a1@2",
AM: "d2@3 ~@3 d2@2 a1 ~ a1 ~ e1@2 f#1@2", AN: "g1@4 ~@2 d2@2 g2 ~ g2@2 b1@2 g1@2",
AO: "d2@4 ~@2 d2@2 c2 ~ c2@2 b1 ~ b1@2", AP: "a1@4 ~@2 a1@2 g1 ~ g1@2 f#1@2 e1@2",
AQ: "d2@4 b1@4 a1 ~ a1@2 b1@2 a1 ~", AR: "g1@3 ~ e2@4 d2 ~ d2@2 e2@2 d2@2", AS: "d2@4 b1@4 a1 ~ a1@2 f#1@2 f1@2",
AT: "e1@2 f#1@2 g1!2 g#1!2", AU: "a1@4 b1@4 c2@2 c#2@2 d2@2 b1 ~", AV: "d2@3 ~ b1@4 a1 ~ a1@2 b1@2 a1@2",
AW: "d2@4 b1@4 a1 ~ a1@2 e1@2 f#1@2", AX: "g1@4 e2@4 d2 ~ d2@2 e2@2 d2@2", AY: "d2@4 b1@4 a1 ~ a1@2 b1@4",
AZ: "a1@4 g1@3 ~ f#1@4 e1@3 ~", BA: "d2@3 ~@5", BB: "~@7 b2", BC: "c#3@2 e3 ~ e3 ~ e3@2 c#3 b2 a2@2 g#2@2 f#2@2",
BD: "e2@4 c#2@4 b1 ~ b1@2 c#2@2 b1@2", BE: "f#1@4 g#1@3 ~ a1 ~ a1@2 a#1 ~ a#1@2", BF: "b1@4 f#2@4 b2@4 f#2@2 b1 ~",
BG: "e2@4 c#2@4 b1 ~ b1@2 c#2@2 b1 ~", BH: "a1@4 f#1@3 ~ e1 ~ e1@2 f#1@2 e1@2", BI: "a1@4 f#1@4 e1 ~ e1@2 f#1@2 e1 ~",
BJ: "b1@4 g#1@3 ~ f#1 ~ f#1@2 g#1@2 f#1 ~", BK: "a1@4 c#2@2 a1@2 e2 ~ e2@2 f#2@2 e2 ~",
BL: "b1@3 ~ b1@3 ~ b1 ~ b1@2 c#2@2 b1@2", BM: "e2@3 ~ c#2@4 b1 ~ b1@2 c#2@4", BN: "[e2@3 ~ b1@2 ~@2 e2@16 ~@8]/2",
})).s("gm_electric_bass_finger").gain(0.37)
// chords · electric guitar clean · "CLEAN GTR"
const electric_guitar_clean = note(`<
~ A@3 B C@2 D E@3 F@2 G@2 H I@2 J K L M@2 N@2 O@2 P Q R@2 S@2 T U V W X Y Z@2 AA@2 AB AC@3 AD@2 AE@2 AF AG@2 AH AI AJ
AK@2 AL@2 AM@2 AN AO AP@2 AQ@2 AR Y AS AT ~@4 AU@2 AV AW AX@2 AY@2 AZ BA BB BC BD BE BF BG@2
>`.pickRestart({
A: "[~@4 a4@4 a4@4 ~@2 f#4@2 ~@8 a4@2 f#4@2 ~@2 f#4@2 ~@8 a4@2 f#4@2 ~@2 f#4 ~, f#4@3 ~@3 a4@4 a4@2 ~@2 a4@4 a4@2 ~@2 a4@2, ~@11 f#4@2 ~@6 f#4@2 ~@3]/3",
B: "f#4@11 ~@5",
C: "[~@7 f#4 ~@3 f#4 ~@2 a4 f#4, f#4@3 f#4@2 f#4@2 ~ f#4@3 ~@2 f#4@2 ~, ~@4 a4@4 a4@4 a4@7 ~ a4@4 a4@4 ~@4]/2",
D: "~@2 b4@2 b4 g4 b4 g4, g4@3 ~@5",
E: "[~@4 a4@4 ~@2 f#4@2 ~@2 f#4@2 ~@6 f#4@2 ~@2 f#4@2 ~@2 f#4@2 ~@6 f#4@2 ~@2 f#4@2 a4@2 f#4 ~, f#4@6 ~@2 a4@4 a4@7 ~ a4@4 a4@4 a4@7 ~ a4@4 a4@4 ~@4, ~@8 f#4@3 ~@5 f#4@3 ~@5]/3",
F: "[~@4 c#5@4 ~@6 a4@2 ~@4 c#5@2 a4@2 ~@4 c#5@2 a4 ~, a4@6 ~@2 c#5@4 c#5@7 ~@5 c#5@4 ~@4, ~@5 a4@2 ~ a4@3 ~@2 a4@2 ~]/2",
G: "[~@2 a4 ~@12 f#4, f#4@3 f#4@2 f#4@2 ~ f#4@3 f#4@2 f#4@2 ~, ~@2 a4 a4@2 a4!3]/2",
H: "~@8 b4@3 ~ b4@2 g4 ~, g4@3 g4@2 ~@3, ~ b4 ~@2",
I: "[f#4@4 ~@10 f#4@2 ~@6 f#4@2 ~@2 f#4@2 a4@2 f#4 ~, ~@4 a4@4 a4@4 a4@7 ~ a4@4 a4@4 ~@4, ~@3 f#4@2 f#4@2 ~ f#4@3 ~@5]/2",
J: "~@6 a4@2 c#5@2 ~@2 c#5@2 a4 ~, a4@3 ~@2 a4@2 ~, ~ c#5 ~@2", K: "f#4@2 ~@3 a4 ~ a4, ~@2 a4@3 ~@3, ~@3 f#4@3 f#4@2",
L: "[d4,f#4,a4]@3 ~", // D
M: "[~@10 f#4@2 ~@2 f#4@2 f#4@4 a4@4 a4@2 ~@2 a4@2 f#4 ~, f#4@3 f#4@2 ~@8 f#4@2 ~, ~@4 a4@4 a4@4 a4@7 ~@13]/2",
N: "[~@2 b4 g4 ~ g4 ~ g4 ~@2 b4 g4 b4 g4 b4 g4, g4@3 ~ b4@2 b4@4 ~@6, ~@8 g4@3 ~@5]/2",
O: "[~@6 f#4@2 a4@2 f#4@2 ~@2 f#4@2 f#4@4 a4@2 f#4@2 a4@2 f#4@2 a4@2 f#4 ~, f#4@3 ~@13, ~ a4 ~ a4@2 ~@3]/2",
P: "~@2 b4@2 ~ g#4 b4 g#4, g#4@3 ~ b4@2 ~@2", Q: "~@4 c#5@4 c#5@3 ~ c#5@3 ~, a4@9 ~@7",
R: "[f#4@4 a4@4 ~@2 f#4@2 ~@2 f#4@2 ~@4 a4@2 f#4@2 a4@4 a4@2 f#4 ~, ~@8 a4@4 a4@7 ~@13, ~@8 f#4@3 ~@5]/2",
S: "[g4@4 ~@2 g4@2 b4@3 ~@3 g4@2 g4@4 b4@4 b4@4 ~@2 g4 ~, ~@4 b4@4 ~@4 b4@7 ~@9 b4@4]/2",
T: "f#4@4 ~@2 f#4@2 ~@2 f#4@2 a4@2 f#4 ~, ~ a4!2 ~", U: "a4@4 ~@2 a4@2 c#5@2 a4@2 c#5@2 a4 ~, ~ c#5 ~@2",
V: "f#4@4 a4@2 f#4 ~ g4@2 ~@2 g4@2 g4@2, ~@10 b4@5 ~", W: "[f#4,a4]@3 ~",
X: "~@6 f#4@2 a4@4 ~@2 f#4 ~, f#4@3 ~@5, ~ a4 ~ a4", Y: "~@4 c#5@4 ~@4 c#5@2 a4 ~, a4@3 ~ c#5@2 ~@2, ~@5 a4@2 ~",
Z: "[~@4 a4@2 f#4@2 ~@6 a4@2 ~ a4@11 ~@4, f#4@3 ~ a4@3 ~@9, ~@5 f#4@3 f#4@6 ~@2, ~@3 d4@4 ~]/2",
AA: "[~@6 f#4@2 a4@3 ~@3 f#4@2 f#4@4 ~@2 f#4@2 ~@4 a4@2 f#4@2, f#4@3 ~@10 f#4@2 ~, ~ a4 ~ a4@2 a4!2 ~]/2",
AB: "~@3 g4 b4@2 ~ g4, g4@3 ~@5, ~ b4 ~ b4",
AC: "[~@6 f#4@2 ~@2 f#4@2 ~@8 a4@2 f#4@2 a4@4 ~@2 f#4@2 f#4@4 ~@2 f#4@2 ~@2 f#4@2 a4@2 f#4 ~, f#4@3 ~@4 f#4@4 ~@13, ~@4 a4@4 a4@4 a4@7 ~@9 a4@7 ~ a4@4 a4@4 ~@4]/3",
AD: "[~@2 c#5@2 ~ a4 ~ a4 ~@2 c#5@2 ~ a4 ~ a4, a4@2 c#5 c#5@2 ~ c#5!2, ~@16 a4@9 ~@7]/2",
AE: "[~@3 f#4 ~ f#4 ~ f#4 ~@3 f#4 ~ f#4 ~ f#4, f#4@3 ~@5 f#4@3 ~@5, ~@4 a4@4 a4@4 a4@7 ~ a4@4 a4@4 a4@4]/2",
AF: "g4@4 ~@2 g4@2 b4@2 g4@2 ~@2 g4 ~, ~ b4 ~ b4",
AG: "[f#4@4 a4@3 ~@3 f#4@2 ~@2 f#4@2 f#4@4 a4@3 ~@3 f#4@2 a4@2 f#4 ~, ~@8 a4@4 a4@7 ~@5 a4@4 ~@4]/2",
AH: "a4@4 ~@2 a4@2 ~@2 a4@2 c#5@2 a4 ~, ~ c#5!2 ~", AI: "f#4@4 ~@2 f#4@2 g4@2 ~@2 g4@3 ~, ~@4 a4@4 ~@2 b4@5 ~",
AJ: "[f#4,a4]@11 ~@5", AK: "[f#4@2 a4 ~ a4@2 ~ f#4 f#4@2 a4@2 a4@2 ~ f#4, ~@6 f#4@4 ~@2 a4@7 ~@9 a4@4]/2",
AL: "[g4@4 ~@2 g4@2 b4@2 g4@2 ~@2 g4@2 g4@4 b4@4 b4@2 g4@2 ~@2 g4 ~, ~ b4 ~ b4@2 ~@2 b4]/2",
AM: "[f#4@4 ~@2 f#4@2 a4@2 f#4@2 ~@2 f#4@2 f#4@4 ~@2 f#4@2 a4@2 f#4@2 a4@2 f#4 ~, ~@4 a4@4 ~@4 a4@7 ~ a4@4 ~@8]/2",
AN: "~@4 b4@3 ~ b4@3 ~ b4@2 g#4@2, g#4@3 ~@5", AO: "~@4 c#5@2 a4@2 ~@2 a4@2 c#5@3 ~, ~@2 c#5 ~",
AP: "[f#4@4 a4@3 ~ a4@4 ~@2 f#4@2 f#4@4 a4@4 ~@4 a4@2 f#4 ~, ~@12 a4@7 ~@5 a4@4 ~@4, ~@13 f#4@2 ~]/2",
AQ: "[g4@2 ~ g4 b4@2 ~ g4 g4@2 b4@2 b4@2 ~ g4, ~@4 b4@4 ~@4 b4@7 ~@9 b4@4]/2", AR: "f#4@2 a4@2 ~ f#4 a4 ~, ~@2 a4 ~",
AS: "~@6 f#4@2 ~@4 g4@3 ~, f#4@3 ~ g4@2 ~@2, ~@4 a4@4 ~@2 b4@5 ~", AT: "[f#4,a4]@7 ~",
AU: "[g#4@4 b4@2 ~@4 g#4@2 ~@8 b4@2 g#4@2 ~@2 g#4@2 b4@2 g#4 ~, ~@3 g#4@2 ~@3 g#4@3 ~@5, ~@2 b4 b4@2 ~ b4 ~]/2",
AV: "~@4 c#5@4 ~@4 c#5@2 a#4 ~, a#4@3 ~ c#5@2 ~@2, ~@5 a#4@2 ~", AW: "~@4 d#5@3 ~@3 b4@2 d#5@2 ~@2, b4@3 ~ d#5@2 ~@2",
AX: "[g#4@4 ~@2 g#4@2 ~@2 g#4@2 ~@2 g#4@2 ~@6 g#4@2 ~@4 b4@2 g#4 ~, ~ b4!2 b4@2 b4!2 ~, ~@8 g#4@3 ~@2 g#4@2 ~]/2",
AY: "[a4@4 ~@2 a4@2 c#5@2 a4@2 ~@2 a4@2 a4@4 ~@2 a4@2 ~@2 a4@2 c#5@2 a4 ~, ~ c#5 ~ c#5@2 c#5!2 ~]/2",
AZ: "~@4 b4@2 g#4@2 ~@2 g#4@2 b4@2 g#4 ~, g#4@3 ~ b4@2 ~@2",
BA: "~@4 d#5@2 b4@2 d#5@2 ~@2 d#5@2 b4 ~, b4@3 ~@2 b4@2 ~", BB: "~@6 g#4@2 b4@4 b4@2 g#4 ~, g#4@3 ~@5, ~ b4 ~@2",
BC: "a4@4 c#5@3 ~ c#5@2 ~@2 c#5@2 a4 ~, ~@5 a4@2 ~", BD: "g#4@4 ~@2 g#4@2 b4@3 ~ b4@2 ~@2, ~ b4 ~@2",
BE: "~@4 d#5@2 b4@2 ~@4 d#5@2 b4 ~, b4@3 ~ d#5@2 ~@2, ~@5 b4@2 ~",
BF: "~@4 b4@2 g#4@2 ~@4 a4@2 a4 ~, g#4@3 ~ a4@2 ~@2, ~@10 c#5@5 ~",
BG: "[[g#4,b4]@2 ~@2 [b4,d#5]@2 ~@3 e5@15 ~@8, ~ [g#4,b4]@2 ~]/2", // G#m B G#m
})).s("gm_electric_guitar_clean").gain(0.18).pan(0.2)
// chords · electric guitar clean · "CLEAN GTR" · soft notes
const electric_guitar_clean_2 = note(`<
~ A B C ~@3 D E ~@2 F ~@3 G ~@6 E ~@4 H I E J G K ~@4 L M ~@2 L ~ G ~ L ~@7 E ~@3 L N ~ O ~@2 P ~ A E G ~ E ~@7 Q ~
R@2 ~@6 S M S ~@2 T ~
>`.pickRestart({
A: "~@3 f#4@2 f#4@2 ~", B: "f#4@5 ~@11", C: "f#4 ~@3", D: "b4@4 ~@2 g4@3 ~@7", E: "~@6 f#4@3 ~@7", F: "~@3 a4@2 ~@3",
G: "~@10 g4@3 ~@3", H: "~@6 g#4@3 ~@7", I: "~@10 a4@3 ~@3", J: "~@5 f#4@2 ~", K: "~@6 g4@3 ~ g4@4 ~@2",
L: "~@10 f#4@3 ~@3", M: "~@6 a4@3 ~@7", N: "~@6 f#4@3 ~ f#4@4 ~@2", O: "~@6 g4@3 ~@7", P: "~@6 g#4@3 ~ g#4@3 ~@3",
Q: "~@7 g#4", R: "[~@6 a#4@3 ~@6 d#5@4 ~@3 b4@3 ~@7]/2", S: "~@10 g#4@3 ~@3", T: "~@2 f#4 ~@5",
})).s("gm_electric_guitar_clean").gain(0.12).pan(0.2)
// chords · harpsichord · "HARPSICHRD"
const harpsichord = note(`<
~ A@3 B C@6 D E F@5 G H@2 I@6 J K L@5 M N@2 O M P Q R@6 S T U@4 V W X@2 Y@3 Z@3 AA AB AC@4 AD AE AF@2 ~@4 AG@2 AH AI
AJ AK W AL@2 AM AN AO@2 AP AQ AR@2
>`.pickRestart({
A: "[[d4,f#4,a4]@4 [d4,f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 ~@2 d4@2 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 ~@2 d4@2 ~@2 d4@2 [f#4,a4]@2 d4 ~, ~@2 [f#4,a4] ~@2 [f#4,a4]!2 ~@2 [f#4,a4]!2 ~, ~@5 d4@2 d4@4 ~@2 d4@2 d4@4 ~@5]/3", // D F#m
B: "[d4,f#4,a4]@13 ~@3", // D
C: "[[d4,f#4,a4]@4 d4@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 [d4,f#4,a4]@4 [f#4,a4]@2 ~@2 [f#4,a4]@2 ~@2 [g4,b4]@4 [d4,g4,b4]@4 ~@4 [g4,b4]@2 ~@6 [f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 [d4,f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 d4@2 d4@2 ~@4 [f#4,a4]@2 d4 ~, ~ [f#4,a4]@2 ~@7 [g4,b4] ~ [f#4,a4] ~ [f#4,a4] ~@3 [f#4,a4] ~@2 [f#4,a4]!2 ~, ~@4 d4@3 d4@3 ~@3 d4@2 d4@3 ~@2 d3@7 ~@21, ~@21 d4@2 d4@2 d4@3 ~ d4@2 d4@3 ~@3 d4@2 d4@3 ~@3 d4@2 ~]/6", // D F#m D F#m G F#m D F#m …
D: "[e4,a4,c#5]@2 [e4,a4,c#5]@2 ~@2 [a4,c#5] e4, ~@2 [a4,c#5] ~, ~@5 e4@2 ~", // A
E: "~@2 e4@2 [a4,c#5]@4 ~@2 e4@2 [a4,c#5]@2 e4 ~, [a4,c#5] ~ [a4,c#5] ~", // A
F: "[[d4,f#4,a4]@4 d4@2 d4@2 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 d4@2 d4@2 ~@2 d4@2 [f#4,a4]@2 ~@8 d4@2 ~@4 [g4,b4]@2 ~@4 d4@2 [d4,f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 ~@2 d4@2 ~@4 [f#4,a4]@2 d4 ~, ~ [f#4,a4]!2 ~@2 [f#4,a4]!2 ~ [g4,b4]!3 ~ [f#4,a4] ~ [f#4,a4] ~@2 [f#4,a4]!2 ~, ~@5 d4@2 d4@3 ~@5 d4@2 d4@2 ~@2 d4@2 d4@2 ~@4 d4@2 d4@4 ~@2 d4@2 ~]/5", // D F#m G D F#m G F#m
G: "[e4,a4,c#5]@4 e4@2 e4@2 ~@4 [a4,c#5]@2 e4 ~, ~ [a4,c#5]!2 ~, ~@5 e4@2 ~", // A
H: "[d4@2 ~@4 d4@2 ~@4 [e4,g4]@2 ~@2 [f#4,a4]@13 ~@3, [f#4,a4]@4 [f#4,a4]@4 [f#4,a4]@7 ~@17, ~@2 d4@4 ~@4 d4@4 d4@15 ~@3]/2", // Em F#m
I: "[[d4,f#4,a4]@3 ~ [f#4,a4]@4 ~@2 d4@2 [f#4,a4]@2 ~@2 [f#4,a4]@4 [f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [g4,b4]@4 ~@2 [g3,d4]@2 ~@4 [g4,b4]@2 ~@2 [g4,b4]@4 ~@2 d4@2 ~@4 [g4,b4]@2 ~@2 [f#4,a4]@4 [f#4,a4]@3 ~ [f#4,a4]@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 ~@2 d4@2 ~@4 [f#4,a4]@2 d4 ~, ~@4 d4@6 ~@4 d4@9 ~@3 d4@4 d4@4 ~@2 [g4,b4]@4 [g4,b4]@4 ~@8 [g4,b4]@4 [g4,b4]@4 ~@24 [f#4,a4]@4 [f#4,a4]@4 ~@4, ~@8 [f#4,a4]@4 ~@12 [f#4,a4]@4 ~@4 g3@6 ~@4 d4@4 d4@8 ~@4 d4@4 d4@6 d4@4 ~@6 d4@7 ~@5 d4@4 ~@2]/6", // D F#m G G5 G F#m G F#m
J: "[e3,e4,g#4,b4]@2 e4!2 ~@2 [g#4,b4] e4, ~ [g#4,b4]!2 ~, ~@5 e4@2 ~", // E G#m
K: "[a4,c#5]@4 ~@2 e4@2 ~@4 [a4,c#5]@2 e4 ~, ~ [a4,c#5]!2 ~, ~@5 e4@2 ~", // A
L: "[[d4,f#4,a4]@4 [d4,f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [f#4,a4]@4 [d4,f#4,a4]@4 ~@4 [f#4,a4]@2 ~@2 [g4,b4]@4 [d4,g4,b4]@4 ~@4 [g4,b4]@2 ~@2 [g4,b4]@4 [d4,g4,b4]@4 ~@4 [g4,b4]@2 ~@2 [f#4,a4]@4 d4@2 d4@2 ~@4 [f#4,a4]@2 d4 ~, ~@2 [f#4,a4] ~@3 [f#4,a4] ~@3 [g4,b4] ~@3 [g4,b4] ~@2 [f#4,a4]!2 ~, ~@5 d4@2 d4@3 ~@3 d4@2 d4@3 ~@3 d4@2 d4@3 ~@3 d4@2 d4@3 ~@3 d4@2 ~]/5", // D F#m D F#m G F#m G F#m
M: "[e4,a4,c#5]@4 ~@2 e4@2 ~@4 [a4,c#5]@2 e4 ~, ~ [a4,c#5]!2 ~, ~@5 e4@2 ~", // A
N: "[[d4,f#4,a4]@4 d4@2 d4@2 [g4,b4] ~ d4@2 d4@2 [d4,f#4,a4]@12 ~@6, ~@4 [f#4,a4]@4 ~@2 [g4,b4]@5 ~@17]/2", // D G D F#m G
// … 203 more lines
More by Olivia Newton-John
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.