← Work
Prototype · actively evolving · 2026 · Solo build
Beatbox Viz
It hears you beatbox — kick, hat, snare — and erupts the letters in 3D on your webcam.
What it is
A browser prototype: a microphone onset detector classifies beatbox hits (kick / hat / snare) in real time and bursts 3D letterforms onto a live webcam feed, timed to each hit.
The problem
I've been a beatboxer for over ten years. I wanted to make that language visible — to drive live visuals from beatboxing itself, and test whether onset classification and latency were good enough before investing in a heavier pipeline.
What I built
An AudioWorklet computes an energy envelope on small sample blocks for low-latency onset detection; a spectral heuristic — with an optional nearest-centroid calibration mode — classifies each hit as kick, hat or snare; MediaPipe tracks the face on the webcam feed while three.js erupts the matching letterform in 3D, timed to the hit.
Stack
three.jsMediaPipeAudioWorkletWeb Audio APIgetUserMedia
Results
- ~50–80ms perceived latency, tuned live
- Kick / hat / snare onset classification, calibratable
- 3D letterforms on a live webcam feed
What it shows
Comfort at the metal of real-time audio DSP and browser media — and the habit of de-risking a hard idea with a fast prototype before scaling it.