【发布时间】:2015-01-22 21:26:48
【问题描述】:
我在两个浏览器站点之间进行流式传输,一个称为主站点,另一个称为从站点。 主将视频流式传输到从属。 Master 始终处于活动状态,slave 有时会连接。
我用这个配置在两边发起连接:
{'iceServers': [{'url': 'stun:mystunserveraddress'}]},
{'optional': [{'DtlsSrtpKeyAgreement': true},{'RtpDataChannels': true}]}
Master 发送不接收音频和视频的提议。 从机处理提议并回答接收视频的提议。 大师处理答案。
Ice 候选者在双方都进行处理。 视频在发送优惠之前附加到对等连接。
我测试了它可以与以下 Master->Slave 的组合一起使用:
- Android Chrome->Linux Chrome - 工作
- Android Chrome->Linux Firefox - 工作
- Android Firefox->Linux Firefox - 工作
- Android Firefox->Linux Chrome - 不起作用
- Linux Chrome->Linux Chrome - 工作
- Linux Chrome->Linux Firefox - 工作
- Linux Firefox->Linux Firefox - 工作
- Linux Firefox->Linux Chrome - 不起作用
- Linux Chrome->Windows Chrome - 不起作用
- Linux Chrome->Windows Firefox - 工作
- Linux Firefox->Windows Firefox - 工作
- Linux Firefox->Windows Chrome - 不起作用
为什么它不适用于这些组合?没有给出错误。一切看起来都很正常,但是slave上的视频元素是空白的。
从两端提供音频和视频,或者 auto 不会改变任何东西。
在 Firefox 主服务器上我有两个“连接”状态,在 Chrome 从服务器上我有“检查”状态。
我已经在本地服务器和远程服务器上测试过,行为相同。
它也不适用于 AppRTC 示例。
【问题讨论】:
-
它可能由于错误而无法正常工作。两种浏览器中的实现都不是最终的或没有错误的。
-
感谢您修复格式,还不太明白。
-
也许是这样,但他们说的任何地方,Chrome 和 Firefox 之间的互操作从 2013 年开始就有效。但我无法让 Linux Chrome->Windows Chrome 正常工作。
-
不同操作系统上的浏览器有不同的操作系统交互/驱动程序/版本。我会发布带有您的软件版本和正在发生的错误的错误报告。
-
Benjamin 是对的,windows 上的 chrome 和 linux 上的 chrome 使用不同的堆栈。您可以在那里发布错误:code.google.com/p/chromium/issues/list
标签: javascript linux google-chrome firefox webrtc