首页 > 解决方案 > Opentok + 自定义音频网络声音创建声学反馈

问题描述

我有一个使用 opentokjs 的 Web 应用程序。在这个应用程序中,在一对一的视觉会议中,我们使用音频 Web API 播放一些自定义声音缓冲区。

这样做有时会发生可怕的声反馈。

在下文中,我将获取声音反馈的用户称为“本地”,而将其他用户称为“远程”。

我做了以下测试: - 禁用远程的麦克风和扬声器 => 反馈仍然发生 - 禁用本地的麦克风 => 反馈停止

从这些测试中,我推断出某个地方存在一个本地循环,这意味着本地 opentok 发布者在本地订阅者上发出。

有没有办法停止这个本地循环?我应该在我的网络音频缓冲区上激活某种回声消除吗?如何?

标签: webrtcweb-audio-apiopentok

解决方案


经过一番挖掘,我决定使用 OT.audioContext 而不是 window.AudioContext 来构建我的网络音频节点并将它们链接到 OT.audioContext.destination 并且它确实有效。

遗憾的是 OT.audioContext 没有在文档中描述,所以它可能会在未来发生变化,但现在,它正在工作


推荐阅读