Strudelify

Le Sceptique

Brassens Georges

KeyA majorTempo106 bpm
0:00/0:00
// Le Sceptique — Brassens Georges
// 106 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 87 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
setcpm(106/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@2 B@8 C@8 D@8 B@8 C@8 D@8 B@8 C@8 D@8 B@8 E@4 ~>".pickRestart({
  A: "[f#3@4 ~@11 f#3@2 a3@3 ~@11 f3@2 g#3@3 f#3@6 f#3@2 f#3@4 f#3@11 ~@5, ~@4 a3@11 ~@5 g#3@11 ~@33, ~@12 [a2,c#3]@7 ~@9 [b2,c#3]@7 ~@29]/2", // A Bsus2
  B: "[f#3@4 a3@6 a3@2 a3@3 a3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 a3@6 a3@2 a3@3 a3@2 a3@9 ~@6 f#3@4 a3@6 a3@2 a3@3 a3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 a3@6 a3@2 a3@3 a3@2 a3@9 ~@2 [a2,c#3]@4, ~@12 [c#3,f#3]@5 a3@15 ~@17 b3@15 ~@17 b3@15 ~@49 a3@15 ~@17 b3@15 ~@17 b3@15 ~@32, ~@28 [a2,c#3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [c#3,f#3]@7 ~@9 [a2,c#3]@7 ~@9 [c#3,f#3]@7 ~@9 [a2,c#3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [c#3,f#3]@7 ~@13]/8", // A F#5 A D Bm D Bm F#5 …
  C: "[f#3@4 g#3@6 g#3@2 g#3@3 g#3@2 ~@15 c#3@4 f#3@6 f#3@2 f#3@3 f#3@2 f#3@9 ~@6 f#3@4 ~@11 f#3@2 a3@3 ~@11 f3@2 g#3@3 f#3@6 f#3@2 f#3@4 f#3@11 ~@5 f#3@4 a3@6 a3@2 a3@3 a3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 a3@6 a3@2 a3@3 a3@2 a3@9 ~@2 [a2,c#3]@4, ~@12 [c#3,f3]@5 g#3@15 ~@36 a3@11 ~@5 g#3@11 ~@50 a3@15 ~@17 b3@15 ~@17 b3@15 ~@32, ~@28 [g#2,b2]@7 ~@9 [a2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [b2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [c#3,f#3]@7 ~@9 [a2,c#3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [c#3,f#3]@7 ~@13]/8", // A C# G#m A Bsus2 A F#5 A …
  D: "[f#3@4 a3@6 a3@2 a3@3 a3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 b3@6 b3@2 b3@3 b3@2 ~@15 f#3@4 a3@6 a3@2 a3@3 a3@2 a3@9 ~@6 f#3@4 g#3@6 g#3@2 g#3@3 g#3@2 ~@15 c#3@4 f#3@6 f#3@2 f#3@3 f#3@2 f#3@9 ~@6 f#3@4 ~@11 f#3@2 a3@3 ~@11 f3@2 g#3@3 f#3@6 f#3@2 f#3@4 f#3@11 ~ [a2,c#3]@4, ~@12 [c#3,f#3]@5 a3@15 ~@17 b3@15 ~@17 b3@15 ~@49 g#3@15 ~@36 a3@11 ~@5 g#3@11 ~@33, ~@28 [a2,c#3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [d3,f#3]@7 ~@9 [b2,d3]@7 ~@9 [c#3,f#3]@7 ~@9 [a2,c#3]@7 ~@9 [c#3,f3]@7 ~@9 [g#2,b2]@7 ~@9 [a2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [a2,c#3]@7 ~@9 [b2,c#3]@7 ~@9 [a2,c#3]@7 ~@13]/8", // A F#5 A D Bm D Bm F#5 …
  E: "[f#3@4 g#3@6 g#3@2 g#3@3 g#3@2 ~@15 c#3@4 f#3@6 f#3@2 f#3@3 f#3@2 f#3@7 ~@2 f#3@2 [a2,c#3,f#3]@6 f#3@2 g#3@6 g#3@2 g#3@3 g#3@2 ~@15 c#3@4 f#3@7 ~ f#3@7 ~ f#3@12, ~@12 [c#3,f3]@5 g#3@15 ~@49 g#3@15 ~@32, ~@28 [g#2,b2]@7 ~@9 [a2,c#3]@7 ~@25 [c#3,f3]@7 ~@9 [g#2,b2]@7 ~ [a2,c#3]@28]/4", // F#m C# G#m A C# G#m A
})).s("gm_electric_guitar_jazz").gain(0.18).pan(1)

// bass · fretless bass · "Contrebasse"
const bass = note(`<
  A@3 B C@3 B D@2 E@5 B C@3 B D@2 E@5 B C@3 B D@2 E@5 B C@3 B D@2 E@5 B C@3 B D@2 E@5 B C@3 B D@2 E@5 B C@3 B D@2 F@2
  G@2 ~
>`.pickRestart({
  A: "[~@4 f#2@7 ~@9 f2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~@5]/3", B: "~@4 b2@7 ~@9 f#2@7 ~@5",
  C: "[~@4 b2@7 ~@9 f#2@7 ~ b2@7 ~ f#2@7 ~@9 f#2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~@5]/3",
  D: "[~@4 b2@7 ~@9 f#2@7 ~ b2@7 ~ f#2@7 ~@9 f#2@7 ~@5]/2",
  E: "[~@4 c#2@7 ~@9 f2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~ c#2@7 ~ f#2@7 ~@9 f2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~@5]/5",
  F: "[~@4 c#2@7 ~@9 f2@7 ~ c#2@7 ~ f#2@7 ~@9 f#2@7 ~@5]/2", G: "[~@4 c#2@7 ~@9 f2@7 ~ c#2@7 ~ f#2@28]/2",
})).s("gm_fretless_bass").gain(0.18).pan(0)

stack(electric_guitar_jazz, bass)

More by Brassens Georges