firefox - Moz RTCPeerConnection() 上 FireFox 中的 NS_ERROR_UNEXPECTED

标签 firefox webrtc

我在我的 webrtc 1-1 视频通话应用程序中使用adapter.js。它在 Google Chrome 上运行良好,双方都可以看到彼此的视频并可以听到音频。但是,当我在 FireFox 上运行相同的应用程序时,我在控制台上收到以下来自 adapter.js 的错误。

NS_ERROR_UNEXPECTED

这是来自adapter.js的函数,它在返回语句上给出了上述错误:

var RTCPeerConnection = function(pcConfig, pcConstraints) {
  // .urls is not supported in FF yet.
  maybeFixConfiguration(pcConfig);
  return new mozRTCPeerConnection(pcConfig, pcConstraints);
};

这是 pcConfig 内部的内容:

{"iceServers":[{"url":"stun:stun.l.google.com:19302"}]}

这是 pcConstraints 内部的内容:

{"optional":[{"DtlsSrtpKeyAgreement":true},{"RtpDataChannels":true}],"mandatory":{}}

这就是函数 maybeFixConfiguration(pcConfig) 的样子:

function maybeFixConfiguration(pcConfig) {
  if (pcConfig == null) {
    return;
  }
  for (var i = 0; i < pcConfig.iceServers.length; i++) {
    if (pcConfig.iceServers[i].hasOwnProperty('urls')){
      pcConfig.iceServers[i]['url'] = pcConfig.iceServers[i]['urls'];
      delete pcConfig.iceServers[i]['urls'];
    }
  }
}

我不明白我在这里犯了什么错误。 pcConfig 和 pcConstraints 结构有问题。我正在使用今天下载的最新版 FireFox。

最佳答案

这可能已经过时,但可能会有所帮助。 在创建new RTCPeerConnection(config)时,我遇到了相同的NS_ERROR_UNEXPECTED

我的问题是我的 iceServers 数组有一个无效的 urls 部分,这给 Firefox 带来了问题,特别是我有 urls: '转:someUsername@ipAddress:port'

一段时间后我发现 someUsername@ 不被 FF 接受,尽管它可以在 Chrome 上运行。

删除字符串的 username@ 部分解决了我的问题,希望有帮助。

关于firefox - Moz RTCPeerConnection() 上 FireFox 中的 NS_ERROR_UNEXPECTED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30581417/

相关文章:

javascript - 手机的相机与浏览器的相机图像质量

android - 使用 OpenGL 将位图绘制到 VideoFrame

css - Chrome 浏览器中 css 网格的奇怪行为?

android - 无法在 ubuntu 14.04 中安装 gclient 命令

webrtc - 如何使用Proxy server让Ant Media Server验证license?

javascript - $ (":focus") 在 Firefox 中没有为 &lt;input type ="file"/> 返回任何元素

android - 无法访问 android webview 上的本地媒体

firefox - 如何获取具有多个来源的视频的 src?

firefox - 运行 MTAF 时使用 selenium server 2.24.1 和 firefox 13 截屏

javascript - .js 文件在 firefox/tomcat/eclipse 中的奇怪缓存