Strudelify

Be Quiet and Drive (Far Away)

Deftones

KeyB♭ minorTempo94 bpm
0:00/0:00
// Be Quiet and Drive (Far Away) — Deftones
// 94 bpm, 4/4, key A# minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 2/4 at bar 9, 4/4 at bar 11) are rendered on a constant 4/4 grid of one bar per cycle
// note: pitch bends are ignored
// note: Full arrangement: all 118 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): Guitar 2.
setcpm(94/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/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 · distortion guitar · "Guitar 1"
const distortion_guitar = note(`<
  A@2 B@2 C D@2 E@3 F G F G F G F G F G F G F G F G H G H G F G F G F G F G I J I J I J I J H G H G F G F G F G F G I J
  I J I J I J H G H G H G H G K L K L M L K L N@4 H G H G H G H G H G H G H G H G H G H G H G H G H G H G H G H G
>`.pickRestart({
  A: "[~@10 [db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@3 [db4,c5] [db3,bb3,db4,c5]@4]/2", // Gdim Dbmaj7 Gb
  B: "[~ [db3,bb3,db4,c5]@5 [db3,bb3,db4,c5]@5 [db3,bb3,db4,c5]@3 [ab3,g4] [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@3]/2", // Gb Abmaj7 Gdim
  C: "~ [db4,c5] [db3,bb3,db4,c5]@5 [db3,bb3,db4,c5]@4 [db3,bb3,db4,c5]@5", // Dbmaj7 Gb
  D: "[[db3,bb3,db4,c5]@4 [ab3,g4] [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@3 [db4,c5] ~ [db3,bb3,db4,c5]@4 [db3,bb3,db4,c5]@4]/2", // Gb Abmaj7 Gdim Dbmaj7 Gb
  E: "[~ [db3,bb3,db4,c5]@5 [db3,bb3,db4,c5]@3 [ab3,g4] [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@5 [db3,ab3,bb3,g4]@3 [db4,c5] [db3,bb3,db4,c5]@5 [db3,bb3,db4,c5]@3 db2 ~@10]/3", // Gb Abmaj7 Gdim Dbmaj7 Gb
  F: "[db2,f3,f4]@2 db2 [db2,f3,f4] [db2,f3,f4]@2 db2 [db2,f3,f4]@2 [db2,f3,f4]@2 db2 [db2,f3,f4]!2 db2!2", // Db
  G: "[bb2,f3,c4,f4]@2 bb2!2 [bb2,f3,c4,f4]@2 [bb2,f3] [bb2,f3,c4,f4]@2 [bb2,f3,c4,f4]@2 bb2 [bb2,f3,c4,f4]@2 [bb2,f3] [db2,ab2]", // Bbsus2 Bb5 Bbsus2 Bb5 Db5
  H: "[f3,f4]@2 db2!2 [f3,f4]@2 db2 [f3,f4] db2 [f3,f4]@2 db2 [f3,f4]@2 db2!2", // F
  I: "[db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@4 [db3,ab3,bb3,g4]@3 [db4,c5]", // Gdim Dbmaj7
  J: "[db3,bb3,db4,c5]@4 [db3,bb3,db4,c5]@4 [db3,bb3,db4,c5]@4 [db3,bb3,db4,c5]@3 [ab3,g4]", // Gb Abmaj7
  K: "[db2,ab2,db3]@2 [db2,ab2,db3]@2 [f4,c5,f5] [f4,c5,f5,bb5]@2 [f4,c5,f5,bb5] [db2,ab2,db3]@2 [db2,ab2,db3]@2 [b3,b4,b5] [b3,b4,b5]@2 [b3,b4,b5]", // Db5 F5 Fsus4 Db5 B
  L: "[db2,ab2,db3]@2 [db2,ab2,db3]@2 [f4,c5] [f4,c5]@2 f4 [e2,b2] [f2,c3]!3 [gb2,db3]!4", // Db5 F5 E5 F5 Gb5
  M: "[db2,ab2,db3]@2 [db2,ab2,db3]@2 [db2,ab2]!2 ~ [db2,ab2] [db2,ab2,db3]@2 [db2,ab2,db3]@2 [db2,ab2,b5] [db2,ab2]@2 [db2,ab2]", // Db5 Db7 Db5
  N: "[db2,ab2,db3]/4", // Db5
})).s("gm_distortion_guitar").gain(0.44)

// chords · distortion guitar · "Guitar 2"
const distortion_guitar_2 = note("<~@16 A ~@17 A ~@21 A ~@45 B ~ C ~ D ~ D ~@9>".pickRestart({
  A: "~ [gb3,gb4]@2 ~ [gb3,gb4] [ab3,ab4]!2 [ab3,ab4]@2 [gb3,gb4]@2 [gb3,gb4]!2 ~@3", // Gb Ab Gb
  B: "~@3 [gb3,gb4]!2 [ab3,ab4] ab2 db3 [gb3,gb4]@2 [ab2,db3] [ab3,ab4] [ab2,db3] [gb3,gb4] [gb3,gb4]@2", // Gb Ab Gb Db5 Ab Db5 Gb
  C: "~@3 [gb3,gb4] ~ [ab3,ab4] ab2 db3 [f3,f4] ~ [f3,f4] [gb3,gb4] ab2 [ab3,ab4]@2 ab2", // Gb Ab F Gb Ab
  D: "[gb3,gb4] [f3,f4] ~ ab2 ~@2 ab2 [ab3,ab4] ab2 ~@2 ab2 [gb3,gb4] [f3,f4]!2 [ab2,gb3]", // Gb F Ab Gb F Ab7
})).s("gm_distortion_guitar").gain(0.44)

// bass · electric bass finger · "Bass"
const bass = note(`<
  ~@10 A B A B A B A B A C A C A C A C A B A B A C A C A C A C D E D E D E D E A B A B A C A C A C A C D E D E D E D E A
  B A B A B A B F G F G F G F G H@4 A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B A B
>`.pickRestart({
  A: "db1@2 db1!5 db1@2 db1@2 db1!5", B: "bb1@2 bb1!5 bb1@2 bb1@2 bb1!4 db1",
  C: "bb1@2 bb1!5 bb1@2 bb1@2 bb1 ab1 bb1 ab1@2", D: "ab1", E: "db1", F: "db1!2 ~@2 db1!2 ~@2",
  G: "db1@2 db1@2 ~@4 e1 f1!3 gb1!4", H: "db1/4",
})).s("gm_electric_bass_finger").gain(0.47)

// drums · kick
const kick = s("bd").struct(`<
  ~@10 A@7 B A C A D A C A E A@3 F A D A D A D A G H@6 I J A D A G A D A D A D A K H@6 I J A D A D A D A G L M L M L M L
  M N ~@3 A D A D A D A O A D A D A D A D A D A D A D A D A D A D A D A D
>`.pickRestart({
  A: "x ~@2 x ~ x ~ x!2 ~@2 x ~ x ~ x", B: "x ~@2 x ~ x ~ x ~@3 x ~ x ~ x", C: "x ~@2 x ~ x ~@2 x!2 ~ x ~ x ~@2",
  D: "x ~@2 x ~ x ~@2 x!2 ~ x ~ x ~ x", E: "~ x ~ x ~@3 x ~@3 x ~@3 x", F: "~@3 x ~@3 x ~@7 x",
  G: "~@3 x ~@3 x ~@2 x ~@2 x ~ x", H: "x!2 ~@7 x ~@5 x", I: "x!2 ~@6 x!2 ~@5 x", J: "x!2 ~ x ~@3 x!3 ~ x!2 ~@3",
  K: "~@3 x ~@3 x ~ x!2 ~ x!2 ~ x", L: "x!2 ~@2 x!2 ~@2", M: "x ~ x ~@10 x!3", N: "x",
  O: "x ~@2 x ~@2 x ~@2 x ~@2 x ~ x ~",
})).gain(0.8)

// drums · snare
const snare = s("sd").struct(`<
  ~@10 A@7 B A C A@3 C A D A@3 E A@7 F A@7 G A@3 F A@7 H A@7 G A@7 I A J A J A J A J K ~@3 A@7 L M N M N M N M N O P Q R
  O P Q R O P Q R O P Q R
>`.pickRestart({
  A: "~ x ~ x", B: "~@4 x ~@3 x!2 ~@2 x ~@3", C: "~@4 x ~@7 x ~@2 x", D: "x ~@3 x ~@3 x!2 ~@2 x!2 ~@2",
  E: "x!2 ~@2 x ~@3 x!3 ~@2 x!2 ~", F: "x!2 ~@2 x ~@3 x ~@5 x ~", G: "~@4 x ~@7 x ~ x!2",
  H: "x!2 ~@2 x ~@3 x ~@2 x ~@2 x ~", I: "x!2 ~@2 x ~@3 x!2 ~ x ~@2 x!2", J: "~@4 x ~@2 x ~ x ~@2 x ~@3", K: "x",
  L: "x!16", M: "x ~@3 x ~ x ~@2 x ~@2 x ~ x ~", N: "~@4 x ~@5 x ~ x ~ x!2", O: "~ x!2 ~@2 x!3", P: "~@2 x ~ x ~ x!2",
  Q: "~ x!4 ~ x ~", R: "x ~ x ~ x ~ x!2",
})).gain(0.8)

// drums · low tom
const low_tom = s("lt").struct("<~@17 [~@7 x] ~@100>").gain(0.8)

// drums · pedal hat
const pedal_hat = s("hh").struct("<~@85 [~@3 x] ~@32>").gain(0.8)

// drums · mid tom
const mid_tom = s("mt").struct("<~@29 A ~@7 B C@6 D ~@4 B ~@8 C@6 D ~@10 E ~ E ~ E ~ E ~@36>".pickRestart({
  A: "~@11 x!2 ~@3", B: "~@11 x ~@4", C: "~@9 x ~@5 x", D: "~@15 x", E: "~@8 x ~ x!2 ~@2 x ~",
})).gain(0.8)

// drums · open hat
const open_hat = s("oh").struct("<~@10 A@7 B A@8 ~@3 C A@8 ~@11 A@9 ~@15 A D E D E D E D E ~@11 F ~@24>".pickRestart({
  A: "x!8", B: "x!6 ~@2", C: "~ x!3 ~@4", D: "~@6 x ~@8 x", E: "~@6 x!2", F: "~@2 x ~@2 x ~@2 x ~@2 x ~@4",
})).gain(0.8)

// drums · crash
const crash = s("cr").struct(`<
  ~@10 A@16 B@3 ~ A@7 ~ B@11 ~ A@7 ~ B@15 ~ C D C D C D C D A ~@3 B@7 ~ B@24
>`.pickRestart({
  A: "x", B: "x!8", C: "x!3 ~ x!4", D: "x!4 ~@4",
})).gain(0.8)

stack(distortion_guitar, distortion_guitar_2, bass, kick, snare, low_tom, pedal_hat, mid_tom, open_hat, crash)

More by Deftones