Strudelify

the sting - the entertainer

John Williams

KeyC majorTempo84 bpm
0:00/0:00
// the sting - the entertainer — John Williams
// 84 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/459581; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 76 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(84/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · piano
const piano = note(`<
  A B C D E F C G H I C D E F C G H J K L M N K O P Q R S T U V W X Y C D E F C G H Z AA AB AC AD AA AB AE AF AA AB AC
  AD AA AB AE AG AH AI AJ AK AL AM AJ AK AN AO AJ AK AL AM AJ AK AN AP
>`.pickRestart({
  A: "[c#7,d7] e7 c7 a6@2 b6 g6@2 [c#5,d5] e5 c5 a4@2 b4 g4@2", // Dmaj7
  B: "[c#3,d3] e3 c3 a2@2 b2 a2 g#2 g2 ~@3 [g4,b4,d5,g5]@2 d4 d#4", // Dmaj7 G
  C: "e4 c5 ~ e4 c5 ~ e4 c5@6 [e5,c6] [f5,d6] [f#5,d#6]", // C Dm D#m
  D: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [d5,b5] [f5,d6] ~ [e5,c6]@2 e5 g5 [e5,c6] ~ d4 d#4", // C Dm C G Dm C
  E: "e4 c5 ~ e4 c5 ~ e4 c5@7 [c5,a5] g5", // F
  F: "[c5,f#5] a5 [e5,c6] [f#5,e6]@2 [f#5,d6] [f#5,c6] [f#5,a5] [f5,d6]@6 d4 d#4", // Cdim C F#7 D F#dim F#m Dm
  G: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [d5,b5] [f5,d6] ~ [e5,c6]@2 e5 g5 [e5,c6] ~ [e5,c6] [f5,d6]", // C Dm C G Dm C Dm
  H: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [g5,c6] [g5,d6] [g5,c6] [a5,e6] c6 [a5,d6] [g#5,e6]@2 [g#5,c6] [g#5,d6] [g#5,c6]", // C Dm C C5 G5 C5 A5 D5 …
  I: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [d5,b5] [f5,d6] ~ [e5,c6]@6 d4 d#4", // C Dm C G Dm C
  J: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [d5,b5] [f5,d6] ~ [e5,c6]@5 [e4,c5,e5] [f4,d5,f5] [f#4,d#5,f#5]", // C Dm C G Dm C Dm D#m
  K: "[g4,e5,g5] ~ [a4,e5,a5] [g4,e5,g5]@2 [e4,c5,e5] [f4,d5,f5] [f#4,d#5,f#5] [g4,e5,g5] ~ [a4,e5,a5] [g4,e5,g5]@2 e5 c5 g4", // C A5 C Dm D#m C A5 C
  L: "a4 b4 c5 d5 [g#4,e5] d5 c5 d5 g4 e5 f5 g5 a5 g5 [c5,e5] [d5,f5]", // C#m C Dm
  M: "[g4,e5,g5] ~ [a4,e5,a5] [g4,e5,g5]@2 [e4,c5,e5] [f4,d5,f5] [f#4,d#5,f#5] [g4,e5,g5] ~ [a4,e5,a5] [g4,e5,g5]@2 [e5,g5] [d#5,a5] a#5", // C A5 C Dm D#m C A5 C …
  N: "[d5,b5] [d5,b5]@2 [c5,b5]@2 a5 [c5,f#5] d5 [b4,g5]@5 [e4,c5,e5] [f4,d5,f5] [f#4,d#5,f#5]", // G Cmaj7 Cdim Em C Dm D#m
  O: "a4 b4 c5 d5 [g#4,e5] d5 c5 d5 [g4,c5] ~ e5 g5 c6 [g4,g5] [f#4,f#5] [g4,g5]", // C#m C5 G F# G
  P: "[c5,c6] ~ [a4,a5] [c5,c6]@2 [a4,a5] [c5,c6] [a4,a5] [g4,g5] [c5,c6] [e5,e6] [g5,g6]@2 [e5,e6] [c5,c6] [g4,g5]", // C A C A C A G C …
  Q: "[a4,a5] ~ [c5,c6] ~ [e5,e6] [d5,d6]@2 [c5,e5,c6]@6 e6 f6 f#6", R: "g6 ~ a6 g6@2 e6 f6 f#6 g6@2 a6 g6@2 f6 c6 g5",
  S: "a5 b5 c6 d6 e6 d6 c6 d6 g5 e6 f6 g6 a6 g6 e6 f6", T: "g6 ~ a6 g6@2 e6 f6 f#6 g6@2 a6 g6@2 g6 a6 a#6",
  U: "b6 b6@2 b6@2 a6 f#6 d6 [g6,a6]!5 [e6,g6,a6] f6 f#6", V: "g6 ~ a6 g6@2 e6 f6 f#6 g6@2 a6 g6@2 e6 c6 g5",
  W: "a5 b5 c6 d6 e6 d6 c6 d6 c6 ~ e6 g6 c7 g6 f#6 g6", X: "c7 ~ a6 c7@2 a6 c7 a6 g6 c7 e7 g7@2 e7 c7 g6, ~@11 f#7 ~@4",
  Y: "a6 ~ c7 ~ e7 d7@2 c7@7 d4 d#4",
  Z: "[g5,e6] [e5,c6] [f5,d6] [g5,e6]@2 [d5,b5] [f5,d6] ~ [e5,c6]@3 [g5,a5] [e5,c6]@2 ~@2, ~@12 b5 ~@3", // C Dm C G Dm C Gsus2 C
  AA: "[f5,a5] [e5,g#5] [f5,a5]@4 [a5,c6] ~@3 a#4 a4 a#4 c5 d5@2, ~ [a#5,d6]", // F E F Am A#
  AB: "[d5,f5] [c#5,e5] [d5,f5]@4 [f5,a5]@2 ~@2 g4 f#4 g4 a4 a#4 g5, ~@8 [g5,a#5]@7 ~", // Dm C#m Dm F Gm
  AC: "[a#4,d5] ~ [a#4,g5] [a#4,d5]@2 [a#4,g5] [a#4,d5] ~ [a4,c5]@4 [a4,f5]@4", // A# D# A# D# A# Am Dm
  AD: "e5 g#5 b5 e6@2 d6 b5 c6 a5@2 e5 a5 a#5 e5 g5 a#5",
  AE: "[a#4,d5] ~ [a#4,g5] [a#4,d5]@2 [a#4,g5] [a#4,d5] ~ [a4,c5]@4 [g#4,b4,f5]@3 f5", // A# D# A# D# A# Am Fdim
  AF: "[c5,a5] [a5,c6]@2 [a#4,g5]@2 c5 [a#4,d5] e5 [a4,f5]@2 b4 c5 d5 e5 [d5,f5] [e5,g5]", // F Am D# A# Dm Em
  AG: "[c5,a5] [a5,c6]@2 [a#4,g5]@2 c5 [a#4,d5] e5 [a4,f5]@2 ~ [c6,d6] [a5,c6,f6]@2 ~@2, ~@12 e6 ~@3", // F Am D# A# Dm Csus2 F
  AH: "c5@2 a4 c5@2 a4 c5 a4 g4 c5 e5 g5@2 e5 c5 g4",
  AI: "[f#4,a4] ~ [f#4,c5] ~ [f4,e5] [f4,d5]@2 [e4,c5]@5 [c4,e4,g4,c5]@2 ~@2", // F#m F#dim Fmaj7 Dm C
  AJ: "[d4,f4] ~ [c#4,e4] [d4,f4]@2 [c#4,e4] [d4,f4] ~@2 a5 d6 a5 c6 d6 c6 a5", // Dm C#m Dm C#m Dm
  AK: "[e4,g4] ~ [d#4,f#4] [e4,g4]@2 [d#4,f#4] [e4,g4] ~@2 c6 e6 c6 d6 e6 d6 c6", // Em D#m Em D#m Em
  AL: "[b4,d5] ~ [a#4,c#5] [b4,d5]@2 [a#4,c#5] [b4,d5] ~@2 f6 a6 f6 g6 a6 g6 f6", // Bm A#m Bm A#m Bm
  AM: "[c6,c7]!2 [c6,c7]@4 [c6,a6] ~ [c5,g5] ~ [e4,g4]!3 ~ [e4,g4] ~", // C F C5 Em
  AN: "a5 g#5 a5 [g5,a5,g6]@2 [a5,f6]@2 [a5,c6] [g5,e6] d#6 e6 a6@2 c6 g5 e5", // Gsus2 Dm Am C
  AO: "[f#4,c5] ~ [f#4,c5] ~ [f4,e5] [f4,d5]@2 [e4,c5]@3 [e4,g4]!2 [e4,g4]@2 [e4,g4]@2", // F#dim Fmaj7 Dm C Em
  AP: "[f#4,c5] ~ [f#4,c5] ~ [f4,e5] [f4,d5]@2 [e4,c5]@3 ~ [g5,a5] [e5,g5,c6]@2 ~@2, ~@12 b5 ~@3", // F#dim Fmaj7 Dm C Gsus2 C
})).s("gm_piano").gain(0.25)

// chords · piano
const piano_2 = note(`<
  A B C D E F C G H I C D E F C G H J K L M N K O P Q R S T U R V W X C D E F C G H Y Z AA AB AC AD AA AE AF Z AA AB AC
  AD AA AE AG AH AI AJ AK AL AM AJ AK AN AO AJ AK AL AM AJ AK AN AP
>`.pickRestart({
  A: "[c#6,d6] e6 c6 a5@2 b5 g5@2 [c#4,d4] e4 c4 a3@2 b3 g3@2", B: "[c#2,d2] e2 c2 a1@2 b1 a1 g#1 g2 ~@3 [g2,g3] ~@3",
  C: "c3 [g3,c4] g2 [g3,a#3] f2 [a3,c4] e2 [g3,c4]", D: "g2 [e3,c4] g2 [g3,b3] c2 [e3,g3,c4]!2 [g3,b3]",
  E: "c3 [g3,c4] g2 [g3,a#3] f2 [a3,c4] [e2,e3] [d#2,d#3]", // C5 Gm Am E D#
  F: "[d2,d3] [f#3,a3,c4] d3 [a3,c4,d4,f#4] [g3,b3,d4,f4] [g2,g3] [a2,a3] [b2,b3]", // D F#dim D7 G7 G A B
  G: "g2 [e3,c4] g2 [g3,b3] c2 [e3,g3,c4] [g3,c4,e4] ~", // C G C
  H: "[c2,c3] [g3,c4,e4] [a#1,a#2] [g3,c4,e4] [a1,a2] [a3,c4,f4] [g#1,g#2] [g#3,c4,f4]", // C A# C A F G# Fm
  I: "[g1,g2] [g3,c4,e4] [g1,g2] [f3,g3,b3] [c2,c3] [g2,g3] [a2,a3] [b2,b3]", // G C G G7 C G A B
  J: "[g1,g2]@2 [g3,c4,e4]@2 [g1,g2]@2 [f3,g3,b3]@2 [c2,c3]@2 [g2,g3]@2 [c2,c3] ~@3, ~@10 [f#2,f#3] ~@5", // G C G G7 C G C F#
  K: "[c2,c3] [g3,c4,e4] g2 [g3,c4,e4] [c2,c3] [g3,c4,e4] g2 [e3,c4]", // C
  L: "f2 [f3,a3,c4] f2 [f3,g#3,c4] e2 [e3,g3,c4] g2 [g3,c4,e4]", // F Fm C
  M: "[c2,c3] [g3,c4,e4] g2 [g3,c4,e4] [c2,c3] [g3,c4,e4] [e3,e4] [d#3,d#4]", // C E D#
  N: "d3 [g3,b3,d4] [d3,f#3] [a3,c4,d4] [g3,b3,d4] [f2,f3] [e2,e3] [d2,d3]", // G D D7 G F E D
  O: "f2 [f3,a3,c4] f2 [f3,g#3,c4] e2 [e3,g3,c4] c2 [e3,g3,a#3]", // F Fm C Edim
  P: "[f2,a2,c3,f3]!2 [f#2,a2,c3,d#3]!2 [g2,c3,e3,g3]!4", // F F#dim C
  Q: "[d3,f#3,c4] [f#3,a3] [g2,f3] [g3,b3] [c3,c4] [g2,g3] [e2,e3] [d2,d3]", // D7 F#m G7 G C G E D
  R: "[c2,c3] [c4,e4] g2 [c4,e4] c3 [c4,e4] g2 [c4,e4]", S: "f2 [f3,a3,c4] f2 [f3,g#3,c4] e2 [e3,g3,c4] g2 [c4,e4]",
  T: "[c2,c3] [c4,e4] g2 [c4,e4] c3 [c4,e4] e3 d#3", U: "d3 [g3,b3,d4] [d3,f#3] c4 [g3,b3,d4] [f2,f3] [e2,e3] [d2,d3]",
  V: "f2 [f3,a3,c4] f2 [f3,g#3,c4] e2 [e3,g3,c4] c3 [g3,a#3]", // F Fm C Gm
  W: "[f3,a3,c4]!2 [f#3,a3,c4,d#4]!2 [g3,c4,e4]!2 [g3,c4,e4,g4]!2", // F F#dim C
  X: "[a3,c4,d4,f#4]!2 [g3,b3,d4,f4]!2 [c4,e4] g3 [c2,c3] ~, ~@10 f#3 ~@5", // D7 G7 C
  Y: "[g1,g2] [g3,c4,e4] [g1,g2] [f3,g3,b3] [c2,c3] [g2,g3] [c2,c3] ~, ~@10 [f#2,f#3] ~@5", // G C G G7 C G C F#
  Z: "f2@2 [a3,c4]@2 c3@2 [a3,c4]@2 a#2@2 [a#3,d4] a3 a#3 c4 [a#3,d4]@2, ~@6 f3 ~", // Am A#
  AA: "d3@2 [a3,d4]@2 a2@2 [a3,d4]@2 g2@2 [g3,a#3] f#3 g3 a3 [g3,a#3]@2, ~@6 d3 ~", // D5 Gm
  AB: "a#2 [a#3,d4] [g2,g3] [g#2,g#3] [a2,a3] [a3,c4] d3 [a3,d4]", // A# G G# A Am D5
  AC: "c3@2 [b3,d4,g#4]@2 g#2@2 [b3,d4,e4]@2 ~ c4@3 [e3,a#3] ~ c2@2, ~@4 [a2,e3]@2 g2 ~", // G#dim E7 Edim A5
  AD: "g2@2 [a3,c4]@2 c3@2 [a3,c4]@2 a#2@2 [a#3,d4] a3 a#3 c4 [a#3,d4]@2, ~@6 f3 ~", // Am A#
  AE: "a#2@2 [a#3,d4]@2 [g2,g3]@2 [g#2,g#3]@2 [a2,a3] [f2,f3] [e2,e3] [d2,d3] [c#2,c#3]@4", // A# G G# A F E D C#
  AF: "[c2,c3]@2 [a3,f4]@2 [c2,c3]@2 [a#3,c4,e4]@2 [f2,f3]@2 g#4 a4 a#4 b4 ~@2", // C Dm C C7 F
  AG: "[c2,c3]@2 [a3,f4]@2 [c2,c3]@2 [a#3,c4,e4]@2 [f2,f3]@2 ~@2 [c3,a3] ~@3, ~@6 f2 ~", // C Dm C C7 F
  AH: "[f3,a3,c4]!2 [f#3,a3,c4,d#4]!2 [g3,c4,e4]!2 [g3,c4,e4,g4] [g3,c4,e4]", // F F#dim C
  AI: "[d3,c4] [d3,a3] [g3,b3]!2 [c3,c4]@2 [c2,c3] ~", AJ: "f2 [f3,a3] a2 [f3,a3] f2 [f3,a3] a2 [f3,a3]",
  AK: "c3 [e3,g3,c4] g2 [e3,g3,c4] c3 [e3,g3,c4] g2 [e3,g3,c4]", // C
  AL: "g2 [f3,g3,b3] b2 [f3,g3,b3] g2 [f3,g3,b3] d3 [f3,g3,b3]", // G7
  AM: "[d#3,f#3,a3,c4] [d#3,f#3,a3,c4]@2 [d#3,f#3,a3,c4] [e3,g3,c4] ~@3", // D#dim C
  AN: "f3 [d3,f3,a3] e3 [f3,a3,c4] g3 [g3,c4,e4] [f#3,c4,d#4] [g3,c4,e4]", // Dm F C Cdim C
  AO: "[a2,a3] [d2,d3] [g2,g3] [b2,b3] [c2,c3] ~@3", // A D G B C
  AP: "[a2,a3] [d2,d3] [g2,g3] [b2,b3] [c3,c4] [g2,g3] [c2,c3] ~, ~@10 [f#2,f#3] ~@5", // A D G B C G C F#
})).s("gm_piano").gain(0.25)

stack(piano, piano_2)

More by John Williams