我正在使用 jsSIP 库开发一个 WebRTC 项目。一个用户通过浏览器进行连接,另一个用户通过调用真正的电话进行连接。在查看录音时,我发现了一个问题。如果电话用户一侧背景噪音较大,对方的声音会被抑制5-6秒,听不清。然而,过了这段时间,浏览器用户的声音就可以被清晰地听到,背景噪音也被抑制了。我在 Chrome 和 Firefox 上都进行了测试。
我怀疑该问题可能与噪声抑制、回声消除和自动增益控制等限制有关。当我关闭回声消除时,我看到前几秒的语音抑制问题消失了,但在这种情况下,用户的语音抑制背景噪音的情况并没有发生。我正在寻找一种不涉及关闭回声消除约束的解决方案,因为我不想失去此功能。
我还尝试禁用我提到的其他约束,但这没有任何区别。
是否有已知的方法可以缩短通话开始时 5-6 秒的延迟?我还应该看哪里?
最佳答案
调用开始时的这种回声泄漏不是您可以通过 Javascript 影响的。
最近有一些工作致力于改进 Chrome 在此类情况下的行为,例如this issue或this issue
关于webrtc - 如何减少回声消除使语音正常化所需的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75893788/