webRTC视频聊天中的噪音/回声

时间:2013-08-09 10:30:43

标签: javascript audio echo webrtc

我使用webRTC和tomcat 7创建了一个应用程序。我可以连接两个客户端进行视频聊天。一个客户端是索尼笔记本电脑,另一个是惠普台式电脑(使用Logitech webCam)。视频工作正常,但音频产生太多回声。 我有多次谷歌,但我没有找到任何解决方案。

使用getUserMedia()或PeerConnection()API可以在java脚本级别解决这个echo问题吗?

我检查过我的浏览器版本都是chrome 28 +。

请帮帮我。

4 个答案:

答案 0 :(得分:1)

五月this comment可以帮到你。软件推荐似乎是唯一的“简单”解决方案。或者 Windows> = 7 的设置,如here所述。

<强>更新

默认音量必须设置为“ 0 ”,直到远程媒体流开始流动;使用“setTimeout”等待至少“ 1 ”秒,然后将音量设置回“ 1 ”。

实际上,一旦“onaddstream”事件触发,噪音就会出现“巨大音频”带宽。

如果您通过“ chrome:// webrtc-internals ”检查“ audioInputLevel ”,您会看到其值类似于“ 25000 ” “只要” onaddstream “事件触发;然而,在几毫秒之后,“ audioInputLevel ”在 1-and-150 之间下降并保持较低。

于2016年1月12日更新

此文档可能有所帮助:http://www.slideshare.net/MuazKhan/echo-in-webrtc-why

您甚至可以将VoiceActivityDetection:false设置为SDP约束,以最小化对等级回声。

答案 1 :(得分:0)

避免本地流噪声的解决方案是,只需转到你的html文件,其中元素就在那里,只需添加muted =“muted”。这样可以避免本地流的噪声,直到远程流启动

答案 2 :(得分:0)

您应该将muted="muted"属性添加到您要向其传输本地视频的video元素。在这种情况下,您将听到远程对等视频的声音,但不会听到您的本地视频。

答案 3 :(得分:0)

添加属性muted =&#34; muted&#34;在用于流式传输的视频标签中将解决此问题。