0:00/0:00
// Children's March — Grainger
// 180 bpm, 6/8, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5927330; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 404 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(180/3)
// 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: edit a riff to change every repeat.
// other · trumpet · "B♭ Trumpet"
const trumpet = note(`<
~ A ~ B ~ C D E F A G H I J K L M N O@2 P ~ Q R Q S T P U V W X Y Z AA AB AC AD@2 AE AC AD AF AG AC AD AH AE AC AD AI
AJ AK AL AM AN AO D AP AQ AR@2 AS AN AT AU AV AW O AX AY AZ O AX BA BB BC@2 BD BE BC@2 BF BG BH AR BI BJ BK BL BM BG
BH BN BO BJ BP BQ BR BS BC@2 BD BE BC@2 BT BU BV BW BX BY BZ AJ CA CB CC CD CE CF CC CD CG CH CC CD CE CF CC CD CI CJ
CK CL CM CN CK CL CO CP E CQ CR@2 CS@3 CT CU CV CW CX CY CZ DA DB DC@2 DD DE DF ~ DF ~ CC CD CE CF CC CD CE DG CC CD
CE CF CC CD CG DH DI DJ@2 DK DI DL DM DN DO DP DO DQ DR@2 DS DT DU DV DW DX DY DZ EA EB EA EC@2 ED EE@3 EF EG EH EI EJ
EG EH EK EL EM EN EO EP EM EN EK EL EQ ER ES ET EU EV EW EN EX EY@2 EZ EX EY@3 EX EY@2 EZ EX EY@11 FA FB FC FD FA FB
FE FF FG FH FI FJ FG FH FK FL ES FM FN FO ES FM FP FQ FR DK FS FT FU FV FW FX FY FZ GA FY BV GB@3 GC GD GE@2 GC GD
GE@2 GC GD GE GF GC GD GE GG I FB GH EA H GI GJ GK GL GM GL GN GL GM GO GP GQ ~@5 GR GS GT U GU GV ~@3 GW GX@2 GY GZ
GX@2 HA HB HC HD HE HF HG HH HI AB ~@2 HJ HK HL HM HN EA HO CY HP CY HO HQ@2 HR EB ~@15 AD HS AD HS AD ~@2 HT
>`.pickRestart({
A: "c4 ~@2 c4 ~@4 b3 ~@2 b3 ~@4", B: "c4 ~@2 c4 ~@4 a#3 ~@2 a#3 ~@4", C: "f4 ~@2 f4 ~@4 e4 ~@2 e4 ~@4", D: "g4 f4",
E: "f4 e4", F: "~ a3", G: "~ c4", H: "d#4 ~@2 d#4 ~@4 d4 ~@2 d4 ~@4", I: "d#4 d4", J: "c#4@3 c4@5 b3@8", K: "c4 a#3",
L: "c4@13 a#3@3", M: "a3@3 ~@13", N: "c4@3 ~@5 d4@3 ~@5", O: "~@8 e4@3 ~@5", P: "c4@3 ~@13", Q: "a#3@3 ~@5 a#3@3 ~@5",
R: "c4@3 ~@5 c4@3 ~@5", S: "a3@3 ~@5 a3@3 ~@5", T: "g3@3 ~@5 g3@3 ~@5", U: "c4@5 a#3@3 c4@5 a#3@3",
V: "c4@5 a#3@3 a3@5 ~@3", W: "a#3@3 a#3@2 a#3@3 a#3@8", X: "c4@8 c4@5 ~@3", Y: "a#3@5 ~@3 a#3@5 ~@3",
Z: "a3@5 ~@3 a3@5 ~@3", AA: "g3@5 ~@3 g3@5 ~@3", AB: "c4 ~", AC: "~@8 e4@5 ~@3", AD: "~@8 f4@5 ~@3",
AE: "g4@5 ~@3 g4@5 ~@3", AF: "~@5 d4@3 c4@5 a#3@3", AG: "a3@5 ~@11", AH: "d4@5 ~@3 f4@5 ~@3",
AI: "d4@3 d4@2 d4@3 d4@5 e4@3", AJ: "f4@11 ~@5", AK: "c4 ~@7 e4 ~@7", AL: "f4@5 g4@3 a4@5 g4@3",
AM: "a#4@3 a#4@2 a#4@3 a#4@5 a#4@3", AN: "a4@5 a#4@3 a4@8", AO: "a4 g4", AP: "f4@3 f4@2 f4@3 e4@8",
AQ: "c4@5 g4@3 a4@5 a#4@3", AR: "c5!2", AS: "a#4@5 c5@3 d5@5 a#4@3", AT: "a4@8 a#4 ~@4 g4@3", AU: "g4@8 a4 ~@4 f4@3",
AV: "f4@3 f4@2 f4@3 a#4@3 ~@2 a#4@3", AW: "a4@11 ~@5", AX: "~@8 f4@3 ~@5", AY: "d4@3 ~@5 f4@3 ~@5",
AZ: "e4@3 ~@5 g4@3 ~@5", BA: "d4@3 d4@2 d4@3 d4@5 d4@3", BB: "f4@5 g4@3 a4@5 c5@3", BC: "a4@13 c5@3",
BD: "a#4@5 c5@3 a#4@5 a4@3", BE: "g4@5 a4@3 g4@5 c5@3", BF: "a4@3 a4@2 a4@3 a4@5 g4@3", BG: "f4@5 ~@11",
BH: "f4@5 g4@3 a4@5 a#4@3", BI: "d5@3 d5@2 d5@3 d5@5 d5@3", BJ: "c5@5 d5@3 c5@8", BK: "a#4@8 a#4@5 a#4@3",
BL: "a4@5 a#4@3 a4@5 a4@3", BM: "g4@3 g4@2 g4@3 g4@8", BN: "c5@8 f5@5 e5@3", BO: "d5@5 e5@3 f5@5 d5@3",
BP: "a#4@8 f5 ~@4 a#4@3", BQ: "a4@8 f5 ~@4 a4@3", BR: "g4@3 g4@2 g4@3 f5 ~@4 g4@3", BS: "f4@3 ~@10 c5@3",
BT: "a4@3 a4@2 a4@3 a4@3 ~@2 g4@3", BU: "f4@5 ~@8 c5@3", BV: "c4@11 ~@5", BW: "d4@11 ~@5",
BX: "d4@3 d4@3 ~@2 a#3@3 a#3@3 ~@2", BY: "c4@3 c4@3 ~@2 c4@3 c4@3 ~@2", BZ: "e4@11 ~@5",
CA: "a#4@3 a#4@2 a#4@3 a#4@3 ~@2 g4@3", CB: "a4@3 ~@10 f4@3", CC: "d4@5 f4@3 d#4@5 f4@3", CD: "c5 d5",
CE: "d#5@13 d5@3", CF: "c5@5 a#4@3 g4@3 f4@3 ~@2", CG: "d#5@5 d5@3 c5@5 a#4@3", CH: "g4",
CI: "g4@5 f4@3 d4@3 ~@2 c4@3", CJ: "d4 ~", CK: "d5@5 e5@3 f5@5 g5@3", CL: "f5 e5", CM: "d5@5 c5@3 a4 ~@2 a4 ~ c5 ~@2",
CN: "a4 ~@2 a4 ~ c5@3 ~@8", CO: "d5@5 c5@3 a4@3 a4@2 g4@3", CP: "a4@3 c5@5 d4@5 e4@3", CQ: "d4@5 f4@3 e4@5 c#4@3",
CR: "[d4@8 c4@16 d4@3 d4@2 e4@3]/2", CS: "[f4@11 g4@2 g#4@5 ~ g4@2 f4@3 e4@16 d4@8]/3", CT: "c5@8 d5@5 e5@3",
CU: "f5@5 d5@3 c5@5 a4@3", CV: "c5 ~@2 c5 ~ d5 ~@2 d#5@5 c5@3", CW: "a#4@5 g4@3 d5@5 a#4@3",
CX: "a4@5 f5@3 e5@5 c5@3", CY: "d4 c4", CZ: "a#3 c4", DA: "b3 a#3", DB: "a3@8 a#3@5 b3@3",
DC: "[b3@3 c4@2 d4@3 c4@11 ~@5 c4@3 ~@5]/2", DD: "a#3@3 ~@5 g3@3 ~@5", DE: "f4@3 ~@5 c4@3 ~@5", DF: "d4@3 ~@13",
DG: "c5@5 a#4@3 g4@5 ~@3", DH: "c5@11 ~@5", DI: "a#4", DJ: "d5 c5", DK: "a#4 a4", DL: "a#4@3 a4@5 g#4@5 g#4@3",
DM: "a#4@5 a4@3 g4@5 f4@3", DN: "g4@8 f4@5 f4@3", DO: "a#4@13 g4@3", DP: "f4@5 d4@3 a#3@5 f4@3",
DQ: "f4@5 d#4@3 d4@5 f4@3", DR: "[a#4@21 g4@3 f4@5 d#4@3]/2", DS: "d4@5 f4@3 d#4@5 d4@3", DT: "c4@5 a#4@3 g4@5 a4@3",
DU: "a#4@5 ~@3 d#4@3 ~@5", DV: "d4@5 ~@3 d4@5 ~@3", DW: "d#4@5 ~@3 f4@5 ~@3", DX: "a#3@5 ~@3 a3@5 ~@3",
DY: "g3@5 ~@3 a3@5 ~@3", DZ: "~ a#3", EA: "a#3 a3", EB: "a#3@5 ~@11", EC: "[a#3@5 a3@3 a#3@13 a#3@3 g3@5 a3@3]/2",
ED: "a#3 ~@2 a#3 ~ c4 ~@2 a#3@8", EE: "a#3 ~@2 a#3 ~ a#3 ~@2 a#4 ~@7", EF: "a#3 ~", EG: "~@8 g4 ~@7",
EH: "~@8 c5 ~@7", EI: "f4!2 ~ f4@3 ~@2 g#4!2 ~ g#4@3 ~@2", EJ: "a#4!2 ~ a#4@3 ~@2 d5!2 ~ d5@3 ~@2",
EK: "~@5 c5@3 a#4@5 g#4@3", EL: "g4@5 ~@11", EM: "a#3@11 ~@5", EN: "d#4@11 ~@5",
EO: "g#4!2 ~ g#4@3 ~@2 c5!2 ~ c5@3 ~@2", EP: "d5!2 ~ d5@3 ~@2 d5!2 ~ d5@3 ~@2", EQ: "a#3 f4", ER: "d#4!2",
ES: "d#4 f4", ET: "a#3!2", EU: "d#4", EV: "d4", EW: "c4@8 d4@3 ~@2 d4@3", EX: "d4@3 d4@2 d4@3 d4@3 d4@2 d4@3",
EY: "d#4@3 d#4@2 d#4@3 d#4@3 d#4@2 d#4@3", EZ: "f4@3 f4@2 f4@3 f4@3 f4@2 f4@3", FA: "g#4@5 g#4@3 g#4@5 g#4@3",
FB: "c#4 c4", FC: "g#3@13 d#4@3", FD: "g#4@5 c5@3 g#4@3 g#4@3 ~@2", FE: "f4@8 f4@5 d#4@3", FF: "c#4@5 d4@3 ~@8",
FG: "c4@5 d#4@3 c#4@5 d#4@3", FH: "a#4 c5", FI: "c#5@13 c5@3", FJ: "a#4@5 g#4@3 f4@3 d#4@3 ~@2",
FK: "f5@5 d#5@3 c5@5 a#4@3", FL: "c5@5 ~@3 c4@5 g4@3", FM: "g4@5 a4@3 a#4@5 a4@3", FN: "g4@5 f4@3 d#4@3 d#4@2 d4@3",
FO: "d#4@3 d#4@2 d4@3 ~@8", FP: "g4@5 f4@3 d#4@5 d4@3", FQ: "d#4@5 f4@3 g4@3 a#4@2 a4@3", FR: "g4@5 a4@3 a#4@5 c5@3",
FS: "g4@5 f4@3 d4@3 d4@2 c4@3", FT: "d4@3 f4@5 g4@5 a4@3", FU: "a#4@5 c5@3 c#5@5 a#4@3", FV: "g#4@5 f4@3 c5@5 g#4@3",
FW: "g4@5 d#4@3 d4@5 d#4@3", FX: "f4@5 d4@3 c4@5 ~@3", FY: "d#4 ~@2 d#4 ~@4 a#3 ~@2 a#3 ~@4",
FZ: "~@8 d#4 ~@2 d#4 ~@4", GA: "c#4 ~@2 c#4 ~@4 d4 ~@2 d4 ~@4", GB: "c4@3 d#4@2 d#4@3 c4@3 d#4@2 d#4@3",
GC: "c4@3 d#4@2 d#4@3 c#4@3 d#4@2 d#4@3", GD: "c#4@3 d#4@2 d#4@3 c4@3 d#4@2 d#4@3",
GE: "c#4@3 d#4@2 d#4@3 c#4@3 d#4@2 d#4@3", GF: "c#4@3 d#4@2 d#4@3 c#4@3 f4@2 f4@3",
GG: "c4@3 d#4@2 d#4@3 a#3@3 d#4@2 d#4@3", GH: "c4 b3", GI: "c#4 ~@2 c#4 ~@4 c4@3 ~@2 c4@3",
GJ: "c#4@5 c4@3 a#3@5 c4@3", GK: "c#4@8 c4@3 ~@2 d#4@3", GL: "g#4@13 f4@3", GM: "d#4@5 c#4@3 c4@5 d#4@3",
GN: "d#4@5 c4@3 g#3@5 d#4@3", GO: "c#4@3 c#4@2 d#4@3 c#4@5 c4@3", GP: "a#3@5 c#4@3 c4@5 a#3@3", GQ: "g#3@5 ~@11",
GR: "c#4@8 d#4@5 c#4@3", GS: "c4@5 a#3@3 g#3@5 a#3@3", GT: "c4@5 c#4@3 d#4@5 c#4@3",
GU: "c#4@3 c#4@2 c#4@3 d#4@5 d#4@3", GV: "c4@5 c#4@3 c4@8", GW: "~@13 d#5@3", GX: "c5@13 d#5@3",
GY: "c#5@5 d#5@3 c#5@5 c5@3", GZ: "a#4@5 c5@3 a#4@5 d#5@3", HA: "c5@3 c5@2 c5@3 c5@5 a#4@3", HB: "g#4@5 ~@11",
HC: "~@8 c4 ~@7", HD: "~@8 g#3 ~@7", HE: "c#4 ~@2 c#4 ~@4 f4 ~@2 f4 ~@4", HF: "g4 ~@2 g4 ~@4 d#4 ~@2 d#4 ~@4",
HG: "~@8 d#4 ~@7", HH: "f4 ~@7 c4 ~@7", HI: "~@5 f4@3 d#4@5 c#4@3", HJ: "~ d4", HK: "f4 d#4", HL: "~ f4",
HM: "e4 d#4", HN: "f4@3 d#4@5 d4@3 c4@5", HO: "a#3@5 c4@3 d4@5 f4@3", HP: "a#3@3 a#3@2 c4@3 d4@5 f4@3",
HQ: "[a#4@5 c5@3 d5@13 c5@3 a#4@5 g4@3]/2", HR: "f4@3 a#4@2 d4@8 c4@3", HS: "~@8 g4@5 ~@3", HT: "a#4@8 a#4@3 ~@5",
})).s("gm_trumpet").gain(0.25)
// other · trumpet · "B♭ Trumpet"
const trumpet_2 = note(`<
~ A ~ A ~ A B C D A E F G H I J K L M@2 N ~@15 O P Q R O S T U O P V R O P W X Y Z AA AB AC B AD AE AF AG AH AC AI AJ
AK@2 AL AM AN AO AL M AP AQ AR M AS AT AL AM AU AQ AV AW AX AB AC B AY AE AZ BA BB BC BD@2 BE N AR BF BG BH AR BF AU
BI BJ@2 BK BL BJ@2 BM BN ~ BO BP BQ BR BO BS BT ~ BO BU BV BR BO BW BX AH BY BZ CA AH BY CB CC CD CE CF@2 CG CH CI CJ
CK@2 CL@2 AC CM AC CN CO@2 ~@2 CP@4 CQ CR CS CT CQ CR CU CV CQ CR CS CT CQ CR CW CX AC BO CY CZ DA DB DC DD DE AZ DF
DG CD DH DI DJ DK DL DM DN DO@3 DP DQ DR DS DT DU DV DW BQ DX DY DZ EA DX DY EB EC ED@2 EE EF ED@2 EG EH BO EI EJ EK
EL DA EM EN EO EP@2 EQ EO EP@2 ER EO EP@2 EQ EO EP@2 ES@9 ET EU EV EW ET EU EV EX EY G EZ FA EY G FB FC FD@8 BO FE AZ
FF FG FH FI FJ FK FG FH FL FM ~ X ~ FN FO FP FQ FN FO FR FS FN FO FP FQ FN FO FR FT AZ FU FV FW FX FY FZ GA GB G GC GD
GE G GF GG AQ ~@7 GH@2 ~@2 GI@3 ~ GJ GK GL GM GK GN GO GP GJ GQ@2 GR@2 GS@2 GT GU GV ~@2 GW EU GX GY ~ GZ ~ HA ~ HB HC
HD DP ~@15 Q S Q S Q ~@2 HE
>`.pickRestart({
A: "a3 ~@2 a3 ~@4 g3 ~@2 g3 ~@4", B: "e4 d4", C: "c4@5 d4@3 c4@8", D: "~ a3", E: "~ f3",
F: "a3 ~@2 a3 ~@4 g#3 ~@2 g#3 ~@4", G: "c#4 c4", H: "a3", I: "a3 ~", J: "c4!2", K: "c4@3 ~@13",
L: "a3@3 ~@5 a3@3 ~@5", M: "~@8 a3@3 ~@5", N: "a3@3 ~@13", O: "~@8 c4@5 ~@3", P: "~@8 a3@5 ~@3", Q: "~@8 a#3@5 ~@3",
R: "e4@5 ~@3 e4@5 ~@3", S: "~@8 d4@5 ~@3", T: "g3@5 ~@3 c4@5 ~@3", U: "f3@5 g3@3 a3@5 c4@3", V: "a#3@5 ~@3 d4@5 ~@3",
W: "c4@3 c4@2 c4@3 c4@5 g3@3", X: "c4@11 ~@5", Y: "a3 ~@7 c4 ~@7", Z: "c4@5 e4@3 f4@5 e4@3",
AA: "f4@3 f4@2 f4@3 e4@5 e4@3", AB: "f4@5 f4@3 f4@8", AC: "f4 e4", AD: "a#3@8 c4@5 a#3@3", AE: "a3@5 ~@11",
AF: "a4@5 a#4@3 a4@5 g4@3", AG: "a4@5 g4@3 a4@5 g4@3", AH: "f4 g4", AI: "f4@8 g4 ~@4 f4@3", AJ: "e4@8 f4 ~@4 e4@3",
AK: "[d4@3 d4@2 d4@3 c4@3 ~@2 c4@13 ~@6]/2", AL: "~@8 c4@3 ~@5", AM: "~@8 d4@3 ~@5", AN: "a#3@3 ~@5 d4@3 ~@5",
AO: "c4@3 ~@5 e4@3 ~@5", AP: "c4@3 c4@2 c4@3 c4@5 c4@3", AQ: "c4@5 ~@11", AR: "~@8 e4@3 ~@5",
AS: "f4@3 f4@3 ~@2 g4@5 ~@3", AT: "c4@3 c4@3 ~@2 e4@3 e4@3 ~@2", AU: "d4@3 d4@2 d4@3 d4@3 ~@2 e4@3",
AV: "f4@5 ~@3 e4@5 ~@3", AW: "f4@5 e4@3 f4@5 e4@3", AX: "a#3@3 a#3@2 a#3@3 a#3@5 a#3@3",
AY: "d4@3 d4@2 d4@3 c4@5 a#3@3", AZ: "c4 a#3", BA: "a3@5 g3@3 a3@5 c4@3", BB: "f4@8 d4@5 a#3@3",
BC: "f4@3 f4@2 e4@3 a4@8", BD: "f4@3 f4@2 f4@3 ~@8", BE: "f4@3 f4@2 f4@3 ~@5 a#3@3", BF: "~@8 f4@3 ~@5",
BG: "a#3@3 a#3@3 ~@2 d4@3 d4@3 ~@2", BH: "e4@3 e4@3 ~@2 d4@3 d4@3 ~@2", BI: "f4@5 g4@3 a4@5 c5@3", BJ: "a4@13 c5@3",
BK: "a#4@5 c5@3 a#4@5 a4@3", BL: "g4@5 a4@3 g4@5 c5@3", BM: "d5@3 d5@2 d5@3 d5@3 ~@2 e5@3", BN: "f5@3 ~@13",
BO: "d#4 d4", BP: "f4", BQ: "a#3 ~", BR: "~ d#4", BS: "f4!2", BT: "d#4@5 a#3 ~@2 d#4@5 d#4 ~@2", BU: "g4@13 f4@3",
BV: "d#4@5 d4@3 d#4@3 ~@5", BW: "a#3 ~@2 a#3 ~@4 c4 ~@2 c4 ~@4", BX: "a3 ~@2 a3 ~ a3@5 ~@6",
BY: "a4@5 b4@3 c5@5 b4@3", BZ: "a4@5 g4@3 f4 ~@2 f4 ~ e4 ~@2", CA: "f4 ~@2 f4 ~ e4@3 ~@8", CB: "a4@5 g4@3 f4@5 e4@3",
CC: "f4@5 g4@3 a4@3 c5@2 b4@3", CD: "a4 g#4", CE: "f4@5 a4@3 g#4@5 e4@3",
CF: "[f4@5 ~ e4 [f4,g4] g#4@13 a4@3 b4@5 d5@3]/2", CG: "g#4 ~@2 g#4 ~@4 g#4 ~@2 g#4 ~@4",
CH: "d#4 ~@2 d#4 ~@4 g4 ~@2 g4 ~@4", CI: "d4 ~@2 d4 ~@4 e4 ~@2 e4 ~@4", CJ: "e4 ~@2 e4 ~@4 f4 ~@2 f4 ~@4",
CK: "[a#3 a3@2 g#3]/2", CL: "[g3 d4@2 c4]/2", CM: "d4 e4", CN: "d#4@8 e4@5 f4@3",
CO: "[f4@3 f#4@2 g4@3 a4@11 ~@13]/2", CP: "d4 ~@2 f4 ~ f4 ~@2 d4 ~@2 f4 ~ f4 ~@2", CQ: "a#3@5 d4@3 a#3@5 d#4@3",
CR: "d#4 f4", CS: "a#4@13 g4@3", CT: "g4@5 f4@3 c4@3 a#3@3 ~@2", CU: "a#4@13 a#4@3", CV: "g4@5 f4@3 d4@5 ~@3",
CW: "a#4@5 a#4@3 a#4@5 g4@3", CX: "a4@11 ~@5", CY: "a#3@8 a#3@5 b3@3", CZ: "c4 b3", DA: "g4", DB: "f#4 f4",
DC: "g4@5 f4@3 d#4@5 d4@3", DD: "d#4@8 d4@5 ~@3", DE: "d4 c4", DF: "a#3 c#4", DG: "c4@8 b3@5 a#4@3", DH: "g4 f#4",
DI: "f4@8 g4@5 f4@3", DJ: "d#4@5 g4@3 f4@5 d#4@3", DK: "d4@5 ~@3 c4@3 ~@5", DL: "a#3@5 ~@3 a#3@5 ~@3",
DM: "a#3@3 a#3@2 a#3@3 c4@5 c4@3", DN: "a#3@5 a#3@3 a#3@8", DO: "[a#3@8 a3@16 g4@16 f4@5 d#4@3]/3", DP: "d4@5 ~@11",
DQ: "a#3@5 c4@3 d4@5 d#4@3", DR: "f4@8 a#4@5 a4@3", DS: "g4@5 a4@3 a#4@5 g4@3", DT: "f4@5 g4@3 f4@8",
DU: "d#4@8 a#4 ~@4 d#4@3", DV: "d4@8 a#4 ~@4 d4@3", DW: "c4 ~@2 c4 ~ c4 ~@2 a#4@3 ~@2 c4@3", DX: "~@8 d4 ~@7",
DY: "~@8 g4 ~@7", DZ: "c4!2 ~ c4@3 ~@2 d#4!2 ~ d#4@3 ~@2", EA: "f4!2 ~ f4@3 ~@2 a#4!2 ~ a#4@3 ~@2",
EB: "~@5 g4@3 g4@5 f4@3", EC: "d#4@5 f4@3 g4@5 a#4@3", ED: "g4@13 a#4@3", EE: "g#4@5 a#4@3 g#4@5 g4@3",
EF: "f4@5 g4@3 f4@5 a#4@3", EG: "g4@3 g4@2 g4@3 g4@5 f4@3", EH: "d#4@5 ~@11", EI: "d#4 a#3", EJ: "c4 d4",
EK: "d#4 g4", EL: "g#4", EM: "f4@8 a#4@3 ~@2 a#4@3", EN: "a#4@11 ~@5", EO: "g3@3 g3@2 g3@3 g3@3 g3@2 g3@3",
EP: "c4@3 c4@2 c4@3 c4@3 c4@2 c4@3", EQ: "d4@3 d4@2 d4@3 d4@3 d4@2 d4@3", ER: "a#3@3 a#3@2 a#3@3 a#3@3 a#3@2 a#3@3",
ES: "d#4@3 d#4@2 d#4@3 d#4@3 d#4@2 d#4@3", ET: "c4@5 d#4@3 c#4@5 d#4@3", EU: "a#4 c5", EV: "c#5@13 c5@3",
EW: "a#4@5 g#4@3 f4@3 d#4@3 ~@2", EX: "a#4 g#4 ~@3 c5@3 a#4@3 ~@5", EY: "g#4@5 g#4@3 g#4@5 g#4@3", EZ: "g#3@13 d#4@3",
FA: "g#4@5 c5@3 g#4@3 g#4@3 ~@2", FB: "c5@3 c5@3 ~@2 d5@3 d5@3 ~@2", FC: "d#5@3 d#5@2 d#5@3 d#5@3 ~@5",
FD: "c4@3 c4@2 g4@3 c4@3 c4@2 g4@3", FE: "c4@5 d#4@3 d4@5 b3@3", FF: "a#3@8 c4@5 c4@3",
FG: "d#4@3 d#4@2 f4@3 f#4@5 d#4@3", FH: "c#4@5 g#3@3 f4@5 d4@3", FI: "c4@5 c4@3 c4@5 c4@3", FJ: "d4@5 a#3@3 g3@5 ~@3",
FK: "g#4@5 f4@3 d#4@5 a#3@3", FL: "c4@5 g4@3 f4@5 d4@3", FM: "d#4@3 ~@5 d#4@3 ~@5", FN: "d#4@5 d#4@3 d#4@5 d#4@3",
FO: "d#4!2", FP: "f4@13 d#4@3", FQ: "f4@5 d#4@3 c#4@3 d#4@3 ~@2", FR: "f4@5 d#4@3 c#4@5 c4@3", FS: "f4@5 c#4 ~@10",
FT: "f4@3 g#4@2 f4@3 d#4@5 ~@3", FU: "a#3 g#3", FV: "g#3 b3", FW: "d#4", FX: "f#4 ~@2 f#4 ~@4 f4 ~@2 f4 ~@4",
FY: "e4 ~@2 e4 ~@4 d#4@3 ~@2 f#4@3", FZ: "f4@5 d#4@3 c#4@5 d#4@3", GA: "f4@8 g4@3 ~@5", GB: "d4", GC: "b3",
GD: "a#3 a3", GE: "g#4@5 g4@3 f#4@3 f4@5", GF: "c#4@5 g#3@3 c4@3 a#3@2 a3@3", GG: "c#4@3 d#4@2 f4@3 d#4@5 c#4@3",
GH: "g#3/2", GI: "g#3 ~@2 g#3 ~ g#3 ~@2 g#4 ~@7", GJ: "~@8 d#4 ~@7", GK: "~@8 c4 ~@7", GL: "a#4@5 c5@3 a#4@5 g#4@3",
GM: "g4@5 g#4@3 g4@5 ~@3", GN: "~@8 f4 ~@7", GO: "~@5 c4 ~@2 c4@3 ~@2 a#3 ~@2", GP: "g#3@5 a#3@3 c4@5 ~@3",
GQ: "f4/2", GR: "g4/2", GS: "[g#4@29 a#4@3]/2", GT: "c5 ~", GU: "~ d4", GV: "f4 d#4", GW: "a#3@5 c4@3 d4@5 f4@3",
GX: "d5@5 c5@3 a#4@5 g4@3", GY: "f4@5 ~@11", GZ: "f4@5 e4@3 d#4@8", HA: "f4 ~", HB: "d4@3 c#4@5 c4@5 b3@3",
HC: "e4@8 d4@5 e4@3", HD: "d4@8 f4@5 d#4@3", HE: "f4@8 f4@3 ~@5",
})).s("gm_trumpet").gain(0.25)
// other · trumpet · "B♭ Trumpet" · soft notes
const trumpet_soft = note(`<
~@21 A B C B D E F G H I J K L M N ~@80 O ~@2 P Q ~@3 O ~@2 R Q ~@28 S T U ~@211 V W ~ W X W ~@27
>`.pickRestart({
A: "a3@5 g3@3 a3@5 ~@3", B: "a3@3 ~@5 g3@3 ~@5", C: "a3@3 ~@5 a3@3 ~@5", D: "g3@3 ~@5 f3@3 ~@5",
E: "d4@3 ~@5 c4@3 ~@5", F: "a3@3 ~@13", G: "a3@5 g3@3 a3@5 g3@3", H: "a3@5 g3@3 f3@5 ~@3", I: "a3@3 a3@2 a3@3 g3@8",
J: "a3@8 a3@5 ~@3", K: "a3@8 g3@5 ~@3", L: "g3@8 f3@5 ~@3", M: "f3@8 c4@5 a#3@3", N: "a3 ~", O: "d4 d#4",
P: "~@8 a#3@5 ~@3", Q: "a#3 ~", R: "~@11 d4@3 ~@2", S: "~@8 d#4@3 ~@5", T: "g3@3 ~@5 e4@3 ~@5",
U: "d4@3 ~@5 a3@3 ~@5", V: "~@5 d4@3 c4@8", W: "~ d4", X: "~ d#4",
})).s("gm_trumpet").gain(0.15)
// other · french horn · "Horn in F"
const french_horn = note(`<
A B C B A D E F A B A D G@2 H I J ~@10 K ~@7 L M@2 N O M@2 P Q M@2 N O M@2 P R K S T U V W X Y K Z AA U AB AC AD R
AE@2 AF AG AE AH AI AJ AK AH AL AM AN AH AO AP AQ AR AS AT AU AV AW K S AX AY AZ BA BB BC BD AK BE BF BG AK BE BH AJ
AK BE BI BJ AE@2 BK BD ~ BL BM ~@2 BN BO BP ~ BQ BR BS ~ BN BT BU ~@8 BV BW BX BY BZ CA CB CC ~@4 CD CE CF CG CH ~@9
CI ~@5 CJ CK CL@2 CJ CK@2 CM ~@7 CN ~@4 CO CP ~@4 CQ CR@2 ~@2 CS CT CU CV CW@2 CX CY CZ DA@2 DB DC DA@2 DD DE ~@6 DF
DG DH DI DJ DK@4 DL ~@3 DM DN DO DP DO DN DO DQ DN@2 DO DQ DR ~@2 DS DT DU DT DV DW DX DY DZ EA EB EC ED EE DX DY DZ
EA EB EC EF EG EH@8 EI EJ EK@2 EL EM EN EO EP EQ ER ES ET ~ EU ~ EB EC EV EW EB EC EB EX EB EC EV EW EB EC EB EY DW EI
EZ FA FB FC FD FE DW EI EZ FF FG FH FI FJ ~@3 FK@4 FL FM FN FO FP FQ FR FS FT ~@7 FU FV@2 FW FX FV@2 FY FZ CU GA CU GB
~@5 GC ~ GD ~ GE GF@2 GG GH GG ~ GG GH GG ~ GG GH GG ~ GG GH GG ~ GI GH GI GH GI ~@2 GJ
>`.pickRestart({
A: "f3@5 g3@3 a3@5 c4@3", B: "a3 g3", C: "f3@3 f3@2 g3@3 a3@5 c4@3", D: "f4 g4", E: "a4@5 g4@3 f4@5 d4@3",
F: "c4@5 a3@3 g3@8", G: "[a4@21 g4@3 f4@5 d4@3]/2", H: "c4@5 d4@3 f4@5 d4@3", I: "c4@3 f4@2 a3@8 g3@3",
J: "f3@3 ~@13", K: "f3@5 g3@3 a3@5 a#3@3", L: "~@13 c4@3", M: "a3@13 c4@3", N: "a#3@5 c4@3 a#3@5 a3@3",
O: "g3@5 a3@3 g3@5 c4@3", P: "a3@3 a3@2 a3@3 a3@5 g3@3", Q: "f3@5 ~@8 c4@3", R: "f3@11 ~@5", S: "c4!2",
T: "d4@3 d4@2 d4@3 d4@5 d4@3", U: "c4@5 d4@3 c4@8", V: "a#3@8 a#3@5 a#3@3", W: "a3@5 a#3@3 a3@5 a3@3",
X: "g3@3 g3@2 g3@3 g3@8", Y: "f3@5 ~@11", Z: "c4@8 f4@5 e4@3", AA: "d4@5 e4@3 f4@5 d4@3", AB: "a#3@8 f4 ~@4 a#3@3",
AC: "a3@8 f4 ~@4 a3@3", AD: "g3@3 g3@2 g3@3 f4@3 ~@2 g3@3", AE: "~@8 a3@3 ~@5", AF: "f4@3 ~@5 a#3@3 ~@5",
AG: "g3@3 ~@5 c4@3 ~@5", AH: "~@8 f3@3 ~@5", AI: "f3@3 f3@2 f3@3 f3@5 a#3@3", AJ: "a3@5 ~@11", AK: "~@8 c4@3 ~@5",
AL: "a#3@3 a#3@3 ~@2 g3@5 ~@3", AM: "e3@3 e3@3 ~@2 d3@3 d3@3 ~@2", AN: "~@8 e3@3 ~@5",
AO: "c4@3 c4@2 c4@3 c4@3 ~@2 a#3@3", AP: "c4@5 g3@3 a3@5 c4@3", AQ: "c4@5 ~@3 c4@5 ~@3", AR: "a3@5 g3@3 a3@5 g3@3",
AS: "a#3@3 a#3@2 a#3@3 g3@5 g3@3", AT: "a3@5 a#3@3 a3@8", AU: "f3 e3", AV: "e3 d3", AW: "d3@3 d3@2 d3@3 e3@8",
AX: "c4@5 e4@3 c4@5 e4@3", AY: "a#3@5 c4@3 a#3@8", AZ: "a3@3 a3@2 e3@3 f3@8", BA: "f3@8 f3@3 ~@2 f3@3",
BB: "e3@8 e3@3 ~@2 e3@3", BC: "d3@3 d3@2 d3@3 a#3@3 ~@2 g3@3", BD: "c4@3 ~@13", BE: "~@8 d4@3 ~@5",
BF: "g3@3 g3@3 ~@2 a#3@3 a#3@3 ~@2", BG: "c4@3 c4@3 ~@2 c4@3 c4@3 ~@2", BH: "a3@3 a3@2 a3@3 a3@3 ~@2 a#3@3",
BI: "a#3@3 a#3@3 ~@2 f3@3 f3@3 ~@2", BJ: "g3@3 g3@3 ~@2 g3@3 g3@3 ~@2", BK: "c4@3 c4@2 c4@3 c4@3 ~@2 c4@3",
BL: "~ a#3", BM: "g3 ~@2 a#3 ~ a#3 ~@2 g3 ~@2 a#3 ~@4", BN: "c4 a#3", BO: "d#4@5 d4@3 d#4@5 d4@3",
BP: "d#4@5 d#4 ~@2 d#4@5 ~@3", BQ: "~ d4", BR: "g3 ~@2 a#3 ~ a#3 ~@2 g3 ~@2 a#3 ~ a#3 ~@2", BS: "g3@5 ~@3 a#3@3 ~@5",
BT: "a#3 ~@2 a#3 ~@4 g3 ~@2 g3 ~@4", BU: "f3 ~@2 f3 ~ f3@5 ~@6", BV: "a3@5 b3@3 c4@5 d4@3", BW: "c4 b3",
BX: "a3@5 g3@3 e3@3 e3@2 d3@3", BY: "e3@3 g3@5 a3@5 b3@3", BZ: "c4@5 d4@3 d#4@5 c4@3", CA: "a#3@5 g3@3 d4@5 a#3@3",
CB: "a3@5 f3@3 e3@5 f3@3", CC: "g3@5 e3@3 d3@5 ~@3", CD: "~ g3", CE: "f3 g3", CF: "g#3 g3", CG: "f#3@8 g3@5 g#3@3",
CH: "g#3@3 a3@2 a#3@3 ~@8", CI: "d#4@13 ~@3", CJ: "d4 ~@2 f4 ~ f4 ~@2 d#4 ~@2 f4 ~ f4 ~@2",
CK: "d#4 ~@2 f4 ~ f4 ~@2 d4 ~@2 f4 ~ f4 ~@2", CL: "d#4 ~@2 f4 ~ f4 ~@2 d#4 ~@2 f4 ~ f4 ~@2",
CM: "c4 ~@2 f4 ~ f4 ~@2 c4 ~@2 f4 ~ f4 ~@2", CN: "a#3@8 d4@5 ~@3", CO: "d#4@8 d#4@5 ~@3", CP: "d4@3 ~@5 c4@8",
CQ: "d#4@3 d#4@2 d#4@3 d#4@5 d#4@3", CR: "[d4@5 d#4@3 d4@16 ~@8]/2", CS: "a#3@5 c4@3 d4@5 d#4@3",
CT: "f4@5 d#4@3 d4@5 c4@3", CU: "a#3@5 c4@3 d4@5 f4@3", CV: "d#4@5 g4@3 f4@5 d#4@3",
CW: "[d4 ~@2 d4 ~ d#4 ~@2 d4@16 d#4@3 ~@2 c4@3]/2", CX: "c4@8 d4@3 ~@2 a#3@3", CY: "a#3@3 a#3@2 a#3@3 d#4@3 ~@2 a3@3",
CZ: "f3@8 ~@5 a#4@3", DA: "g4@13 a#4@3", DB: "g#4@5 a#4@3 g#4@5 g4@3", DC: "f4@5 g4@3 f4@5 a#4@3",
DD: "g4@3 g4@2 g4@3 g4@5 f4@3", DE: "d#4@5 ~@11", DF: "a#3@3 a#3@2 a#3@3 a#3@5 g#3@3", DG: "g3@5 ~@11", DH: "g3 g#3",
DI: "g3!2", DJ: "g#3!2", DK: "[g3@8 g3@16 f3@16 d#3@16 g#3@3 ~@2 g#3@3]/4", DL: "g3@11 ~@5",
DM: "~@5 a#3@3 a#3@3 a#3@2 a#3@3", DN: "a#3@3 a#3@2 a#3@3 a#3@3 a#3@2 a#3@3", DO: "g3@3 g3@2 g3@3 g3@3 g3@2 g3@3",
DP: "g3@3 g3@2 g3@3 g#3@3 g#3@2 g#3@3", DQ: "g#3@3 g#3@2 g#3@3 g#3@3 g#3@2 g#3@3", DR: "a#3@3 ~@13", DS: "~ c#4",
DT: "a#3 f3", DU: "d#3 c#4", DV: "a#3 ~", DW: "g#3", DX: "g#3@5 c4@3 c#4@5 c#4@3", DY: "a#3!2",
DZ: "g#3@3 g#3@2 g#3@3 g#3@5 g#3@3", EA: "g#3@5 g#3@3 a#3@3 g#3@3 ~@2", EB: "g#3@5 g#3@3 g#3@5 g#3@3", EC: "a#3 g#3",
ED: "c#4@3 c#4@2 c#4@3 c#4@5 c4@3", EE: "a#3@5 d#4@3 c#4@3 c4@2 a#3@3", EF: "f4@3 f4@3 ~@2 f4@3 f4@3 ~@2",
// … 113 more lines
More by Grainger
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.