Strudelify

Shout

Depeche Mode

KeyD majorTempo119 bpm
0:00/0:00
// Shout — Depeche Mode
// 118.5 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 4 "Bass" named as a bass, played on electric bass finger (its pad poly patch is not one)
// note: Full arrangement: all 112 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(118.5/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · "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.

// other · oboe · "Intro"
const oboe = note("<A@8 ~@104>".pickRestart({
  A: "d5/8",
})).s("gm_oboe").gain(0.06).pan(1)

// other · lead 2 sawtooth · "Lead"
const lead_2_sawtooth = note("<~ A@4 B C D@2 B C D@2 B C ~@78 A@4 B C D@2 B C D@2 B C ~@5>".pickRestart({
  A: "[~@12 d5@7 a4@15 ~@10 d5@6 a4@14]/4", B: "~@3 d5", C: "a4@7 ~", D: "[~@6 d5@3 a4@7]/2",
})).s("gm_lead_2_sawtooth").gain(0.1)

// other · lead 2 sawtooth · "Lead" · soft notes
const lead_2_sawtooth_soft = note("<~@107 A@2 B C ~>".pickRestart({
  A: "[~@6 d5@3 a4@7]/2", B: "~@3 d5", C: "a4@7 ~",
})).s("gm_lead_2_sawtooth").gain(0.05)

// bass · electric bass finger · "Bass"
const bass = note(`<
  ~@16 A@2 B@2 A@2 B@2 C D E@2 F G F G F G F H A@2 B@2 A@2 B@2 C D E@2 F G F G F G F H ~@8 A@2 B@2 A@2 B@2 C D E@2 F G F
  G F G F H F G F G F G F H I@8 ~@4 J@3 K ~@4
>`.pickRestart({
  A: "a2/2", B: "g2/2", C: "a2", D: "c3", E: "d3/2", F: "g2 c3", G: "d3 c3", H: "d3", I: "a2/8", J: "a2!4", K: "a2!3 ~",
})).s("gm_electric_bass_finger").gain(0.28)

// bass · electric bass finger · "Bass" · soft notes
const bass_soft = note("<~@107 [~@3 a2] [a2!4]!4>").s("gm_electric_bass_finger").gain(0.1)

// other · lead 5 charang · "Harmony"
const lead_5_charang = note(`<
  ~@28 A B A B A B A C ~@12 A B A B A B A C ~@20 A B A B A B A C A B A B A B A C ~@20
>`.pickRestart({
  A: "g2 c3", B: "d3 c3", C: "d3",
})).s("gm_lead_5_charang").gain(0.27).pan(1)

// other · pad metallic · "Ending"
const pad_metallic = note("<~@92 A B A B A B A B A B A B A B C ~@5>".pickRestart({
  A: "a4@3 ~@3 g4@2", B: "a4@3 ~@2 g4@3", C: "a4@3 ~@5",
})).s("gm_pad_metallic").gain(0.14).pan(1)

// other · pad metallic · "Ending" · soft notes
const pad_metallic_soft = note(`<
  ~@106
  [~@3 g4]
  [a4@3 ~@2 g4@3]
  [a4@3 ~@3 g4@2]
  [a4@3 ~@2 g4@3]
  [a4@3 ~@3 g4@2]
  [a4@3 ~@5]
>`).s("gm_pad_metallic").gain(0.06).pan(1)

// other · timpani
const timpani = note(`<
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~]!56
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~, d2!4]!8
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~]!22
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~, d2!4]!19
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~, d2!2 ~@2]
  [~@2 g6 ~@3 d6 ~@4 b5 ~@2 d6 ~]
  [~@2 g6 ~@3 d6 ~@9]
  ~@4
>`).s("gm_timpani").gain(0.19)

// other · timpani · soft notes
const timpani_soft = note(`<
  d2!16
  ~@89
  [~@2 d2!2]
  [d2@3 c6 d2@4 ~ c6 ~@2 d2@4, ~@2 d2 ~]
  [d2@3 c6 d2@4 ~ c6 ~ b5 ~@2 d6 ~, ~@2 d2!2]
  [~@2 g6 c6 ~@2 d6 ~@2 c6 ~ b5 ~@2 d6 ~, d2!4]!4
>`).s("gm_timpani").gain(0.09)

// drums · kick
const kick = s("bd").struct("<x!16 [x!4]!90 [x!3 ~] ~@5>").gain(0.8)

// drums · kick · soft notes
const kick_soft = s("bd").struct("<~@106 [~@3 x] [x!4]!5>").gain(0.24)

// drums · snare
const snare = s("sd").struct("<~@16 [~ x ~ x]!90 [~ x ~@2] ~@5>").gain(0.8)

// drums · snare · soft notes
const snare_soft = s("sd").struct("<~@106 [~@3 x] [~ x ~ x]!5>").gain(0.24)

// drums · cowbell
const cowbell = s("cb").struct("~@11 x ~@4").gain(0.48)

// drums · congas
const congas = s("conga:18").struct("~@4 x!2 ~ x ~@8").gain(2.05)

// drums · congas
const congas_2 = s("conga:33").struct("~@2 x ~@7 x ~@3 x!2").gain(2.05)

// drums · agogo bells
const agogo_bells = s("agogo:2").struct("~ x ~@6").gain(3.57)

// drums · agogo bells
const agogo_bells_2 = s("agogo:4").struct("~@6 x ~@2 x ~@4 x ~").gain(3.57)

// drums · lt
const lt = s("lt").struct("<[~@8 x ~ x ~@2 x!3] [~@2 x ~@5 x ~ x ~@2 x!3]!111>").gain(0.4)

stack(
  oboe, lead_2_sawtooth, lead_2_sawtooth_soft, bass, bass_soft, lead_5_charang, pad_metallic, pad_metallic_soft,
  timpani, timpani_soft, kick, kick_soft, snare, snare_soft, cowbell, congas, congas_2, agogo_bells, agogo_bells_2, lt
)

More by Depeche Mode