Strudelify

Man of the World

Fleetwood Mac

KeyD majorTempo70 bpm
0:00/0:00
// Man of the World — Fleetwood Mac
// 70 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 2 "Bass line" named as a bass, played on electric bass finger (its bassoon patch is not one)
// note: Full arrangement: all 68 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.

// bass · electric bass finger · "Bass line"
const bass = note(`<
  A B C D E F G H I A F G D E F G J ~ K ~ A F G D E F G J ~ K ~ L M N O P Q R S T U V W X Y Z AA AB A F G D E F G J AC
  ~@2 AD AE AD AE AF@2 ~@3
>`.pickRestart({
  A: "d2@8 ~@4 d2@3 ~", B: "a2@3 ~ a2@5 ~@3 a2@3 ~", C: "g2@3 ~ g2@5 ~@3 g2@3 ~", D: "d3@11 ~@5", E: "d3@8 ~@4 d3@3 ~",
  F: "a2@8 ~@4 a2@3 ~", G: "g2@8 ~@4 g2@3 ~", H: "b1@5 ~@3 b1 ~ c#2 ~ d2 e2 f#2 ~", I: "b1 ~", J: "b1@11 ~@5",
  K: "~ g2@15, d3@15 ~, b3@3 ~", L: "d3 a2 d3 a3 g3 f#3 d3 a2", M: "d2@3 d2 d2@2 d2@2", N: "a2@3 a2 a2@2 a2@2",
  O: "[g2,d3]@5 ~ [g2,d3] ~ d3@4 g2@3 ~, ~@8 g2@3 ~@5", P: "[d3,a3]@4 ~@2 [d3,a3] ~ [d3,a3]@3 ~@5",
  Q: "d3@4 ~@2 d3 ~ d3@3 ~ d3@3 ~", R: "a2@4 ~@2 a2 ~ a2@3 ~ a2@3 ~", S: "g2@4 ~@2 g2 ~ g2@3 ~ g2@3 ~",
  T: "d2@4 ~@2 d2 ~ d2@4 ~@2 d2 ~", U: "f#2 ~ f#2@4 ~@2 f#2 ~ f#2 ~ c#2 ~ e2 ~",
  V: "f#2 ~ f#2@4 ~@2 f#2 ~ f#2@3 ~ f#2 ~", W: "e2 ~ e2@4 ~@2 e2 ~ e2 ~ g2 ~ f#2 ~",
  X: "e2 ~ e2@4 ~@2 e2 ~ e2@3 ~ e2 ~", Y: "f#2 ~ f#2@4 ~ c#2 f#2 ~ f#2 ~ c#2 ~ e2 ~",
  Z: "f#2 ~ f#2 ~ f#2@3 ~ f#2 ~ f#2 ~ f#2 ~ f#2 ~", AA: "e2 ~ e2 ~ e2@3 ~ e2 ~ e2 ~ e2 ~ g2 ~", AB: "a2@11 ~@5",
  AC: "~ g2@7 ~@8, [d3,b3] ~", AD: "f#2@11 ~@5", AE: "e2@11 ~@5", AF: "[d2@27 ~@5]/2",
})).s("gm_electric_bass_finger").gain(0.27)

// chords · muted trumpet · "Accompanyment"
const muted_trumpet = note(`<
  A B C D ~ B E F ~ A B C D ~ B E F C D ~ D B C D ~ B E F C D ~ D B C D@2 B C G H@2 I@2 J@2 K@2 L M N O@2 M P Q N R ~@11
>`.pickRestart({
  A: "[d4,f#4,a4]@11 ~@5", B: "[a3,c#4,e4,f#4]@11 ~@5", C: "[g3,a#3,d4]@11 ~@5", D: "[a3,d4,f#4]@11 ~@5",
  E: "[g3,b3,d4,e4]@11 ~@5", F: "[b3,d4,f#4]@11 ~@5", G: "[d4,f#4]@11 c#4@5, a3 ~", H: "[[f#4,a4]@11 e4@21]/2",
  I: "[[g4,b4]@11 f#4@21]/2", J: "[[a4,c#5]@11 e4@21]/2", K: "[[g4,b4]@11 d4@21]/2", L: "[f#4,a4]@11 a3@5",
  M: "[c#4,e4,f#4]@11 g3@5", N: "[a#3,d4]@11 d4@5", O: "[[f#4,a4]@11 a3@21]/2", P: "[b3,d4,e4]@11 b3@5",
  Q: "[d4,f#4]@11 g3@5", R: "[f#4,a4]@11 ~@5",
})).s("gm_muted_trumpet").gain(0.2)

// chords · muted trumpet · "Accompanyment" · soft notes
const muted_trumpet_soft = note("<~@56 A@2 B C B D E@2 ~@4>".pickRestart({
  A: "[~@11 f#4@21]/2", B: "[a4,c#5]@11 e4@5", C: "[g4,b4]@11 f#4@5", D: "[g4,b4]@11 d4@5", E: "[[f#4,a4,b4]@27 ~@5]/2",
})).s("gm_muted_trumpet").gain(0.13)

stack(bass, muted_trumpet, muted_trumpet_soft)

More by Fleetwood Mac