我正在尝试让 webRTC
应用程序在 iPad (iOS7) 上运行。我的两台设备都显示本地视频,一台尝试显示远程视频(已添加流),但远程视频屏幕保持黑色。
在试图找出为什么我的远程视频屏幕是黑色的时,我发现了这个回调
:
- (void)peerConnectionOnRenegotiationNeeded:(RTCPeerConnection *)peerConnection_ {
NSLog(@"peerConnectionOnRenegotiationNeeded:(RTCPeerConnection *)%@",peerConnection_);
}
在 appRTC
示例中,它是这样实现的:
- (void)peerConnectionOnRenegotiationNeeded:(RTCPeerConnection*)peerConnection {
dispatch_async(dispatch_get_main_queue(), ^{
NSLog(@"PCO onRenegotiationNeeded - ignoring because AppRTC has a "
"predefined negotiation strategy");
});
}
调用这个方法应该做什么?我问这个是因为我认为我拥有与示例几乎相同的所有内容,只是信号不同,但它仍然不起作用。我想我应该在这个回调触发时做点什么,因为我没有像示例那样的“预定义协商策略”。
我的环境:
- 在 iPad3 和 iPad4 上测试
- 两者都运行最新的 iOS
- 使用 Xcode 5.1.1 版 (5B1008) 进行开发
- 我有自己的信令服务器
- 我还没有设置 stun 服务器,因为我还在 LAN 上测试
- 我尝试设置一个 stun 服务器,但没有任何区别
最佳答案
原来我只需要重新创建 sdp 并发送它,我现在就可以使用音频了。
关于ios - 在 webrtc 回调 "- (void)peerConnectionOnRenegotiationNeeded:(RTCPeerConnection *)peerConnection"中应该做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420806/