我正在开发一个ios应用程序,并集成了WebRTC来进行视频通话。对于拨出电话来说,一切正常。但是,当我想接收视频通话时,在设置本地描述时,didGenerate 委托不会向我返回视频通话的 ICE 候选项(candidate.sdpMid 属性应为 1),它仅向我返回音频的 ICE 候选项,其中 Candidate.spdMid是 0。
这是我正在做的步骤:
- 收到传入视频呼叫后,我正在处理 RemoteSdp(a 具有 m=video 的所有参数),使用 Offer 创建 RTCSessionDescription
- 在我准备媒体之后(将视频轨道添加到peerConnection)
- 将远程描述设置为peerConnection,并在其回调中创建answerForConstraints,其中OfferToReceiveVideo 和 OfferToReceiveAudio 为true。
- 在answerForConstraints的回调中,我通过setLocalDescription从回调中设置localSdp。
- 然后Webrtc正在生成ICE候选,并且没有视频候选。通常 ICE 候选者应该包含在属性candidate.sdpMid = 1中用于视频,但我得到的candidate.sdpMid = 0(仅适用于音频)。