一切正常(createOffer,createAnswer,iceCandidates,...),但是传入的remoteStream有2个轨道,正在运行的audioTrack和不使用readyState的videoTrack:"静音&#34 ;
如果我在pageload上执行createOffer然后使用相同的peerConnection再次使用start call do crreateOffer,那么视频也会正确显示(但是我会在firefox中获得"无法在州内创建提供 - 本地要约"
任何想法可能是什么问题? (代码太复杂了,不能在这里显示)
答案 0 :(得分:0)
你们双方的本地视频吗? - >在一台电脑中,只有一个浏览器可以随时访问相机(chrome / firefox) - >尝试在两台不同的机器或chrome-to-chrome或firefox-to-firefox之间进行通话。
“无法在州内提供优惠 - 本地优惠”
这意味着您已经创建了一个优惠并尝试重新创建,而无需设置远程答案。
再次调用createOffer并不是一个好主意。确保以下列方式创建商品(同步)。
答案 1 :(得分:0)
我在iOS应用程序上准备MediaStream时遇到了这个问题。事实证明我没有传递正确的RTCMediaConstraints
。
切换并使用[RTCMediaConstraints defaultConstraints]
后,问题得以解决。
例如:
- (RTCVideoTrack *)createLocalVideoTrack {
RTCVideoTrack* localVideoTrack = nil;
RTCMediaConstraints *mediaConstraints = [RTCMediaConstraints defaultConstraints];
RTCAVFoundationVideoSource *source =
[[self peerConnectionFactory] avFoundationVideoSourceWithConstraints:mediaConstraints];
localVideoTrack =
[[self peerConnectionFactory] videoTrackWithSource:source
trackId:kARDVideoTrackId];
return localVideoTrack;
}