I was a kid when beatboxing started and thought it was amazing then. Fast forward a few decades and it’s unrecognizable. No longer a niche part of hip hop culture, beatboxers come from all over the world.
The top beatboxer today is an amazing guy who calls himself Wing. After watching the video for his song, Dopamine, I was blown away. Seriously blown away. Was it real? Fake? Did he use effects on his mic?
After watching several more videos of him in competition and a few beatbox instructors showing how to make the sounds, I’m convinced he’s legit.
So I did what anyone would do…I vibe-coding an app to do spectral analysis of beatboxer audio!
Spectrograms are a common way to visualize audio data. They plot frequencies as a function of time. The image below shows a spectrogram for the spoken phrase “nineteenth century”. I wonder what Dopamine would look like?
After a few minutes I had an answer. Selected snippets from my Claude Code session to build the app follow.
I don’t know what “uploaded in Plate” means. It must have been a typo on my end but it didn’t matter. In no time, Claude had the basics of an app:
My app needs an audio file but all I had was a link to the YouTube video. Thankfully, a built a little tool a few months ago to extract audio from any YouTube link. You can get it here.
Here’s what the opening looks like. The peaks are woosh sounds and the spaces between peaks are him sounding like a trumpet.
This was satisfying, but there were plenty more fun things to add…like a chatbot that’s an audio and beatbox expert. This would let me pass sections of spectra to it and learn what techniques were being used.
After a few tweaks I had my little beatbox buddy. I’ll call him Fricky. Now I can just push a button and the app passes in a snapshot of the visible section and asks, “what’s going on here?”
(Note that I’ve since switched it to use gpt-5 because it seems more aware of beatbox techniques than Claude. What a weird thing for a model to be good at)
Here’s another part of the audio - in this case I spotted a bright line moving up from the bottom and asked Fricky about the technique:
But wait, there’s more!
Wing can produce different sounds simultaneously so it’s tough to tell what’s going on. A solution is to add an EQ that allows for frequency range separation. Claude was able to quickly whip up a parametric EQ that lets me boost some frequencies and cut out others.
I used it in amazement at this part of the tune. Notice the wide bars in the middle of the image. He’s making insanely low bass sounds and, according to Fricky, this is done through a combination of “throat bass” and “false-cord bass”.
I asked Fricky how the frucky to make a false-cord bass sound and learned:
Start with a quiet growl
Do a low “creepy monster” / “zombie” sound:
Mouth relaxed, jaw a bit dropped.
Say a very low, airy “hhhh-uhhh” or “rrrr” without forcing pitch.
You’re aiming for a rough, rattly vibration in the upper throat/chest, not a clean note from your normal voice.
Turn it into a held tone
Once you feel the rough buzz, try holding one pitch:
Think of a quiet “URRR” or “VROOO” but keep it raspy and breathy.
If your normal vocal cords are taking over (it sounds like normal singing), relax more and lower the airflow until the roughness comes back.
Drop the pitch
Let your larynx sink down (like yawning or imitating a super‑low movie trailer voice).
Keep the buzz; don’t push hard. The lower and lazier the setup, the deeper the bass.
Shape the resonance
Open mouth, tongue relaxed and slightly back, soft palate lifted (like yawning).
Move from “AAA–OOO–UUU” silently while keeping the growl; you’ll hear the tone and harmonics shift.
This is how you get those changing bars under 3 k on the spectrogram.
Blend with air or lips (optional)
For more sub, gently add a soft lip oscillation on top of the false‑cord buzz (like a very slow “brrrr”) while keeping the throat vibrating.
I don’t think I’ll become a beatboxer any time soon, but at least I can have fun analyzing the best of them.
Here’s the source code if you’d like to try it yourself.












