Strudelify

Youre Still A Young Man

Tower of Power

KeyE♭ majorTempo60 bpm
0:00/0:00
// Youre Still A Young Man — Tower of Power
// 60 bpm, 6/8, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (6/8 at bar 1, 3/4 at bar 42, 6/8 at bar 52) are rendered on a constant 6/8 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/3201826; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 103 bars on a 48-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(60/3)

// 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 · soprano sax · "Soprano Saxophone"
const soprano_sax = note(`<
  A@4 B@5 ~@9 C ~ D@6 ~@8 E ~ F G@4 H I J I J I J I K L ~@2 M N ~ O P Q R S T U@2 ~@39
>`.pickRestart({
  A: "[~@23 g5@7 f5@7 eb5@7 bb5@56 ~@7 g5@7 f5@7 eb5@7 bb5@4 c6@4 bb5@56]/4",
  B: "[~@14 bb4@7 bb5@35 g5@7 ~ ab5@21 ~@7 eb6@7 c6@7 bb5@35 g5@7 ab5@14 ~@7 ab5@7 bb5@7 ~ c6@7 d6@42 d6@7]/5",
  C: "~@6 d4@5 ~@9 db4@7 d4@21",
  D: "[~@16 db5@42 bb4@21 bb4@7 bb5@7 ab5@7 g5@21 ~@15 b4@5 ~@2 c5@21 ~@14 c5@5 ~@2 d5@21 ~@14 d5@5 ~@2 eb5@21 d5@14 ~@26]/6",
  E: "d4@5 ~@9 db4@7 d4@21 ~@6", F: "~@5 db5@19",
  G: "[~@4 bb4@21 bb4@7 bb5@7 ~ ab5@7 g5@21 ~@14 b4@5 ~@2 c5@21 ~@14 c5@5 ~@2 d5@21 ~@15 d5@5 ~@2 eb5@18]/4",
  H: "~@3 d5@14 ~@12 bb4@2 ~@9 bb4@5 ~@3", I: "~@5 ab4@2 ~@9 ab4@5 ~@8 g4@2 ~@9 g4@5 ~@3",
  J: "~@4 f4@3 ~@9 f4@5 ~@8 bb4@2 ~@9 bb4@5 ~@3", K: "~@4 f4@3 ~@9 f4@5 ~@3 eb5@24", L: "f5 eb5",
  M: "~@24 d5@5 ~@11 db5@8", N: "d5 ~", O: "db5", P: "bb4@3 bb4 bb5 ab5", Q: "g5@24 ~@16 b4@5 ~@3",
  R: "c5@24 ~@16 c5@5 ~@3", S: "g5@24 ~@16 d5@5 ~@3", T: "c5 d5", U: "[f5@11 ~]/2",
})).s("gm_soprano_sax").gain(0.4)

// other · soprano sax · "Soprano Saxophone" · soft notes
const soprano_sax_soft = note("<~@64 A B C@2 ~@16 D E F@2 D E F@2 D E F@2 D G@6>".pickRestart({
  A: "eb5", B: "d5@3 bb4 d6 c6", C: "[bb5@7 ~@5]/2", D: "c5", E: "bb4", F: "bb4/2",
  G: "[b4@2 ~ g5@2 f5@2 eb5@2 bb5@12 bb5@4 d6@4 bb5@4 ~@3]/6",
})).s("gm_soprano_sax").gain(0.2)

// other · trumpet · "B♭ Trumpet"
const trumpet = note(`<
  A@4 B@5 ~@9 C ~ D@6 ~@8 E ~ F G@4 H I J I J I J I K L ~@2 M N ~ O P Q R S T U@2 ~@39
>`.pickRestart({
  A: "[~@23 g5@7 f5@7 eb5@7 bb5@56 ~@7 g5@7 f5@7 eb5@7 bb5@4 c6@4 bb5@56]/4",
  B: "[~@14 bb4@7 g5@35 g5@7 ~ f5@21 ~@7 g5@7 c6@7 bb5@35 g5@7 f5@14 ~@7 ab5@7 bb5@7 ~ c6@7 bb5@42 bb5@7]/5",
  C: "~@6 g4@5 ~@9 gb4@7 g4@21",
  D: "[~@16 db5@42 bb4@21 bb4@7 g4@7 f4@7 e4@21 ~@15 g4@5 ~@2 g4@21 ~@14 g4@5 ~@2 a4@21 ~@14 a4@5 ~@2 bb4@21 bb4@14 ~@26]/6",
  E: "g4@5 ~@9 gb4@7 g4@21 ~@6", F: "~@5 db5@19",
  G: "[~@4 bb4@21 bb4@7 g4@7 ~ f4@7 e4@21 ~@14 g4@5 ~@2 g4@21 ~@14 g4@5 ~@2 a4@21 ~@15 a4@5 ~@2 bb4@18]/4",
  H: "~@3 bb4@14 ~@12 g4@2 ~@9 g4@5 ~@3", I: "~@5 ab4@2 ~@9 ab4@5 ~@8 g4@2 ~@9 g4@5 ~@3",
  J: "~@4 f4@3 ~@9 f4@5 ~@8 g4@2 ~@9 g4@5 ~@3", K: "~@4 f4@3 ~@9 f4@5 ~@3 g5@24", L: "ab5 g5",
  M: "~@24 bb4@5 ~@11 a4@8", N: "bb4 ~", O: "ab4", P: "bb4@3 bb4 g4 f4", Q: "e4@24 ~@16 g4@5 ~@3",
  R: "a4@24 ~@16 a4@5 ~@3", S: "b4@24 ~@16 b4@5 ~@3", T: "a4 b4", U: "[f4@11 ~]/2",
})).s("gm_trumpet").gain(0.4)

// other · trumpet · "B♭ Trumpet" · soft notes
const trumpet_soft = note("<~@64 A B C@2 ~@16 D@2 E@2 D@2 E@2 D@2 E@2 D F ~ G@4>".pickRestart({
  A: "eb5", B: "f5", C: "[f5@7 ~@5]/2", D: "ab4", E: "g4/2", F: "ab4 ~",
  G: "[~@3 bb4@2 bb5@2 ab5@2 bb5@4 bb5@4 g5@4 ~@3]/4",
})).s("gm_trumpet").gain(0.2)

// bass · baritone sax · "Baritone Saxophone"
const bass = note(`<
  A B C D E@5 ~@9 F ~ G@2 H@4 ~@8 I ~ J K@4 L M N M N M N M O P ~@2 Q R ~ S T U V W X Y@2 ~@39
>`.pickRestart({
  A: "~@11 eb2", B: "~@17 eb2@7 eb2@7 g2@7 f2@5 ~@5", C: "~@11 f2@7 f2@7 ab2@7 eb2@5 ~@11",
  D: "~@6 eb2@7 eb2@7 g2@7 f2@5 ~@16",
  E: "[ab2@7 g2@7 f2@7 eb2@35 g2@7 ~ f2@21 ~@7 f2@7 ab2@7 eb2@35 g2@7 f2@14 ~@7 ab2@7 g2@7 ~ f2@7 eb2@42 eb2@7]/5",
  F: "~@6 eb2@5 ~@9 d2@7 eb2@21", G: "[~@8 db3@21 bb2@19]/2",
  H: "[~@4 c2@21 ~@15 c2@5 ~@2 d2@21 ~@14 d2@5 ~@2 e2@21 ~@14 e2@5 ~@2 f2@21 bb2@14 ~@26]/4",
  I: "eb2@5 ~@9 d2@7 eb2@21 ~@6", J: "~@5 db3@19",
  K: "[~@4 bb2@42 ~ c2@21 ~@14 c2@5 ~@2 d2@21 ~@14 d2@5 ~@2 e2@21 ~@15 e2@5 ~@2 f2@18]/4",
  L: "~@3 bb2@14 ~@7 eb2@4 ~ bb2@2 ~@6 eb2@3 bb2@5 ~@3",
  M: "f2@4 ~ c3@2 ~@6 f2@3 c3@5 ~@3 eb2@4 ~ bb2@2 ~@6 eb2@3 bb2@5 ~@3",
  N: "db2@4 ab2@3 ~@5 db2@4 ab2@5 ~@3 eb2@4 ~ bb2@2 ~@6 eb2@3 bb2@5 ~@3",
  O: "db2@4 ab2@3 ~@5 db2@4 ab2@5 ~@3 eb2@4 bb2@3 ~@5 eb2@4 bb2@5 ~@3",
  P: "f2@4 c3@3 ~@5 f2@4 c3@5 ~@3 eb2@4 bb2@3 ~@5 eb2@4 bb2@5 ~@3", Q: "~@24 eb2@5 ~@11 d2@8", R: "eb2 ~", S: "db2",
  T: "bb2", U: "c2@24 ~@16 c2@5 ~@3", V: "d2@24 ~@16 d2@5 ~@3", W: "e2@24 ~@16 e2@5 ~@3", X: "d2 e2", Y: "[f2@11 ~]/2",
})).s("gm_baritone_sax").gain(0.4)

// bass · baritone sax · "Baritone Saxophone" · soft notes
const bass_soft = note("<~@64 A B C@2 ~@16 A B D@2 A B D@2 A B D@2 E F ~ G@4>".pickRestart({
  A: "ab2", B: "bb2", C: "[eb2@7 ~@5]/2", D: "eb2/2", E: "c3", F: "bb2@8 bb2@8 bb2@5 ~@27", G: "[~ e2@2 eb2@4 ~]/4",
})).s("gm_baritone_sax").gain(0.2)

stack(soprano_sax, soprano_sax_soft, trumpet, trumpet_soft, bass, bass_soft)

More by Tower of Power