Strudelify

Ceux qui ne pensent pas comme nous

Brassens Georges

KeyA minorTempo240 bpm
0:00/0:00
// Ceux qui ne pensent pas comme nous — Brassens Georges
// 240 bpm, 2/2, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 204 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(240/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 B C@2 D@3 E F@3 G H@3 I@4 J D@3 E F@3 G H@3 K@4 L M N O@2 P Q R@2 M N O@2 P Q R@2 S@2 D@3 E F@3 G H@3 I@4 J D@3 E
  F@3 G H@3 K@4 L M N O@2 P Q R@2 M N O@2 P Q R@2 S@2 D@3 E F@3 G H@3 I@4 J D@3 E F@3 G H@3 K@4 L M N O@2 P Q R@2 M N
  O@2 P Q R@2 S@2 D@3 E F@3 G H@3 I@4 J D@3 E F@3 G H@3 K@4 L M N O@2 P Q R@2 M N O@2 P Q T@3 U
>`.pickRestart({
  A: "d4@3 ~ c#4@3 ~ d4@3 ~ [f3,g3,b3,e4]@3 ~", B: "d4@3 ~ c#4@3 ~ [f3,g3,b3,d4]@3 ~ e4@3 ~",
  C: "[[f3,g3,b3,d4]@3 ~ c#4@3 ~ d4@3 ~ [f3,g3,b3,g4]@7 ~ [f3,g3,b3,e4]@3 ~ [e3,g3,c4]@7 ~]/2", // G7 Em C
  D: "[~@4 e3@3 ~ f3@3 ~@5 [a2,c#3]@3 ~ a3@3 ~ [a2,c#3,g3]@3 ~@5 [a2,d3]@3 ~ g3@3 ~ [a2,d3,f3]@3 ~ [c#3,e3]@3 ~, ~@12 g3@7 ~@9 f3@7 ~@13]/3", // A A7 D5 Dm C#m
  E: "[c3,d#3]@3 ~ [c#3,e3]@3 ~ [d3,f3]@7 ~", // Cm C#m Dm
  F: "[[a2,d3]@3 ~ e3@3 ~ [a2,d3,f3]@3 ~@5 [a2,c#3]@3 ~ a3@3 ~ [a2,c#3,g3]@3 ~@5 [a2,d3]@3 ~ g3@3 ~ [a2,d3,f3]@3 ~ e3@3 ~, ~@12 g3@7 ~@9 f3@7 ~@13]/3", // D5 Dm A A7 D5 Dm
  G: "[g2,c#3,e3]@3 ~ a3@3 ~ [g2,c#3]@3 ~@5, ~@8 e3@7 ~", // C#dim Gdim
  H: "[[g2,c#3]@3 ~ a2@3 ~ [g2,b2]@3 ~@5 [f#2,a2]@3 ~ e3@3 ~ [f#2,a2,d3]@3 ~@5 [f#2,a2]@3 ~ d3@3 ~ [f#2,a2,c3]@3 ~ b2@3 ~, ~@12 c3@7 ~@9 c3@7 ~@13]/3", // Gdim G F#m D F#m F#dim
  I: "[[f#2,a2]@3 ~ b2@3 ~ [f#2,a2]@3 ~@5 [f#2,a2]@3 ~@5 [f#2,a2]@3 ~ c3@3 ~ c3@2 c3@2 a2@3 ~ c3@3 ~ [g2,c3,e3]@7 ~ c3@3 ~ e3@3 ~ g3@3 ~, ~@8 c3@11 ~@9 [f#2,a2]@7 ~@29]/4", // F#m C F#m
  J: "[b2,f3,a3]@3 ~ g3@3 ~ [g2,c3,e3]@7 ~", // Bm7b5 C
  K: "[[f#2,a2]@3 ~ b2@3 ~ [f#2,a2]@3 ~@5 [f2,a2]@3 ~@5 [f2,a2]@3 ~ c3@3 ~ c3@2 c3@2 a2@3 ~ c3@3 ~ [g2,c3,e3]@7 ~ g3@3 ~ f3@3 ~ e3@3 ~, ~@8 c3@11 ~@9 [f2,a2]@7 ~@29]/4", // F#m F C F
  L: "[b2,d3]@3 ~ e3@3 ~ [e2,g2,c3]@6 ~@2", M: "[f3,a3]@3 ~ [e3,g#3]@3 ~ [f3,a3]@3 ~ a#3@3 ~",
  N: "[c#3,e3,a3]@3 ~ g#3@3 ~ [c#3,e3,a3]@3 ~ a#3@3 ~", // A
  O: "[[c#3,e3,a3]@3 ~ g#3@3 ~ [c#3,e3,a3]@3 ~@5 [a2,c#3]@3 ~ a3@3 ~ [g2,a2]@6 ~@2, ~@12 e3@7 ~@13]/2", // A Gsus2
  P: "[f#2,a2,d3]@3 ~ c#3@3 ~ [f#2,a2,d3]@3 ~ e3@3 ~", Q: "[f2,b2,d3]@3 ~ c#3@3 ~ [f2,b2,d3]@3 ~ e3@3 ~",
  R: "[[f2,b2,d3]@3 ~ c#3@3 ~ [f2,b2,d3]@3 ~@5 [f2,b2]@3 ~ e3@3 ~ [e2,g2,c3]@6 ~@2, ~@12 g3@7 ~@13]/2", // Bdim Fdim C
  S: "[e4@3 ~ d#4@3 ~ e4@3 ~ [b3,d4,f4,g4]@7 ~ [f3,g3,b3,e4]@3 ~ [e3,g3,c4]@7 ~]/2", // G7 Em C
  T: "[[f2,b2,d3]@3 ~ c#3@3 ~ [f2,b2,d3]@3 ~ [b2,d3,f3,g3]@7 ~ [b3,d4,f4,g4]@7 ~ [f2,g2,b2,e3]@7 ~ [f3,g3,b3,e4]@7 ~ [e2,g2,c3]@3 ~]/3", // Bdim G7 Em C
  U: "~@4 [b2,f3,g3]@3 ~@5 [e3,g3,c4]@3 ~", // G7 C
})).s("gm_electric_guitar_jazz").gain(0.18).pan(1)

// bass · fretless bass · "Contrebasse"
const bass = note(`<
  A B C D E F G F G F G@2 F@4 H@3 I E F G F G F G@2 F@4 J@3 K L G@2 F M N@2 O L G@2 F M N@2 O A D E F G F G F G@2 F@4
  H@3 I E F G F G F G@2 F@4 J@3 K L G@2 F M N@2 O L G@2 F M N@2 O A D E F G F G F G@2 F@4 H@3 I E F G F G F G@2 F@4 J@3
  K L G@2 F M N@2 O L G@2 F M N@2 O A D E F G F G F G@2 F@4 H@3 I E F G F G F G@2 F@4 J@3 K L G@2 F M N@2 O L G@2 F M N
  P@3 Q
>`.pickRestart({
  A: "~@12 g2@3 ~", B: "~@8 g2@3 ~@5", C: "g2@3 ~@9 g2@3 ~", D: "a2@3 ~ b2@3 ~ c3@7 ~", E: "~@12 e2@3 ~",
  F: "~@4 a1@3 ~@5 d2@3 ~", G: "~@4 a1@3 ~@5 e2@3 ~", H: "[~@4 d2@3 ~ e2@3 ~ f2@7 ~@9 c2@7 ~@9 d2@3 ~]/3",
  I: "~@4 g1@3 ~@5 c2@3 ~", J: "[~@4 d2@3 ~ e2@3 ~ f2@7 ~@9 c2@7 ~@9 g2@3 ~]/3", K: "~@4 g1@3 ~@5 c2@2 ~@2",
  L: "f2@3 ~ e2@3 ~ d2@3 ~ e2@3 ~", M: "~@4 a2@3 ~@5 d2@3 ~", N: "~@4 g2@3 ~@5 d2@3 ~", O: "~@4 g2@3 ~ c2@6 ~@2",
  P: "[~@4 g2@3 ~@5 g2@7 ~ g3@7 ~ g2@7 ~ g3@7 ~ c3@3 ~]/3", Q: "~@4 g2@3 ~@5 c2@3 ~",
})).s("gm_fretless_bass").gain(0.18).pan(0)

stack(electric_guitar_jazz, bass)

More by Brassens Georges