Route mic source through analyser into a silent sink to force processing on Safari/WebKit.
Add ScriptProcessorNode raw-PCM capture path for reliable RMS/entropy sampling.
Clamp/scale levels to avoid Infinity/opacity warnings and improve UI thresholds.
Deduplicate/guard AudioContext shutdown to prevent “Cannot close a closed AudioContext”.
Improve logging around context state, pipeline init, and capture source selection.