Strudelify

A Question of Lust

Depeche Mode

KeyE majorTempo95 bpm
0:00/0:00
// A Question of Lust — Depeche Mode
// 95 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Full arrangement: all 113 bars on a 48-step grid, each part at one level. Source detail keeps the original performance.
setcpm(95/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.

// bass · synth bass 1
const bass = note(`<
  [e3@2 ~@4 e3 ~@2 e3@2 ~@13 e3@2 ~@4 e4@2 ~@4 e4 ~@2 e4@2 ~@7]!15
  ~@91
  [e3@2 ~@4 e3 ~@2 e3@2 ~@13 e3@2 ~@3 e4@2 ~@4 e4 ~@2 e4@2 ~@8]!6
  ~
>`).s("gm_synth_bass_1").gain(0.5)

// other · synth strings 2
const synth_strings_2 = note("<~@66 A B@8 C@8 D E@8 F@8 G@6 ~@7>".pickRestart({
  A: "c#5@12 b4@10 a4@7 b4@5 c#5@6 d#5@8",
  B: "[~@8 c#5@13 b4@7 c#5@6 d#5@4 ~@3 d#5@17 c#5@12 b4@6 c#5@6 d#5@7 e5@17 d#5@13 c#5@6 d#5@6 e5@3 ~@2 e5@30 b4@24 g4@23 e4@25 f#4@96 c#5@14 b4@11 a4@6 b4@5 c#5@6 d#5@8]/8",
  C: "[~@10 c#5@13 b4@6 c#5@6 d#5@4 ~@2 d#5@16 c#5@13 b4@7 c#5@6 d#5@7 e5@16 d#5@13 c#5@7 d#5@6 e5@4 ~ e5@29 b4@24 g4@23 e4@24 f#4@96 c#5@14 b4@12 a4@6 b4@6 c#5@5 d#5@8]/8",
  D: "~@9 c#5@15 b4@6 c#5@5 d#5@4 ~@3 d#5@6",
  E: "[~@9 c#5@13 b4@7 c#5@5 d#5@7 e5@16 d#5@13 c#5@6 d#5@6 e5@4 ~ e5@31 b4@24 g4@23 e4@25 f#4@96 c#5@13 b4@12 a4@7 b4@6 c#5@6 d#5@15 c#5@12 b4@7 c#5@6 d#5@6 ~ d#5@7]/8",
  F: "[~@8 c#5@14 b4@7 c#5@6 d#5@6 e5@17 d#5@13 c#5@6 d#5@6 e5@3 ~@2 e5@31 b4@23 g4@24 e4@23 f#4@96 c#5@15 b4@11 a4@7 b4@5 c#5@6 d#5@16 c#5@13 b4@6 c#5@7 d#5@4 ~ d#5@8]/8",
  G: "[~@10 c#5@12 b4@7 c#5@6 d#5@6 e5@17 d#5@12 c#5@7 d#5@5 e5@4 ~@2 e5@30 b4@24 g4@24 e4@23 f#4@76 ~@23]/6",
})).s("gm_synth_strings_2").gain(0.5)

// other · pad poly
const pad_poly = note("<~ A@8 ~@104>".pickRestart({
  A: "[~@47 [e4,e5]@337]/8", // E
})).s("gm_pad_poly").gain(0.36)

// other · string ensemble 1
const string_ensemble_1 = note("<~@12 A@8 B@8 C@8 ~@2 D@4 E@8 F@4 G@8 H@8 I@8 J@8 K@8 L@8 M@4 N@7>".pickRestart({
  A: "[~ e2@45 f#2@48 e2@49 c#2@47 f#2@25 e2@23 f#2@25 e2@24 ~@48 g#2@48 ~, ~@287 g#1@74 ~@23]/8",
  B: "[e2@46 f#2@48 e2@47 c#2@49 f#2@24 e2@23 f#2@25 e2@25 ~@48 g#4@49, ~@287 g#1@97]/8",
  C: "[a1@45 b1@49 g#1@49 c#2@47 a1@25 g1@23 c2@24 a1@24 b1@95 ~@3]/8", D: "[e2@45 f#2@49 e2@48 c#2@50]/4",
  E: "[~@3 f#2@20 e2@24 f#2@24 e2@23 g#1@96 e2@48 f#2@48 e2@48 c#2@48 f#2@2]/8",
  F: "[~@21 e2@24 f#2@25 e2@24 ~@48 g#4@37 ~@13, ~@47 g#1@46 ~@3]/4",
  G: "[a1@46 b1@47 g#1@50 c#2@47 a1@24 g1@24 c2@23 a1@24 b1@96 ~@3]/8",
  H: "[~@44 e1@48 a1@39 ~ a1@11 b1@42 ~@6 a1@46 b1@49 g#1@49 c#2@46 a1@3]/8",
  I: "[~@22 g1@24 c2@24 a1@23 b1@98 a1@46 b1@47 g#1@50 c#2@49 a1]/8",
  J: "[~@23 g1@23 c2@24 a1@23 b1@98 a1@47 b1@47 g#1@49 c#2@47 a1@3]/8",
  K: "[~@22 g1@24 c2@24 a1@24 b1@96 a1@48 b1@48 g#1@49 c#2@47 a1@2]/8",
  L: "[~@22 g1@24 c2@24 a1@23 b1@97 a1@48 b1@48 g#1@49 c#2@47 a1@2]/8", M: "[~@22 g1@24 c2@25 a1@23 b1@94 ~@4]/4",
  N: "[e1@37 ~@5]/7",
})).s("gm_string_ensemble_1").gain(0.4)

stack(bass, synth_strings_2, pad_poly, string_ensemble_1)

More by Depeche Mode