Strudelify

Big Sean Go Legend ft Travis Scott

Rickey C Battle jr

KeyC♭ majorTempo70 bpm
0:00/0:00
// Big Sean Go Legend ft Travis Scott — Rickey C Battle Jr
// 70 bpm, 4/4, key Cb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: duplicate parts dropped: ch 2 "B♭ Clarinet" clarinet (copy of ch 1 "Flute" flute); ch 5 "B♭ Trumpet" trumpet (copy of ch 1 "Flute" flute); ch 7 "Horn in F" french horn (copy of ch 3 "Alto Saxophone" alto sax); ch 8 "Mellophone" french horn (copy of ch 3 "Alto Saxophone" alto sax); ch 11 "Baritone Horn" french horn (copy of ch 4 "Tenor Saxophone" tenor sax); ch 12 "Euphonium" tuba (copy of ch 4 "Tenor Saxophone" tenor sax)
// note: Transcription provider: pdmx. https://musescore.com/score/5543057; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 30 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(70/4)

// 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 · alto sax · "Alto Saxophone"
const alto_sax = note("<~@2 A B ~@4 C D E F G H I ~@3 J ~@3 C D E F G K L ~>".pickRestart({
  A: "~@6 [eb4,eb5] [e4,e5]", B: "[gb4,gb5] [eb4,eb5] [c4,c5]@2 ~@2 [eb5,ab5]@2", C: "~@2 ab4!2 b4 db5 ab4!2",
  D: "~@2 ab4 a4 b4 c5@3", E: "db5@2 ab4!2 b4 db5 ab4!2", F: "~@2 ab4!2 b4 c5@3", G: "db5 [e5,ab5] db5 [e5,a5]",
  H: "~@3 e5 eb5@2 e5@2", I: "[e5,ab5] ~@3", J: "[db5,e5,ab5] ~@3", K: "~@3 e5 eb5@2 e5 eb5",
  L: "~ [ab4,db5] [db5,e5]@2", // Db5 Dbm
})).s("gm_alto_sax").gain(0.5)

// other · alto sax · "Alto Saxophone" · soft notes
const alto_sax_soft = note("<A B@2 ~ C D@3 ~@22>".pickRestart({
  A: "~@5 b4 ~ ab4 a4 b4@3 ~@2 ab4 b4",
  B: "[[b4,db5] a4 ab4 a4 ~ gb4 ab4 ~ e4@2 eb4@3 ~@2 gb4@2 ab4@2 e4@2 db4@2 ~@9, ~@7 e4 ~@8]/2", // Bsus2
  C: "~@2 f4 g4 ab4@4 ~@2 gb4 f4 gb4 f4 eb4@2",
  D: "[~@2 eb4 f4 gb4 ~ eb4 c4@2 c4 ~ db4@2 eb4@2 f4@2 db4@2 bb3@2 ~@5 db4 ~ c4@2 db4 eb4@3 c4@2 a3@2 ~@10]/3",
})).s("gm_alto_sax").gain(0.2)

// other · tenor sax · "Tenor Saxophone"
const tenor_sax = note("<~@3 A ~@6 B C D E F ~@3 G ~@5 B C D H I ~>".pickRestart({
  A: "~@3 [eb4,ab4]", B: "~@2 ab4 gb4 gb4@2 gb4@2 ~@2 ab4 gb4 ab4@2 ab4@2",
  C: "~@2 ab4 gb4 ab4@2 ab4@2 ~@2 ab4 gb4 ab4@2 ab4@2", D: "~ db4 ab4@2 ~ db4 a4@2",
  E: "[ab3,db4] [bb3,eb4] [b3,e4] [db4,gb4] [eb4,ab4]@4 ~@4 [e4,ab4] [db4,e4,ab4] ~ [c4,eb4,gb4]", F: "[ab4,db5] ~@3",
  G: "ab4 ~@3", H: "[ab3,db4] [bb3,eb4] [b3,e4] [db4,gb4] [e4,ab4]@4 ~@4 e4@2 eb4@2", I: "~ [ab3,db4] [db4,e4]@2",
})).s("gm_tenor_sax").gain(0.5)

// other · tenor sax · "Tenor Saxophone" · soft notes
const tenor_sax_soft = note("<A@2 B C D E@3 F@2 ~@12 F@2 ~@6>".pickRestart({
  A: "[~@5 e3@7 a3@7 gb3@7 ab3@6]/2", B: "~ db3@7 e3@8", C: "gb4 eb4 c4 e4 eb4 ~@3",
  D: "~@2 f3 g3 ab3@4 ~@2 gb3 f3 gb3 f3 eb3@2",
  E: "[~@2 eb4 f4 gb4 ~ eb4 c4@2 c4 ~ db4@2 eb4@2 f4@2 db4@2 bb3@2 ~@5 db4 ~ c4@2 db4 eb4@3 c4@2 a3@2 ~@10]/3",
  F: "~@2 ab3 gb3 ab3@2 ab3@2 ~@2 ab3 gb3 ab3@2 ab3@2",
})).s("gm_tenor_sax").gain(0.2)

// chords · trombone
const trombone = note("<~@2 A B ~@4 C D C D C E F ~@3 F ~@5 C G C H I ~>".pickRestart({
  A: "~@6 [e3,ab3,db4] [gb3,b3,eb4] [ab3,b3,e4]@8", B: "~@3 [a3,c4,e4] [ab3,c4,eb4]@4", C: "[ab3,db4,e4] [a3,db4,e4]",
  D: "[ab3,db4,e4] [ab3,c4,eb4]", E: "[gb3,c4,eb4] [ab3,c4,eb4]", F: "[ab3,db4,e4] ~@3", G: "[ab3,c4,eb4]!2",
  H: "[ab3,c4,eb4]@2 [ab3,c4,eb4] ~", I: "[ab3,db4,e4]!2",
})).s("gm_trombone").gain(0.5)

// chords · trombone · soft notes
const trombone_soft = note("<~@4 A B C D ~@14 E F ~@6>".pickRestart({
  A: "[db3,f3,ab3] [eb3,gb3,bb3]", B: "[c3,eb3,gb3] [c3,f3,ab3]", C: "[db3,f3,bb3] [f3,ab3,db4]", D: "[f3,a3,c4] ~",
  E: "[ab3,db4,e4] [a3,db4,e4]", F: "[ab3,db4,e4] [ab3,c4,eb4]",
})).s("gm_trombone").gain(0.2)

// bass · tuba
const bass = note("<~@10 A B C D C E C F C E C F ~@2 C G C H I J>".pickRestart({
  A: "db3@2 db3@2 ~@3 db3 ~ db3 db3@2 ~ gb3@2 ~", B: "db3@2 db3@2 ~@3 db3 ~ c3 c3@2 ~ gb3@2 ~",
  C: "db3@2 ~ db3 ~ db3 db3@2 ~@2 eb3@2 ~ db3 eb3 db3", D: "c3@2 ~ c3 ~ c3 c3@2 ~@2 c3@2 c3 db3 ~ eb3",
  E: "c3@2 ~ c3 ~ c3 c3@2 ~@2 ab2@2 ~ ab2 ~ ab2", F: "c3@2 ~ c3 ~ c3 c3@2 ~@2 a3@2 ab3@2 eb3@2",
  G: "c3@2 ~ c3 ~ c3 c3@2 ~@2 ab3@2 ~ ab3 ~ ab3",
  H: "c3@2 ~ c3 ~ c3 c3@2 [ab2,ab3]@2 [gb2,gb3]@2 [e2,e3]@2 [eb2,eb3]@2", I: "db2", J: "db3 ~@3",
})).s("gm_tuba").gain(0.5)

stack(alto_sax, alto_sax_soft, tenor_sax, tenor_sax_soft, trombone, trombone_soft, bass)

More by Rickey C Battle jr