Strudelify

Never Going Back Again

Fleetwood Mac

KeyF♯ majorTempo88 bpm
0:00/0:00
// Never Going Back Again — Fleetwood Mac
// 88 bpm, 4/4, key F# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 50 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(88/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.

// chords · acoustic guitar nylon · "Accoustic Guitar 1"
const acoustic_guitar_nylon = note(`<
  A B C D A B C D A B C D E F G H A I C D A B C D A B C D E F G H A B C D A B C D E F G H A B C J@2 ~
>`.pickRestart({
  A: "~@2 [a#3,c#4,f#4]@2 ~@2 [g#3,c#4,f4] [a#3,f#4] ~ c#4 c#5 f#4 c#4 c#5 f#4 c#4, f#2 c#3 f#2 c#3", // F# C# D#m
  B: "~@2 [a#3,c#4,f#4] [g#3,f4] ~@2 g#4@2 f#4@2 c#5 f#4 c#4 c#5 f#4@2, f#2 c#3 f#2 c#3", // F# C#
  C: "a#4 g#4@2 a#4 g#4@2 a#4 ~@2 a#4 g#4@2 a#4 g#4@2 a#4, c#3@4 c#3@3 g#4@2 ~@7, ~@2 c#3!2",
  D: "[f#2,f#4]@3 ~@3 g#4@2 [f#2,f#4]@3 ~ c#3@3 f#4, ~@3 g#4@3 ~@5 c#5@4 ~, ~ c#3 ~@2", // F#
  E: "~@2 f#5@2 ~ f5@2 f#4 f#5 c#5 f#4 f#5 c#5 f#4 f#5 c#5, f#2 c#3 f#2 c#3",
  F: "f#4@2 f#5@2 f5 b4@2 f#4 f#5 c#5 f#4 f#5 c#5 f#4 f#5 c#5, f#2 c#3 f#2 c#3",
  G: "f#4@2 f#5@2 ~ f5@2 f#4 f#5 c#5 f#4 f#5 c#5 f#4 f#5 ~, f#2 c#3 f#2 c#3",
  H: "~@2 [c#4,f#4] ~@2 [c#4,f4]@2 b3 [d#3,f#4]@3 ~@3 f4 f#4, d#3@4 a#2@4 ~@3 c#5@3 ~@2, ~@3 c#3", // F#5 C# D#m
  I: "~@2 [a#3,c#4,f#4] ~@3 [g#3,c#4,f4] [a#3,f#4] ~@2 c#5 ~@2 c#4 a#3@2, f#2@4 c#3@4 f#2@3 f#4@2 ~@3, ~@3 c#3", // F# C# D#m
  J: "[[f#2,f#4]@3 ~@3 g#4@2 ~ f#4@23, ~@3 g#4@3 ~@26, ~ c#3 [f#2,c#3,a#3,c#4]@6]/2", // F#
})).s("gm_acoustic_guitar_nylon").gain(0.32).pan(0.3)

// chords · acoustic guitar nylon · "Accoustic Guitar 2"
const acoustic_guitar_nylon_2 = note(`<
  A B C D A E C D A E F D G H I J A K F D A E F D A E F D G H I L A E F D M D F D G H I J A E F N@2 ~
>`.pickRestart({
  A: "~@2 [a#3,c#4]@2 ~@2 g#3 ~@3 a#3@2 c#4@2 a#3 c#4, f#2@4 c#3@3 a#3@3 ~@6, ~@3 c#4@2 ~@3, ~@2 f#2 c#3", // A#m
  B: "~@2 a#3 ~@7 a#3@2 c#4@2 a#3@2, f#2@3 g#3@3 a#3@4 ~@6, ~ c#4@2 ~@5, ~ c#3 f#2 c#3",
  C: "~@10 [b3,c#4]@2 ~ c#4 b3@2, c#3!4, ~ [b3,c#4]@2 [b3,c#4]@2 ~@3", // Bsus2
  D: "~ c#4 a#3 ~@3 b3@2 a#3@2 a#3@2 ~ c#4 a#3@2, f#2@3 c#4@3 ~@10, ~ c#3 f#2 c#3",
  E: "~@2 a#3 ~@3 b3@2 ~ c#4 a#3@2 c#4@2 a#3@2, f#2@3 g#3@3 ~@6 c#3@4, ~ c#4@2 ~@5, ~ c#3 f#2 ~",
  F: "~@6 c#4 b3 c#4@2 b3 ~@3 [b3,c#4]@2, c#3!4, ~@2 [b3,c#4]@4 ~@5 c#4@3 ~@2", // Bsus2
  G: "~@2 c#4@2 ~@2 c#5 f#4 ~@6 c#4@2, f#2 c#3 f#2 c#3, ~@5 c#4@2 ~",
  H: "~@2 c#4@2 ~@2 c#5 f#4 ~@2 c#4@2 ~ c#4 c#5 f#4, f#2 c#3 f#2 c#3",
  I: "~@2 c#4@2 ~@2 c#5 f#4 ~@6 f#4 c#4, f#2 c#3 f#2 c#3, ~@5 [c#4,f#4]@2 ~", // F#5
  J: "~@2 a#3@2 ~@2 g#3@2 ~@6 g#3 a#3, d#3 a#2 d#3 c#3, ~@5 g#3@2 ~",
  K: "~@2 [a#3,c#4]@2 ~@2 g#3 ~@3 c#4 ~@3 c#4 a#3, f#2@4 c#3@3 a#3@3 ~ a#3@3 ~@2, ~@3 c#4@2 ~@3, ~@2 f#2 c#3", // A#m
  L: "~@2 a#3@2 ~@2 g#3 b3 ~@2 g#3!2 c#4@2 g#3 a#3, d#3 a#2 d#3 c#3",
  M: "~@2 [a#3,c#4]@2 ~@2 b3 ~@3 a#3@2 c#4@2 a#3 c#4, f#2@4 c#3@3 a#3@3 ~@6, ~@2 f#2 c#3", // A#m
  N: "[~ c#4 a#3 ~@3 b3@2 ~ [a#3,c#4]@23, f#2@3 c#4@3 ~@26, ~ c#3 [f#2,f#3]@6]/2", // A#m F#
})).s("gm_acoustic_guitar_nylon").gain(0.32).pan(0.7)

stack(acoustic_guitar_nylon, acoustic_guitar_nylon_2)

More by Fleetwood Mac