Я создал простой потоковый сервис с использованием WebRTC.В настоящее время я все еще запускаю все через localhost.В настоящее время все работает при использовании браузера Chrome, но я не могу подключиться, когда я использую Firefox.Я использую прокладку WebRTC-Adapter.
Похоже, проблема связана с тем, что peerConnection.localDescription всегда равно null и не может отправить мое localDescription равноправному узлу или правильно установить remoteDescription.
Вот фрагмент моего кода.Это касается только получателя потока, который инициирует соединение p2p.Стример уже настроил локальный поток и устанавливает свое собственное локальное и удаленное описание, а затем localDescription отправляется получателю.sendRecipientDescription () просто обрабатывает отправку sdp стримеру через сокеты.PC_Config включает в себя только сервер STUN:
setUpRecipient = () => {
this.createPeerConnection();
this.pc
.createOffer({ offerToReceiveVideo: true })
.then(offer => {
this.pc.setLocalDescription(offer);
})
.then(() => {
this.sendRecipientDescription();
console.log('recipient local description ', this.pc.localDescription);
})
.catch(e => {
console.log('error recipient set up ', e);
});
};
createPeerConnection = () => {
try {
this.pc = new RTCPeerConnection(PC_CONFIG);
this.pc.onicecandidate = this.handleIceCandidate;
this.pc.ontrack = this.handleRemoteStreamAdded;
this.pc.onremovetrack = this.handleRemoteStreamRemoved;
this.pc.oniceconnectionstatechange = this.handleIceStateChange;
console.log('Created RTCPeerConnection', this.pc.localDescription);
} catch (e) {
console.log('Failed to create PeerConnection, exception: ', e.message);
}
};
При использовании браузера Chrome this.pc.localDescription возвращается так, как ожидалось.При использовании браузера Firefox this.pc.localDescription всегда имеет значение null, RTCSessionDescription вообще отсутствует.Когда я console.log (this.pc) после setLocalDescription, создается впечатление, что localDescription действительно имеет значение null: RTCPeerConnection un-extended
Однако, когда я раскрываю объект RTCPeerConnection, вы видите, чтоПохоже, что localDescription настроено правильно: RTCPeerConnection расширен .Но когда я пытаюсь отправить this.pc.localDescription, он отправляет только ноль.