A rolling buffer
Incoming microphone samples are continuously written into a circular buffer a couple of seconds long, always keeping recent audio on hand.
Shift your live microphone up or down by semitones in near real time, built entirely from native Web Audio nodes.
There's a short (roughly 150-200ms) delay between speaking and hearing the pitched result — see the FAQ below for why.
🔒 Your microphone audio is processed entirely in your browser and is never uploaded.
True sample-by-sample pitch shifting isn't practical with plain AudioNodes, so this tool uses a different trick: it continuously records your microphone into a rolling buffer, then repeatedly slices out short overlapping "grains" of recent audio and replays each one through a pitch-shifted playback rate, scheduled precisely on the Web Audio clock.
Incoming microphone samples are continuously written into a circular buffer a couple of seconds long, always keeping recent audio on hand.
Every 60 milliseconds, a fresh 120-millisecond grain is read from just behind the write head and scheduled to play back at your chosen pitch ratio.
Grains are read slightly behind the write head for safety, and playback itself takes time — together that's the source of the short, noticeable lag.
Every step — capture, buffering, resampling, playback — runs inside the Web Audio API in your browser. Nothing is ever sent to a server.
This tool processes your microphone audio in short overlapping chunks called grains, about 120 milliseconds each, which adds up to roughly 150-200 milliseconds of latency between speaking and hearing the pitch-shifted result. That delay is a normal trade-off of processing audio in small buffered pieces rather than sample-by-sample, and it's what makes near-real-time pitch shifting possible using only standard Web Audio nodes.
Yes. Your browser will ask for microphone permission when you press Start. If you deny it or no microphone is available, the tool shows an error and won't start.
No. Unlike the Audio to Text Transcriber on this site, which relies on your browser's cloud speech service, this pitch changer never sends your audio anywhere — every bit of processing happens locally in your browser using the Web Audio API, and your microphone stream is discarded the moment you press Stop.
Drag it from -12 to +12 semitones, the same musical unit used by this site's Audio Pitch Shifter for uploaded files. Positive values raise your voice, negative values lower it, and 0 passes your voice through unchanged. You can move the slider while listening — the new pitch applies to the next scheduled audio grain, no restart needed.
Because it's built from short overlapping grains rather than a full-spectrum pitch algorithm, larger shifts or fast speech can sound slightly grainy. That's an inherent trade-off of the lightweight technique used here, which relies only on native Web Audio nodes instead of heavier processing.
More handy tools from My Panda Toolbox.