0:00/0:00
// Swan Lake (suite) Op.20a — Peter Tchaikovsky
// 92 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: sustain pedal (CC 64) lengthens the held notes
// note: Transcription provider: pdmx. https://musescore.com/score/5329851; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 62 bars on a 32-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(92/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
const piano = note(`<
~ A B C D A B C E F G H I F J K L M N O@2 P@2 Q R S T U V W X U Y Z AA Z AA AB AC AB AC AD AE AF AG AH@2 AI@2 AJ@4 AK
AL@3 AM ~@4
>`.pickRestart({
A: "f#5@4 b4 c#5 d5 e5", B: "f#5@11 ~ d5@4 f#5@11 ~ d5@4", C: "f#5@11 ~ b4@4 d5@4 b4@4 g4@4 d5@4",
D: "b4@19 ~ e5@4 d5@4 c#5@4", E: "b4@15 ~@9 b4@8",
F: "~@13 c#4@3 ~@13 c#4@3, c#5 e5, ~@3 c#4@10 ~@6 c#4@9 g5@4, ~@5 e4@5 ~ e4@5 ~@5 e4@5 ~ e4@5, ~ [a4,d5] ~ [a4,f#5]", // D5 D
G: "~@13 c#5@3 ~@12 a5@4, a5@11 a4 g5@4 ~@8 g5@8, ~@3 a3@13 ~@16, ~@5 c#4@11 ~@16, ~ f#4 [a4,f#5]@2", // D
H: "g4@8 ~@5 e5@3 ~@12 b5@4, [e4,b4,b5] ~, ~ g4 [g4,b4,g5]@2, ~@11 a4@5 ~@16, ~@3 a5 ~@2 a5@2", // E5 G
I: "f4@8 ~@5 c#5@3 ~@12 b4@4, c#6 ~, [g#4,c#5]@11 g#4@5 [a#4,f#5]@16, ~ f4 f#4 [d4,f#4,c#5], ~@3 b5 ~ d5@3", // C#5 D#m Dmaj7
J: "~@13 c#5@3 ~@12 a5@4, a5@11 a4 g5@4 ~@8 g5@8, ~@3 a3@13 ~@16, ~@5 c#4@11 ~@16, ~ f#4 [f#4,a4,f#5]@2", // F#m
K: "g4@8 ~@5 e5@3 g4@8 ~@5 f5@3, [e4,b4,b5] [f4,g5], ~ g4 ~ [g4,a5], ~@11 a4@5 b4@11 b4@5, ~@3 a5 ~@3 b5", // E5 Fsus2 Gsus2
L: "~@7 c6, [g4,c5], c6@7 ~, e5!2, ~@3 g5@3 g5@2", // C5
M: "~@15 c#5 ~@15 c#5, c#6!2, g#4!6 g#5@2 ~@6 f#5@2, ~ c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 ~@2 c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 c#5@2 ~, ~@6 g#4!2 a#4!8",
N: "~@31 e5, [f#5,b5], b4!8 [g4,b4]!8, ~ d5@2 d5@2 d5@2 d5@2 d5@2 d5@2 d5@2 d5@17, ~@17 e5@2 e5@2 e5@2 e5@2 e5@2 e5@2 e5@2 ~", // B5 G
O: "[~@47 b4 [b4,g5] [g4,d5] [b4,g5] [g4,d5] [b4,g5] [g4,d5] [b4,g5] [g4,d5] [a#4,a#5] [e4,e5] [a#4,a#5] [e4,e5] [a#4,a#5] [e4,e5] [a#4,a#5] [e4,e5], [d5,f#5]!16 [d5,f#5]!8 ~@8, ~ b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 b4@2 ~@17]/2", // Em G5 Em G5 Em G5 Em G5 …
P: "~@15 [b4,f#5] ~@15 [b4,g5], [d5,b5]!8 [e5,b5]!8, ~ [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 ~@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 ~", // B5 Em G E5 B5 Em
Q: "~@31 [b4,f#5], [d5,b5]!16, ~ [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 ~", // B5 G B5
R: "~@15 [b4,f#5] ~@7 [g4,d5] ~@7 [e4,e5], [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 [d5,b5]@2 ~ [g4,d5]@2 [g4,d5]@2 [g4,d5]@2 ~@2 [e4,e5]@2 [e4,e5]@2 [e4,e5]@2 ~, ~ [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 [b4,f#5]@2 ~ [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [b4,g5]@2 [a#4,a#5]@2 [a#4,a#5]@2 [a#4,a#5]@2 [a#4,a#5]@2", // B5 G5 E G G5 E B5 Em …
S: "[f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@2 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@2 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@2 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@3 [f#4,b4,d5,f#5,b5]@2 [f#4,b4,d5,f#5,b5]@3", // Bm
T: "[a4,c#5,e5,a5,c#6]@3 [a4,c#5,e5,a5,c#6]@2 [a4,c#5,e5,a5,c#6]@3 [a4,c#5,e5,a5,c#6]@3 [a4,c#5,e5,a5,c#6]@2 [a4,c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3", // A
U: "[c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@2 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@2 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@2 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@3 [c#5,f#5,a5,c#6]@2 [c#5,f#5,a5,c#6]@3", // F#m
V: "[e5,g5,b5,e6]@3 [e5,g5,b5,e6]@2 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@2 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@2 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@3 [e5,g5,b5,e6]@2 [e5,g5,b5,e6]@3", // Em
W: "[f5,g#5,c#6,f6]@3 [f5,g#5,c#6,f6]@2 [f5,g#5,c#6,f6]@3 [f5,g#5,c#6,f6]@3 [f5,g#5,c#6,f6]@2 [f5,g#5,c#6,f6]@3 [f#5,a#5,c#6,f#6]@3 [f#5,a#5,c#6,f#6]@2 [f#5,a#5,c#6,f#6]@3 [d5,f#5,b5,d6]@3 [d5,f#5,b5]@2 [b4,d5,f#5,b5]@3, ~@27 d6@5", // C# F# Bm
X: "[c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@3 [c#5,e5,a5,c#6]@2 [c#5,e5,a5,c#6]@3", // A
Y: "[e5,g5,b5,e6]@3 [e5,g5,b5,e6]@2 [e5,g5,b5]@3 [b4,e5,g5,b5]@3 [b4,e5,g5,b5]@2 [b4,e5,g5,b5]@3 [b4,f5,g5,b5]@3 [b4,f5,g5,b5]@2 [f5,g5,b5]@3 [f5,g5,b5]@3 [f5,g5,b5]@2 [f5,g5,b5]@3, ~@5 e6@11 ~@5 b4@11", // Em G7
Z: "[e5,g5,c6]@3 [e5,g5,c6]@2 [e5,g5,c6]@3 [e5,g5,c6]@3 [e5,g5,c6]@2 [e5,g5,c6]@3 [e5,g5,b5]@3 [e5,g5,b5]@2 [e5,g5,b5]@3 [e5,g5,b5]@3 [e5,g5,b5]@2 [e5,g5,b5]@3", // C Em
AA: "[c#5,f#5,a#5]@3 [c#5,f#5,a#5]@2 [c#5,f#5,a#5]@3 [c#5,f#5,a#5]@3 [c#5,f#5,a#5]@2 [c#5,f#5,a#5]@3 [e5,g5,b5]@3 [e5,g5,b5]@2 [e5,g5,b5]@3 [e5,g5,b5]@3 [e5,g5,b5]@2 [e5,g5,b5]@3", // F# Em
AB: "~@11 [c6,c7]@5 ~@11 [c6,c7]@5, [g4,c5,e5]!2, [c6,c7]@11 ~@5 [c6,c7]@11 ~@5, ~@5 [g5,g6]@16 [g5,g6]@11", // C G
AC: "[b4,e5,g5,b5,e6,g6]@16 [f#5,f#6]@11 [f#5,f#6]@5, ~ [a#4,e5,a#5,e6]", // Em F# A#dim
AD: "g4@5 ~@6 [c5,c6,c7]@5 g4@5 ~@6 [c5,c6,c7]@5, e5!2, [c5,c6,c7]@11 ~@5 [c5,c6,c7]@11 ~@5, ~@5 [g5,g6]@16 ~@11, ~@5 g4@11 ~@5 [g4,g5,g6]@11", // C G
AE: "[c#6,c#7]@27 [c#6,c#7]@5, [e4,g4,c#5,e5]", // C# C#dim
AF: "~@11 [d5,d6,d7]@5 ~@11 [d5,d6,d7]@5, f5, [f4,g#4]!2, [d5,d6,d7]@11 ~@5 [d5,d6,d7]@11 ~@5, ~@5 [a#4,a#5,a#6]@16 [a#4,a#5,a#6]@11", // D Fm D A#
AG: "~@27 [c#5,c#6,c#7]@5, [a#4,d5,e5,d6,e6,a#6,d7]", // C# Em7b5
AH: "[d5,d6,d7]@5 ~@11 [d5,d6,d7]@5 ~@6 [c#5,c#6,c#7]@5, a#4, ~@5 [d5,d6,d7]@11 ~@5 [d5,d6,d7]@11, ~@11 [c#5,c#6,c#7]@16 ~@5", // D C# D C#
AI: "[f#5@2 ~ f#6@2 e5@2 ~ e6@2 c#5@2 ~ c#6@2 a#4@2 ~ a#5@2 f#4@2 ~ f#5@2 ~ e4@2 e5@2 ~ c#4@2 c#5@2 ~ a#3@2 a#4@2 ~ f#4@5 ~@18]/2",
AJ: "[~@18 [f#4,b4,d5,f#5,b5,d6,f#6]@20 b5 ~ b6 b5 b6 c#6 ~ c#7 c#6 c#7 d6 ~ d7 d6 d7 ~ e6 e7 e6 e7 ~@4 f#7@2 ~@2 f#6@2 ~@3 f#6@2 f#7 ~ d7@2 ~ d7 ~ f#7@2 ~@3 f#7@2 ~@2 f#6@2 ~@2 f#7 d6@2 ~@2 d7 ~@4 f#7@2 ~@2 f#6@2 f#7 ~@2 d6@2 ~@3 d6@2 d7 ~ b6@2 ~@3 b6@2, ~@38 b4@5 c#5@5 d5@5 ~ e5@5 f#5@15 d5@5 f#5@15 d5@5 ~ f#5@10 d5@10 b4@8, ~@59 f#6@2 f#6@3 f#6@2 ~@3 f#6@2 ~@3 d6@3 d6@3 ~@3 f#7@2 ~@3 f#7@3 f#7@2 ~@3 d7@2 ~@3 f#7@2 ~@3 f#7@3 ~@2 d7@3 d7@2 d7@3 ~@5 b6@2 ~@2, ~@60 f#7@2 ~@3 f#7@3 f#7@2 f#7@3 ~@6 f#6@3 f#6@2 f#6@3 f#6@2 ~@3 f#6@3 ~@2 d6@3 f#6@2 f#6@3 f#6@2 ~@3 d6@2 ~@3 d6@2 ~@3 b5@3 b5@2 b5@3]/4", // Bm
AK: "~ b6 f#5@2 ~@3 f#5@2 ~@2 f#6 d6@2 ~@2 d7@2 ~@3 d7 ~@3 b5@2 ~@3 b5@2, b5@2 f#4@10 d5@10 ~ b4@9, ~@4 f#6@2 f#6@3 f#6@2 ~@3 d7@2 ~@3 d7@2 ~@3 b6@3 b6@2 b6@3, ~@5 f#5@2 ~@3 f#5@3 ~@2 d6@3 d6@2 d6@3 b5@2 ~@3 b5@2 ~@2",
AL: "[b6 ~@2 f#5@2 ~@2 f#6@2 ~ f#6 ~ d6@2 ~@2 d5@2 ~@2 d6 [f#5,f#6,f#7]@20 ~ [b4,b5,b6]@5 [c#5,c#6,c#7]@5 [d5,d6,d7]@5 [e5,e6,e7]@5 [f#5,f#6,f#7]@15 ~ [d5,d6,d7]@5 [f#5,f#6,f#7]@13, ~ f#4@10 d4@10 ~@75, ~ f#5@2 ~@3 f#5@3 f#5@3 ~@3 d6@3 d6@2 ~@76, ~@2 f#6@3 f#6@2 ~@4 d5@3 d5@2 ~@3 d5@3 ~@74]/3", // F# B C# D E F# D F#
AM: "~@2 [d5,d6,d7]@5 ~@25", // D
})).s("gm_piano").gain(0.25)
// chords · piano
const piano_2 = note(`<
A ~@2 B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA AB AC Z AD AE AF AE AF AG AH AG AH AG AI AJ AK AL@2 AM AN@6
AO AP AQ AR@4 AS
>`.pickRestart({
A: "~@10 [b3,d4] ~@5, [b3,d4]!10 ~@6, ~ f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~@11", // Bm
B: "~@4 g#3@2 ~ f#3, ~@3 g3", C: "[b1,b2] ~@3", D: "~ a3 g#3 g3", E: "f#3@2 e3 d3",
F: "c#3@2 ~ a2 g#2@2 g2 f#2, ~ b2 ~@2", G: "[b1,b2] ~ [b2,b3]@2", H: "[a2,a3] [g2,g3]", I: "[f#2,f#3] ~", J: "e2",
K: "c#2@4 f#2 ~ b2 ~", L: "a2 g2", M: "f#2 ~", N: "e2@2 ~ d3, ~ d2",
O: "~@3 c4@5 [a#2,a#3]@8, c3 ~, ~ e3@7 ~@8, ~ g3@3 ~@4", P: "[g#2,g#3] [f#2,f#3]",
Q: "~@31 b2, b1@2 b1@2 b1@2 b1@2 b1@2 b1@2 b1@2 b1@2 b3@12 b1 b2@2 ~, ~ b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2 b1 b2 b1 b2 e4@4, ~@8 b1!2 c#4@5 b1, ~@10 b1!2 d4@4",
R: "~@31 b2, b3@15 b1, f#4@7 b1 f#4@8, d4@5 b1 d4@7 b1 d4@2, b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 b2 b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 ~",
S: "~@31 b2, f#4@24 b1 b2 b1 b2 [b1,d4] b2@2 ~, d4@7 b1 f3@7 b1, b3@10 b1@2 b3@4 [b1,g3] b2 b1 b2 b3@12, b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 b2 d4@4 b1 b2 b1 b2 [e3,g3]@8", // Bm Em
T: "~@31 b2, [d3,f#3]@24 b1 b2 b1 b2 [b1,c#4] b2@2 ~, b3@8 [e3,g3,b3]@7 b1, b1!10 e4@6, ~ b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2@2 b2 b1 b2 b1 b2 d4@8", // D Bsus2 Em
U: "~@31 b2, [f#3,f#4]@24 b1 b2 b1 b2 [b1,e4] b2@2 ~, d4@20 b1 b2 b1 b2 d4@6 b1@2, b3@7 b1 [e3,g3,b3]@8, b1 b2 b1 b2 b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2 b1 b2 c#4@12", // F# E5 Em
V: "~@31 b2, [f#3,b3]@15 b1, f#4@7 b1 f#4@8, d4@5 b1 d4@7 b1 d4@2, b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 b2 b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 ~", // B5
W: "~@31 b2, [f#3,f#4]@24 b1 b2 b1 b2 [b1,d4] b2@2 ~, d4@7 b1 f3@7 b1, b3@10 b1@2 b3@4 [b1,g3] b2 b1 b2 b3@12, b1 b2 b1 b2 b1 b2 b1 b2 b1 b2@2 b2 b1 b2@2 b2 d4@4 b1 b2 b1 b2 [e3,g3]@8", // F# Bm Em
X: "~@3 b3, b1@12 d3@2 f#2 d2 b1@16, [d3,f#3,b3]@3 b2 d3 f#3 b3 d4 b3 d4@23, ~ d2@10 f#3@21, ~@2 f#2@8 b3@3 b2@19", // Bm
Y: "~@2 d4@2 ~@3 g4, [a2,e3,a3,c#4] [g2,a3,c#4,e4], ~@3 f#4", // A A7
Z: "~@7 a4, [f#2,f#3,a3,c#4], a4@7 ~, ~@3 g4@3 g4@2, ~ f#4", // F#m
AA: "~@3 a4 ~@3 b4, [b3,e4], [e2,e3,g4,b4] [d2,d3,g4], ~@3 a4", // E5 Em G5
AB: "~@3 b4 ~@3 b3, [c#2,c#3,c#4,f4,g#4,c#5] [f#2,f#4,a#4], ~@2 [f#3,c#4] [b2,f#3,c#4], ~@5 d4@3", // C# F# F#5 Bsus2
AC: "c#4@2 d4@2 e4@2 f#4 g4, [a2,e3,a3]@15 ~ [g2,g3,a3,c#4]@15 ~", // A5 A7
AD: "~@3 a4 ~@3 b4, [e2,e3,b3,e4,g4,b4] [d2,d3,b3,f4,g4], ~@3 a4", // Em G7
AE: "g4@5 ~@6 [c4,c5]@5 [b3,b4]@11 [b3,b4]@5, [c2,c3,e4] [e2,e3,e4,g4], [c4,c5]@11 ~@21, ~@5 [g3,g4]@11 ~@16", // C B C Em C G
AF: "[f#3,f#4]@5 ~@6 [a#3,a#4]@5 [b3,b4]@11 [b3,b4]@5, [f#2,c#4] [e2,e3,e4,g4], [a#3,a#4]@11 ~@21, ~@5 [f#3,f#4]@11 ~@16", // F# A# B F#5 Em A# F#
AG: "[c3,c4]!2, [c2,e3,g3]", // C
AH: "f#2@5 ~@6 [c#3,c#4]@5 ~@11 [c#3,c#4]@5, f#1, ~@5 [f#2,f#3]@16 [f#2,f#3]@11, ~@16 [c#3,c#4]@11 ~@5", // C# F# C#
AI: "~@11 [b2,b3]@5 ~@11 [b2,b3]@5, [b2,b3]@11 ~@5 [b2,b3]@11 ~@5, ~@5 [e2,e3]@16 [e2,e3]@11", AJ: "[a#2,a#3]@15 ~",
AK: "~@11 [f#3,f#4]@5 ~@11 [f#3,f#4]@5, [f#1,f#2], f#3@11 ~@5 [f#3,f#4]@11 ~@5, ~@5 [c#3,c#4]@16 [c#3,c#4]@11", // F# C#
AL: "[f#3,a#3]@16 [f#1,f#2]@15 ~, [c#4,e4,f#4]", AM: "f#4@2 ~@3 e4@2 ~@3 c#4@2 ~@3 a#3@2 ~@3 f#3@2 ~@10",
AN: "[~@9 f#3@5 [e3,e4]@5 [c#3,c#4]@5 [a#2,a#3]@5 [f#2,f#3]@5 [e2,e3]@5 ~ [d2,d3]@5 [c#2,c#3]@5 [b1,b2] b1 [b1,b2] b2 [b1,b2]!2 b1 [b1,b2] b2 [b1,b2] b1 [b1,b2]!2 b2 [b1,b2] b1 [b1,b2] b2 [b1,b2]!2 b3@5 c#4@5 d4@5 ~ e4@5 f#4@10 [b1,b2,f#3,b3,d4,f#4]@10 ~@10 [b1,b2,f#3,b3,d4,f#4]@10 ~@6 [b1,b2,f#3,b3,d4,f#4]@5 ~@5 [b1,b2,f#3,b3,d4,f#4]@5 ~@5 [b1,b2,f#3,b3,d4]@5 ~@5 [b1,b2,f#3,b3,d4]@5 ~@6 [b1,b2,f#3,b3,d4]@5 ~@5 [b1,b2,f#3,b3,d4]@4, ~@25 [d3,f#3,b3,d4]@10 b1 ~@60]/6", // E C# A# F# E D C# B …
AO: "~@6 [b1,b2,f#3,b3,d4]@5 ~@5 [b1,b2,d3,f#3,b3]@5 [b3,d4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2", // Bm
AP: "f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4]", // Bm
AQ: "f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4]", // Bm
AR: "[f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]!2 f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4] f#4 [b1,b2]@8, ~@7 [f#2,f#3]@20 ~ [b1,b2]@20 ~@41 [b1,b2]@20 [b1,b2]@10 ~@9, ~@33 [c#2,c#3]@15 ~@80, ~@38 [d2,d3]@10 ~@15 [d2,d3]@5 ~@16 [d2,d3]@5 ~@39, ~@43 [e2,e3]@5 [f#2,f#3]@20 [f#2,f#3]@20 ~@40]/4", // Bm B F# B C# D E F#
AS: "~ [b1,b2]@5 ~@10", // B
})).s("gm_piano").gain(0.25)
// chords · piano · soft notes
const piano_soft = note("<A B C D E F G H I ~ J K L M N O P Q R ~@41 S T>".pickRestart({
A: "~@31 f#4, ~@21 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~, ~@11 [b3,d4]!5", // Bm
B: "~@15 f#4 ~@15 g4, [b1,b2] ~, [b3,d4]!8 [b3,e4]!8, ~ f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~@2 g4@2 g4@2 g4@2 g4@2 g4@2 g4@2 g4@2 ~", // B Bm E5
C: "~@31 f#4, [b3,d4]!16, ~ f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~", // Bm
D: "~@15 f#4 ~@7 f4 ~@7 e4, [b3,d4]!8 b3!5 b3@3, ~ f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~@2 f4@2 f4@2 f4@2 ~@2 e4@2 e4@2 e4@2 ~, ~@14 a#3!2", // Bm
E: "~@7 d4 ~@7 g4 ~@7 a4 ~@7 g4, [f#3,b3]@2 [f#3,b3]@2 [f#3,b3]@2 [f#3,b3]@2 ~ g4@2 g4@2 g4@2 ~@2 a4@2 a4@2 a4@2 ~@2 g4@2 g4@2 g4@2 ~, ~ d4@2 d4@2 d4@2 ~ [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2 [b3,e4]@2", // B5 E5
F: "~@15 f#4 ~@7 f4 ~@7 e4, [b3,d4]!12 b3!4, ~ f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 f#4@2 ~@2 f4@2 f4@2 f4@2 ~@2 e4@2 e4@2 e4@2 ~", // Bm
G: "~@15 b3 ~@7 c#4 ~@7 d4, b3!4 g#3!4 [f#3,a#3]!4 [f#3,b3]!4, ~ d4@2 d4@2 d4@2 d4@9 ~ c#4@2 c#4@2 c#4@2 ~@2 d4@2 d4@2 d4@2 ~, ~@9 b3@2 b3@2 b3@2 ~@17", // F# B5
H: "~@7 e4 ~@7 d4 ~@7 d4 [b3,e4] e3 [b3,e4] e3 [a#3,e4] e3 [a#3,e4] e3, [f#3,a#3]!4 [f#3,b3]!4 [f3,b3]!4 ~@4, ~ e4@2 e4@2 e4@2 ~@2 d4@2 d4@2 d4@2 ~@2 d4@2 d4@2 d4@2 ~@9", // E5 A#dim F# B5 Fdim
I: "~@7 f#3 ~@7 b3 [d4,f#4,b4]@16, [b3,d4]!4 [d4,f#4]!4 ~@8, ~ f#3@2 f#3@2 f#3@2 ~@2 b3@2 b3@2 b3@2 ~@17", // Bm D
J: "~ [f#3,a3,c#4]", K: "~@5 e4@11 e4@16, e3, ~@3 b3@29",
L: "~@5 c#4@11 [f#3,c#4]@4 ~@4 b3@4 ~@4, c#3 ~, ~@3 g#3@13 ~@16", M: "a3 g3", N: "f#3 [f#3,a3,c#4]",
O: "~ e3 ~ d4, e3 ~ d3 ~, ~@3 b3@13 ~@3 g3@13, ~@5 e4@11 ~@5 b3@11",
P: "[c4,e4]@4 ~@3 e5 [e4,g4,c5]@8, g3 ~ e4@2 ~@4, ~@5 g4@3 ~@8, ~@3 c5 ~@4", // C
Q: "~@15 f4 ~@15 e4, [b3,c#4]!8 [a#3,c#4]!8, ~ f4@2 f4@2 f4@2 f4@2 f4@2 f4@2 f4@2 ~@2 e4@2 e4@2 e4@2 e4@2 e4@2 e4@2 e4@2 ~", // Bsus2 A#m
R: "f#4, d4@3 ~, b3 ~", S: "~@24 [b3,d4,f#4]!2 [b3,d4] [b3,d4,f#4] f#4 [b3,d4,f#4] [b3,d4] [b3,d4,f#4]",
T: "f#4 [b3,d4,f#4] [b3,d4,f#4]@10 ~@20", // Bm
})).s("gm_piano").gain(0.15)
stack(piano, piano_2, piano_soft)
More by Peter Tchaikovsky
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.