Strudelify
KeyE minorTempo90 bpm
0:00/0:00
// No Memory — Stone Temple Pilots
// 90 bpm, 4/4, key E minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 31 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): TabIt MIDI - Track 3.
setcpm(90/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 clean · "TabIt MIDI - Track 1"
const electric_guitar_clean = note("<A@4 B@6 C@6 D@4 E@6 F@5>".pickRestart({
  A: "[~@3 b3 ~@11 c#4 ~@15 f3, a2@6 c3@6 b2@6 g2@5 d3 f2@5 c3 a#2@2, ~ e3@6 e3@4 e3@2 f#3@6 d3@3 f#3@3 c3@3 e3@4, ~@2 a3@3 a3@3 g3@2 g3@4 b3@3 b3@3 f#3 b3@5 e3 a3@5, ~@4 c4@5 c4@6 ~ d4@16]/4",
  B: "[~@7 g3@2 d4 c4@3 ~@6 b3 ~@11 c#4 ~@15 f3, a3@2 a3@4 e3@3 [e3,g3]@4 g3@4 e3@5 c3@5 e3 b2@6 g2@5 d3 f2@5 c3 a#2@2, ~ d4@6 ~@6 b3@5 a3@2 c4@4 g3 c4@5 b3@2 d4@16, ~@3 f3@2 b2@8 e3@3 a2@5 a3@2 e3@3 g3@3 f#3@6 d3@3 f#3@3 c3@3 e3@4, ~@4 e2@29 b3@3 f#3 b3@5 e3 a3@5]/6", // Em
  C: "[~@14 g3@4 d4@2 c4@6 ~@12 b3 c4 b3 ~@21 c#4@2 ~@30 f3@2, a3@2 a3@4 e3@3 [e3,g3]@4 g3@4 e3@5 c3@5 e3 b2@6 g2@5 d3 f2@5 c3 a#2@2, ~@2 d4@12 ~@12 b3@10 a3@5 c4@7 g3@2 c4@10 b3@4 d4@32, ~@3 f3@2 b2@8 e3@3 a2@5 a3@2 e3@3 g3@3 f#3@6 d3@3 f#3@3 c3@3 e3@4, ~@4 e2@29 b3@3 f#3 b3@5 e3 a3@5]/6", // Em
  D: "[~@14 g3@4 d4@2 c4@6 [e3,g3]@6 ~@6 b3 c4 b3 ~@8 b3 ~@4 c3@2 ~@6 c#4@2, a3@4 a3@8 e3@6 [e3,g3]@8 b3@6 [a2,a3]@9 c4@5 e3@6 g3@4 b2@4 b3@4, ~ d4@6 ~@6 e4@19, ~@3 f3@2 b2@11 e3@5 a3 c3@2 g3 c4@4 f#3@3, ~ e2@7]/4", // Em A
  E: "[~@46 g3@4 d4@2 c4@6 ~@12 b3@2 ~@8 g3@2 c5 b4 ~@2 c3@2 ~@6 c#4@2, d4@16 a3 d4@5 e3@3 g3@7 a2@2 a3@2 c4@3 e3@3 c5@2 b2@2 b3@2, ~ f#4@47, ~@2 g2@4 f#3 d3 f2@4 e3 c3 a#2@5 f3 e2@28, ~@3 d3 f#3 b3@4 c3 e3 a3@4 f3@3 a3@3 b2@4 e3@4 b3@4 e3@4 a3 c3@3 c4@4 f#3@3]/6",
  F: "[~@10 b4 a4 ~@34 g3@4 d4@2 c4@6 [e2,b2,e3,g3,b3,e4]@16 ~@6, d4@16 a3 d4@5 e3@3 [e3,g3]@4 ~@11, ~ b3@3 f#3 b3@4 c3 e3 a3@2 c3 a#2@5 f3 e2@9 ~@11, ~@2 g2@4 f#3 d3 f2@4 e3@3 f3@3 a3@3 b2@8 ~@11, ~@3 d3@3 b4@23 ~@11]/5", // Em
})).s("gm_electric_guitar_clean").gain(0.4)

// bass · fretless bass · "TabIt MIDI - Track 2"
const bass = note("<~@18 A@2 B@6 C@4 ~>".pickRestart({
  A: "[a2@3 ~@2 a2 g2@3 ~ e2 d2 f#2@3 g2, ~@3 a2@2 ~@4 g2@6 ~, ~@2 e2@3 ~@3]/2",
  B: "[f#2 ~ g1@3 ~@3 f2@3 ~@21 a2@3 ~@2 a2 g2@3 ~ e2 d2 f#2@3 g2, ~ d2@5 d2@2 ~@3 f2@9 e2@16 e2@6 ~@6, ~@5 g1@8 f1@35, ~@7 g2@25 ~@3 a2@2 ~@4 g2@6 ~, ~@6 c2 a#1@17]/6",
  C: "[f#2 ~ g1@3 ~@3 f2@3 ~@9 [e1,e2]@8 ~@4, ~ d2@5 d2@2 ~@3 f2@9 ~@12, ~@5 g1@8 f1@7 ~@12, ~@7 g2@21 ~@4, ~@6 c2 a#1@7 ~@2]/4", // E
})).s("gm_fretless_bass").gain(0.45)

// chords · electric guitar clean · "TabIt MIDI - Track 3"
const electric_guitar_clean_2 = note("<~@18 A@2 ~@11>".pickRestart({
  A: "[~@4 c4@5 ~@2 e3@2 ~@3, ~ e3@6 ~@9, ~@2 a3@3 ~@11]/2",
})).s("gm_electric_guitar_clean").gain(0.4)

stack(electric_guitar_clean, bass, electric_guitar_clean_2)

More by Stone Temple Pilots