0:00/0:00
// Bis in alle Ewigkeit — Brunner & Brunner
// 136 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 109 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(136/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.
// chords · string ensemble 1 · "Bis in al"
const string_ensemble_1 = note(`<
A B C D@2 E F G@2 H@2 I@4 J@2 K@4 L M N O P Q R@6 S Q T@2 U V W@2 X@2 Y@4 Z AA AB@2 AC@2 AD M AE@2 P AF AG@6 P AH@4 AI
AJ@2 AK@2 AL@6 AM@4 AN AO AP AQ AR AS AT@4 AU@2 AR AV@4 AW AX@2 AY AZ BA@2
>`.pickRestart({
A: "~@6 [f4,a4] ~ [f4,a4] ~ [a4,c5] ~ [a4,c5] ~ [c5,f5] ~", B: "[e5,g5]@2 [d5,f5] [c5,e5]@5",
C: "~@6 [bb4,d5] ~ d5@2 [c5,e5] ~ [c5,e5]@2 [d5,f5] ~, ~@6 f4@7 ~@3, ~@8 bb4 ~@7", // Bb C Dm
D: "[[bb4,d5]@3 ~ [a4,c5] ~ c5@9 ~@7 [f4,a4] ~ [f4,a4] ~ [g4,bb4] ~ [g4,bb4] ~ [a4,c5] ~, f4@5 ~@3, ~@6 a4@15 ~@11, ~@15 d4@13 ~@4]/2", // Bb Am F Gm Am
E: "[bb4,d5]@4 [a4,c5]@2 [g4,bb4]@9 ~, [g3,d4]@13 ~@3", F: "[f4,bb4,d5]@4 [d5,f5]@2 [g4,c5,e5]@6 [bb4,g5]@3 ~",
G: "[[c5,f5]@11 ~ [bb4,d5]@3 ~ [a4,c5]@7 ~ [f4,bb4,d5]@3 ~ [c4,e4,g4,c5]@3 ~, a4@9 ~@3 f4@10 ~@10]/2", // F5 Bb Am Bb C
H: "[~@3 c4@23 ~@2 [bb3,d4,f4]@3 ~, f4@13 ~@3, ~ a3@25 ~@6]/2", I: "[[g3,c4]@31 ~, e4]/4",
J: "[c4@12 [bb3,d4]@4 [a3,c4]@7 ~ [f3,d4]@4 [g3,c4,e4]@4, [f3,f4]@23 ~@9, a3@5 ~@7 bb3 ~@3]/2", // Bb Am Dm C F
K: "[[f3,a3]@15 ~ [f3,d4]@16, f4@63 ~, c4@16 bb3@15 ~]/4", L: "[f3,a3,c4,f4]@15 ~", M: "[g3,c4,e4]@15 ~",
N: "[f3,a3,c4,f4]", O: "~@12 f5@3 ~, ~@4 a4@11 ~, ~@4 f4@9 ~@3, ~@8 c5@7 ~",
P: "[e5,g5]@2 [d5,f5] [c5,e5]@5, [c4,g4]@15 ~", Q: "bb3@12 f5@3 ~, [f4,bb4,d5]@15 ~",
R: "[[bb4,d5]@3 ~@29 [g4,bb4]@36 ~@24 f5@3 ~, f4@32 e4@33 ~@3 f4@24 ~@4, ~@4 [a4,c5]@28 ~@36 a4@27 ~, ~@4 c4@19 ~, ~@70 c5@25 ~]/6", // Bb Gm Am
S: "[e5,g5]@2 [d5,f5] [c5,e5]@5, g4@15 ~, c4@13 ~@3", T: "[[bb4,d5] [a4,c5]@7, f4@15 ~]/2", U: "[c4,e4,g4,bb4]@15 ~",
V: "~@4 f5 ~ [g4,c5,e5]@6 [bb4,g5]@3 ~, [f4,bb4,d5]@3 ~@5", // C Eb Bb
W: "[[bb4,g5]@2 ~@6 c5@3 ~ [bb4,d5]@4 [a4,c5]@8 [f3,bb3,d4]@3 ~ [g3,c4,e4]@3 ~, ~ f5@5 ~@10, ~@2 a4@8 ~@2 f4@13 ~@7]/2", // Eb Bb Am Bb C
X: "[[a3,c4,f4]@13 ~ [f3,bb3,d4]@2]/2", Y: "[[g3,c4,e4]@31 ~]/4", Z: "[f3,a3,c4,f4]@11 ~ [f3,bb3,d4]@4",
AA: "[f3,a3,c4]@7 ~ [f3,bb3,d4]@3 ~ [g3,c4,e4]@3 ~", AB: "[[a3,c4,f4]@31 ~, f3@29 ~@3]/2", AC: "[[f3,bb3,d4]@15 ~]/2",
AD: "[f3,a3,c4]@15 ~", AE: "[[f3,a3,c4,f4]@19 ~@9 f5@3 ~, ~@10 a4@5 ~, ~@5 f4@2 ~, ~@24 c5@7 ~]/2",
AF: "d5@6 f5 ~, [f4,bb4]@15 ~", // Bb5
AG: "[[bb4,d5]@3 ~@29 [g4,bb4]@36 f4 ~@23 f5@3 ~, f4@32 e4@33 ~@5 [f4,c5]@25 ~, ~@4 [a4,c5]@28 ~@36 a4@27 ~, ~@20 c4@73 ~@3]/6", // Bb Gm F5 Am
AH: "[[bb4,d5]@19 ~@29 [g4,bb4]@15 ~, f4@12 e4@3 ~, ~@5 [a4,c5]@7 ~@4, ~@5 c4@3]/4", // Bb Gm Am
AI: "[f4,bb4,d5]@3 [g4,bb4,c5,e5]@4 ~", AJ: "[~@2 c5@17 ~@5 [g4,bb4]@4 [a4,c5]@4, [f4,a4,f5]@3 ~]/2",
AK: "[[bb4,d5]@4 db5@2 [bb4,d5]@5 ~ [e5,g5]@9 ~ [d5,f5]@6 bb4@4, f4@31 ~, ~@4 a4 ~@23 d5@2 ~@2]/2", // Bb Em Dm
AL: "[[a4,c5]@4 b4@2 [a4,c5]@5 ~ [d5,f5]@3 ~ [d5,f5]@5 ~ [c5,e5]@6 [a4,c5]@3 ~ [g4,bb4]@4 a4@2 [g4,bb4]@5 ~ [d5,f5]@3 ~ [d5,f5]@6 [c5,e5]@6 [a4,c5]@4 [f4,a4]@23 ~ [g4,bb4]@4 [a4,c5]@4, c4@11 ~, f4@29 ~@7 gb4 ~@59, ~@4 ab4 ~@91]/6", // Am Dm C Am Gm Dm C Am …
AM: "[[bb4,d5]@4 [a4,db5] ~ [bb4,d5]@5 ~ [e5,g5]@3 ~ [e5,g5]@6 [d5,f5]@5 ~ [bb4,d5]@3 ~ [a4,c5]@3 ~ [ab4,b4] ~ [a4,c5]@5 ~ [d5,f5]@3 ~ [d5,f5]@5 ~ [c5,e5]@6 [a4,c5]@3 ~, f4@15 ~]/4", // Bb A Bb Em Dm Bb Am Abm …
AN: "[g4,bb4]@2 a4 [g4,bb4]@4 ~, c4@7 ~, ~@4 gb4 ~@11", AO: "[f4,bb4,d5]@5 ~ [g4,bb4,c5,e5]@5 ~ [bb4,g5]@3 ~",
AP: "[bb4,g5] a4@3 ~@2 a4@2, ~ f5@7, ~ c5", AQ: "~@4 [gb4,bb4]@4 [bb4,db5]@4 [db5,gb5]@3 ~, ~@12 bb4 ~@3",
AR: "[f5,ab5]@3 ~ [eb5,gb5]@2 [db5,f5]@9 ~, [db4,ab4]@7 ~", AS: "[b3,gb4]@3 gb5, [b4,eb5]@15 ~",
AT: "[[b4,eb5]@4 [gb4,bb4]@26 ~@2 [f4,ab4,b4]@31 ~, ~@2 db4@29 ~, ~ db5@7 ~@8]/4", // B Gb Fdim
AU: "[[ab4,b4]@3 ~@3 db5@14 ~@8 gb5@3 ~, db4@7 ~, ~@4 [gb4,bb4]@15 ~ [gb4,bb4]@10 ~@2, ~@24 db5@7 ~]/2", // Abm Gb
AV: "[[b3,gb4,eb5]@12 gb5@4 eb5@4 [bb4,db5]@27 ~ [f4,ab4,b4]@15 ~, b4@19 ~ db4@41 ~@3, ~@8 gb4@15 ~@9]/4", // B Bbm Fdim
AW: "[eb4,gb4,b4,eb5]@5 ~ [db4,f4,ab4,b4,db5]@8 ~@2", // B Db7
AX: "[[gb4,bb4,db5]@20 ~@8 gb5@3 ~, db4@7 ~, ~@10 [gb4,bb4]@5 ~, ~@24 db5@7 ~]/2", // Gb
AY: "[f5,ab5]@4 gb5@2 [db5,f5]@8 ~ eb5, [db4,ab4]@13 ~@3, ~@4 eb5 ~@11", // Fm Db Db5
AZ: "[b3,gb4,b4,eb5]@4 [eb5,gb5] ~ [db4,ab4]@6 [b4,ab5]@3 ~, ~@6 [db5,f5]@5 ~@5", // B Ebm Db5 E Db
BA: "[ab5@2 ab5 ~@13 gb3@9 ~@7, gb4@3 ~, b4 ~ [bb4,gb5]@22 ~@8]/2", // Ebm
})).s("gm_string_ensemble_1").gain(0.35)
// chords · trumpet
const trumpet = note(`<
~@24 A B C D E F G H A B C D E F I J ~@16 A B C D E F G H A B C D E F I J K L M N O P O Q K R M S T U V W X Y Z AA AB
AC AD AE X Y Z AA AB AF AG AH AI AJ AK AL ~
>`.pickRestart({
A: "~@4 [f4,a4] ~ [f4,a4] ~ [a4,c5]@3 ~ [c5,f5]@3 ~", B: "[e5,g5]@2 [d5,f5] [c5,e5]@5",
C: "~@4 [f4,bb4] ~ [f4,bb4] ~ [bb4,d5]@3 ~ [d5,f5]@3 ~", D: "[bb4,d5]@3 ~ [a4,c5] ~ [a4,c5]@10",
E: "~@4 [f4,a4]@2 [g4,bb4] ~ [a4,c5]@3 ~ [f4,a4]@3 ~", F: "[g4,bb4]@3 ~ a4@2 [e4,g4]@5 ~ [e4,c5]@3 ~, ~@4 f4 ~@11",
G: "[g4,bb4]@4 [f4,a4] ~ [e4,g4]@5 ~ [g4,bb4]@2 ~@2", H: "[g4,bb4]@3 ~ f4@2 [a4,c5]@10, ~@4 a4 ~@11",
I: "[bb4,d5]@3 ~ [d5,f5]@2 [c5,e5]@5 ~ [bb4,g5]@3 ~", J: "[bb4,g5] ~ [a4,f5]@14",
K: "~@4 [f4,a4] ~ [f4,a4] ~ [g4,bb4]@3 ~ [a4,c5]@3 ~", L: "[bb4,d5]@3 ~ [a4,db5] ~ [bb4,d5]@4 ~@2 [e5,g5]@2 ~@2",
M: "[e5,g5]@5 ~ [d5,f5]@5 ~ [bb4,d5]@2 ~@2", N: "[a4,c5]@3 ~ [ab4,b4] ~ [a4,c5]@5 ~ [d5,f5]@3 ~",
O: "[d5,f5]@5 ~ [c5,e5]@6 [a4,c5]@4", P: "[g4,bb4]@3 ~ [gb4,a4] ~ [g4,bb4]@5 ~ [d5,f5] ~ [d5,f5] ~", Q: "[f4,a4]",
R: "[bb4,d5]@3 ~ [a4,db5] ~ [bb4,d5]@5 ~ [e5,g5] ~ [e5,g5] ~", // Bb A Bb Em
S: "[a4,c5]@3 ~ [ab4,b4] ~ [a4,c5]@5 ~ [d5,f5] ~ [d5,f5] ~", T: "[d5,f5]@5 ~ [c5,e5]@5 ~ [a4,c5]@3 ~",
U: "[g4,bb4]@3 ~ [gb4,a4] ~ [g4,bb4]@5 ~ [d5,f5]@3 ~", V: "[d5,f5]@5 ~ [c5,e5]@5 ~ [bb4,g5]@3 ~",
W: "g5@2 [a4,f5]@9 ~@5, bb4 ~@15", X: "~@4 [gb4,bb4] ~ [gb4,bb4] ~ [bb4,db5]@3 ~ [db5,gb5]@3 ~",
Y: "[f5,ab5]@2 [eb5,gb5] [db5,f5]@5", Z: "~@4 [gb4,b4] ~ [gb4,b4] ~ [b4,eb5]@3 ~ [eb5,gb5]@3 ~",
AA: "[b4,eb5]@3 ~ [bb4,db5] ~ [bb4,db5]@10", AB: "~@4 [gb4,bb4]@2 [ab4,b4] ~ [bb4,db5]@3 ~ [gb4,bb4]@3 ~",
AC: "[ab4,b4]@3 ~ bb4@2 [f4,ab4]@6 [f4,db5]@4, ~@4 gb4 ~@11", // Abm Fm Db
AD: "[ab4,b4]@4 [gb4,bb4] ~ [f4,ab4]@5 ~ [ab4,b4]@2 ~@2", AE: "[ab4,b4]@3 ~ gb4@2 [bb4,db5]@10, ~@4 bb4 ~@11",
AF: "[ab4,b4]@3 ~ bb4@2 [f4,ab4]@5 ~ [f4,db5]@3 ~, ~@4 gb4 ~@11", // Abm Fm Db
AG: "[b4,eb5]@3 ~ [eb5,gb5]@2 [db5,f5]@5 ~ [b4,ab5]@3 ~", AH: "[b4,ab5] ~ [bb4,gb5]@14",
AI: "~@4 [gb4,bb4] ~ [gb4,bb4] ~ [bb4,db5]@3 ~ [db5,gb5]@2 ~@2", AJ: "[f5,ab5]@3 ~ [eb5,gb5] ~ [db5,f5]@7 ~@3",
AK: "[b4,eb5]@3 ~ [eb5,gb5] ~ [db5,f5]@4 ~@2 [b4,ab5]@2 ~@2", AL: "ab5 [bb4,gb5]@7, b4 ~@15",
})).s("gm_trumpet").gain(0.5)
// bass · electric bass finger
const bass = note(`<
~ A B C D E F G H I J K L M N J O P Q R S Q N T U N V W Q K N X Q Y V X Z K AA J H I J K L M N J O P Q R S Q N T U N V
W Q K N X Q Y V X Z K AA AB AC V AD AB Q K N AB AC AE S X AF A AG T AH AI AJ AK AL AM AI AN AL AO AP AN AQ AM AR AS AT
AU AR AV AW
>`.pickRestart({
A: "c2@5 ~ c2 ~ c2@5 ~ c2 ~", B: "c2@4 ~@2 bb1 ~ bb1@5 ~ bb1 ~", C: "f1@4 ~@2 f1 ~ f1@4 a1@2 c2@2",
D: "d2@4 ~@2 d2 ~ d2@6 f1@2", E: "g1@4 ~@2 g1 ~ g1@5 ~ g1@2", F: "bb1@5 ~ c2@7 ~ c2@2", G: "f1@5 ~ f1 ~ f1@3 ~ bb1@4",
H: "f1@4 ~@2 f1 ~ bb1@3 ~ c2@2 ~@2", I: "f1@4 ~@2 f1 ~ f1@5 ~@3", J: "f1@5 ~ f1 ~ f1@4 bb1@3 ~",
K: "c2@4 ~@2 c2 ~ c2@5 ~ g1@2", L: "c2@4 ~@2 c2 ~ c2@7 ~", M: "c2@4 ~@2 c2 ~ c2@5 ~ g1 ~",
N: "c2@4 ~@2 c2 ~ c2@5 ~ c2@2", O: "f1@4 ~@2 f1 ~ bb1@4 c2@4", P: "f1@4 ~@2 f1 ~ f1@6 ~@2",
Q: "f1@4 ~@2 f1 ~ f1@5 ~ f1@2", R: "bb1@4 ~@2 bb1 ~ bb1@6 f1 ~", S: "bb1@5 ~ bb1 ~ bb1@4 a1 ~ g1@2",
T: "f1@5 ~ f1 ~ f1@4 d2@2 c2@2", U: "f1@5 ~@11", V: "bb1@4 ~@2 bb1 ~ bb1@5 ~ bb1 ~", W: "f1@4 ~@2 f1 ~ f1@4 ~@2 c1 ~",
X: "f1@4 ~@2 f1 ~ f1@5 ~ c2@2", Y: "c2@4 ~@2 c2 ~ c2@3 ~ c2 ~ c2@2", Z: "f1@4 ~@2 f1@2 c2@4 f1@3 ~",
AA: "bb1@5 ~ bb1 ~ c2@5 ~ c2@2", AB: "f1@4 ~@2 f1 ~ f1@4 ~@2 f1 ~", AC: "f1@4 ~@2 f1@2 g1@3 ~ a1@3 ~",
AD: "bb1@4 ~@2 bb1 ~ bb1@3 ~ a1@2 g1@2", AE: "bb1@4 ~@2 bb1 ~ bb1@5 ~ f1@2", AF: "f1@4 ~@2 f1 ~ f1@4 a1@2 bb1@2",
AG: "bb1@5 ~ c2 ~ c2@5 ~ c2@2", AH: "f1@3 ~@13", AI: "db2@4 ~@2 db2 ~ db2@5 ~ db2@2", AJ: "b1@4 ~@2 b1 ~ b1@5 ~ b1@2",
AK: "gb1@4 ~@2 gb1 ~ gb1@4 ~@2 db1 ~", AL: "gb1@5 ~ gb1 ~ gb1@4 ~@2 gb1@2", AM: "db2@5 ~ db2 ~ db2@5 ~ ab1@2",
AN: "gb1@4 ~@2 gb1 ~ gb1@5 ~ db2@2", AO: "db2@4 ~@2 db2 ~ db2@3 ~ db2 ~ db2@2", AP: "b1@4 ~@2 b1 ~ b1@5 ~ b1 ~",
AQ: "gb1@4 ~@2 gb1@2 db2@4 gb1@3 ~", AR: "b1@5 ~ b1 ~ db2@5 ~ db2@2", AS: "gb1@4 ~@2 gb1 ~ gb1@4 db2@3 ~",
AT: "gb1@5 ~ gb1 ~ gb1@4 bb1@2 b1@2", AU: "db2@4 ~@2 db2 ~ db2@5 ~ db2 ~", AV: "gb2@5 ~ gb2@2 eb2@3 ~ db2@3 ~",
AW: "gb1@11 ~@5",
})).s("gm_electric_bass_finger").gain(0.5)
// chords · acoustic guitar steel
const acoustic_guitar_steel = note(`<
~ A B C D E F G H C I J K L@2 M H C N O P Q R C S A O T N L U V W X O Y Z A AA AB AC AD I J K L@2 M H C N O P Q R C S
A O T N L U V W X O Y Z A AA AB AE AF AG AH AI U X C AE AJ AF AK AL U AM C AN AO AP AQ AR AS AT AU AV AW AP AX AY AO
AZ BA BB AO BC BD BE
>`.pickRestart({
A: "[c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", // C
B: "[c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [bb3,f4,bb4,d5] ~ [bb3,f4,bb4,d5] ~ [bb3,f4,bb4,d5]@4 f4 ~", // C Bb
C: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // F
D: "[d4,f4,a4,f5] ~ [d4,f4,a4,f5]@3 ~ [d4,f4,a4,f5] ~ [d4,f4,a4,f5] ~ [d4,f4,a4,f5]@2 ~@2 [d4,f4,a4,f5] ~", // Dm
E: "[d4,g4,bb4,d5] ~ [d4,g4,bb4,d5]@3 ~ [d4,g4,bb4,d5] ~ [d4,g4,bb4,d5] ~ [d4,g4,bb4,d5]@2 ~@2 [d4,g4,bb4,d5] ~", // Gm
F: "[d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@2 ~@2 [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", // Bb C
G: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [d4,f4,bb4,d5]@3 ~", // F Bb
H: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [d4,f4,bb4,d5]@3 ~ [c4,g4,c5,e5]@3 ~", // F Bb C
I: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [d4,f4,bb4,d5]@2 ~@2", // F Bb
J: "[c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5]@2", // C
K: "~@2 [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5]@2", // C
L: "~@2 [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", // C
M: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [d4,f4,bb4,d5]@3 ~", // F Bb
N: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~", // F
O: "~@2 [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@3 ~ [d4,f4,bb4,d5] ~", // Bb
P: "[d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@3 ~ [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5]@2", // Bb
Q: "~@2 [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // F
R: "[c4,g4,c5] ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~@3 [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", S: "[c4,f4,a4,f5]@9 ~@7",
T: "[d4,f4,bb4,d5]@4 ~@2 [c4,eb4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // Bb F7 F
U: "[c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~", // C
V: "~@2 [c4,f4,a4,f5] ~ [f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~", // F
W: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [f4,a4,f5] ~", // F
X: "~@2 [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@2 ~@2 [c4,g4,c5,e5] ~", // C
Y: "~@2 [d4,f4,bb4,d5]@2 ~@2 [c4,f4,a4,c5] ~ [c4,f4,a4,c5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~", // Bb F
Z: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [f4,c5] ~", // F F5
AA: "[bb3,f4,bb4,d5] ~ [bb3,f4,bb4,d5]@3 ~ [bb3,f4,bb4,d5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", // Bb C
AB: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ c4 ~ [d4,f4,bb4,d5]@3 ~", // F Bb
AC: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [d4,f4,bb4,d5]@2 ~@2 [g4,c5,e5]@3 ~", // F Bb C
AD: "[c4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // F5 F
AE: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~@3 [c4,f4,a4,f5] ~@3 [c4,f4,a4,f5] ~", // F
AF: "[d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5] ~@3 [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5] ~", // Bb
AG: "[f4,d5] ~ [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5] ~ d5 ~ [d4,f4,bb4,d5]@3 ~ [d4,f4,bb4,d5] ~", // Dm Bb
AH: "~@2 [c4,f4,a4,f5]@2 ~@2 [f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [f4,a4,f5] ~", // F
AI: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~@3 [c4,f4,a4,f5] ~@3 [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // F
AJ: "[d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@2 ~@2 [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5] ~ [d4,f4,bb4,d5]@3 ~ [d4,f4,bb4,d5] ~", // Bb
AK: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~ [c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~", // F
AL: "[c4,f4,a4,f5] ~ [c4,f4,a4,f5]@2 ~@2 [c4,f4,a4,f5] ~@3 [c4,f4,a4,f5]@3 ~ [c4,f4,a4,f5] ~", // F
AM: "[d4,f4,bb4,d5]@4 [bb4,d5] ~ [d4,f4,bb4,d5] ~ [c4,g4,c5,e5] ~ [c4,g4,c5,e5]@3 ~ [c4,g4,c5,e5] ~", // Bb C
AN: "[c4,f4,a4,f5]@5 ~@11", // F
AO: "[db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@3 ~ [db4,ab4,db5,f5] ~", // Db
AP: "~@2 [eb4,gb4,b4,eb5]@2 ~@2 [eb4,gb4,b4,eb5] ~ [eb4,gb4,b4,eb5] ~ [eb4,gb4,b4,eb5]@3 ~ [eb4,gb4,b4,eb5] ~", // B
AQ: "[eb4,gb4,b4,eb5]@4 ~@2 [db4,e4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@3 ~ [db4,gb4,bb4,gb5] ~", // B Gb7 Gb
AR: "[db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@3 ~ [db4,gb4,bb4,gb5] ~ [gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@3 ~ [db4,gb4,bb4,gb5] ~", // Gb
AS: "~@2 [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@3 ~ [db4,ab4,db5,f5] ~", // Db
AT: "[db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~", // Db
AU: "~@2 [db4,gb4,bb4,gb5] ~ [gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~", // Gb
AV: "[db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~ [gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@3 ~ [gb4,bb4,gb5] ~", // Gb
AW: "~@2 [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~", // Db
AX: "~@2 [eb4,gb4,b4,eb5]@2 ~@2 [db4,gb4,bb4,db5] ~ [db4,gb4,bb4,db5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~", // B Gb
AY: "[db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@3 ~ [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [gb4,db5] ~", // Gb Gb5
AZ: "[b3,gb4,b4,eb5] ~ [b3,gb4,b4,eb5]@3 ~ [b3,gb4,b4,eb5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@3 ~ [db4,ab4,db5,f5] ~", // B Db
BA: "~@2 [gb4,bb4,db5,gb5] ~@3 [gb4,bb4,db5,gb5] ~ [gb4,bb4,db5,gb5] ~ [gb4,bb4,db5,gb5]@2 ~@2 [gb4,bb4,db5,gb5] ~", // Gb
BB: "[db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5] ~@3 [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~", // Gb
BC: "[eb4,gb4,b4,eb5] ~ [eb4,gb4,b4,eb5]@2 ~@2 [eb4,gb4,b4,eb5] ~ [db4,ab4,db5,f5] ~ [db4,ab4,db5,f5]@2 ~@2 [db4,ab4,db5,f5] ~", // B Db
BD: "[db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5] ~ [db4,gb4,bb4,gb5]@2 ~@2 [db4,gb4,bb4,gb5] ~", // Gb
BE: "[db4,gb4,bb4,gb5]@5 ~@3", // Gb
})).s("gm_acoustic_guitar_steel").gain(0.35)
// chords · pad new age
const pad_new_age = note(`<
A B C D E F G H I J ~ K@2 ~@2 L M ~@3 N O@2 P Q R S T U V W X Y R Z AA AB AC AD AE ~@3 K@2 ~@2 L M ~@3 N O@2 P Q R S T
U V W X Y R Z AA AB AC AD AE ~@16 AF AG AH AI AJ AK AL AM AN AG AO AP AQ AR AS AT AU AV AW AX AY
>`.pickRestart({
A: "~@6 [f5,a5] ~ [f5,a5] ~ [a5,c6] ~ [a5,c6] ~ [a5,f6] ~", B: "[e6,g6]@2 ~@2 [d6,f6] ~ [c6,e6]@7 ~@3",
C: "~@6 [bb5,d6] ~ [bb5,d6] ~ [c6,e6] ~ [c6,e6] ~ [d6,f6] ~", D: "[bb5,d6] ~@3 [a5,c6] ~ [a5,c6]@8 ~@2",
E: "~@6 [f5,a5] ~ [f5,a5] ~ [g5,bb5] ~ [g5,bb5] ~ [a5,c6] ~", F: "[bb5,d6]@2 ~@2 [a5,c6] ~ [g5,bb5]@5 ~@5",
G: "[bb5,d6]@2 ~@2 [d6,f6] ~ [c6,e6] ~@5 [bb5,g6] ~@3", H: "[a5,f6]@11 ~@5", I: "~@8 c5@2 f5 ~ g5 ~ c6 ~",
J: "a5@3 ~@5", K: "[~@6 c6 g5@7 ~@2]/2", L: "~@6 g5 ~", M: "a5@3 ~", N: "~@4 f6@2 ~@2 e6@4 ~@2 d6 ~",
O: "[d6@4 ~@2 c6 ~ c6@11 ~@13]/2", P: "~@10 f5@2 a5 ~ c6@2", Q: "f6 ~@3 [f5,a5] ~ [f5,a5] ~ [a5,c6] ~@3 [c6,f6] ~@3",
R: "[e6,g6]@3 ~ [d6,f6] ~ [c6,e6]@9 ~", S: "~@4 bb5 ~ bb5 ~ [bb5,d6]@2 ~@2 [d6,f6] ~@3",
T: "[bb5,d6]@3 ~ [a5,c6] ~ [a5,c6]@7 ~@3", U: "~@4 [f5,a5] ~ [g5,bb5] ~ c6@3 ~ [f5,a5] ~@3, ~@8 a5 ~@7",
V: "[g5,bb5]@2 ~@2 [f5,a5] ~ [e5,g5]@4 ~@2 [e5,c6]@3 ~", W: "[g5,bb5]@2 ~@2 [f5,a5] ~ [e5,g5]@5 ~ [g5,bb5]@2 ~@2",
X: "[g5,bb5]@3 ~ [f5,a5] ~ [a5,c6]@10", Y: "~@4 [f5,a5] ~ [f5,a5] ~ [a5,c6]@2 ~@2 [c6,f6] ~@3",
Z: "~@4 [f5,bb5] ~ [f5,bb5] ~ [bb5,d6]@2 ~@2 [d6,f6]@2 ~@2", AA: "[bb5,d6]@3 ~ [a5,c6] ~ [a5,c6]@10",
AB: "~@4 [f5,a5] ~ [g5,bb5] ~ c6@4 [f5,a5]@2 ~@2, ~@4 a5 ~@3", AC: "[g5,bb5]@2 ~@2 [f5,a5] ~ [e5,g5]@7 ~@3",
AD: "[bb5,d6]@3 ~ [d6,f6] ~ [c6,e6]@3 ~@3 [bb5,g6]@2 ~@2", AE: "[bb5,g6] ~ [a5,f6]@8 ~@6",
AF: "~@4 [gb5,bb5] ~ [gb5,bb5] ~ [bb5,db6] ~@3 [db6,gb6] ~@3", AG: "[f6,ab6]@3 ~ [eb6,gb6] ~ [db6,f6]@9 ~",
AH: "~@4 b5 ~ b5 ~ [b5,eb6]@2 ~@2 [eb6,gb6] ~@3", AI: "[b5,eb6]@3 ~ [bb5,db6] ~ [bb5,db6]@7 ~@3",
AJ: "~@4 [gb5,bb5] ~ [ab5,b5] ~ db6@3 ~ [gb5,bb5] ~@3, ~@8 bb5 ~@7", // Gb Abm Gb
AK: "[ab5,b5]@2 ~@2 [gb5,bb5] ~ [f5,ab5]@4 ~@2 [f5,db6]@3 ~", // Abm Gb Fm Db
AL: "[ab5,b5]@2 ~@2 [gb5,bb5] ~ [f5,ab5]@5 ~ [ab5,b5]@2 ~@2", AM: "[ab5,b5]@3 ~ [gb5,bb5] ~ [bb5,db6]@10",
AN: "~@4 [gb5,bb5] ~ [gb5,bb5] ~ [bb5,db6]@2 ~@2 [db6,gb6] ~@3", // Gb Bbm Gb5
AO: "~@4 [gb5,b5] ~ [gb5,b5] ~ [b5,eb6]@2 ~@2 [eb6,gb6]@2 ~@2", AP: "[b5,eb6]@3 ~ [bb5,db6] ~ [bb5,db6]@10",
AQ: "~@4 [gb5,bb5] ~ [ab5,b5] ~ db6@4 [gb5,bb5]@2 ~@2, ~@4 bb5 ~@3", AR: "[ab5,b5]@2 ~@2 [gb5,bb5] ~ [f5,ab5]@7 ~@3",
AS: "[b5,eb6]@3 ~ [eb6,gb6] ~ [db6,f6]@3 ~@3 [b5,ab6]@2 ~@2", AT: "[b5,ab6] ~ [bb5,gb6]@8 ~@6",
AU: "~@4 [gb5,bb5] ~ [gb5,bb5] ~ [bb5,db6] ~@3 [bb5,gb6] ~@3", AV: "[f6,ab6]@3 ~ [eb6,gb6] ~ [db6,f6]@5 ~@5",
AW: "[b5,eb6]@2 ~@2 [eb6,gb6] ~ [db6,f6]@2 ~@4 [b5,ab6] ~@3", AX: "[b5,ab6] ~ [bb5,gb6]@5 ~@3 gb5 ~ bb5 ~ db6 ~",
AY: "[bb5,gb6] ~", // Ebm
})).s("gm_pad_new_age").gain(0.35)
// drums · kick
const kick = s("bd").struct("<~ A@23 B A@31 B A@23 C A@7 B A@19 B>".pickRestart({
// … 55 more lines
More by Brunner & Brunner
Schenk' mir diese eine NachtG major · 123 bpmShananana (lass' uns leben)G major · 115 bpmEis im VulkanG major · 114 bpmImmer wieder, immer mehrD major · 128 bpmDu bist Leben fur michB♭ major · 127 bpmParty Mix 4: Weil dein Herz dich verrat Du bist alles auf dieser Welt Wenn du einsam bist Sandy Goodbye Liebe kann so viel verzeihen Tief in der Nacht Lieb' mich mit Leib und SeeleA major · 106 bpmWeil dein Herz dich verratE♭ major · 126 bpmWie der Wind wehst du mir ins GesichtC major · 130 bpm
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.