我正在使用 Electron(版本 10,Chrome v75)和 WebRTC 构建视频会议应用程序。该应用程序有多个窗口,在每个窗口中,我都有一个单独的 RTCPeerConnection 和不同的应用程序用户。问题是,如果我不使用耳机,就会有强烈的回声,使该应用程序几乎无法使用。
我尝试设置各种getUserMedia选项,例如echoCancellation: true或googEchoCancellation: true、echoCancellationType: "browser"/"system",但没有一个能够消除各种声源的回声。
此问题仅出现在 Mac 和 Linux 上,而 Windows 可以非常有效地抑制回声。
我发现这个 Chromium 问题更详细地描述了类似的问题。
另外,当我在 Chrome + Mac 或 Linux 上尝试这个Fiddle时(尽管 Chrome 对于这种情况并不完美,请在此处找到更多详细信息),我没有看到回声消除的效果,并且回声仍然存在。然而,同样的事情在 Chrome + Windows 或 Firefox + 任何操作系统上都可以完美运行。
Chrome 中的 AEC(回声消除)真的没有考虑到所有声源吗?有人知道解决方法吗?
Google QUIC 是一种新的传输协议。它使用 UDP 并提供一组非常好的功能:
在他们的 SIGCOMM17 出版物中,他们讨论了 QUIC 的一些性能优势,但我的问题是:
我们是否真的需要放弃传统的基于 TCP 的技术并转向 QUIC?什么是 QUIC 的杀手级应用?除了 Google 之外还有其他人使用 QUIC 或至少觉得他或她应该这样做吗?
我的感觉是,通过使用 TCP 快速开放或多路径 TCP 等现有系统,我们有机会实现大部分承诺的好处。