Strudelify

Le moyennageux

Brassens Georges

KeyE majorTempo120 bpm
0:00/0:00
// Le moyennageux — Brassens Georges
// 120 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 142 bars on a 24-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 · [c3,e3] is a chord · "a, b" plays two voices at once.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · electric guitar jazz · "Guitare"
const electric_guitar_jazz = note(`<
  A@3 B C D E F G H I J C D E F G H K L C D E F G H I L C D E F G H I L C D E F G H I L C D E F G H I L C D E F G H I L
  C D E F G H I L C D E F G H I L C D E F G H I L C D E F G H I L C D E F G H I L C D E F G H I J C D E F G H K L C D E
  F G H I J C D E F G H K L C D E F G H I M@2 N
>`.pickRestart({
  A: "[f#3,a3,c#4,f#4] ~@2 [f#3,a3,c#4,f#4] ~@2 [f#3,a3,c#4,f#4] ~@2 [f#3,a3,c#4,f#4] ~@2", // F#m
  B: "[f#3,a3,c#4,f#4] ~@2 [f#3,a3,c#4,f#4] ~@2 [f#3,a3,c#4,f#4] ~@2 [a2,c#3]@2 [a2,c#3]", // F#m A
  C: "[a2,c#3]@5 ~ [a2,c#3]@5 ~ [b2,d#3]@5 ~ [b2,d#3]@4 f#3@2, f#3@11 ~ a3@10 ~@2", // A B
  D: "[g#2,b2,g#3]@4 e3@2 [g#2,b2]@5 ~ [g#2,b2]@5 ~ [g#2,b2,f#3]@4 g#3@2, ~@6 e3@11 ~@7", // G#m G#m7
  E: "[a2,c#3]@5 ~ [a2,c#3]@5 ~ [b2,d#3]@5 ~ [b2,d#3]@4 g#3@2, f#3@11 ~ a3@10 ~@2", // A B
  F: "[g#2,e3]@4 b2@2 [g#2,b2]@5 ~ [g#2,b2]@5 ~ [g#2,b2]@4 b2@2", // C#m G#m
  G: "[g2,b2]@5 ~ [g2,b2]@5 ~ [a2,c#3]@5 ~ [a2,c#3]@4 e3@2, e3@11 ~ g3@10 ~@2", // G A
  H: "[f#2,a2,f#3]@4 d3@2 [f#2,a2]@5 ~ [f#2,a2]@5 ~ [f#2,b2]@4 b2@2, ~@6 d3@11 ~@7", // F#m B5
  I: "[g#2,b2,e3]@5 ~ [g#2,b2,g#3]@5 ~ [a2,d3,f#3]@5 ~ [a2,d3]@4 f#3@2", // E G#m D D5
  J: "[g#2,b2]@5 ~ [g#2,b2]@5 ~ [b2,c#3]@5 ~ c#3@4 c#3@2, e3@17 ~@7", // G#m Bsus2
  K: "[g#2,b2,e3]@5 ~ [g#2,b2,g3]@5 ~ [a2,d3,f#3]@5 ~ [a2,d3]@4 f#3@2", // E G#m D D5
  L: "[g#2,b2]@5 ~ [g#2,b2]@5 ~ [b2,c#3,f3]@5 ~ [g#2,b2,c#3]@4 c#3@2, e3@11 ~@13", // G#m C#7
  M: "[g#2,b2,e3]@5 ~ [g#2,b2,e3]@5 ~ [a2,d3,f#3]@5 ~ [a2,d3,f#3]@5 ~", N: "[g#2,b2,e3]@17 ~@7",
})).s("gm_electric_guitar_jazz").gain(0.41).pan(0.7)

// bass · electric bass finger · "Contrebasse"
const bass = note(`<
  A@3 B C D C D E F G H C D C D@2 F G H C D C D E F G H C D C D E F G H C D C D E F G H C D C D E F G H C D C D E F G H
  C D C D E F G H C D C D E F G H C D C D E F G H C D C D E F G H C D C D E F G H C D C D E F G H C D C D@2 F G H C D C
  D E F G H C D C D@2 F G H C D C D E F G I@2 J
>`.pickRestart({
  A: "f#2 ~@2 f#2 ~@2 f#2 ~@2 f#2 ~@2", B: "f#2@2 ~@4 f#2@2 ~@4 f#2@2 ~@4 f#2@5 ~",
  C: "f#2@5 ~ f#2@2 f#2@2 f#2@2 b2@5 ~ b2@2 b2@2 b2@2", D: "e2@5 ~ e2@2 e2@2 e2@2 e2@5 ~ e2@2 e2@2 e2@2",
  E: "e2@5 ~ e2@2 e2@2 e2@2 a2@5 ~ a2@2 a2@2 a2@2", F: "d2@5 ~ d2@2 d2@2 d2@2 d2@5 ~ d2@2 d2@2 d2@2",
  G: "e2@5 ~ e2@5 ~ d2@5 ~ d2@5 ~", H: "e2@5 ~ e2@2 f#2@2 g#2@2 g#2@5 ~ c#2@5 ~",
  I: "e2@5 ~ e2@2 e2@2 e2@2 d2@5 ~ d2@2 d2@2 d2@2", J: "e2@17 ~@7",
})).s("gm_electric_bass_finger").gain(0.21).pan(0.4)

stack(electric_guitar_jazz, bass)

More by Brassens Georges