google-chrome - 发送答案之前收到ICE候选人时的错误

标签 google-chrome webrtc

我正在Chrome 23上建立WebRTC连接。要连接本地流,您需要允许浏览器使用摄像头和麦克风。在主叫方,我正在检查是否可以获取本地流,并且直到这一刻才发送报价。然后要约被发送,浏览器立即开始发送ICE候选者。

然后,如果远程浏览器还没有获得本地媒体流,那么我收到的每个ICE候选人都会在SYNTAX_ERR: DOM Exception 12上获得peerConnection.addIceCandidate(candidate)

我在addIceCandidate上检查了documentation,但没有有关先决条件的信息。

我认为我可以通过延迟提供者并等待远程客户端添加本地流的信号来延迟从提供者发送ICE候选者,但这是需要的额外通信,而且看起来不正确。

我可以在发送答案和附加本地媒体流之前以某种方式将远程ICE候选者添加到webkitRTCPeerConnection吗?

最佳答案

在我写下这个问题之后,我想到了一个答案……在接收ICE候选人之前不需要附加本地流,但是应该设置remoteDescription(应在收到报价时完成)。在我的代码中,我等待设置remoteDescription并发送答案,直到浏览器获取本地流。

关于google-chrome - 发送答案之前收到ICE候选人时的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13396071/

相关文章:

c++ - 自定义视频采集原生webrtc

jquery - 二级菜单下拉 Google Chrome

javascript - 将数据附加到 simpleWebRTC 房间或视频

javascript - 通过 Web 凭证 API 通过 JavaScript 对象存储凭证?

android - 通过单击浏览器链接触发 WhatsApp Intent

javascript - Webrtc 与 Goinstant 无法跨不同网络工作

javascript - WebRTC 从不触发 IceCandidate

javascript - 为什么 Chrome 不显示允许或禁止麦克风和网络摄像头权限的提示?

html - 为什么 Chrome 会包裹这个表格?

google-chrome - 从 Chrome 存储中获取所有 key