Strudelify
teenagers cover art

2006 · The Black Parade

teenagers

My Chemical Romance

KeyE majorTempo110 bpm
0:00/0:00
// teenagers — My Chemical Romance
// 110 bpm, 4/4, key E major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: pitch bends are ignored
// note: Transcription provider: pdmx. https://musescore.com/score/5849946; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 72 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(110/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · electric guitar clean · "Electric Guitar (Tablature)"
const electric_guitar_clean = note(`<
  A@2 B C D E F A@3 B C D E F G A@2 B C D E F H A@2 B C D E F G A@2 B C D E F I J K L M N O P Q R ~@7 A@2 B C D E F G
  A@2 B C D E F S
>`.pickRestart({
  A: "[e2,b2]!2 [e2,c#3] [e2,b2] ~ [e2,b2] [e2,c#3] [g3,b3,e4]", // E5 C#m E5 C#m Em
  B: "[e2,b2]!2 [e2,c#3] [e2,b2] [e2,d3] [e2,b2] [e2,c#3] [e2,b2]", // E5 C#m E5 E7 E5 C#m E5
  C: "[b2,f#3]!2 [b2,g#3] [b2,f#3] ~ [b2,f#3] d#3 [b3,d#4]", // B5 E B5 B
  D: "[a2,e3]!2 [a2,f#3] [a2,e3] ~ [a2,e3] [a2,f#3] [a3,c#4]", // A5 D A5 D A
  E: "[e3,b3]!2 [f#3,b3] [e3,b3] ~ [e3,b3] [c#3,e3] [g3,b3,e4]", // E5 B5 E5 C#m Em
  F: "[b2,f#3]!2 [b2,g#3] [b2,f#3] [b2,a3] [b2,f#3] [b2,g#3] [b2,f#3]", // B5 E B5 B7 B5 E B5
  G: "[e2,b2]@4 ~@4 a3 a#3 g4@2 a3 a#3 [c#4,f#4]@2", H: "[e2,b2] ~@7", I: "[e2,b2]@2 e2@2 f#2@2 g#2 e2",
  J: "[e4,a4] ~ f#4!2 [e4,a4] [d4,f#4] ~ [a3,c4]", K: "c#4@2 [b3,e4]@2 ~@2 [d4,f#4]@2 ~@2 [e4,f#4] g#4 [e4,f#4] g#4@3",
  L: "[b4,e5] ~ a4 g#4 g4 [b4,e5] ~ d5", M: "d5@2 d5@2 b4 d5 b4 a#4 b4 a#4 a4 a#4 a4 g4@3",
  N: "[e4,a4] ~ d4 c4 c#4 [e4,a4] ~ [e4,a4]", O: "[e4,a4]!2 [e4,a4]@2 d4@2 c4@2 c#4@2 e4@2 a3@4",
  P: "[f#4,b4] ~ [e4,f#4]@2 [e4,f#4]!4", Q: "[e4,f#4]!8", R: "e4",
  S: "[e2,b2]@4 a3 a#3 g4 a#3 a3 f#4 a3 g#3 [g#3,e4]@4", // E5 C#m
})).s("gm_electric_guitar_clean").gain(0.3)

// bass · electric bass finger · "Electric Bass"
const bass = note(`<
  ~@8 A@3 B@2 A C D E@3 F G E H I A@3 B@2 A C D E@3 F G E H J K L M N K O H P D ~@7 E@3 F G E H I E@3 F G E H Q
>`.pickRestart({
  A: "~ e2 ~@2", B: "~ a2 ~@2", C: "b2!8", D: "e1 ~@3", E: "e1!2 g#1 e1 ~ e1 g#1 b1", F: "b1!2 d#2 b1 ~ b1 d#2 f#2",
  G: "a1!2 c#2 a1 ~ a1 c#2 e2", H: "b1!8", I: "e1 ~@7", J: "e1 ~ e1!2 f#1!2 g#1 e1", K: "a1!2 c#2!2 e2!2 f#2!2",
  L: "a2!2 f#2!2 e2!2 c#2!2", M: "e1!2 g#1!2 b1!2 c#2!2", N: "d2!2 c#2!2 b1!2 g#1!2", O: "g2!2 f#2!2 e2!2 c#2!2",
  P: "b2!4 b2@2 b2@2", Q: "e1 ~@2 e1",
})).s("gm_electric_bass_finger").gain(0.3)

// drums · kick
const kick = s("bd").struct("<~@8 A@6 B ~ C@6 D ~ A@6 B ~ C@6 D E F@6 G H C@6 D I C@7 J C@6 D K>".pickRestart({
  A: "~ x ~ x", B: "~@7 x ~@3 x ~@3 x", C: "x ~@4 x ~ x", D: "x ~@6 x ~@3 x ~@3 x", E: "~@15 x", F: "x ~@3 x!2 ~ x",
  G: "~ x!7", H: "x ~ x ~@12 x", I: "~@7 x", J: "~ x ~ x ~ x ~ x ~ x ~ x ~ x ~@2", K: "~@3 x",
})).gain(0.3)

// drums · snare
const snare = s("sd").struct("<~@14 A B C@6 D E ~@6 A B C@6 D F C@6 E ~ C@6 G B C@7 H C@6 I E>".pickRestart({
  A: "~@2 x ~ x!2 ~@10", B: "x ~@2 x", C: "~ x ~ x", D: "~@2 x ~ x ~@3 x!2 ~@2 x!2 ~@2", E: "x", F: "x ~@6 x",
  G: "~@4 x ~@3 x!3 ~ x!3 ~", H: "x!4", I: "~@2 x ~ x!2 ~@2 x!2 ~@2 x!2 ~@2",
})).gain(0.3)

// drums · low tom
const low_tom = s("lt").struct("<~@8 A@6 B C ~@8 A@6 B C ~@7 D ~@6 E F ~@7 C ~@15 G>".pickRestart({
  A: "~ x ~ x", B: "~@12 x!2 ~@2", C: "~@5 x ~@2", D: "~@13 x ~@2", E: "~ x!7", F: "~@6 x!3 ~ x!3 ~@3", G: "~@3 x",
})).gain(0.3)

// drums · hihat
const hihat = s("hh").struct("<~@15 A B C@5 A@2 ~@7 D B C@5 A ~ E F@5 ~ G H I@5 J ~ B C@6 ~ B C@5 A@2>".pickRestart({
  A: "x", B: "~ x!7", C: "x!8", D: "x!2", E: "~@2 x ~ x ~ x!3 ~ x ~ x ~ x ~", F: "x ~ x ~ x ~ x!3 ~ x ~ x ~ x ~",
  G: "x!3 ~@5", H: "~@2 x!2", I: "x!4", J: "x!2 ~@2",
})).gain(0.3)

// drums · mid tom
const mid_tom = s("mt").struct("<~@14 A B ~@14 A B ~@7 C ~@7 D ~@7 B ~@16>".pickRestart({
  A: "~@8 x!2 ~@6", B: "~@5 x ~@2", C: "~@8 x!2 ~ x!2 ~@3", D: "~@7 x",
})).gain(0.3)

// drums · high tom
const high_tom = s("ht").struct("<~@47 [~@13 x ~@2] ~@24>").gain(0.3)

// drums · crash
const crash = s("cr").struct("<~@16 A ~@15 A ~@6 A@2 ~@5 B ~ A ~@6 A@2 ~@7 A ~@7>".pickRestart({
  A: "x", B: "x!8",
})).gain(0.3)

stack(electric_guitar_clean, bass, kick, snare, low_tom, hihat, mid_tom, high_tom, crash)

More by My Chemical Romance