LiveKit's server-side VAD has a high, non-configurable threshold that misses conversational speech. Replace it with a SpeakingDetector singleton that uses Web Audio AnalyserNodes to read actual RMS levels per participant (50ms poll, 0.008 threshold, 250ms hysteresis hold).