Strudelify

gonna fly now

Bill Conti

KeyD majorTempo115 bpm
0:00/0:00
// gonna fly now — Bill Conti
// 115 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3365021; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 88 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(115/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: edit a riff to change every repeat.

// other · trumpet · "B♭ Trumpet"
const trumpet = note(`<
  A@2 B@2 C D C E F G F H I J K@2 F G F H I J D@3 L M N O P Q@2 R S T U V ~@7 W X T Y V ~@7 Z@3 AA@4 ~@7 AB ~ AC ~ AD
  AE@2 AF AG AH AI@2 AJ AK@2 AL@2 AM
>`.pickRestart({
  A: "[c6@2 c6!2 b5@2 b5 a5 ~ a5 g5@16 ~@6]/2", B: "[d#6@2 d#6!2 d6@2 d6 c6 ~ c6 a#5@22]/2", C: "e5!3 e5@13",
  D: "e5!2 ~@4 e5!2 ~@8", E: "e5!2 ~@4 e5!2 ~@4 e4 g4@3", F: "a4@12 a4 b4@3", G: "e4@12 e4 g4@3", H: "e4",
  I: "~@2 d5 c5 d5@3 c5 d5 e5@7", J: "~@2 c5!2 c5@2 c5!2 ~ c5 c5@4 f5@2", K: "[e5@24 ~@4 e4 g4@3]/2",
  L: "b5!2 ~@4 b5!2 ~@4 f5 g5 a5 b5", M: "c6", N: "d6@14 c6 d6", O: "e6", P: "d6@6 d6 e6 d6@4 c6@4", Q: "d6/2",
  R: "~ d5 ~ e5", S: "~ f5@3", T: "~@2 e5!2 e5@12", U: "~@2 e5!2 e5@6 a5@3 c6@3", V: "d6 ~@3", W: "~ d5@3 ~ e5@3",
  X: "~ f5@3 f5@4", Y: "~@2 a5!2 a5@4 ~@2 a5@3 c6@3", Z: "[~@2 d6 c6 d6@3 c6 d6 e6@39]/3", AA: "e6/4",
  AB: "~@2 g5@2 ~ a5 ~@2 c6@4 a5@4", AC: "~@2 g5@2 ~ a5 ~@2 b5@4 g5@4", AD: "~@2 f5@2 ~ e5 ~@2 c5@4 d5@2 ~@2",
  AE: "[e5@7 ~]/2", AF: "~@3 a5", AG: "e6@11 d6@2 c6@3", AH: "d6@3 ~", AI: "[~@6 d6@4 e6@4 c6@5 [c6,d6] b5@2 c6@10]/2",
  AJ: "~@5 c6 ~ d6 b5@6 a5@2", AK: "[b5@7 ~]/2", AL: "[e6@24 ~@4 e6 g6@3]/2", AM: "a6 ~@3",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "B♭ Trumpet"
const trumpet_2 = note(`<
  A@2 B@2 C D C E F G F H I J K@2 F G F H I J D@3 L ~@6 M N O P Q R S T Q R S ~ U V O W Q R S T Q R S ~ I X@2 L@3 Y ~@5
  Z AA@2 AB@2 AC@2 AD@2 AE@2 AF@2 AC@2 AG@2 AH AI AJ
>`.pickRestart({
  A: "[c5@2 c5!2 c5@2 c5!2 ~ c5 c5@16 ~@2 b4 c5@3]/2", B: "[d#5@2 d#5!2 d#5@2 d#5!2 ~ d#5 d#5@22]/2", C: "b4!3 b4@13",
  D: "b4!2 ~@4 b4!2 ~@8", E: "b4!2 ~@4 b4!2 ~@4 e4 g4@3", F: "a4@12 a4 b4@3", G: "e4@12 e4 g4@3", H: "e4",
  I: "~@2 d5 c5 d5@3 c5 d5 e5@7", J: "~@2 c5!2 b4@2 b4 a4 ~ a4 g4@4 c5@2", K: "[b4@24 ~@4 e4 g4@3]/2",
  L: "e5!2 ~@4 e5!2 ~@8", M: "~ a#4 ~ c5", N: "~ d5@3", O: "~@2 d5!2 d5@12", P: "~@2 d5!2 d5@6 a4@3 c5@3", Q: "d5 ~@3",
  R: "~@10 d5@3 e5@3", S: "a4 ~@3", T: "~@10 a4@3 c5@3", U: "~ a#4@3 ~ c5@3", V: "~ d5@3 d5@4",
  W: "~@2 e5!2 e5@4 ~@2 e5@3 g5@3", X: "[~@2 c6!2 c6@28]/2", Y: "b5!2 ~@4 b5!2 ~@8", Z: "g4@2 g4@2 g4@2 g4 a4",
  AA: "[c5@4 a4@10 g4 a4]/2", AB: "[b4@4 g4@10 e4 g4]/2", AC: "a4/2", AD: "[e5@28 g4 a4@3]/2",
  AE: "[c5@6 a4@22 g4 a4@3]/2", AF: "[b4@6 g4@22 e4 g4@3]/2", AG: "b4/2", AH: "b4@3 c5@3 c#5@3 ~ d5@3 d#5@3",
  AI: "e5@12 e5 g5@3", AJ: "a5 ~@3",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "B♭ Trumpet"
const trumpet_3 = note(`<
  A@2 B@2 C D C E F G F H I J K@2 F G F H I J D@3 L M@6 N O P Q R S T S R S T ~ U V P W R S T S R S T ~ I X@2 L@4 M@6
  Y@2 Z@2 AA@2 AB@2 AC AD AE AF AG AH AI@3 AJ AK
>`.pickRestart({
  A: "[c5@2 c5!2 b4@2 b4 a4 ~ a4 g4@16 ~@2 f4 g4@3]/2", B: "[d#5@2 d#5!2 d5@2 d5 c5 ~ c5 a#4@22]/2", C: "a4!3 a4@13",
  D: "a4!2 ~@4 a4!2 ~@8", E: "a4!2 ~@4 a4!2 ~@4 e4 g4@3", F: "a4@12 a4 b4@3", G: "e4@12 e4 g4@3", H: "e4",
  I: "~@2 d5 c5 d5@3 c5 d5 e5@7", J: "~@2 c5!2 c5@2 c5!2 ~ c5 c5@4 c5@2", K: "[a4@24 ~@4 e4 g4@3]/2",
  L: "b4!2 ~@4 b4!2 ~@8", M: "[~@2 g4 a4 c5@3 a4@9]/2", N: "~ g4 ~ a4", O: "~ a#4@3", P: "~@2 a4!2 a4@12",
  Q: "~@2 a4!2 a4@6 a4@3 c5@3", R: "a4 ~@3", S: "~@10 a4@3 c5@3", T: "e4 ~@3", U: "~ g4@3 ~ a4@3", V: "~ a#4@3 a#4@4",
  W: "~@2 d5!2 d5@4 ~@2 e5@3 e5@3", X: "[~@2 c6!2 b5@2 b5 a5 ~ a5 g5@22]/2", Y: "[c5@4 a4@10 g4 a4]/2",
  Z: "[b4@4 g4@10 e4 g4]/2", AA: "a4/2", AB: "[a4@28 g4 a4@3]/2", AC: "c5@14 c5!2", AD: "c5", AE: "d5@14 d5!2",
  AF: "d5", AG: "e5@14 e5!2", AH: "e5", AI: "e5!2 ~@4 e5!2 ~@8", AJ: "e5!2 ~@4 e5!2 ~@4 e5 g5@3", AK: "a5 ~@3",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "B♭ Trumpet"
const trumpet_4 = note(`<
  A@2 B@2 C D E F G H G I J K L@2 G H G I J K M@4 ~@6 N O P Q R S T U R S T ~ N V P W R S T U R S T ~ X Y Z AA@3 AB ~@5
  AC ~ AD ~ AE ~ AF AG@2 AH AI AJ I AH AI AA@3 AK AL
>`.pickRestart({
  A: "[c4@2 c4!2 b3@2 b3 a3 ~ a3 g3@16 ~@2 f3 g3@3]/2", B: "[d#4@2 d#4!2 d4@2 d4 c4 ~ c4 a#3@22]/2", C: "~@3 d4",
  D: "c4", E: "b3", F: "a3!2 ~@4 a3!2 ~@4 e4 g4@3", G: "a4@12 a4 b4@3", H: "e4@12 e4 g4@3", I: "e4",
  J: "~@2 d4 c4 d4@3 c4 d4 e4@7", K: "~@2 c4!2 c4@2 c4!2 ~ c4 c4@4 c4@2", L: "[b3@24 ~@4 e4 g4@3]/2",
  M: "b3!2 ~@4 b3!2 ~@8", N: "c4 d4", O: "d#4", P: "~@2 a4!2 a4@12", Q: "~@2 a4!2 a4@6 a3@3 c4@3", R: "d4 ~@3",
  S: "~@10 d4@3 e4@3", T: "a3 ~@3", U: "~@10 a3@3 c4@3", V: "~ d#4@3 d#4@4", W: "~@2 e4!2 e4@4 ~@2 e4@3 g4@3",
  X: "~@2 d5 c5 d5@3 c5 d5 e5@7", Y: "~@2 c6!2 b5@2 b5 a5 ~ a5 g5@4 f5!2",
  Z: "e5@2 e5 d5 ~ d5 c5@2 ~ b4@2 g4 a4 g4 f4@2", AA: "e4!2 ~@4 e4!2 ~@8", AB: "e5!2 ~@4 e5!2 ~@8",
  AC: "g3@2 g3@2 g3@2 g4 a4", AD: "~@2 g4@2 ~ a4 ~@2 c5@4 a4@4", AE: "~@2 g4@2 ~ a4 ~@2 b4@4 g4@4",
  AF: "~@2 f4@2 ~ e4 ~@2 c4@4 d4@2 ~@2", AG: "[b4@28 g4 a4@3]/2", AH: "f4@14 f4!2", AI: "f4", AJ: "e4@14 e4!2",
  AK: "e4!2 ~@4 e4!2 ~@4 e4 g4@3", AL: "a4 ~@3",
})).s("gm_trumpet").gain(0.4)

stack(trumpet, trumpet_2, trumpet_3, trumpet_4)