Strudelify

Nothing Serious

Roy Hargrove

KeyA majorTempo120 bpm
0:00/0:00
// Nothing Serious — Roy Hargrove
// 120 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/4792183; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 83 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [...]/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 · alto sax · "Alto Saxophone"
const alto_sax = note(`<
  A B A C D@2 E@2 F G F H I J K L D@2 E@2 F G F H I J K M A B A B ~@32 N@4 O@4 P Q R S M A B A B A T
>`.pickRestart({
  A: "c5@3 b4@4 a4@4 g#4 ~@4", B: "~ c5 ~ c5 b4@3 a4@4 g#4 ~@4", C: "~ c5 ~ c5 b4@3 a4@4 g#4 ~ e4 a4 b4",
  D: "[c5 e5 ~ d5 ~ b4 ~ a4 ~ c5 ~ b4 ~ g4 ~ e4@9 ~@5 e4 a4 b4]/2",
  E: "[c5 e5 ~ d5 ~ b4 ~ a4 ~ c5 ~ b4 ~ g4 ~ e4@9 ~@5 b4 c5 d5]/2", F: "b4@4 a4@3 g#4@9", G: "g4@7 f#4@5 ~@4",
  H: "g4@3 a4@3 e4@6 ~ b4 c5 d5", I: "c5@4 b4@3 a4@9", J: "g#4@4 f4@3 e4@5 ~@4", K: "a4@7 g#4@9",
  L: "g4@3 a4@3 e4@2 ~@5 a3 c4 d4", M: "g4@3 a4@3 e4@2 ~@3 e4!2 ~@3", N: "[e4@3 d4@4 c4@4 a3@17 ~@4]/2",
  O: "[b4@3 a4@4 g4@4 e4@17 ~@4]/2", P: "g4@3 a4@3 e4@2 ~@3 e4 a4 b4 c5 d5", Q: "e5 ~@4 a4 ~ g4 ~@3 f4 e4@2 d4@2",
  R: "~ b4 ~ b4 ~ a4 ~ d5 ~ c5 ~ b4 ~ a4 ~@2", S: "a4@3 g#4@5", T: "~ c5 ~ c5 b4@2 ~@10",
})).s("gm_alto_sax").gain(0.3)

// other · tenor sax · "Tenor Saxophone"
const tenor_sax = note(`<
  A B A C D@2 E@2 F G F H I J K L D@2 E@2 F G F H I J K M A B A B ~@32 N@4 O@4 P Q R S T A B A B A U
>`.pickRestart({
  A: "c4@3 b3@4 a3@4 g#3 ~@4", B: "~ c4 ~ c4 b3@3 a3@4 g#3 ~@4", C: "~ c4 ~ c4 b3@3 a3@4 g#3 ~ e3 a3 b3",
  D: "[c4 e4 ~ d4 ~ b3 ~ a3 ~ c4 ~ b3 ~ g3 ~ e3@9 ~@5 e3 a3 b3]/2",
  E: "[c4 e4 ~ d4 ~ b3 ~ a3 ~ c4 ~ b3 ~ g3 ~ e3@9 ~@5 b3 c4 d4]/2", F: "b3@4 a3@3 g#3@9", G: "g3@7 f#3@5 ~@4",
  H: "g3@3 a3@3 e3@6 ~ b3 c4 d4", I: "c4@4 b3@3 a3@9", J: "g#3@4 f3@3 e3@5 ~@4", K: "a3@7 g#3@9",
  L: "g3@3 a3@3 e3@2 ~@5 a3 c4 d4", M: "g3@3 a3@3 e3@2 ~@3 e4!2 ~@3", N: "[e4@3 d4@4 c4@4 a3@17 ~@4]/2",
  O: "[b4@3 a4@4 g4@4 e4@17 ~@4]/2", P: "g3@3 a3@3 e3@2 ~@3 e3 a3 b3 c4 d4", Q: "e4 ~@4 a3 ~ g3 ~@3 f3 e3@2 d3@2",
  R: "~ b3 ~ b3 ~ a3 ~ d4 ~ c4 ~ b3 ~ a3 ~@2", S: "a3@3 g#3@5", T: "g3@3 a3@3 e3@2 ~@3 e3!2 ~@3",
  U: "~ c4 ~ c4 b3@2 ~@10",
})).s("gm_tenor_sax").gain(0.3)

// other · piano
const piano = note(`<
  A B A C D@2 E@2 F G F H I J K L D@2 E@2 F G F H I J K M A B A B ~@32 N O N O P@4 Q R S T U V B A B A W
>`.pickRestart({
  A: "c5@3 b4@4 a4@4 g#4 ~@4", B: "~ c5 ~ c5 b4@3 a4@4 g#4 ~@4", C: "~ c5 ~ c5 b4@3 a4@4 g#4 ~ e4 a4 b4",
  D: "[c5 e5 ~ d5 ~ b4 ~ a4 ~ c5 ~ b4 ~ g4 ~ e4@9 ~@5 e4 a4 b4]/2",
  E: "[c5 e5 ~ d5 ~ b4 ~ a4 ~ c5 ~ b4 ~ g4 ~ e4@9 ~@5 b4 c5 d5]/2", F: "b4@4 a4@3 g#4@9", G: "g4@7 f#4@5 ~@4",
  H: "g4@3 a4@3 e4@6 ~ b4 c5 d5", I: "c5@4 b4@3 a4@9", J: "g#4@4 f4@3 e4@5 ~@4", K: "a4@7 g#4@9",
  L: "g4@3 a4@3 e4@2 ~@5 a3 c4 d4", M: "g4@3 a4@3 e4@2 ~@3 e4!2 ~@3", N: "e5@3 d5@4 c5@4 a4@5", O: "a4@11 ~@5",
  P: "[e5@3 d5@4 c5@4 a4@16 ~@5]/2", Q: "b4@3 c5@3 a4@2 ~@3 e4 a4 b4 c5 d5", R: "e5 ~@4 d5 ~ g5 ~@3 f5 e5@2 d5@2",
  S: "~ b4 ~ b4 ~ a4 ~ d5 ~ c5 ~ b4 ~ a4 ~@2", T: "e5@3 d5 ~@2 g5@3 ~ f5 ~ e5 ~ d5@2", U: "b4@3 c5@3 a4@2 ~@3 a4!2 ~@3",
  V: "a4@3 g4@4 f4@4 e4 ~@4", W: "~ c5 ~ c5 b4@2 ~@10",
})).s("gm_piano").gain(0.3)

stack(alto_sax, tenor_sax, piano)

More by Roy Hargrove