0:00/0:00
// Trumpet Concerto — Johann Nepomuk Hummel
// 116 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: ch 1 "Trumpet - Hummel" named as a brass, played on trumpet (its pizzicato strings patch is not one)
// note: Full arrangement: all 132 bars on a 24-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(116/4)
// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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.
// other · trumpet · "Trumpet - Hummel"
const trumpet = note("<~@33 A B ~@51 C D E F G H I J K L M N O P ~@20 Q ~ Q@2 R ~@7>".pickRestart({
A: "~@21 [e3,b3,e4,g4]@2 ~", B: "[b2,b3,d#4,f#4]@3 ~@6 [e3,b3,e4,g4]@3 [b2,b3,d#4,f#4]@2 ~@10",
C: "~@4 e3@3 g#3@2 ~ e3@3 g#3@2 ~ f#3@2 ~ a3@3 f#3@2",
D: "~ a3@2 ~ g#3@3 e3@2 ~ g#3@2 ~ e3@3 d#3@2 ~ [b2,b3]@3 d#3@2", // B
E: "~ [b2,b3]@2 ~ [e3,e4]@3 [d#3,d#4]@2 ~ [c#3,c#4]@2 ~ [b2,b3]@3 [a2,a3]@2 ~ [g#2,g#3]@2 ~ [f#2,f#3]@2", // B E D# C# B A G# F#
F: "~ [e2,e3]@2 ~ [b2,b3]@3 g#3@2 ~ a3@2 ~ g#3@3 f#3@2 ~ b3@2 ~ a3@2", // E B
G: "~ [e3,e4]@2 ~ [d#3,d#4]@3 [b2,b3]@2 ~ g#3@2 ~ [e3,e4]@3 [d#3,d#4]@2 ~ [b2,b3]@2 ~ g#3@2", // E D# B E D# B
H: "~ [e3,e4]@2 ~ [c#3,c#4]@2 ~ [e3,e4]@3 [f#3,f#4]@2 ~ [f#2,f#3]@3 [b2,b3]@2 ~ [b3,b4]@2 ~ [f#3,f#4]@2", // E C# E F# B F#
I: "~ [b3,b4]@2 ~ [d3,d4]@2 ~ [f#3,f#4]@3 [b2,b3]@2 ~ [d3,d4]@2 ~ [c#3,c#4]@2 ~ [f3,f4]@2 ~ [a2,a3]@2", // B D F# B D C# F A
J: "~ [f#3,f#4]@2 ~ [d3,d4]@2 ~ [f#3,f#4]@3 [b2,b3]@2 ~ [d3,d4]@2 ~ [c#3,c#4]@3 [f3,f4]@2 ~ [a2,a3]@2", // F# D F# B D C# F A
K: "~ [c#3,c#4]@2 ~ [f#3,f#4]@2 ~ [e3,e4]@3 [d#3,d#4]@2 ~ [c#3,c#4]@2 ~ [b2,b3]@3 ~@5", // C# F# E D# C# B
L: "~ [b2,b3]@3 [d3,d4]@2 ~ [f#3,f#4]@3 b3@2 ~ a3@2 ~ g#3@3 g#3 f#3 ~ e3@2", // B D F#
M: "~ [b2,b3]@3 [d#3,d#4]@2 ~ [f#3,f#4]@2 ~ b3@2 ~ a3@2 ~ g#3@3 [e3,e4] [f#3,f#4] ~ [g#3,g#4]@2", // B D# F# E F# G#
N: "~ e3@3 [c#4,e4]@2 ~ [b3,d#4]@2 ~ [a3,c#4]@3 [g#3,b3]@2 ~ [f#3,a3]@3 [e3,g#3]@2 ~ [d#3,f#3]@2", // C#m B A G#m F#m E D#m
O: "~ [c#3,e3]@3 d#3@2 ~ [c#3,c#4]@2 ~ [b2,b3]@3 [a2,a3]@2 ~ [g#2,g#3]@2 ~ [e2,e3]@3 c#4@2", // C#m C# B A G# E
P: "~ a3@3 f#3@2 ~ a3@2 ~ b3@3 [b2,b3]@2 ~ [e3,b3]@2 ~@6", Q: "~@4 b3@3 b3@2 ~ b2@2 ~ b2@3 e3@2 ~@6",
R: "~@4 b3@2 ~ b3@3 b2@2 ~ b2@2 ~@9",
})).s("gm_trumpet").gain(0.25)
// other · string ensemble 1
const string_ensemble_1 = note(`<
~@2 A ~ B C D E F G H I J I K L M N O P Q R S T U V W X Y Z AA AB AC ~@3 AD AE AF C D E F G H I AG I K L AH AI@2 AJ@2
AK@2 AL@2 AM AN AO AP AQ AR AS AT AU AV AW AX AY AZ BA BB BC BD@2 BE BF BG BH BI BJ BK@2 ~@13 BL BM BN BO BP BQ BR BQ
BS BT BU BV ~@2 BW BX BY BZ CA CB CC CD CC CD@2 CE CF CG CF CH CI@3
>`.pickRestart({
A: "~ g#4 ~ f#4 e4@2 ~@2", B: "~ a4 ~ g#4 f#4@2 ~@2", C: "a4@11 ~ g#4@11 ~", D: "a4@11 ~ g#4@8 ~@4",
E: "g#4 ~ b4 ~ e5 ~ g#5 ~", F: "g#4@2 ~ g#4@3 f#4@2 ~ f#4@2 ~ g#4@6 ~@3 e4 f#4 ~",
G: "g#4@2 ~ g#4 a4 ~ b4@2 ~ c#5 d#5 ~ e5@3 e5 f#5 ~ g#5@3 ~@3",
H: "g#4@2 ~ g#4@3 [b3,f#4]@2 ~ [b3,f#4]@2 ~ e4@3 [e4,e5]@5 ~ e5@3", // B5 E
I: "f#5 [g#5,a5] ~ a5@6 g#5 f#5 ~ f#5 e5 ~ e5@6 d#5 c#5 ~", // Amaj7
J: "b4 c#5 ~ d#5 e5 ~ f#5 g#5 ~ f#5 g#5 ~ e5@3 [e4,e5]@6 e5@3", // E
K: "b4@2 c#5 d#5@2 e5 g#5 f#5 e5 f#5@2 g#5 e5@3 b5@2 b5 b5@2 ~ [b4,a5]@3", // B7
L: "[b4,g#5]@2 ~ g#5@2 g#5 g#5@3 [b4,f#5]@2 ~ e5@6 e4@4 e4 ~", M: "e4 ~ b4 f#4", N: "d#4 ~@3", O: "a#4@2 b4 ~@5",
P: "c#5 g#4 e4 ~", Q: "~@4 b4@2 a#4 ~", R: "f#4@4 g#4 ~ f#4@2 ~@4 f#4@4 g#4 ~ f#4@3 ~@3",
S: "f#4@2 ~ f#4@3 f#4@2 ~ f#4@3 b4@6 d#5@3 f#4@2 ~", T: "f#4@2 ~@4 f#4@2 ~ f#4@2 ~ f#4@2 ~ f#4@2 ~@4 f#4@2 ~",
U: "a#4@2 ~ a#4@3 ~@3 a#4@2 ~ b4@3 f#4@2 ~ b4@6", V: "~ g#4 e5@2 ~ a#4 f#5@2",
W: "d#5@2 ~ d#5@3 c#5@2 ~ c#5@2 ~ d#5@3 f#4@2 ~ b4@6", X: "g#4@11 ~ a#4@11 ~",
Y: "b4@2 ~ c#5@2 ~ b4@3 a#4@2 ~ b4@3 f#4@3 g#4@3 a#4@3",
Z: "b4@2 ~ c#5@2 ~ b4@3 a#4@2 ~ b4@2 ~ [b4,b5]@3 ~@4 b3 [c#4,d#4]", // B C#sus2
AA: "e4@2 ~ [b4,b5]@2 ~@5 g#4 [e4,f#4] d#4@2 ~ [b4,b5]@3 ~@4 b3 [c#4,d#4]", // B Esus2 B C#sus2
AB: "e4@2 ~ [b4,b5]@2 ~@5 g#4 [e4,f#4] d#4@2 ~@2 b3 [c#4,d#4] e4@2 ~@2 g#4 [e4,f#4]", // B Esus2 C#sus2 Esus2
AC: "d#4@3 ~ b3 [c#4,d#4] e4@3 ~ g#4 [e4,f#4] d#4@3 ~@9", AD: "g#4@3 g#4@2 ~ f#4@2 ~ f#4@3 e4@6 ~@6",
AE: "~@21 g#4@2 ~", AF: "a4@2 ~ a4@3 [b3,g#4]@2 ~ [b3,g#4]@2 ~ [a3,f#4]@6 ~@6",
AG: "b4@2 c#5 d#5@2 e5 f#5@2 g#5 f#5@2 g#5 e5@2 ~ [e4,e5]@6 e5@3", AH: "e4@6 ~@9 g4@3 g4@3 ~ g4@2",
AI: "[~@4 g4@3 g4@3 g4@3 ~@4 a4@3 a4@3 a4@3 ~@4 a4@3 a4@3 a4@3 ~@3 a4@3 a4@3]/2",
AJ: "[~ a4@3 ~@3 a4@3 a4@3 a4@3 ~@4 g4@3 g4@3 g4@3 g4@3 ~ g4@3 f#4@3 e4@3 d4@3 g4@3]/2",
AK: "[~ g4@3 g4@3 ~@3 g4@3 g4@3 ~ g4@3 ~@3 g4@3 g4@3 g4@3 ~@4 f#4@3 f#4@3 f#4@3 ~@3]/2",
AL: "[d5@3 ~@4 c5@3 ~@3 b4@3 ~@4 a4@3 g4@3 b4 ~ c5 d5@3 e5 ~ f#5 ~ g5@3 g5 a5 ~ b5 ~ g5 d5 ~ b4]/2",
AM: "c5@3 ~ a5 g5 ~ g5 f#5 ~ f#5 ~ e5!2 ~ d5!2 ~ c5!2 ~ b4 ~ b4", AN: "a4 ~ g4@3 b4@3 ~@3 d5@3 ~@4 b5@3 ~@3",
AO: "b5@3 ~@4 c6@3 ~@3 a5@3 ~@3 f#5@3 ~@2", AP: "~@2 c5@3 b4@3 [b4,b5]@6 ~ g5 e5 ~ d#5@3 e5@3",
AQ: "g5@3 a#4@3 b4@3 ~ b4@3 ~@3 a4@3 ~@3 g4@2", AR: "~@5 a#4@3 b4@3 [b4,b5]@6 ~ g5 e5 ~ d#5!2 ~",
AS: "e5 ~ e5 g5 ~ g5 a#4 ~ a#4 ~ b4@3 b4@3 ~@3 a4@3 ~@2", AT: "~@2 g#4@3 ~@3 g4@3 f#4@3 b3@3 ~ d#4@3 f#4@3",
AU: "b4@3 c5@3 b4@3 d#5@3 ~ e5@3 g4@3 g4@3 g4@2", AV: "~@5 g4@3 g4@3 g4@3 ~@3 a4@3 ~ a4@3",
AW: "a4@3 ~@3 a4@3 a4@3 ~ a4@3 ~@3 a4@3 a4@2", AX: "~ a4@3 ~@4 a4@3 a4@3 a4@3 ~@3 g#4@3 ~",
AY: "g#4@3 g#4@3 ~@3 g#4@3 g#4@3 ~ g#4@3 ~@3 a4@2", AZ: "~@4 b4@3 ~@4 c5@3 ~@3 d#5@3 ~@4",
BA: "e5@3 ~@3 a4@3 ~@3 g4@3 ~@4 b4@3 ~@2", BB: "~ e5@3 e5@3 e5@3 ~@4 a#4@3 a#4@3 a#4@3 b4",
BC: "~ b3 ~ c#4 d#4 ~ e4 f#4 ~ g4 ~ a4 b4@3 [b4,a5]@3 ~ [b4,g5]@3 [b4,f#5]@2", // B7 Em B5
BD: "[~ b3@3 c#4 ~ d#4 e4 ~ f#4 ~ g4 a4 ~ b4@3 [b4,g5]@3 [b4,f#5]@3 e5@3 ~ d#5@3 b4@3 ~@3 b4@3 ~@3 b4@3 ~@3]/2", // Em B5
BE: "~ b4@3 ~@3 b4@3 ~@4 b4@3 ~@3 b4@3 ~", BF: "~@2 b4@3 ~ b4@3 ~@15", BG: "~@10 b3!3 ~ d#4!3 f#4!3 b4!3 d#4",
BH: "d#4!2 f#4!3 ~ b4!3 d#5!3 f#4!3 b4!3 d#5!3 f#5 ~ f#5", BI: "f#5 d#5!3 b4!3 f#4!3 d#4!3 c4!2 ~ c4 b3!3 a#3!3 b3",
BJ: "b3!2 a#3!3 b3!2 ~ b3 a#3!3 b3!3 a#3!3 b3!3 a#3!3", BK: "[~ b3@9 a#3@3 b3@9 ~ a#3@3 b3@12 ~@10]/2",
BL: "~@19 g#4@3 ~@2", BM: "~ b4@3 ~@3 e5@3 ~@3 g#5@3 ~@3 g#4@3 ~@2", BN: "~ b4@3 ~@3 e5@3 ~@3 g#5@3 ~@3 a4@3 ~@2",
BO: "~ d#5@3 ~@3 f#5@3 ~@3 a5@3 ~@3 a4@3 ~@2", BP: "~ d#5@3 ~@3 f#5@3 ~@3 a5@3 g#5@3 g#5 f#5 ~ d#5 b4",
BQ: "~ g#5 e5 ~ d#5 b4 ~ g#5 e5 ~ d#5 b4 ~ g#5 e5 ~ d#5@3 ~@5", BR: "~@16 e4@3 g#5 e5 ~ d#5 b4",
BS: "~@19 b4@2 ~ b4@2", BT: "~ b4@2 ~@4 d5@3 d5@2 ~ d5@2 ~@4 c#5@2 ~ c#5@2",
BU: "~ c#5@2 ~@4 c5@3 c5@2 ~ c5@2 ~@4 b4@2 ~ b4@2", BV: "~ b4@3 ~@3 a#4@3 a#4@2 ~ a#4@2 ~ b4@3 ~@5",
BW: "~@19 b4@3 ~@2", BX: "~ c5@3 ~@3 c#5@3 ~@3 d5@3 ~@3 d#5@3 ~@2", BY: "~ d#5@3 ~@3 e5@3 ~@3 f5@3 f#5@3 ~@5",
BZ: "~ a#3@2 ~ b3@3 ~@6 a#3@2 ~ b3@2 ~@6", CA: "~ a#3@2 ~ b3@3 ~@9 b3@2 ~ c#4 d#4 ~ e4 f#4",
CB: "~ g#4 a4 ~ b4@3 ~@3 [f#4,d#5,b5]@3 ~@3 [e4,e5]@3 ~@5", // B E
CC: "~ b3@3 [f#4,g#4] g#4 f#4 [f#4,g#4] e4 f#4 g#4@2 ~ f#4@3 e4@7 b3", // F#sus2
CD: "~ e4 f#4 ~ g#4@2 ~ g#4@3 f#4@2 ~ f#4@2 ~ e4@3 ~@5",
CE: "~ e4 f#4 ~ g#4@2 ~ g#4@3 f#4@2 ~ f#4@2 ~ e4@3 [e4,e5]@5", // E
CF: "~ e5@3 [f#5,g#5] a5 ~ [b4,a5]@6 g#5 f#5 ~ f#5 e5 ~ e5@5", // F#sus2 B7
CG: "~ d#5 c#5 ~ b4@2 c#5 d#5@2 e5 f#5@2 g#5 f#5@2 g#5 e5@3 [e4,e5]@5", // E
CH: "~ d#5 c#5 ~ b4@2 c#5 d#5@2 e5 g#5 f#5 e5 f#5@2 ~ g#5 e5@3 [b4,b5]@3 [b4,b5]", // B
CI: "[[b4,b5]@3 ~ [b4,a5]@3 ~ [b4,g#5]@4 ~ g#5@3 g#5 g#5@4 ~ [b4,f#5]@4 ~@2 [e4,e5]@11 ~ e4@10 e4@3 ~ e4@15 ~@3]/3", // B B7 E B5 E
})).s("gm_string_ensemble_1").gain(0.35)
// other · string ensemble 1 · soft notes
const string_ensemble_1_soft = note("<~@86 A B C D E F G@2 H I@2 J K L ~@32>".pickRestart({
A: "~@4 e4@6 g#4@3 e4@2 ~ d#4@6 b3@2", B: "~@4 e4@6 b3@2 ~ e4@3 f#4@6 b3@2",
C: "~ f#4@2 ~ [g#4,a4] a4 g#4 [g#4,a4] f#4 g#4 a4@2 ~ g#4@3 f#4@2 ~ e4@2 ~ d#4@2", // Amaj7
D: "~ e4@2 ~ f#4@3 b3@3 d#4 c#4 ~ b3@3 d#4@6 e4@2", E: "~ g#4@2 ~ f#4@6 b3@2 ~ g#4@3 f#4@6 b3@2",
F: "~ c#4 d#4 ~ e4@3 e4 d#4 ~ c#4@2 ~ f#4@3 b3@3 ~@5", G: "~@4 b4@6 d5@2 ~ b4@2 ~ c#5@6 f#5@2",
H: "~ c#5@2 ~ a4@2 ~ g#4@3 f#4@2 ~ a#4@2 ~ b4@3 b3@3 d#4 c#4",
I: "~ b3@3 [f#4,g#4] g#4 f#4 [f#4,g#4] e4 f#4 g#4@2 ~ f#4@2 ~ e4@6 b4@2", // F#sus2
J: "~ b3@3 [g#4,a4] a4 g#4 [g#4,a4] f#4 g#4 a4@3 g#4@2 ~ f#4@3 e4@2 ~ d#4@2", // Amaj7
K: "~ e4@3 b4@6 b3@3 d#5@2 ~ e5@2 ~ e4@3 e4@2", L: "~ f#4 g#4 ~ a4@3 a4 g#4 ~ f#4@3 b4@2 ~ e4@3 ~@5",
})).s("gm_string_ensemble_1").gain(0.2)
// other · string ensemble 1
const string_ensemble_1_2 = note(`<
~@2 A ~ B C D E F G H I J K L M ~@2 N O P Q@2 R S T U V@2 W ~@6 X Y Z C D E F G H K J K L M AA AB@2 AC@2 AD@2 AE@2
AF@2 AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT@2 AU@2 AV AW ~@19 AX AY AZ BA BB BC BD BE BF BG BH BI ~@2 BJ BK BL ~@2
BM BN BO BP BO@2 BQ BR BS BT BU BV@2 ~
>`.pickRestart({
A: "~ e4 ~ d#4 e4@2 ~@2", B: "~ f#4 ~ f4 f#4@2 ~@2", C: "f#4@11 ~ e4@11 ~", D: "f#4@11 ~ e4@8 ~@4",
E: "e4 ~ g#4 ~ b4 ~ e5 ~", F: "e4@2 ~ e4@3 d#4@2 ~ d#4@2 ~ e4@6 ~@6",
G: "e4@2 ~ e4 f#4 ~ g#4@2 ~ a4 f#4 ~ g#4@3 g#4 a4 ~ b4@3 ~@3",
H: "e4@2 ~ e4@3 d#4@2 ~ d#4@2 ~ e4@3 [b3,g#4]@6 [b3,g#4]@3", I: "[b3,a4] [b3,a4]@2 [b3,a4] [b3,b4] [b3,b4]@2 [b3,b4]",
J: "[b3,f#4] [b3,f#4]@2 [b3,f#4] e4 [b3,g#4]@2 [b3,g#4]", K: "[b3,a4] [b3,a4]@2 [b3,a4] [b3,g#4] [b3,g#4]@2 [b3,g#4]",
L: "[b3,f#4]@3 [b3,f#4]@6 [b3,f#4]@3 e4@3 g#5@2 g#5 g#5@2 ~ [b4,f#5]@3", // B5
M: "[e4,e5]@2 ~ b4@2 b4 b4@3 [b3,a4]@2 ~ [b3,g#4]@6 ~@6", N: "e4@3 d#4 ~@8", O: "e4@5 ~ c4@5 ~ c#4@5 ~@7",
P: "~@4 d#4@2 c#4 ~", Q: "e4!4 d#4!4", R: "e4@2 ~ e4@3 ~@3 e4@2 ~ d#4@2 ~ d#4@2 ~@4 d#4@2 ~",
S: "e4@2 ~ e4@3 ~@3 e4@2 ~ d#4@3 f#4@2 ~ f#4@6", T: "~ e4 g#4@2 ~ f#4 c#5@2", U: "b4 b4@2 a#4 b4 ~@2 f#4",
V: "[e4@15 f4@3 f#4@9 g#4@2 ~ f#4@3 f#4@2 ~ f#4@6 f4@3 e4@3]/2", W: "d#4@2 ~ g#4@2 ~ f#4@3 e4@2 ~ d#4@2 ~ b4@3 ~@6",
X: "e4@3 e4@2 ~ b3@2 ~ b3@3 g#3@6 ~@6", Y: "~@21 f4@2 ~", Z: "f#4@2 ~ f#4@3 f4@2 ~ f4@2 ~ f#4@6 ~@6",
AA: "~@15 e4@3 e4@3 ~ e4@2", AB: "[~@4 e4@3 e4@3 e4@3 ~@4 d#4@3 d#4@3 d#4@3 ~@4 d#4@3 d#4@3 d#4@3 ~@3 f#4@3 f#4@3]/2",
AC: "[~ f#4@3 ~@3 f#4@3 f#4@3 f#4@3 ~@4 e4@3 e4@3 e4@3 e4@3 ~ g4@3 f#4@3 e4@3 d4@3 d4@3]/2",
AD: "[~ d4@3 d4@3 ~@3 d4@3 d4@3 ~ d#4@3 ~@3 e4@3 e4@3 e4@3 ~@4 d4@3 d4@3 d4@3 ~@3]/2",
AE: "[g4@3 ~@4 a4@3 ~@3 g4@3 ~@4 f#4@3 g4@3 [b3,d4]@3 [b3,d4]@3 [b3,d4]@3 ~ [b3,d4]@3 [b3,d4]@3 [b3,d4]@3 [b3,d4]@3]/2", // Bm
AF: "[[c4,d4]@3 ~ [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 ~ [c4,d4]@3 [b3,d4]@3 g4@3 ~@3 b4@3 ~@4 d5@3 ~@3]/2", // Csus2 Bm
AG: "g5@3 ~@4 a5@3 ~@3 f#5@3 ~@3 c5@3 ~@2", AH: "~@2 f#4@3 g4@3 ~@16", AI: "~@10 d#4@3 ~@3 f#4@3 ~@3 e4@2",
AJ: "~@5 e4@3 d#4@3 ~@13", AK: "~@13 d#4@3 ~@3 d#4@3 ~@2", AL: "~@2 e4@3 ~@3 e4@3 d#4@3 b3@3 ~ d#4@3 f#4@3",
AM: "b4@3 d#4@3 e4@3 [b3,a4]@3 ~ [b3,g4]@3 e4@3 e4@3 e4@2", AN: "~@5 e4@3 e4@3 e4@3 ~@3 d#4@3 ~ d#4@3",
AO: "d#4@3 ~@3 d#4@3 e4@3 ~ e4@3 ~@3 f#4@3 f#4@2", AP: "~ f#4@3 ~@4 f#4@3 f#4@3 f#4@3 ~@3 f4@3 ~",
AQ: "f4@3 f4@3 ~@3 f4@3 f4@3 ~ f4@3 ~@3 e4@2", AR: "~@4 g#4@3 ~@4 a4@3 ~@3 c5@3 ~@4",
AS: "b4@3 ~@3 d#4@3 ~@3 e4@3 ~@4 g#4@3 ~@2",
AT: "[~ a4@3 a4@3 a4@3 ~@4 g4@3 g4@3 g4@3 b3@3 ~@13 [b3,f#4]@3 ~ [b3,g4]@3 [b3,a4]@2]/2", // B5 Em B7
AU: "[~@20 [b3,a4]@3 [b3,g4]@3 ~ [b3,f#4]@3 f#4@3 ~@3 f#4@3 ~@3 f#4@3 ~@3]/2", // B7 Em B5
AV: "~ f#4@3 ~@3 g4@3 ~@4 g4@3 ~@3 g4@3 ~", AW: "~@2 g4@3 ~ f#4@3 ~@15", AX: "~@19 e4@3 ~@2",
AY: "~ g#4@3 ~@3 g#4@3 ~@3 b4@3 ~@3 b3@3 ~@2", AZ: "~ g#4@3 ~@3 g#4@3 ~@3 b4@3 ~@3 f#4@3 ~@2",
BA: "~ a4@3 ~@3 a4@3 ~@3 f#5@3 ~@3 f#4@3 ~@2", BB: "~ a4@3 ~@3 a4@3 ~@3 f#5@3 e5@3 g#4 e4 ~ d#4 b3",
BC: "~ g#4 e4 ~ d#4 b3 ~ g#4 e4 ~ d#4 b3 ~ g#4 e4 ~ d#4@2 ~ f#4@2 ~ g#4@2",
BD: "~ f#4@2 ~ g#4@3 f#4@2 ~ g#4@2 ~ f#4@3 e4@2 ~ g#4 e4 ~ d#4 b3",
BE: "~ g#4 e4 ~ d#4 b3 ~ g#4 e4 ~ d#4 b3 ~ g#4 e4 ~ b3@3 a4@2 ~ g#4@2",
BF: "~ a4@2 ~ g#4@2 ~ a4@3 g#4@2 ~ a4@2 ~ g#4@2 ~ g#4@2 ~ g#4@2",
BG: "~ g#4@2 ~@4 f4@3 f4@2 ~ f4@2 ~@4 f#4@2 ~ f#4@2", BH: "~ f#4@2 ~@4 d#4@3 d#4@2 ~ d#4@2 ~@4 e4@2 ~ e4@2",
BI: "~ e4@3 ~@3 e4@3 e4@2 ~ e4@2 ~ e4@3 ~@5", BJ: "~@19 f#4@3 ~@2", BK: "~ f#4@3 ~@3 g#4@3 ~@3 g#4@3 ~@3 a4@3 ~@2",
BL: "~ c5@3 ~@3 b4@3 ~@3 b4@3 b4@3 ~@5", BM: "~@10 [b3,f#4,d#5]@3 ~@3 [b3,g#4,e5]@3 ~@5", BN: "~@16 e4@3 ~@5",
BO: "~ e4 d#4 ~ e4@2 ~ e4@3 b3@2 ~ b3@2 ~ g#3@3 ~@5", BP: "~@4 d#4@11 ~ e4@3 ~@5",
BQ: "~ e4 d#4 ~ e4@2 ~ e4@3 b3@2 ~ b3@2 ~ g#3@3 [b3,g#4]@5", // E
BR: "~ [b3,g#4]@3 [b3,a4]@6 [b3,a4]@3 [b3,a4]@3 [b3,g#4]@3 [b3,g#4]@5", // E B7 E
BS: "~ [b3,g#4]@3 [b3,f#4]@3 [b3,f#4]@6 [b3,f#4]@3 [b3,g#4]@3 [b3,g#4]@5", // E B5 E
BT: "~ [b3,g#4]@3 [b3,a4]@3 [b3,a4]@6 [b3,a4]@3 [b3,g#4]@3 [b3,g#4]@5", // E B7 E
BU: "~ [b3,g#4]@3 [b3,f#4]@3 [b3,f#4]@6 [b3,f#4]@3 ~ e4@3 g#5@3 g#5", // E B5
BV: "[g#5@3 ~ [b4,f#5]@3 ~ [e4,e5]@4 ~ b4@3 b4 b4@4 ~ [b3,a4]@4 ~@2 [b3,g#4]@11 ~@9]/2", // B5 E B7 E
})).s("gm_string_ensemble_1").gain(0.25)
// other · string ensemble 1
const string_ensemble_1_3 = note(`<
~@2 A ~ B C D E F G H I J I K L M ~ N O P Q R S T U V@2 W X ~@8 Y C D E F G H I J I K L Z AA@2 AB@2 AC@2 AD@2 AE@2
AF@2 AG AH AI AJ AK AL AM AN AO AP AQ AR AS AT@2 AU AV AW AX AY ~@2 AZ ~@14 BA BB BC BD BE BF BG BH BI BJ BK ~@2 BL BM
BN BO BP BQ BR BS BR BT@3 BU BV BW BX BY@3
>`.pickRestart({
A: "~ b3 ~ a3 g#3@2 ~@2", B: "~ c#4 ~ b3 a3@2 ~@2",
C: "b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~",
D: "b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3 c#4 ~ b3@3 ~@3", E: "b3 ~ e4 ~ g#4 ~@3",
F: "b3@2 ~ b3@3 b3@2 ~ b3@2 ~ b3@6 ~@6", G: "e4 ~ e4 ~ e4 ~@3", H: "b3@2 ~ b3@3 a3@2 ~ a3@2 ~ g#3@3 e4@6 e4@3",
I: "[d#4,f#4] [d#4,f#4]@2 [d#4,f#4] e4 e4@2 e4", J: "[a3,d#4] [a3,d#4]@2 [a3,d#4] [g#3,b3] e4@2 e4",
K: "[a3,d#4] [a3,d#4]@2 [a3,d#4] [g#3,e4] ~@2 b3", L: "e4@3 ~@6 d#4@3 e4@6 e3@4 e3 ~", M: "e3 ~@3",
N: "~@3 a#3 b3@2 c4@2", O: "c#4@5 ~ d#4@5 ~ g#3@5 ~@7", P: "~@3 f#4@2 ~", Q: "c#4!4 b3!4", R: "a#3!4 b3!4",
S: "c#4@2 ~ c#4@3 ~@3 a#3@2 ~ b3@2 ~ b3@2 ~@4 b3@2 ~", T: "f#4@2 ~ f#4@3 ~@3 f#4@2 ~ f#4@3 ~@3 b3@6",
U: "~ b3 c#4@2 ~ c#4 e4@2", V: "[~@3 g#4@6 f#4@3 f#4@3 f#3@2 ~ b3@9 c4@3 c#4@17 ~]/2",
W: "b3@2 ~ e4@2 ~ d#4@3 c#4@2 ~ b3@8 ~ c#4@3", X: "b3@2 ~ e4@2 ~ d#4@3 c#4@2 ~ b3@2 ~ b4@3 ~@6",
Y: "c#4@2 ~ c#4@3 c#4@2 ~ c#4@2 ~ c#4@6 ~@6", Z: "e3@6 ~@9 b3@3 b3@3 ~ b3@2",
AA: "[~@4 b3@3 b3@3 b3@3 ~@4 c4@3 c4@3 c4@3 ~@4 c4@3 c4@3 c4@3 ~@3 b3@3 b3@3]/2",
AB: "[~ b3@3 ~@3 c4@3 b3@3 b3@3 ~@4 b3@3 b3@3 b3@3 b3@3 ~ [g3,g4]@3 [g3,g4]@3 [g3,g4]@3 ~@3 b3@3]/2", // G
AC: "[~ b3@3 b3@3 ~@3 b3@3 b3@3 ~ b3@3 ~@3 a3@3 a3@3 a3@3 ~@4 a3@3 a3@3 a3@3 ~@3]/2",
AD: "[b3@3 ~@4 e4@3 ~@3 d4@3 ~@4 c4@3 b3@3 b3@3 d3@3 b3@3 ~ g3@3 b3@3 d3@3 b3@3]/2",
AE: "[f#3@3 ~ a3@3 d3@3 a3@3 f#3@3 a3@3 d3@3 ~ a3@3 g3@3 [b3,d4]@3 [b3,d4]@3 [b3,d4]@3 ~ [b3,d4]@3 [b3,d4]@3 [b3,d4]@3]/2", // Bm
AF: "[[b3,d4]@3 [c4,d4]@3 ~ [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 [c4,d4]@3 ~ [a3,d4]@3 [a3,d4]@3 [g3,d4]@3 b4@6 ~ g4 e4 ~ d#4@3 e4@3]/2", // Bm Csus2 D5 G5
AG: "g4@3 a#3@3 b3@3 ~ b3@3 ~@3 b3@3 ~@3 b3@2", AH: "~@5 g4@3 f#4@3 b4@6 ~ g4 e4 ~ d#4!2 ~",
AI: "e4 ~ e4 g4 ~ g4 a#3 ~ a#3 ~ b3@3 b3@3 ~@3 c4@3 ~@2", AJ: "~@2 b3@3 ~@3 a#3@3 b3@3 b3@3 ~ d#4@3 f#4@3",
AK: "b4@3 f#4@3 g4@3 b3@3 ~ e4@3 b3@3 b3@3 b3@2", AL: "~@5 b3@3 b3@3 b3@3 ~@3 c4@3 ~ c4@3",
AM: "c4@3 ~@3 c4@3 c4@3 ~ c4@3 ~@3 b3@3 b3@2", AN: "~ b3@3 ~@4 c4@3 b3@3 b3@3 ~@3 b3@3 ~",
AO: "b3@3 b3@3 ~@3 b3@3 b3@3 ~ b3@3 ~@3 c4@2", AP: "~@4 d4@3 ~@4 e4@3 ~@3 f#4@3 ~@4",
AQ: "g4@3 ~@3 b3@3 ~@3 b3@3 ~@4 f4@3 ~@2", AR: "~ e4@3 e4@3 e4@3 ~@4 e4@3 e4@3 e4@3 ~", AS: "~@15 d#4@3 ~ e4@3 f#4@2",
AT: "[~@17 e4@3 d#4@3 e4@3 ~ b3@3 d#4@3 ~@3 d#4@3 ~@3 d#4@3 ~@3]/2", AU: "~ d#4@3 ~@3 e4@3 ~@4 e4@3 ~@3 e4@3 ~",
AV: "~@2 e4@3 ~ d#4@3 ~@15", AW: "~@20 b3!3 ~", AX: "~@6 b3!3 d#4!3 f#3!3 b3!3 d#4!3 f#4 ~ f#4",
AY: "f#4 d#4!3 b3!3 f#3!3 d#3!3 ~@11", AZ: "~@2 b3@19 ~@3", BA: "~ e4@3 ~@3 e4@3 ~@3 e4@3 ~@3 e4@3 ~@2",
BB: "~ e4@3 ~@3 e4@3 ~@3 e4@3 ~@3 b3@3 ~@2", BC: "~ b3@3 ~@3 b3@3 ~@3 b3@3 ~@3 b3@3 ~@2",
BD: "~ b3@3 ~@3 b3@3 ~@3 b3@3 b3@2 ~ e4@2 ~ b3@2", BE: "~ e4@2 ~ b3@3 e4@2 ~ b3@2 ~ e4@3 b3@2 ~ b3@2 ~ e4@2",
BF: "~ b3@2 ~ e4@3 b3@2 ~ e4@2 ~ b3@3 e4@2 ~ e4@2 ~ b3@2", BG: "~ e4@2 ~ b3@2 ~ e4@3 b3@2 ~ e4@3 b3@2 ~ f#4@2 ~ e4@2",
BH: "~ f#4@2 ~ e4@2 ~ f#4@3 e4@2 ~ f#4@2 ~ e4@2 ~ e4@2 ~ e4@2", BI: "~ e4@2 ~@4 b3@3 b3@2 ~ b3@2 ~@4 a3@2 ~ a3@2",
BJ: "~ a3@2 ~@4 a3@3 a3@2 ~ a3@2 ~@4 g3@2 ~ g3@2", BK: "~ g3@3 ~@3 g3@3 g3@2 ~ g3@2 ~ g#3@3 ~@5",
BL: "~@19 d#4@3 ~@2", BM: "~ d#4@3 ~@3 e4@3 ~@3 f4@3 ~@3 f#4@3 ~@2", BN: "~ f#4@3 ~@3 g#4@3 ~@3 d4@3 d#4@3 ~@5",
BO: "~ a#3@3 b3@3 ~@6 a#3@2 ~ b3@2 ~@6", BP: "~ a#3@2 ~ b3@3 ~@17",
BQ: "~@4 b4 a#4 ~ b4 c#5 ~ b4 a4 ~ g#4 f#4 ~ e4@3 b3@2 ~ b3@2", BR: "~ b3@2 ~ [a3,b3]@12 [g#3,b3]@3 ~@5",
BS: "~@19 b3@2 ~ b3@2", BT: "[~@19 b3@2 ~ b3@6 ~@15 b3@2 ~ b3@6 ~@12 e3@3 e4@5]/3",
BU: "~ e4@3 [d#4,f#4]@3 [d#4,f#4]@6 [d#4,f#4]@3 [b3,e4]@3 [b3,e4]@5", // D#m E5
BV: "~ [b3,e4]@3 [a3,d#4]@3 [a3,d#4]@6 [a3,d#4]@3 [g#3,b3]@3 e4@5", // E5 Adim G#m
BW: "~ e4@3 [d#4,f#4]@3 [d#4,f#4]@6 [d#4,f#4]@3 e4@3 [b3,e4]@5", // D#m E5
BX: "~ [b3,e4]@3 [a3,d#4]@3 [a3,d#4]@6 [a3,d#4]@3 ~ [g#3,e4]@3 ~@4", // E5 Adim C#m
BY: "[~@4 b3@4 e4@4 ~@10 d#4@5 ~ e4@11 ~ e3@10 e3@3 ~ e3@15 ~@3]/3",
})).s("gm_string_ensemble_1").gain(0.25)
// other · timpani
// … 92 more lines
More by Johann Nepomuk Hummel
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.