0:00/0:00
// Love Shack — The B-52's
// 135 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: duplicate parts dropped: ch 12 "Fretless" fretless bass (copy of ch 11 "Slap Bass" slap bass 1)
// note: Full arrangement: all 175 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(135/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.
// bass · slap bass 1 · "Slap Bass"
const bass = note(`<
~@8 A B C B C B C B C B C B C B C B C B C B C D E F G H I H I H I H I H I H I B C B C J K@2 L B C B C B C B C D E F G
H I H I H I H I B C B C B C B C B C M A B C B C B C B C H I H I H I H I B C B C B C B C D E F G H I H I H I H I H I H
I H I H I H I H I H I H I H I H I H I H I H I H I H I H I H I H I H I H I M ~@2 B C B C B C B N@4
>`.pickRestart({
A: "~@5 g1 a#1 b1", B: "c2@3 ~ c2@3 ~ e1@2 f1@3 ~ g1@2", C: "~ g1 ~ g1 a#1 g1 a#1 b1",
D: "c2@3 ~ c2@3 ~ c2 ~ c2 ~ c2 ~ c2 ~", E: "d#2@3 ~ d#2@3 ~ d#2 ~ d#2 ~ d#2 ~ d#2 ~",
F: "f2@3 ~ f2 ~ f2 ~ f2 ~ f2 ~ f2 ~ f2 ~", G: "g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~ g#2 ~",
H: "c2 a#1 c2 ~ e1 f1 f#1 g1", I: "~@2 g1@3 ~ g1@2 a#1@2 g1@2 a#1@2 b1@2", J: "c2@3 ~@7 a#1@4 c2@2",
K: "~@5 a#1@2 c2", L: "~@2 g1 ~ g1 ~ g1@2 a#1@2 g1@2 a#1@2 b1@2", M: "c2 ~@7",
N: "[~@2 g1@2 ~@3 g1@2 a#1@3 g1@3 a#1@3 b1@3 c2@40 ~@3]/4",
})).s("gm_slap_bass_1").gain(0.59)
// chords · tenor sax
const tenor_sax = note(`<
~@29 A B C D ~@4 E F E F E F E G ~@16 A B C D ~@4 E F E G ~@36 A B C D ~@4 E F E F E F E G ~@39 E F E F E F E H@4
>`.pickRestart({
A: "[e4,g4,c5]", B: "[g4,a#4,d#5]", C: "[a4,c5,f5]", D: "[c5,d#5,g#5]", E: "~@2 [g3,c4] ~ [g3,c4] a#3 ~@2",
F: "~@10 [f3,a#3,c4] ~@3 [f3,a#3,c4] ~", G: "[c4,g4,a#4]@3 b3 [g3,a3] [e3,f3] d3 b2 a#2@5 ~@3, ~@3 c3 ~@4",
H: "[[c4,g4,a#4]@3 b3 a3 [f3,g3] [d3,e3] ~ b2 a#2@12 [c4,g4,a#4]@40 ~@3, ~@7 c3@2 ~@55]/4", // C7 Fsus2 Dsus2 C7
})).s("gm_tenor_sax").gain(0.59)
// chords · brass section · "Brass Sec"
const brass_section = note(`<
~@29 A B C D ~@4 E F E F E F E G ~@16 A B C D ~@4 E F E G ~@36 A B C D ~@4 E F E F E F E G ~@39 E F E F E F E H@4
>`.pickRestart({
A: "[e4,g4,c5]", B: "[g4,a#4,d#5]", C: "[a4,c5,f5]", D: "[c5,d#5,g#5]", E: "~@2 [g4,c5] ~ [g4,c5] a#4 ~@2",
F: "~@10 [f4,a#4,c5] ~@3 [f4,a#4,c5] ~", G: "[c5,g5,a#5]@3 b4 [g4,a4] [e4,f4] d4 b3 a#3@5 ~@3, ~@3 c4 ~@4",
H: "[[c5,g5,a#5]@3 b4 a4 [f4,g4] [d4,e4] ~ b3 a#3@12 [c5,g5,a#5]@40 ~@3, ~@7 c4@2 ~@55]/4", // C7 Fsus2 Dsus2 C7
})).s("gm_brass_section").gain(0.78)
// drums · kick
const kick = s("bd").struct(`<
~ 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@2 C@2 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@4 C@2 A B A B A B A B A B A B A B A B A B C@2 A@26 C@2 A B A B A B A B A B A B C@24 A B A B A B A B A B A B D ~@2 A
B A B A B A E F ~ G
>`.pickRestart({
A: "x!2", B: "x ~@2 x!2 ~@3", C: "x!4", D: "x", E: "x ~@6 x ~ x ~@6", F: "~@5 x ~@10", G: "~@8 x!2 ~@6",
})).gain(0.76)
// drums · snare
const snare = s("sd").struct(`<
A B@27 C B@2 D E B@11 C B@15 C B@2 D E B@7 C B@7 F G B E@2 B@7 H B@7 C B@7 C B@2 D E B@11 C ~@7 I ~@2 J ~@3 J ~@3 J
~@3 J D B@12 K ~ I B@7 L M ~ N
>`.pickRestart({
A: "~@8 x ~ x!3 ~@3", B: "~ x ~ x", C: "~@4 x ~@5 x!3 ~@3", D: "~ x!3", E: "x!4", F: "~@2 x ~@3 x!2", G: "x!2 ~ x",
H: "~@4 x ~@7 x ~ x!2", I: "~@3 x", J: "x!2 ~@2", K: "x", L: "~@4 x ~@10 x", M: "~@5 x ~@10", N: "~@11 x ~@4",
})).gain(0.76)
// drums · clap
const clap = s("cp").struct(`<
~@2 A B C B C B C B@22 D E B@30 D E B@18 E@2 B@26 D E B@48 F ~@2 B@7 G H ~@2
>`.pickRestart({
A: "~@5 x!2 ~", B: "~ x ~ x", C: "~@2 x ~@2 x!2 ~", D: "~ x!3", E: "x!4", F: "x", G: "~@4 x ~@10 x", H: "~@5 x ~@10",
})).gain(0.76)
// drums · low tom
const low_tom = s("lt").struct("<~@135 A ~@3 A ~@3 A ~@3 A B ~@26>".pickRestart({
A: "x!2 ~@2", B: "~ x!3",
})).gain(0.76)
// drums · pedal hat
const pedal_hat = s("hh").struct(`<
~ 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 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@3 B A B A B A B A B A B A B A B A B A B A B@3 A@25 B A B A B A B A B A B A B A B A@25 B A B A B A B A B A B C ~@2 A
B A B A B A D E ~@2
>`.pickRestart({
A: "x!8", B: "x!7 ~", C: "x", D: "x ~ x ~ x ~@2 x ~ x ~@2 x ~@2 x", E: "~@5 x ~@10",
})).gain(0.69)
// drums · mid tom
const mid_tom = s("mt").struct("<~@171 [~@15 x] [~ x ~@6] ~@2>").gain(0.76)
// drums · open hat
const open_hat = s("oh").struct(`<
~@2 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A
~@3 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ A@3 ~@25 A ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~@25 A ~ A ~ A ~ A ~ A ~ A ~@4 A ~
A ~ A ~@2 B ~@2
>`.pickRestart({
A: "~@7 x", B: "~ x ~@6",
})).gain(0.69)
// drums · high tom
const high_tom = s("ht").struct("<~@171 [~@3 x] ~@3>").gain(0.76)
// drums · crash
const crash = s("cr").struct(`<
~ A ~@7 A ~@3 A ~@15 A ~@3 A ~@11 A ~@7 A ~@7 A ~@3 A ~@7 A ~@7 A ~@3 A ~@7 A ~@3 A ~@3 A ~@7 A ~@3 A ~@11 A ~@23 A
~@3 B ~ B ~ B ~ B ~ A ~@2 A ~@7 C ~@2
>`.pickRestart({
A: "x", B: "x!2 ~@2", C: "~@5 x ~@10",
})).gain(0.76)
// drums · cowbell
const cowbell = s("cb").struct("<~ A@30 B@2 A@30 B@2 A@18 B@2 A@26 B@2 A@12 ~@8 B@16 A@12 ~@3 A@7 C ~@3>".pickRestart({
A: "x!2", B: "x!4", C: "x ~@8 x ~@6",
})).gain(0.61)
stack(
bass, tenor_sax, brass_section, kick, snare, clap, low_tom, pedal_hat, mid_tom, open_hat, high_tom, crash, cowbell
)
More by The B-52's
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.