0:00/0:00
// Zelda Medley — Koji Kondo
// 80 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Transcription provider: pdmx. https://musescore.com/score/1441771; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 127 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(80/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.
// other · flute
const flute = note(`<
A@3 B@3 C@3 D E F@2 G@2 ~@3 H@2 ~@2 I J K L M@2 ~@3 N@3 O@2 ~ P Q@2 R@3 S T@6 U@2 ~@10 V@3 ~ W X@3 Y ~@22 Z AA AB AC
AD AE AF AG AH AI AJ AK AL AM AN ~ AO AP AQ@2 AO AP AR AS AT AU AV AW AX AY@4 ~
>`.pickRestart({
A: "[~ f5@2 d6@2 ~@6 f5@2 d6@2 ~@5 a5@2 c6@2 d6@2 e6@2 f6@2 g6@2 g6@2 ~ g6@2 g6@2 ~ g6@2 g6@2 ~ g6@2 g6@2 ~@31 g5 a5 b5 c6 ~ d6@3 d6 ~ d6@2 d6@2 ~ d6@2 d6@2 ~ d6 e6 d6 e6 ~ d6 e6 d6 e6 ~ d6@9 ~@6 g5 a5 b5 c6 ~ d6@5 g5 a5 b5 c6 ~ d6@4, a5 ~@4 a5 ~@66]/3",
B: "[~@16 g5 a5 b5 c6 ~ d6@3 d6 ~ d6@2 d6@2 ~ d6@2 d6@2 ~ d6 e6 d6 e6 ~ d6 e6 d6 e6 ~ g6@38 ~@2 a6@52 ~@2 b6@4]/3",
C: "[~@31 e6@6 d6 ~ c6 ~ b5 c6 ~ b5@27 ~@11 f6@6 e6 ~ d6 c6 ~ d6 b5@27 ~@11 c6@6 b5 ~ a5 ~ g5 a5]/3",
D: "~ g5@27 ~@20", E: "~@6 g5@3 ~@4 d5@6 g5@3 ~@3 g6@6 ~ f6@12 e6@4",
F: "[~ d6@4 ~ c6@3 b5 ~ c6 d6@9 ~ d6 e6 ~ f6@3 f6@30 ~@2 g5@3 ~@3 d5@6 g5@3 ~@3 g6@6 ~ f6@11]/2",
G: "[~ e6@4 ~ d6@4 ~ c6@3 c6 ~ d6 b5@21 ~ a6 ~ b6 g6@21 ~@33]/2", H: "[~@27 f#5@6 c#6@6 c6@6 ~ a5@6 g#5@18 ~@26]/2",
I: "~@37 c#6@6 a6@5", J: "~ g#6@6 ~ e6@6 c#6@18 ~@10 b5 ~ c#6 ~ d6 c#6", K: "~ b5 a5 ~ g5@12 ~@29 a5 ~ b5",
L: "c6 ~ b5 a5 ~ g5 f5@12 ~@30", M: "[b5 c#6 ~ d6 c#6 ~ b5 a5 ~ g5@12 ~@20 a6@6 a6@6 g#6@12 ~ b6@6 g#6@12 ~ f6@11]/2",
N: "[~@25 f#6@90 ~@24 g5@5]/3", O: "[c6@16 ~ g5@5 ~ e6@16 c6@5 ~ g6@21 ~@30]/2",
P: "~@13 c5@2 g5@3 d5 ~@2 g5 ~@2 e5@21 ~@3",
Q: "[~@4 g5@3 a5@2 a#5@17 g5@3 f5@3 g5@21 ~ c5@3 g5@3 d5 ~ g5 ~@2 e5@21 ~@7 g5@3]/2",
R: "[a5@3 a#5@16 c6@3 a#5@3 g5@21 ~ c5@3 d5@3 c5@3 d5@2 d#5@21 ~@7 c5@6 d5@3 d#5@3 d5@2 d#5@3 f5@21 ~@7 d5@3 e5@3 d5@3 ~@2 c5@2]/3",
S: "~ g5@8 ~@3",
T: "[~@34 c5@3 g5@2 d5 ~@2 g5 ~@2 e5@21 ~@7 g5@3 a5@3 a#5@16 g5@3 f5@3 g5@21 ~ c5@3 g5@3 d5 ~@2 g5 ~ e5@21 ~@7 g5@3 a5@3 a#5@17 c6@2 a#5@3 g5@21 ~ c5@3 d5@3 c5@3 d5@3 d#5@21 ~@7 c5@5 d5@3 d#5@3 d5@3 d#5@2 f5@20]/6",
U: "[~@8 d5@3 e5@3 d5@3 ~@2 c5@3 ~@3 g5@32 ~@39]/2", V: "[~@13 g4@5 c5@19 ~ g4@7 ~ e5@21 ~ c5@7 ~ g5@65 ~@3]/3",
W: "a5@13 ~ a5@10", X: "[a4@3 ~@2 a4@2 a5@26 ~@2 g5@26 ~ a5@26 ~ e5@26 ~@2 a5@26 ~]/3", Y: "g5@13 ~@11",
Z: "c5@2 d5 e5", AA: "g5@6 d5 c5", AB: "b4", AC: "g4@23 ~", AD: "c5@23 ~ d5@11 ~ e5@11 ~", AE: "g5@34 ~@2 b5@11 ~",
AF: "b5@17 ~ a5@3 b5@3", AG: "c6@23 ~", AH: "a4@11 ~ f5@11 ~ e5@11 ~ c5@11 ~", AI: "b4@23 ~",
AJ: "c5@11 ~ g#5@11 ~ g5@11 ~ d#5@11 ~", AK: "d5@23 ~", AL: "c6@23 ~ g5@23 ~", AM: "~@4 c6 d6 e6 f6", AN: "g6@23 ~",
AO: "f4@6 c5@6 f5@6 g5@23 ~@7", AP: "g4@6 d5@6 g5@6 a5@23 ~@7", AQ: "c5@6 d5@6 e5@6 g5@11 ~ e5@6 d5@11 ~",
AR: "c5@6 g5@6 c6@6 d6@11 ~ c6@6 g5@11 ~", AS: "a4@6 e5@6 a5@6 b5@11 ~ a5@6 e5@11 ~", AT: "f4@6 c5@6 g5@6 a5@11 ~@19",
AU: "g4@6 d5@6 a5@6 b5@11 ~@19", AV: "g#4@6 d#5@6 a#5@6 c6@11 ~@19", AW: "a#4@6 f5@6 c6@6 d6@11 ~@7 f5@11 ~",
AX: "c5@6 g5@6 c6@6 f6@12 c6@6 ~ g5@11",
AY: "[~ c5@6 ~ g5@6 ~ c6@6 f6@13 ~ c6@7 g5@14 ~ c5@7 ~ g5@7 c6@7 ~ e6@14 ~ c6@7 g5@14 ~ c6@73 ~@2]/4",
})).s("gm_flute").gain(0.39).pan(0.3)
// other · flute
const flute_2 = note(`<
~@3 A@3 ~@4 B C@2 D@2 ~@8 E F G H@2 ~@3 I@3 J@2 ~ K L@2 M@3 N O@6 P@2 ~@10 Q@3 ~ R S@3 T ~@38 U V W@2 U V X Y Z AA AB
AC AD AE@4 ~
>`.pickRestart({
A: "[~@23 g5@19 ~ a5@26 ~@3]/3", B: "~@6 b4@3 ~@4 g4@6 b4@3 ~@3 b5@6 ~ a5@12 g5@4",
C: "[~ f5@4 ~ e5@3 b5 ~ c6 d6@9 ~ d6 e6 ~ f6@3 f6@30 ~@2 b4@3 ~@3 g4@6 b4@3 ~@3 b5@6 ~ a5@11]/2",
D: "[~ g5@4 ~ f5@4 ~ e5@3 e5 ~ f5 d5@21 ~ a5 ~ b5 g5@21 ~@33]/2", E: "~@42 b5 ~ c#6 ~ d6 c#6",
F: "~ b5 a5 ~ g5@12 ~@29 a5 ~ b5", G: "c6 ~ b5 a5 ~ g5 f5@12 ~@30",
H: "[b5 c#6 ~ d6 c#6 ~ b5 a5 ~ g5@12 ~@20 a6@6 a6@6 g#6@12 ~ b6@6 g#6@12 ~ f6@11]/2", I: "[~@25 f#6@90 ~@24 g5@5]/3",
J: "[c6@16 ~ g5@5 ~ e6@16 c6@5 ~ g6@21 ~@30]/2", K: "~@13 c5@2 g5@3 d5 ~@2 g5 ~@2 e5@21 ~@3",
L: "[~@4 g5@3 a5@2 a#5@17 g5@3 f5@3 g5@21 ~ c5@3 g5@3 d5 ~ g5 ~@2 e5@21 ~@7 g5@3]/2",
M: "[a5@3 a#5@16 c6@3 a#5@3 g5@21 ~ c5@3 d5@3 c5@3 d5@2 d#5@21 ~@7 c5@6 d5@3 d#5@3 d5@2 d#5@3 f5@21 ~@7 d5@3 e5@3 d5@3 ~@2 c5@2]/3",
N: "~ g5@8 ~@3",
O: "[~@34 c5@3 g5@2 d5 ~@2 g5 ~@2 e5@21 ~@7 g5@3 a5@3 a#5@16 g5@3 f5@3 g5@21 ~ c5@3 g5@3 d5 ~@2 g5 ~ e5@21 ~@7 g5@3 a5@3 a#5@17 c6@2 a#5@3 g5@21 ~ c5@3 d5@3 c5@3 d5@3 d#5@21 ~@7 c5@5 d5@3 d#5@3 d5@3 d#5@2 f5@20]/6",
P: "[~@8 d5@3 e5@3 d5@3 ~@2 c5@3 ~@3 g5@32 ~@39]/2", Q: "[~@13 g4@5 c5@19 ~ g4@7 ~ e5@21 ~ c5@7 ~ g5@65 ~@3]/3",
R: "d5@13 ~ c#5@10", S: "[a4@3 ~@2 a4@2 c5@26 ~@2 b4@26 ~ d5@26 ~ a4@26 ~@2 g4@26 ~]/3", T: "a4@13 ~@11",
U: "f4@6 c5@6 f5@6 g5@23 ~@7", V: "g4@6 d5@6 g5@6 a5@23 ~@7", W: "c5@6 d5@6 e5@6 g5@11 ~ e5@6 g5@11 ~",
X: "c5@6 g5@6 c6@6 d6@11 ~ c6@6 g5@11 ~", Y: "a4@6 e5@6 a5@6 b5@11 ~ a5@6 e5@11 ~", Z: "f4@6 c5@6 g5@6 a5@11 ~@19",
AA: "g4@6 d5@6 a5@6 b5@11 ~@19", AB: "g#4@6 d#5@6 a#5@6 c6@11 ~@19", AC: "a#4@6 f5@6 c6@6 d6@11 ~@7 f5@11 ~",
AD: "c5@6 g5@6 c6@6 f6@12 c6@6 ~ g5@11",
AE: "[~ c5@6 ~ g5@6 ~ c6@6 f6@13 ~ c6@7 g5@14 ~ c5@7 ~ g5@7 c6@7 ~ e6@14 ~ c6@7 g5@14 ~ g5@73 ~@2]/4",
})).s("gm_flute").gain(0.4).pan(0.3)
// other · clarinet · "B♭ Clarinet"
const clarinet = note(`<
~@3 A@3 B@4 C D@2 E@2 F@3 G H I J K L@3 M@2 ~@3 N@3 ~@3 O P@2 Q@3 R S@6 T@2 ~@6 U V W ~@5 X@4 Y ~@22 Z AA AB AC AD AE
AF AG AH AC AI AJ AK AL AM ~ AN AO AP@2 AN AO AQ AR AS AT AU AV AW AX@5
>`.pickRestart({
A: "[~@46 c5@40 c5@55 ~@3]/3",
B: "[~@31 b4@6 a4@2 g4@2 ~ a4@2 g4@28 ~@10 d5@6 b4@2 a4 a4@2 ~ g4@28 ~@10 a4@6 g4@2 f4@2 ~ f4@2 e4@28 ~@19, ~@41 g4@2 ~@50 b4@2 ~@47 e4@2 ~@48]/4",
C: "~@6 g5@3 ~@4 d5@6 g5@3 ~@3 g6@6 ~ f6@12 e6@4",
D: "[~ d6@5 c6@3 b5@2 ~ d6@9 ~@2 e6@2 f6@3 f6@32 g5@3 ~@3 d5@6 g5@3 ~@3 g6@6 ~ f6@11, ~@11 c6@2 ~@9 d6@2 ~@72]/2",
E: "[~ e6@5 d6@5 c6@3 c6@2 ~ b5@22 a5@2 ~ g5@22 ~@32, ~@16 d6@2 ~@23 b5@2 ~@53]/2",
F: "[~@19 f#4@16 g#4@3 a4@3 f#4@3 e4@13 c#4@13 f#4@15 g#4@3 ~ a4@3 f#4@3 e4@19 ~@6 f#4@16 g#4@3 a4@3 f#4@2]/3",
G: "~ e4@13 c#4@13 ~@21", H: "~@23 e4@6 a4@16 b4@3", I: "c#5@3 a4@3 g#4@13 e4@13 a4@16",
J: "b4@3 c#5@3 a4@3 g#4@19 ~@6 a4@14", K: "~@2 b4@3 c#5@3 a4@3 ~ g#4@12 e4@13 ~@11",
L: "[~@42 b4@2 c#5@2 ~ c#5@2 ~ a4@2 g4@13 ~@28 a4@2 ~ c5@2 ~ a4@2 ~ f4@13 ~@29, ~@46 d5@2 ~ b4@2 ~@44 b4@2 ~ b4@2 ~ g4@2 ~@41]/3",
M: "[~ c#5@2 ~ c#5@2 ~ a4@2 g4@13 ~@19 a5@6 a5@6 g#5@13 b5@6 g#5@13 f5@11, b4@2 ~ d5@2 ~ b4@2 ~@88]/2",
N: "[~@25 g#5@33 a#5@64 ~@22]/3", O: "~@13 c5@2 g5@3 d5 ~@2 g5 ~@2 e5@22 ~@2",
P: "[~@4 g5@3 a5@2 a#5@17 g5@3 f5@3 g5@22 c5@3 g5@3 d5 ~ g5 ~@2 e5@22 ~@6 g5@3]/2",
Q: "[a5@3 a#5@16 c6@3 a#5@3 g5@22 c5@3 d5@3 c5@3 d5@2 d#5@22 ~@6 c5@6 d5@3 d#5@3 d5@2 d#5@3 f5@22 ~@6 d5@3 e5@3 d5@3 ~@2 c5@2]/3",
R: "~@4 g5@33 ~@11",
S: "[~@34 c5@3 g5@2 d5 ~@2 g5 ~@2 e5@22 ~@6 g5@3 a5@3 a#5@16 g5@3 f5@3 g5@22 c5@3 g5@3 d5 ~@2 g5 ~ e5@22 ~@6 g5@3 a5@3 a#5@17 c6@2 a#5@3 g5@22 c5@3 d5@3 c5@3 d5@3 d#5@22 ~@6 c5@5 d5@3 d#5@3 d5@3 d#5@2 f5@20]/6",
T: "[~@8 d5@3 e5@3 d5@3 ~@2 c5@3 ~@3 g5@33 ~@38]/2", U: "~@4 a#4@3 c5@2 g4@17 g4@22", V: "f4@3 g4@3 d4@22 c5@20",
W: "~@3 a#4@22 ~@23", X: "[a4@27 ~ a4@27 a4@27 ~ g4@27 a4@27 e4@27 ~ e4@27]/4", Y: "a4@9 ~@7", Z: "c5@2 d5 e5",
AA: "g5@6 d5 c5", AB: "b4", AC: "g4", AD: "c5@2 d5 c5", AE: "b4@3 d5", AF: "d5@6 c5 d5", AG: "e5", AH: "a4 f5 e5 c5",
AI: "c5 g#5 g5 d#5", AJ: "g5", AK: "c5 g4", AL: "~@4 c5 d5 e5 d5", AM: "c5", AN: "f3 c4 f4 g4@4 ~",
AO: "g3 d4 g4 a4@4 ~", AP: "c4 d4 e4 g4@2 e4 d4@2", AQ: "c4 g4 c5 d5@2 c5 g4@2", AR: "a3 e4 a4 b4@2 a4 e4@2",
AS: "f3 c4 g4 a4@2 ~@3", AT: "g3 d4 a4 b4@2 ~@3", AU: "g#3 d#4 a#4 c5@2 ~@3", AV: "a#3 f4 c5 d5@2 ~ f4@2",
AW: "c4@6 g4@6 c5@6 f5@12 c5@6 ~ g4@11",
AX: "[~ c4@7 g4@7 c5@6 f5@14 c5@7 g4@15 c4@7 ~ g4@7 c5@7 ~ e5@15 c5@7 g4@15 c5@77 ~@46]/5",
})).s("gm_clarinet").gain(0.52).pan(0.4)
// other · clarinet · "B♭ Clarinet"
const clarinet_2 = note(`<
~@3 A@3 ~@4 B C@2 D@2 ~@8 E@3 F@2 ~@3 G@3 ~@24 H I J ~@5 K@4 L ~@38 M N O@2 M N P Q R S T U V W@5
>`.pickRestart({
A: "[~@46 g4@40 a4@55 ~@3]/3", B: "~@6 b4@3 ~@4 g4@6 b4@3 ~@3 b5@6 ~ a5@12 g5@4",
C: "[~ f5@5 e5@3 b5@2 ~ d6@9 ~@2 e6@2 f6@3 f6@32 b4@3 ~@3 g4@6 b4@3 ~@3 b5@6 ~ a5@11, ~@11 c6@2 ~@9 d6@2 ~@72]/2",
D: "[~ g5@5 f5@5 e5@3 e5@2 ~ d5@22 a5@2 ~ g5@22 ~@32, ~@16 f5@2 ~@23 b5@2 ~@53]/2",
E: "[~@42 b4@2 c#5@2 ~ c#5@2 ~ a4@2 g4@13 ~@28 a4@2 ~ c5@2 ~ a4@2 ~ f4@13 ~@29, ~@46 d5@2 ~ b4@2 ~@44 b4@2 ~ b4@2 ~ g4@2 ~@41]/3",
F: "[~ c#5@2 ~ c#5@2 ~ a4@2 g4@13 ~@19 a5@6 a5@6 b5@13 d6@6 b5@13 g#5@11, b4@2 ~ d5@2 ~ b4@2 ~@88]/2",
G: "[~@25 g#5@33 a#5@64 ~@22]/3", H: "~@4 a#4@3 c5@2 g4@17 g4@22", I: "f4@3 g4@3 d4@22 c5@20", J: "~@3 a#4@22 ~@23",
K: "[f#4@27 ~ e4@27 e4@27 ~ d4@27 f#4@27 c#4@27 ~ a#3@27]/4", L: "c#4@9 ~@7", M: "f3 c4 f4 g4@4 ~",
N: "g3 d4 g4 a4@4 ~", O: "c4 d4 e4 g4@2 e4 g4@2", P: "c4 g4 c5 d5@2 c5 g4@2", Q: "a3 e4 a4 b4@2 a4 e4@2",
R: "f3 c4 g4 a4@2 ~@3", S: "g3 d4 a4 b4@2 ~@3", T: "g#3 d#4 a#4 c5@2 ~@3", U: "a#3 f4 c5 d5@2 ~ f4@2",
V: "c4@6 g4@6 c5@6 f5@12 c5@6 ~ g4@11",
W: "[~ c4@7 g4@7 c5@6 f5@14 c5@7 g4@15 c4@7 ~ g4@7 c5@7 ~ e5@15 c5@7 g4@15 e4@77 ~@46]/5",
})).s("gm_clarinet").gain(0.41).pan(0.4)
// other · trumpet · "B♭ Trumpet"
const trumpet = note(`<
A B@2 C@3 ~@2 D@3 E@2 F@2 ~@3 G@2 ~@2 H I@5 J@3 K@3 ~@18 L@2 M N@5 O@2 ~@4 P@4 Q ~ R@2 S@4 T@8 U@4 V@2 ~@21 W X Y Z AA
AB AC AD AE AF AG@4
>`.pickRestart({
A: "~@5 g5@3", B: "[~@2 d5@10 d5@5 b4@25 d5@10 d5@5 b4@5 g5@20 d5@10 d5@4]/2",
C: "[~ b4@25 d5@10 d5@5 b4@5 c5@40 f#5@54 b5@4]/3",
D: "[~ b3@6 ~@4 b3@3 ~@3 b3@3 b3@3 ~ b3@3 c4@25 g4@6 ~@3 g4@3 ~@4 g4@3 g4@3 g4@3 g4@25 g4@3 ~@4 d4@6 g4@3 ~@3 g5@6 ~ f5@12 e5@4]/3",
E: "[~ d5@5 c5@3 b4@2 ~ d5@22 g5@2 ~ b5@22 ~ g4@3 ~@3 d4@6 g4@3 ~@3 g5@6 ~ f5@11, ~@11 c5@2 ~@23 a5@2 ~@58]/2",
F: "[~ e5@5 d5@5 c5@3 c5@2 ~ b4@22 a5@2 ~ g5@22 ~@32, ~@16 d5@2 ~@23 b5@2 ~@53]/2",
G: "[~@27 f#4@6 c#5@6 c5@6 ~ a4@6 g#4@19 ~@25]/2", H: "~@37 c#5@6 a5@5",
I: "[~ g#5@6 ~ e5@6 c#5@19 ~@3 b4@2 ~ d5@19 e5@3 f#5@3 ~ c#5@12 a4@9 ~@2 b4@2 c5@19 d5@3 e5@3 b4@19 ~@3 b4@2 ~ d5@19 e5@3 f#5@3 ~ c#5@12 f#4@6 ~ f#4@6 f#4@6 g#4@13 b4@6 g#4@13 f5@11, ~@38 c#5@2 ~@47 a4@2 ~@50 c#5@2 ~@99]/5",
J: "[~ f#5@16 g#5@3 a5@3 ~ f#5@3 e5@12 c#5@13 f#5@16 g#5@3 a5@3 f#5@3 e5@25 f#5@17 g#5@4 a5@4 f#5@3 e5@14]/3",
K: "[~@4 c#5@21 f#5@97 ~@22]/3", L: "[~@2 g4@2 a4@3 a#4@33 ~ g4@5 f4@6 g4@3 a4@2 g4@28 ~@6 c4 ~@2 c4 ~]/2",
M: "g4@33 ~ f4@5 d#4@6 d4@3",
N: "[d#4@3 d4@28 ~@5 g4@3 a4@3 a#4@33 g4@6 f4@5 g4@3 a4@3 g4@28 ~@5 g4@3 g4@3 c5@33 ~@6 g4@3 c5@3 d5@33 ~@6 a#4@3 c5@2 d#5@20]/5",
O: "[~@3 d5@16 f4@3 d#5@3 c5@33 ~@38]/2", P: "[a4@27 ~ a4@27 a4@27 ~ g4@27 a4@27 e4@21 a4@3 ~@2 a4@2 a4@27]/4",
Q: "g4@9 ~@7", R: "[~@35 a5@3 g5 ~ f#5 g5@55]/2",
S: "[~@21 a5@2 a5@2 a5@2 ~ a5@27 b4@2 ~@3 c#5@2 d5@21 d5@20 e5@7 d5@21 e5@6 d5@27 ~ b4@2 ~ b4@2 c#5@2 d5@20, ~@59 b4@2 ~@131]/4",
T: "[d5@21 d5@2 d5@2 d5@2 ~ d5@27 e5@27 ~ f#5@3 ~@3 a4@34 ~@8 d5 a4 ~ d5 ~ f#5 a5@48 a5@3 ~ g5@2 ~ g5@21 a5@3 g5@2 f#5@2 g5@27 e5@21 a5@2 a5@2 a5@2 ~ a5@27 b4@2 ~ b4@2 c#5@2 d5@20 d5@21 e5@7 d5@14 f#5@13, ~@88 d5@2 ~@101 f#5@2 ~@191]/8",
U: "[d5@27 ~ d5@2 ~ d5@2 e5@2 f5@20 f5@27 ~ d5@3 d5@2 ~ f5@21 g5@27 f#5@27 ~ g#5@27, ~@44 e5 ~@51]/4",
V: "[a5@33 ~ a5@62]/2", W: "c5@2 d5 e5", X: "g5@3 b5", Y: "b5@6 a5 b5", Z: "c6", AA: "a4 f5 e5 c5", AB: "b4",
AC: "c5 g#5 g5 d#5", AD: "d5", AE: "c5 g4", AF: "~@28 c5@7 d5@7 e5@6", AG: "[~@2 f5@7 g5@60 g5@77 ~@46]/4",
})).s("gm_trumpet").gain(0.3).pan(0.6)
// other · trumpet · "B♭ Trumpet"
const trumpet_2 = note(`<
~@3 A@3 ~@2 B@3 C@2 D@2 ~@8 E@5 F@3 G@3 ~@24 H I J ~@5 K@4 L ~ M@2 N@4 O@8 P@4 Q@2 ~@21 R S T U V W X Y Z AA AB@4
>`.pickRestart({
A: "[~@23 g4@20 a4@27 b4@2]/3",
B: "[~ g3@6 ~@4 g3@3 ~@3 g3@3 g3@3 ~ g3@3 a3@25 e4@6 ~@3 e4@3 ~@4 e4@3 e4@3 e4@3 d#4@25 b3@3 ~@4 g3@6 b3@3 ~@3 b4@6 ~ a4@12 g4@4]/3",
C: "[~ f4@5 e4@3 d4@2 ~ f4@22 g4@2 ~ b4@22 ~ b3@3 ~@3 g3@6 b3@3 ~@3 b4@6 ~ a4@11, ~@11 e4@2 ~@23 a4@2 ~@58]/2",
D: "[~ g4@5 f4@5 e4@3 e4@2 ~ d4@22 a4@2 ~ g4@22 ~@32, ~@16 f4@2 ~@23 b4@2 ~@53]/2",
E: "[~@39 d5@19 e5@3 f#5@3 ~ c#5@12 a4@9 ~@2 b4@2 c5@19 d5@3 e5@3 b4@19 ~@3 b4@2 ~ d5@19 e5@3 f#5@3 ~ c#5@12 f#4@6 ~ a4@6 a4@6 b4@13 d5@6 b4@13 g#4@11, ~@87 a4@2 ~@50 c#5@2 ~@99]/5",
F: "[~ c#5@16 d#5@3 e5@3 ~ c#5@3 b4@12 g#4@13 c#5@16 d#5@3 e5@3 c#5@3 b4@25 c#5@17 d#5@4 e5@4 c#5@3 b4@14]/3",
G: "[~@4 g#4@21 c#5@97 ~@22]/3", H: "~@4 a#4@3 c5@2 g4@17 g4@22", I: "f4@3 g4@3 d4@22 c5@20", J: "~@3 a#4@22 ~@23",
K: "[d4@27 ~ c#4@27 c4@27 ~ b3@27 d4@27 a3@27 ~ g3@27]/4", L: "a3@9 ~@7", M: "[~@35 f#5@3 e5 ~ d5 d5@55]/2",
N: "[~@21 e5@2 e5@2 e5@2 ~ e5@27 g4@2 ~@3 a4@2 b4@21 a4@20 a4@7 a4@21 a4@6 a4@27 ~ g4@2 ~ g4@2 a4@2 b4@20, ~@59 g4@2 ~@131]/4",
O: "[b4@21 b4@2 b4@2 b4@2 ~ b4@27 c#5@27 ~ d5@3 ~@3 f#4@34 ~@8 d5 a4 ~ d5 ~ f#5 e5@27 ~ d5@20 f#5@3 ~ e5@2 ~ b4@27 ~ b4@27 d5@27 ~ c#5@27 g4@2 ~ g4@2 a4@2 b4@20 a4@21 a4@7 a4@20 e5@7, ~@88 a4@2 ~@101 d5@2 ~@191]/8",
P: "[f#5@27 ~ a#4@2 ~ a#4@2 c5@2 d5@20 c5@27 ~ a#4@2 ~ a#4@2 ~ d5@21 e5@27 d5@27 ~ e5@27, ~@44 c5 ~@51]/4",
Q: "[f#5@33 ~ e5@62]/2", R: "c5@2 d5 c5", S: "b4@3 d5", T: "d5@6 c5 d5", U: "e5", V: "a4 f5 e5 c5", W: "g4",
X: "c5 g#5 g5 d#5", Y: "g5", Z: "c5 g4", AA: "~@28 c5@7 d5@7 e5@6", AB: "[~@2 d5@7 c5@60 c5@77 ~@46]/4",
})).s("gm_trumpet").gain(0.3).pan(0.6)
// other · french horn · "Horn in F"
const french_horn = note(`<
A B@2 C@3 D@2 E@3 F G H I J@3 K L M N O P@5 ~@3 Q@3 ~ R@2 S@2 T U ~@3 V W@2 X@2 ~@3 Y@2 Z AA@5 AB@2 ~@4 AC@4 AD ~@2 AE
AF@2 ~@2 AG@2 ~@3 AH@2 ~@3 AI@2 AJ@2 ~@17 AK AL AM AN AK AO AP AQ AR AM AS AT AU AV AW@4
>`.pickRestart({
A: "~@5 g4@3", B: "[~@2 d4@10 d5@5 b4@25 d4@10 d5@5 b4@5 g4@20 d4@10 d5@4]/2",
C: "[~ b4@25 d4@10 d5@5 b4@5 c5@40 f#4@54 b3@4]/3",
D: "[~@6 b3@3 ~@3 b3@3 b3@6 ~ c4@25 b3@6 ~@3 b3@3 ~@4 b3@3 b3@6 c4@24]/2",
E: "[~ d4@6 ~@4 d4@3 ~@3 d4@3 d4@3 ~ d4@3 e4@25 e4@6 ~@3 e4@3 ~@4 e4@3 e4@3 e4@3 d#4@25 g3@3 ~@7 g3@3 ~@3 g3@3 g3@3 ~@4 f3@3 ~@6 f3@3 ~@4]/3",
F: "f3@3 f3@3 ~@3 g3@3 ~@6 g3@3 ~@4 g3@3 g3@3 ~@3 f3@3 ~@7 f3@3 ~",
G: "~@2 f3@3 f3@3 ~@4 g3@3 ~@6 g3@3 ~@3 g3@3 g3@3 ~@4 f3@3 ~@6 f3@2",
H: "~@5 f3@3 f3@3 ~@3 g3@3 ~@7 g3@3 ~@3 g3@3 g3@3 ~@3 f3@3 ~@6", I: "~ f3@3 ~@3 f3@3 f3@3 ~@35",
J: "[~@19 f#4@16 g#4@3 a4@3 f#4@3 e4@13 c#4@13 f#4@15 g#4@3 ~ a4@3 f#4@3 e4@19 ~@6 f#4@16 g#4@3 a4@3 f#4@2]/3",
K: "~ e4@13 c#4@13 ~@21", L: "~@23 e3@6 a3@16 b3@3", M: "c#4@3 a3@3 g#3@13 e3@13 a3@16",
N: "b3@3 c#4@3 a3@3 g#3@19 ~@6 a3@14", O: "~@2 b3@3 c#4@3 a3@3 ~ g#3@12 e3@13 ~@11",
P: "[~@39 d4@19 e4@3 f#4@3 ~ c#4@12 a3@9 ~@2 b3@2 c4@19 d4@3 e4@3 b3@19 ~@3 b3@2 ~ d4@19 e4@3 f#4@3 ~ c#4@12 f#3@6 ~ f#3@6 f#3@6 g#3@13 b3@6 g#3@13 f3@11, ~@87 a3@2 ~@50 c#4@2 ~@99]/5",
Q: "[~@25 g#4@33 a#4@64 ~@22]/3", R: "[~@19 c4@22 ~ c4@22 a#3@22 a#3@10]/2",
S: "[~@2 g3@3 ~@2 a#3@3 ~@3 c4@6 ~@5 g4@3 ~@2 g4@3 ~@3 c4@6 ~@5 g3@6 ~@5 a#3@6 ~@5 f4@3 ~@3 f4@3 ~@3 a#3@6 ~@5 g3@3 ~@2]/2",
T: "a#3@3 ~@3 c4@6 ~@5 g4@3 ~@3 g4@3 ~@2 c4@6 ~@5 g3@6 ~@3", U: "~@3 a#3@6 ~@5 f4@3 ~@2 f4@3 ~@3 a#3@6 ~@17",
V: "~@34 c4@6 ~@5 g4@3",
W: "[~@3 g4@3 ~@2 c4@6 ~@5 g3@6 ~@6 a#3@6 ~@5 f4@3 ~@2 f4@3 ~@3 a#3@6 ~@5 g3@3 ~@3 a#3@3 ~@2 c4@6 ~@5 g4@3 ~@3 g4@3 ~]/2",
X: "[~@2 c4@6 ~@5 g3@6 ~@5 a#3@6 ~@5 f4@3 ~@3 f4@3 ~@2 a#3@6 ~@44]/2",
Y: "[~@2 g4@2 a4@3 a#4@33 ~ g4@5 f4@6 g4@3 a4@2 g4@28 ~@6 c4 ~@2 c4 ~]/2", Z: "g4@33 ~ f4@5 d#4@6 d4@3",
AA: "[d#4@3 d4@28 ~@5 g4@3 a4@3 a#4@33 g4@6 f4@5 g4@3 a4@3 g4@28 ~@5 g4@3 g4@3 c5@33 ~@6 g4@3 c5@3 d5@33 ~@6 a#4@3 c5@2 d#5@20]/5",
AB: "[~@3 d5@16 f4@3 d#5@3 c5@33 ~@38]/2", AC: "[f#4@27 ~ e4@27 e4@27 ~ d4@27 f#4@27 c#4@27 ~ e4@27]/4",
AD: "g4@9 ~@7", AE: "~@14 a4@3 g4 ~ f#4 ~ g4@27", AF: "[e4@27 ~ e4@27 ~@41]/2", AG: "[~@28 g4@27 a4@27 ~@14]/2",
AH: "[~@7 e4@27 ~ e4@27 ~@34]/2", AI: "[~@14 c4@27 d4@27 ~ e4@27]/2", AJ: "[d4@33 ~ c#4@62]/2", AK: "c4@2 d4 e4",
AL: "g4@6 d4 c4", AM: "b3", AN: "g3", AO: "g4@3 b4", AP: "b4@6 a4 b4", AQ: "c5", AR: "a3 f4 e4 c4",
AS: "c4 g#4 g4 d#4", AT: "d4", AU: "c4 g3", AV: "~@28 c4@7 d4@7 e4@6", AW: "[~@2 f4@7 g4@60 g4@77 ~@46]/4",
})).s("gm_french_horn").gain(0.3).pan(0.8)
// other · french horn · "Horn in F"
const french_horn_2 = note(`<
A B@2 C@3 D@2 E@3 F G H I ~@8 J@5 ~@3 K@3 ~ L@2 M@2 N O ~@3 P Q@2 R@2 ~@3 S@2 T U@5 V@2 ~@4 W@4 X ~@2 Y@3 ~@2 Z@2 ~@3
AA@2 ~@3 AB@2 AC@2 ~@17 AD AE AF AG AH AI AJ AK AL AG AM AN AO AP AQ@4
>`.pickRestart({
A: "~@5 g4@3", B: "[~@2 d4@10 d5@5 b4@25 d4@10 d5@5 b4@5 g4@20 d4@10 d5@4]/2",
C: "[~ b4@25 d4@10 d5@5 b4@5 c5@40 f#4@54 b3@4]/3",
D: "[~@6 b3@3 ~@3 b3@3 b3@6 ~ c4@25 b3@6 ~@3 b3@3 ~@4 b3@3 b3@6 c4@24]/2",
E: "[~ d4@6 ~@4 d4@3 ~@3 d4@3 d4@3 ~ d4@3 e4@25 e4@6 ~@3 e4@3 ~@4 e4@3 e4@3 e4@3 d#4@25 d3@3 ~@7 d3@3 ~@3 d3@3 d3@3 ~@4 c3@3 ~@6 c3@3 ~@4]/3",
F: "c3@3 c3@3 ~@3 d3@3 ~@6 d3@3 ~@4 d3@3 d3@3 ~@3 c3@3 ~@7 c3@3 ~",
G: "~@2 c3@3 c3@3 ~@4 d3@3 ~@6 d3@3 ~@3 d3@3 d3@3 ~@4 c3@3 ~@6 c3@2",
H: "~@5 c3@3 c3@3 ~@3 d3@3 ~@7 d3@3 ~@3 d3@3 d3@3 ~@3 c3@3 ~@6", I: "~ c3@3 ~@3 c3@3 c3@3 ~@35",
// … 252 more lines
More by Koji Kondo
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.