Strudelify

Montelimar

Brassens Georges

KeyD majorTempo200 bpm
0:00/0:00
// Montelimar — Brassens Georges
// 200 bpm, 2/2, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 135 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(200/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 · electric guitar jazz · "Guitare"
const electric_guitar_jazz = note(`<
  A@4 B C D E F G@2 H I C D E F J@2 K@2 L@2 M N@2 O@2 P Q@2 R S@2 T U B C D E F G@2 H I C D E F J@2 K@2 L@2 M N@2 O@2 P
  Q@2 R S@2 T U B C D E F G@2 H I C D E F J@2 K@2 L@2 M N@2 O@2 P Q@2 R S@2 T U B C D E F G@2 H I C D E F J@2 K@2 L@2 M
  N@2 O@2 P Q@2 R S@2 V W X W Y
>`.pickRestart({
  A: "[~@4 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [d3,f#3]@2 f#3@2, [b2,b3]@55 ~@9]/4", // D B
  B: "b2@3 ~ [f#2,b2,e3]@3 ~@5 [e2,a#2]@2 c#3@2, ~@4 d3@3 ~", // Esus2 Edim
  C: "b2@3 ~ [b2,d3,f#3]@3 ~@5 [a#2,c#3]@2 d3@2, ~@4 e3@3 ~", // Bm A#m
  D: "c#3@3 ~ [b2,d3,g3]@3 ~@5 [a2,c#3]@2 e3@2, ~@4 f#3@3 ~", // G A
  E: "d3@3 ~ [d3,f#3,a3]@3 ~@5 [b2,d#3]@2 f#3@2, ~@4 g3@3 ~", F: "e3@3 ~ [e3,g3,b3]@3 ~ a3@3 ~ [c#3,e3,b3]@3 ~",
  G: "[f#3@3 ~ [f#2,a2,e3]@3 ~@5 [a2,d3]@3 ~ [a2,d#3]@3 ~ a3@3 ~ g3@3 ~ f#3@3 ~, ~@8 f#3@11 ~@13]/2", // F#m7 D5 Adim
  H: "e3@4 e3@3 ~ [a#2,c#3,f#3]@3 ~ a#2@2 f#3@2", I: "b2@3 ~ [f#2,b2,e3]@3 ~ d3@5 ~ [e2,a#2,c#3]@2",
  J: "[f#3@3 ~ [f#2,a2,e3]@3 ~@5 [a2,d3]@3 ~ [a#2,c#3]@3 ~ f#3@3 ~ g#3@3 ~ a#3@3 ~, ~@8 f#3@11 ~@13]/2", // F#m7 D5 A#m
  K: "[~@4 [d3,f#3]@3 ~@5 [d3,f#3]@3 ~@5 [g2,b2,e3]@3 ~ f#3@3 ~ [b2,e3,g3]@3 ~, b3@19 ~@13]/2", // D Em
  L: "[~@4 [b2,d3]@3 ~ e3@3 ~ d3@7 ~ [f#2,a#2,c#3]@3 ~ f#3@3 ~ [a#2,c#3,e3]@3 ~, f#3@7 ~@5 b2@3 ~@17]/2", // Bm F# A#dim
  M: "~@4 [f#2,b2]@4 c#3@3 ~ [d2,f#2,b2]@3 ~, d3@7 ~@9", // B5 Bm
  N: "[b2@2 c#3@2 [f#2,b2]@3 ~@13 [d2,f#2,b2]@3 ~ c#3@3 ~ [f#2,b2,d3]@3 ~, ~@4 d3@15 ~@13]/2", // B5 Bm
  O: "[~@4 [g#2,b2]@3 ~@5 [g#2,b2]@3 ~@5 [g2,b2]@3 ~@5 [g2,b2]@3 ~, e3@23 ~@9]/2", // G#m G
  P: "~@4 [a2,c#3]@3 ~ f#3@3 ~ [a2,c#3,g3]@3 ~, e3@7 ~@9", // A A7
  Q: "[f#3@2 e3@2 [f#2,a2]@3 ~@5 [f#2,a2]@3 ~@5 [f#2,a2,c#3]@3 ~ f#3@3 ~ [a#2,c#3,e3]@3 ~, ~@4 d3@15 ~@13]/2", // F#m A#dim
  R: "d3@2 c#3@2 [d2,f#2]@3 ~@5 [d2,f#2]@3 ~, ~@4 b2@11 ~", // D
  S: "[~@4 [d2,f#2]@3 ~ d3@3 ~ [b2,d3]@3 ~@5 [a2,c#3,e3]@3 ~ c#3@3 ~ [c#2,e2,a2]@3 ~, b2@7 ~@5 f#3@7 ~@13]/2", // D Bm A
  T: "[d2,f#2]@3 ~ b3@3 ~ a3@3 ~ g3@3 ~, b2@15 ~", U: "f#3@3 ~ e3@3 ~ d3@3 ~ c#3@2 f#3@2",
  V: "~@4 [d3,f#3,b3]@3 ~@5 [d3,f#3,b3]@3 ~, b2@15 ~", W: "~@4 [c#3,e3,a3]@3 ~@5 [c#3,e3,a3]@3 ~",
  X: "~@4 [d3,f#3,b3]@3 ~@5 [d3,f#3,b3]@3 ~", Y: "[d3,f#3,b3]@15 ~",
})).s("gm_electric_guitar_jazz").gain(0.18).pan(1)

// bass · fretless bass · "Contrebasse"
const bass = note(`<
  A@6 B C D E F G A@2 B C D H I J K L M A N@2 O P Q H M A L Q R S A@2 B C D E F G A@2 B C D H I J K L M A N@2 O P Q H M
  A L Q R S A@2 B C D E F G A@2 B C D H I J K L M A N@2 O P Q H M A L Q R S A@2 B C D E F G A@2 B C D H I J K L M A N@2
  O P Q H M A L Q L Q L Q T
>`.pickRestart({
  A: "b2@3 ~@5 f#2@3 ~@5", B: "g2@3 ~@5 a2@3 ~@5", C: "d3@3 ~@5 b2@3 ~@5", D: "e3@3 ~@5 a2@3 ~@5",
  E: "d3@3 ~@5 d3@3 ~@5", F: "b2@3 ~@13", G: "~@4 c#3@3 ~ a#2@3 ~ f#2@3 ~", H: "d3@3 ~@5 a2@3 ~@5", I: "f#2@3 ~@13",
  J: "b3@3 ~ a3@3 ~ g3@3 ~ f#3@3 ~", K: "e3@3 ~ d3@3 ~ c#3@3 ~ b2@3 ~", L: "b2@3 ~@5 b2@3 ~@5",
  M: "f#2@3 ~@5 f#2@3 ~@5", N: "[b2@3 ~@5 b2@2 c#3@2 d3@7 ~@5 b2@3 ~@5]/2", O: "e2@3 ~@5 b2@3 ~@5",
  P: "e3@3 ~@5 b2@3 ~@5", Q: "a2@3 ~@5 a2@3 ~@5", R: "b2@3 ~ b3@3 ~ a3@3 ~ g3@3 ~", S: "f#3@3 ~ e3@3 ~ d3@3 ~ c#3@3 ~",
  T: "b2@15 ~",
})).s("gm_fretless_bass").gain(0.18).pan(0)

stack(electric_guitar_jazz, bass)

More by Brassens Georges