0:00/0:00
// Every Time I Look for You — blink-182
// 128 bpm, 8/8, key B major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 96 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): guitar program 30.
setcpm(128/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.
// other · electric guitar clean
const electric_guitar_clean = note("<~@20 A@5 ~@17 A@5 ~@9 B C D@2 B C D E ~@32>".pickRestart({
A: "[~ b3 c#4 ~@2 b3 c#4 ~@2 b3 c#4 ~@6 b3 c#4 ~@2 b3 c#4 ~@2 b3 c#4 ~@4 b3@2 ~@7, b2@2 b2@2 b2@2 b2!2 b2@2 b2@2 b2@2 b2!2 ~@4, ~@3 d#4@2 ~@2 d#4@2 ~@2 d#4@2 b3@2 b3@2 ~@2 d#4@2 ~@2 d#4@2 ~@2 d#4@2 b3@2 ~@9]/5",
B: "[b2,b3]!16", C: "[d#3,d#4]!12 [f#3,f#4]!4", D: "[e3,e4]!16", E: "[e3,e4]!8 [e3,e4]@2 ~@6",
})).s("gm_electric_guitar_clean").gain(0.64)
// other · distortion guitar
const distortion_guitar = note("<A@8 B@4 C D C D B@8 ~@10 C D C D B@8 ~@18 E@16 ~@8 F@5 ~@3>".pickRestart({
A: "[b2,b3]@2 [b2,b3] [b2,b3]@3 [b2,b3]@2 [b2,b3] [b2,b3]@3 [b2,b3]@2 [b2,b3]!2", B: "[b2,b3]/4",
C: "[b2,f#3]!4 [f#2,c#3]!4", D: "[e2,b2]!4 [c#3,g#3]!4", E: "b2!4",
F: "[~@2 e4 ~@3 e4 ~@3 e4 ~@3 c#4 ~@3 e4 ~@3 e4 ~@3 e4 ~@3 c#4 ~@3 e4 ~@3 e4 d#4, f#3!2 f#3!2 f#3!2 f#3!2 f#3!2, ~ b3@4 b3@4 b3@4 b3@4 b3@4 b3@4 b3@4 b3@4 b3@4 b3@3, ~@3 d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~ d#4@3 ~@2]/5",
})).s("gm_distortion_guitar").gain(0.64)
// bass · electric bass pick
const bass = note(`<
~@4 A B A B A B A B C D C D A B A B A B A B E F E F E F E F G@2 C D C D A B A B A B A B E F E F E F E F G@2 H@4 ~@4 I
J G@2 I J G@2 I J G@2 I J G@2 E F E F E F E F E F E F E K@3
>`.pickRestart({
A: "b1", B: "c#2 e2", C: "b1!4 f#2!4", D: "e2!4 c#2!4", E: "g#1!8", F: "e1!4 b1!4", G: "e2!8", H: "b1/4", I: "b1!8",
J: "f#2!8", K: "[e1!2 e1@10]/3",
})).s("gm_electric_bass_pick").gain(0.25)
// other · distortion guitar
const distortion_guitar_2 = note(`<
~@4 A@3 B C@4 D ~@3 E@3 B C@4 F G H G I J H K L M ~@4 N@3 B C@4 F G H G I J H K L M ~@16 O P@2 Q@2 R@2 S T G H G I J H
U T U I V I W@2 ~
>`.pickRestart({
A: "[~@2 d#4!2 d#4@2 d#4@2 d#4@2 b3@2 f#4@2 d#4@4 d#4!2 d#4@2 d#4@2 d#4@2 b3@2 f#4@2 d#4@4 d#4@2 d#4@2 d#4@2 d#4@2 d#4@2 b3@2 b3@2]/3",
B: "~ d#4!4 b3 d#4 b3",
C: "[d#4@2 c#4@2 d#4@2 ~@2 d#4@2 c#4@2 b3@2 ~@2 d#4@2 c#4@2 d#4@2 ~@2 d#4@2 c#4@2 b3@2 b3 c#4, ~@6 b3@3 ~@5 f#3@3 ~@5 b3@3 ~@7]/4",
D: "b3 ~", E: "[~ d#4!4 b3 f#4 d#4@2 d#4!4 b3 f#4 d#4@2 d#4!6 b3]/3",
F: "d#4@2 d#4 d#4@3 d#4@2 e4@2 d#4@2 b3@2 b3@2, b3 ~", G: "e4@2 f#4@2 d#4@3 ~",
H: "d#4@2 d#4 d#4@3 d#4@2 d#4@2 d#4@2 d#4@2 b3@2", I: "d#4@2 d#4 d#4@3 d#4@2 d#4@2 d#4@2 d#4@2 d#4@2",
J: "e4!2 f#4@2 d#4@3 ~", K: "e4 f#4 d#4 b3", L: "b3@4 ~@2 b3 c#4", M: "d#4@2 d#4@2 b3@2 b3@2 d#4@2 f#4 d#4@5",
N: "[~@2 d#4@2 d#4@2 d#4@2 d#4@2 b3@2 f#4@2 d#4@4 d#4!2 d#4@2 d#4@2 d#4@2 b3@2 f#4@2 d#4@4 d#4@2 d#4@2 d#4@2 d#4@2 d#4@2 d#4@2 b3@2]/3",
O: "~ d#4!3 d#4@2 c#4@2", P: "[d#4 b3@2 b3@2 f#3 c#4 b3@2 e4!3 e4@2 e4@2]/2",
Q: "[e4 b3@2 b3@2 f#3 c#4 b3@2 d#4!3 d#4@2 d#4@2]/2", R: "[d#4 b3@2 b3@2 f#3 c#4 b3@2 d#4!2 e4 f#4 e4 d#4@2]/2",
S: "~ d#4!2 e4 f#4 g#4 f#4@2", T: "d#4@2 d#4 d#4@3 d#4@2 e4@2 d#4@2 b3@2 b3@2", U: "e4@2 f#4@2 f#4@3 ~",
V: "e4!2 f#4@2 f#4@3 ~", W: "[e4 b3 b3@3 ~@3]/2",
})).s("gm_distortion_guitar").gain(0.48)
// other · distortion guitar
const distortion_guitar_3 = note(`<
~@25 A ~ A ~ B ~ C D ~@14 A ~ A ~ B ~ C D ~@26 A ~ A ~ B ~ E ~ E ~ F ~@4
>`.pickRestart({
A: "c#4@2 d#4@2 b3@3 ~", B: "c#4!2 d#4@2 b3@3 ~", C: "c#4 d#4 b3 f#3", D: "g#3 ~", E: "c#4@2 d#4@2 d#4@3 ~",
F: "c#4!2 d#4@2 d#4@3 ~",
})).s("gm_distortion_guitar").gain(0.1)
// drums · kick
const kick = s("bd").struct(`<
~@8 A@4 B C B C D@4 A@4 B@2 E F B@2 E F G F B C B C D@4 A@4 B@2 E F B@2 E F G F A ~@7 H I H J H I H J H I H J H I H J
B@2 E F B@2 E F B@2 E F B K ~@2
>`.pickRestart({
A: "x", B: "x ~@4 x ~@2 x ~@4 x ~@2", C: "x ~@4 x ~@2 x ~@2 x ~@4", D: "~ x ~ x ~ x ~ x ~ x ~ x ~ x ~ x",
E: "x ~@4 x ~@2 x ~@7", F: "x!2", G: "x!2 ~ x", H: "x ~@5 x ~@4 x!2 ~ x ~", I: "x ~@2 x ~@2 x ~",
J: "x ~@5 x ~@5 x!2 ~@2", K: "x!3 ~",
})).gain(0.25)
// drums · snare
const snare = s("sd").struct(`<
~@8 A B A B C D C D C@4 A B A B C@2 E F C@2 G F A H C D C D C@4 A B A B C@2 E F C@2 G F A H ~@8 I J I K I J I K I J I
K I J I K C@2 E F C@2 G F C@2 E F C ~@3
>`.pickRestart({
A: "~@3 x ~@4", B: "~@6 x ~@7 x!2", C: "~ x ~ x ~ x ~ x", D: "~ x ~ x ~@2 x ~", E: "~@2 x ~@3 x ~@3 x!6",
F: "~ x ~ x", G: "~@2 x ~@3 x ~@2 x ~ x!2 ~@3", H: "~@2 x ~@7 x!6", I: "~ x", J: "~@8 x ~@4 x ~@2", K: "~@4 x ~@2 x",
})).gain(0.25)
// drums · low tom
const low_tom = s("lt").struct(`<
~@8 A@4 ~@4 B@4 A@4 ~@6 C ~@7 B@4 A@4 ~@6 C ~@14 A ~@3 A ~@3 A ~@3 A ~@6 C ~@9
>`.pickRestart({
A: "~@3 x", B: "x!4", C: "~@15 x",
})).gain(0.25)
// drums · mid tom
const mid_tom = s("mt").struct(`<
~@8 A@4 ~ B ~ B C@4 A@4 ~@6 D ~@4 B ~ B C@4 A@4 ~@6 D ~@14 E ~@3 E ~@3 E ~@3 E ~@6 D ~@9
>`.pickRestart({
A: "~@3 x ~ x ~@3 x ~ x!2 ~@3", B: "~@9 x!2 ~@3 x!2", C: "x!4", D: "~@13 x!3", E: "~@11 x!2 ~@3",
})).gain(0.25)
// drums · open hat
const open_hat = s("oh").struct(`<
~@8 A@4 ~@5 B ~ B A@4 ~@3 C ~@3 C ~@7 B ~ B A@4 ~@3 C ~@3 C ~@29 C ~@3 C ~@3 C ~@4
>`.pickRestart({
A: "x!8", B: "~@8 x!2 ~ x!2 ~@3", C: "x!2 ~ x!3 ~ x",
})).gain(0.25)
// drums · high tom
const high_tom = s("ht").struct(`<
~@8 A B A B C D C D C@4 A B A B C@2 E F C@2 G F H I C D C D C@4 A B A B C@2 E F C@2 G F H I ~@8 J K J L J K J L J K J
L J K J L C@2 E F C@2 G F C@2 E F C ~@3
>`.pickRestart({
A: "~@3 x ~ x!2 ~@2 x ~ x ~@4", B: "~@3 x ~ x!2 ~@2 x ~ x ~@2 x!2", C: "~ x ~ x ~ x ~ x",
D: "~@2 x ~@3 x ~@2 x!2 ~ x ~ x!2", E: "~@2 x ~@3 x ~@3 x!6", F: "~ x ~ x", G: "~@2 x ~@3 x ~@2 x ~ x!4 ~",
H: "~@3 x ~@4", I: "~@2 x ~@7 x!6", J: "~ x", K: "~@8 x ~@4 x ~@2", L: "~@8 x ~@2 x ~@2 x ~",
})).gain(0.25)
// drums · china
const china = s("cr").struct(`<
~@8 A ~@3 B C B C A ~@3 A ~@3 A D A E A D A E F G B C B C A ~@3 A ~@3 A D A E A D A E F G A ~@7 F@3 G F@3 G F@3 G F@3
G A D A E A D A E A D A E A G ~@2
>`.pickRestart({
A: "x", B: "x!8", C: "x!5 ~@3", D: "x!2", E: "x!2 ~ x", F: "x!4", G: "x!3 ~",
})).gain(0.25)
// drums · china · soft notes
const china_soft = s("cr").struct(`<
~@17 A ~ A ~@12 B C ~@5 A ~ A ~@12 B C ~@8 B@3 D B@3 D B@3 D B@3 D ~@16
>`.pickRestart({
A: "x", B: "~ x ~ x ~ x ~ x", C: "~ x ~ x ~@4", D: "~ x ~ x ~ x ~@2",
})).gain(0.13)
// drums · cabasa
const cabasa = s("cabasa:4").struct(`<
~@24 A B C ~ A B D ~@15 A B C ~ A B D ~@27 A B C ~ A B D ~ A B C ~ A ~@3
>`.pickRestart({
A: "~ x!7", B: "~ x!3 ~ x!3", C: "~ x!4 ~@3", D: "~ x!3 ~@4",
})).gain(1.29)
// drums · shaker
const shaker = s("sh").struct("<~@30 [~ x] ~@21 [~ x] ~@33 [~ x] ~@9>").gain(0.25)
stack(
electric_guitar_clean, distortion_guitar, bass, distortion_guitar_2, distortion_guitar_3, kick, snare, low_tom,
mid_tom, open_hat, high_tom, china, china_soft, cabasa, shaker
)
More by blink-182
Not in the database
That song isn't here.
Nothing in the database matches this link. It may have been renamed, or the address was mistyped. The closest songs to :
Real transcriptions · Editable patterns · Instrumental
Type a song.
Get Strudel code.
Chords, structure, melody, bass and drums compiled from open transcriptions into Strudel live-coding patterns. Play it here, scrub through the bars, then open it in strudel.cc and start hacking.
Smells Like Teen SpiritNirvana
The JokerSteve Miller Band · 1973
Love Me DoThe Beatles · 1964
I Don't MindJames Brown · 1961
- Real transcriptionsMcGill chord charts, Lakh MIDI and quality-filtered PDMX scores. The library includes alternate transcriptions of some songs.
- One bar, one cycleEvery layer follows the same bar timeline, keeping the code, playback and song structure aligned.
- Instrumental by designDetected vocal parts are removed. Guitar riffs, harmonica and other instrumental leads stay.