RNNoise is currently never applied to outgoing voice audio. Voice uses 48 kHz, 20 ms frames (960 samples), while the RNNoise path only accepts a single 480-sample frame. Additionally, VoiceClient does not enable the noise filter.
As a result, unwanted sounds such as keyboard noise and push-to-talk button clicks are transmitted instead of being suppressed.
Requested/Possible change:
- Enable RNNoise for voice capture.
- Process each 960-sample voice frame as two consecutive 480-sample RNNoise blocks before Opus encoding.
- Add coverage confirming RNNoise runs for every outgoing 48 kHz voice frame.
- Verify that speech onset remains intact and keyboard/PTT clicks are reduced.
Let me know if you want me to give this a shot myself.
RNNoise is currently never applied to outgoing voice audio. Voice uses 48 kHz, 20 ms frames (960 samples), while the RNNoise path only accepts a single 480-sample frame. Additionally, VoiceClient does not enable the noise filter.
As a result, unwanted sounds such as keyboard noise and push-to-talk button clicks are transmitted instead of being suppressed.
Requested/Possible change:
Let me know if you want me to give this a shot myself.