Audio Glitch Diagnostic

Test whether sample-rate forcing, ScriptProcessor vs AudioWorklet, audio constraints, buffer size, and base64 batching might be causing crackling/jitter on specific devices.

Capture mode
Input constraints
Channel count
Requested mic sample rate (hint)
AudioContext
Context sample rate
ScriptProcessor buffer size
Encoding

If you hear crackles only in ScriptProcessor mode or only when forcing 16k context, that strongly suggests a scheduling/resampling issue on that device.

Tip: run the same settings twice—once idle, once while scrolling or opening other apps—to reveal main-thread sensitivity.

Device & engine info
User agent
Platform
Actual AudioContext rate
What the browser really used.
Mic track settings rate
Read from MediaStreamTrack.getSettings().
Realtime stability
Callbacks
0
Audio processing events received.
Avg interval (ms)
Time between callbacks.
Jitter (std ms)
Higher = more glitch risk.
Max delay spike (ms)
Worst observed stall.
RMS level
Input loudness estimate.
Health hint

This waveform is just a fast visual check. The more important signal is callback jitter and spike size.

Event log
The log records the chosen settings and any errors. Share this when comparing devices.