Strudelify

I Don't Want To Set The World On Fire

The Inkspots

KeyG majorTempo150 bpm
0:00/0:00
// I Don't Want To Set The World On Fire — The Inkspots
// 150 bpm, 6/8, 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/6347406; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 135 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(150/3)

// 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 · trombone
const trombone = note(`<
  ~@10 A B C D E F G ~ H I J K L D M F N ~ O P Q R S T U V W ~ X Y Z ~@4 AA AB AC AD AE AF@3 AG@4 AH@2 AI AJ AB@4 AK@4
  AL@4 AB@2 AK AM AB@4 AK@4 AL@4 AB ~@5 AN AO AP AQ AR AS AT AU AV@2 AW@2 AX@2 AY AZ BA BB BC BD BE BF AW BG AV@2 AW@2
  AX@2 AV BH BI BJ BK BL BM BN BO@2
>`.pickRestart({
  A: "~@3 a3 ~@12", B: "~@5 a3 ~@10", C: "~@7 a3 ~@8", D: "~@9 a3 ~@6", E: "~@11 a#3 ~@4", F: "~@12 a#3 ~@3",
  G: "~@14 a#3 ~", H: "a#3 ~@15", I: "~@2 e4 ~@13", J: "~@3 e4 ~@12", K: "~@5 e4 ~@10", L: "~@7 e4 ~@8",
  M: "~@11 a3 ~@4", N: "~@7 g4", O: "a3@3 ~@13", P: "~@2 a3@3 ~@11", Q: "~@3 a3@3 ~@10", R: "~@5 a3@3 ~@8",
  S: "~@7 a#3@3 ~@6", T: "~@9 a#3@3 ~@4", U: "~@11 a#3@3 ~@2", V: "~@12 a#3@3 ~", W: "~@7 e4", X: "e4@3 ~@13",
  Y: "~@2 e4@3 ~@11", Z: "~@3 e4@3 ~@10", AA: "~@8 c3 ~@7", AB: "~@8 a3 ~@7", AC: "~@8 d#4 ~@7", AD: "~@8 a3 ~@4 g#3@3",
  AE: "g3@5 ~@3 f3 ~@7", AF: "~@8 f3 ~@7", AG: "~@8 f3@3 ~@5", AH: "~@8 a#3@3 ~@5", AI: "~@8 g3@3 ~@5",
  AJ: "~@8 e3@3 ~@5", AK: "~@8 a#3 ~@7", AL: "~@8 e4 ~@7", AM: "~@8 g4@3 ~@5", AN: "f2@3 c3 d3@3 c3 f3@3 d#3 e3@3 a#3",
  AO: "c4@3 d4 a3 c4 ~ d4 e4@5 ~@2 e4", AP: "c4@3 b3 a#3 ~@2 a3@5 a#3 ~ a3@2", AQ: "g3@4 a#3 ~@2 f#3 f3@4 a#3 ~@2 e3",
  AR: "~@3 e3@3 ~ a#3 a3@4 e4 c4 ~ a3", AS: "g#3@4 e4 ~@2 g3 ~@3 g3@5", AT: "f3@4 a3 ~@2 f3 f#3@4 a3 ~@2 f#3",
  AU: "g3@4 a#3 ~@2 g3 c4 ~@3 g4 ~@3", AV: "~@4 a3 ~@7 a3 ~@3", AW: "~@4 a#3 ~@7 a#3 ~@3", AX: "~@4 e4 ~@7 e4 ~@3",
  AY: "a#2@4 g2 ~@2 a#2@3 ~ g2 a#2@3 ~", AZ: "c3@4 a2 ~@2 c3@3 ~ a2 c3@3 ~", BA: "~@4 c3 ~@7 a3 ~@3",
  BB: "~@4 d#4 ~@7 a3 ~@2 g#3", BC: "g3@3 ~ f3 ~@7 f3 ~@3", BD: "~@4 f3 ~@7 f3 e3 ~ d#3", BE: "d3@4 f3 ~@7 f3 ~@3",
  BF: "~@4 f3 ~@7 f3 ~@3", BG: "~@4 g3 ~@7 e3 ~@3", BH: "~@4 a#3 ~@7 g3 ~@2 d#3",
  BI: "e3 ~@3 a3 ~@2 e3 f3 ~@3 a3 ~@2 f3", BJ: "f#3@15 f#3", BK: "g3@3 f#3 f3@3 e3 b3@3 f4 a#3@3 a3",
  BL: "~@4 d4@4 c#4@4 c4 ~@3", BM: "a3@4 g3 ~@3 f3@4 e3 ~@3", BN: "d#3@4 e3 ~@2 g3 d3 ~@3 e3 ~@3",
  BO: "[c4@4 f3@4 c3 ~@2 a2 f2@12 c3 ~@7]/2",
})).s("gm_trombone").gain(0.4).pan(0.3)

// other · baritone sax · "Tuba"
const baritone_sax = note(`<
  A@3 B@2 C@3 D E@4 F G H I J K@5 L@2 M N@2 O@5 P Q R S J T@4 U@2 V W X W Y Z AA@3 AB AC AB AC AD AE AF AG X@2 AH@2 AI@4
  AJ AK AJ AL AM AN AO AP X@2 AH@2 AI@4 AJ AK AJ AL X AQ AR AS AR AT AU AV AW@2 AX AY AZ BA BB BC BD BE@2 BF BG BH BI BJ
  BK BL BM BN BO AX BP BQ BR BS AX BT AZ BU BV BC BD@2 AX@2 BW@2
>`.pickRestart({
  A: "[~@4 f2@2 c3 d3@2 c3 f#2@2 c3 d3@2 c3]/3", B: "[g2@6 c3@3 d3@6 c3@3 c2@6 c2@3 c3@5]/2",
  C: "[c2 f2@2 c3 d3@2 c3 f#2@2 c3 d3@2 c3 g2@2 c3]/3", D: "d3@6 c3@3 c2@3 ~@4",
  E: "[~@2 c3@9 f2@8 [a2,f3] ~@8 c2@9 [a2,f3] ~@8 f#2@9 [a2,f#3] ~@8]/4", F: "f#2@9 [a2,f#3] ~@6",
  G: "~@2 g2@9 [a#2,g3] ~@4", H: "~@3 g2@9 [a#2,g3] ~@3", I: "~@5 g2@9 [a#2,g3] ~", J: "~@7 g2@9",
  K: "[[a#2,g3] ~@8 c2@9 [c3,e3] ~@8 g2@8 [c3,e3] ~@8 c2@9 [c3,e3] ~@8 g2@9 [c3,e3] ~@8]/5", // D# C
  L: "[f2@9 [a2,f3] ~@5 f2@3 f#2@9 [a2,f#3] ~@4]/2", M: "f#2@3 g2@9 [a#2,g3] ~@3",
  N: "[~@2 g2@3 c2@3 ~@3 c3@3 c2@9 f2@9, ~@14 c3@3 ~@15]/2",
  O: "[[a2,f3]@3 ~@6 c2@9 [a2,f3]@3 ~@6 f#2@8 [a2,f#3]@3 ~@6 f#2@9 [a2,f#3]@3 ~@6 g2@9 [a#2,g3]@3 ~@6]/5", // Dm D D#
  P: "g2@9 [a#2,g3]@3 ~@4", Q: "~@2 g2@9 [a#2,g3]@3 ~@2", R: "~@3 g2@9 [a#2,g3]@3 ~", S: "~@5 c2@9 [c3,e3]@2",
  T: "[[c3,e3]@3 ~@6 c2@9 [c3,e3]@3 ~@6 g1@8 [c3,e3]@3 ~@6 f2@6 e2@3 d#2@3 d2@3 c#2@3 f2@2]/4", // C
  U: "[~ a#2@3 c#3@3 f3@3 a#3@3 c#4@2 f3@6 b2@3 c3@3 ~@2 b2@3, ~@15 a3@16 ~]/2", V: "f2@5 f2@3 e2@5 f2@3",
  W: "c2@8 [c3,g3] ~@7", X: "f2@8 [a2,f3] ~@7", Y: "f2@8 [f3,a3] ~@4 [e3,g#3]@3", Z: "a#2@8 d3 ~@7, g3@5 ~@11",
  AA: "a#2@8 d3 ~@7", AB: "d2@8 [f2,d3]@3 ~@5", AC: "g2@8 [f2,d3]@3 ~@5", AD: "g2@8 [a#2,g3]@3 ~@5",
  AE: "d3@8 [a#2,g3]@3 ~@5", AF: "c2@8 [c3,e3]@3 ~@5", AG: "g2@8 [c3,e3]@3 ~@5", AH: "f#2@8 [a2,f#3] ~@7",
  AI: "g2@8 [a#2,g3] ~@7", AJ: "c2@8 [c3,e3] ~@7", AK: "g2@8 [c3,e3] ~@7", AL: "g1@8 [c3,e3] ~@7",
  AM: "f2@8 [a2,f3] ~@4 f2@3", AN: "f#2@8 [a2,f#3] ~@4 f#2@3", AO: "g2@8 [a#2,g3] ~@4 g2@3", AP: "c2@3 ~@2 c3@3 c2@8",
  AQ: "[f2,a2]@3 ~@2 [f2,a2]@3 [f2,g#2]@3 ~@2 [f2,g2]@3", AR: "f2@3 c3 d3@3 c3 f#2@3 c3 d3@3 c3",
  AS: "g2@3 c3 d3@3 c3 c2 ~@2 c2 c3@3 c2", AT: "g2@3 c3 d3@3 c3 c2 ~@2 c3@5", AU: "f2@4 [a2,f3] ~@3 c2@4 [a2,f3] ~@3",
  AV: "f#2@4 [a2,f#3] ~@3 f#2@4 [a2,f#3] ~@3", AW: "g2@4 [a#2,g3] ~@3 g2@4 [a#2,g3] ~@3",
  AX: "c2@4 [c3,e3] ~@3 g2@4 [c3,e3] ~@3", AY: "c2@4 [c3,e3] ~@3 g1@4 [c3,e3] ~@3",
  AZ: "f2@4 [a2,f3] ~@2 f2 f#2@4 [a2,f#3] ~@2 f#2", BA: "g2@4 [a#2,g3] ~@2 g2 c2 ~@2 c3 [c2,c3] d2 ~ e2",
  BB: "[f2,a2]@4 [a2,f3] ~@3 c2@4 f3 ~@3", BC: "f#2@4 f#3 ~@3 f#2@4 f#3 ~@3", BD: "g2@4 g3 ~@3 g2@4 g3 ~@3",
  BE: "[g2@4 g3 ~@3 [g2,g3]@3 g3 [a#2,g3] ~@3 c2@4 [c3,e3] ~@2 c3 g2@4 [c3,e3] ~@2 b2, ~@15 c3@5 ~@4 b2 ~@7]/2", // G D# C
  BF: "c2@4 [c3,e3] ~@2 a#2 [g1,c3]@3 d3 e3@4, a#2 ~@11 c3 ~@3", // C C5
  BG: "[f2,f3]@4 [d2,d3] ~@2 [f2,f3]@3 ~ [d2,d3] [f2,f3]@3 ~", // F D F D F
  BH: "[f2,c3]@4 [d2,b2] ~@2 [f2,c3]@3 ~ [d2,b2] [f2,c3]@3 ~", BI: "c2@4 [c3,g3] ~@3 f2@4 [a2,f3] ~@3",
  BJ: "c2@4 [c3,g3] ~@3 f2@4 [f3,a3] ~@2 [e3,g#3]", BK: "[a#2,g3]@4 d3 ~@3 a#2@4 d3 ~@3",
  BL: "a#2@4 d3 ~@3 a#2@4 d2 e2 ~ d#2", BM: "d2@4 [f2,d3] ~@3 g2@4 [f2,d3] ~@3",
  BN: "d2@4 [f2,d3] ~@2 g2 g2@4 [f2,d3] ~@3", BO: "g2@4 [a#2,g3] ~@3 d3@4 [a#2,g3] ~@3",
  BP: "f2@4 [a2,f3] ~@3 [f2,c3]@3 d3 [a2,f3] ~@2 a2", BQ: "[f#2,c3]@4 [a2,f#3] ~@3 [f#2,b2]@4 [a2,f#3] ~@3",
  BR: "[g2,a#2]@4 [a#2,g3] ~@2 a2 g2@3 f2 [a#2,g3] ~@3, ~@8 d2 ~@7", BS: "g2@4 [a#2,g3] ~@2 c2 g2@4 [a#2,g3] ~@3",
  BT: "c2@4 [c3,e3] ~@3 [g1,g2]@4 [c3,e3] ~@2 c3", BU: "g2@4 [a#2,g3] ~@2 g2 c2 ~@2 c3 c2@4",
  BV: "f2@4 [a2,f3] ~@3 f2@4 f3 ~@3", BW: "[c3 ~@2 a2 f2@3 e2 c2@4 [f1,f2]@12 [f2,f3] ~@7]/2",
})).s("gm_baritone_sax").gain(0.4).pan(0.3)

// other · tenor sax · "Tenor Saxophone"
const tenor_sax = note(`<
  ~@10 A B C D E F G ~ H I J K L D M F N O P@4 Q@7 R S@2 ~@3 T U T V W X@2 Y Z AA@3 AB@2 AC@2 U@4 AD@4 AE@4 U@2 AD AF
  U@4 AD@4 AE@4 U ~@5 AG@2 AH@2 AI@2 AG AJ AK AL AM AN AO@2 AP@2 AQ AR AS AT AU AV AH AW AG@2 AH@2 AI@2 AG AJ AG@2 AH@2
  AI@2 AX@2
>`.pickRestart({
  A: "~@3 c4 ~@12", B: "~@5 c4 ~@10", C: "~@7 c4 ~@8", D: "~@9 c4 ~@6", E: "~@11 d4 ~@4", F: "~@12 d4 ~@3",
  G: "~@14 d4 ~", H: "d4 ~@15", I: "~@2 g4 ~@13", J: "~@3 g4 ~@12", K: "~@5 g4 ~@10", L: "~@7 g4 ~@8", M: "~@11 c4 ~@4",
  N: "~@7 e4", O: "~@7 a4@9", P: "[c5@9 c4@6 d4@3 e4@3 f4@3 a4@3 c5@17 b4@18 c5 b4]/4",
  Q: "[a#4@7 d5@47 ~@6 a#4@6 a4@3 a4@6 c5@3 a4@6 c5@24 ~@4]/7", R: "~@8 a4@3 c5@5", S: "[c#5@3 d5@9 f5@18 ~@2]/2",
  T: "~@8 d#4 ~@7", U: "~@8 c4 ~@7", V: "~@8 c4 ~@4 b3@3", W: "a#3@5 ~@3 f3 ~@7", X: "~@8 f3 ~@7",
  Y: "~@8 e4 f4@2 e4@2 d#4@3", Z: "d4@5 ~@3 a3@3 ~@5", AA: "~@8 a3@3 ~@5", AB: "~@8 d4@3 ~@5", AC: "~@8 g3@3 ~@5",
  AD: "~@8 d4 ~@7", AE: "~@8 g4 ~@7", AF: "~@8 e4@3 ~@5", AG: "~@4 c4 ~@7 c4 ~@3", AH: "~@4 d4 ~@7 d4 ~@3",
  AI: "~@4 g4 ~@7 g4 ~@3", AJ: "~@4 d4 ~@7 e4 ~@3", AK: "a4@4 c5@4 c4@3 d4 e4 f4 ~ a4", AL: "c5 b4",
  AM: "c5 b4 a#4@2 d5@5 c5 ~ a#4 a4 g4 ~ e4", AN: "f#4 g4 ~ a4 b4 c5 ~ c#5 d5 ~@3 a#4@3 a4",
  AO: "[a4@3 c5 a4@3 c5@11 ~@5 a4 c5@3 c#5 d5@4]/2", AP: "f5/2", AQ: "~@4 d#4 ~@7 c4 ~@3", AR: "~@4 d#4 ~@7 c4 ~@2 b3",
  AS: "a#3@3 ~ f3 ~@7 f3 ~@3", AT: "~@4 f3 ~@7 f4 e4 ~ d#4", AU: "d4@4 a3 ~@7 a3 ~@3", AV: "~@4 a3 ~@7 a3 ~@3",
  AW: "~@4 g3 ~@7 g3 ~@3", AX: "[a3@24 f5 ~@7]/2",
})).s("gm_tenor_sax").gain(0.4).pan(0.7)

stack(trombone, baritone_sax, tenor_sax)