没有从Firefox到Chrome的WebRTC视频信号,但所有其他组合都有效

时间:2015-12-30 15:28:36

标签: google-chrome firefox webrtc

我有一个使用adapter.js实现WebRTC的Web应用程序,并且大多数情况都有效。 Firefox到Firefox和Chrome到Chrome的工作正常,但是:

当Chrome和Firefox连接时,Firefox端的视频不会显示在Chrome端。 音频确实有用!,因此webrtc频道很好。

  • 计算机位于同一网络中
  • (我确实有STUN / TURN功能,但我认为这无关紧要)
  • 哪一个发起呼叫无关紧要
  • Chrome总是看不到Firefox,Firefox总是看到Chrome
  • 没有错误,没有警告,所有预期的回调都会触发,握手似乎已经完成了
  • Alice在onicecandidate的“结尾”向Bob发送了她的冰候选人。鲍勃做了同样的事情,但时间可能比我在这里意识到的更重要。
  • 两个视频元素都已创建,blob src(使用srcObject)和onloadedmetadata两个浏览器都会触发
  • 发生在每台计算机上(在5台计算机上尝试了~20种组合)

偶尔其他事情会失败,例如ICE协商(即使它始终是相同的网络),createOffersetRemoteDescription有时会失败。

我能找到的所有问题都是从2 - 3年前开始的,但之后Firefox和Chrome似乎都是优秀的RTC好友。我的视频发生了什么?

相关,但不是解决方案:

1 个答案:

答案 0 :(得分:1)

可能这是关于在API中同步或不同步发生的事情的假设的问题。 API非常异步,并且在浏览器之间(或同一浏览器的不同版本之间)同步或不同步发生的事情会有所不同。您可能需要使用adapter.js仔细比较代码与其他示例。

如果没有代码或相关代码段,很难确切地说出错误,无论要检查的重要事项是什么:webrtc(适用于Firefox,包括底部的连接日志),chrome webrtc内部页面和内部日志记录。还添加自己的回调/承诺发生的记录,并没有。我建议在firefox中设置env vars NSPR_LOG_MODULES = signaling:4,mtransport:4和NSPR_LOG_FILE =无论如何。你也可以(尤其是那些日志或一些示例代码)在irc.mozilla.org上的#media中ping Firefox开发人员。