3

peerjs (Webrtc) でビデオチャットを構築しています。nodewebkit バージョンと chrome バージョンがあります。しかし、何らかの理由で、chrome が nodewebkit へのメディアストリームを開始すると、nw で次のエラーが発生します。

PeerJS:  Creating RTCPeerConnection.
peer.min.js:1 PeerJS:  Listening for ICE candidates.
peer.min.js:1 PeerJS:  Listening for `negotiationneeded`
peer.min.js:1 PeerJS:  Listening for data channel
peer.min.js:1 PeerJS:  Listening for remote stream
peerJS:  Setting remote description RTCSessionDescription {sdp: "v=0↵o=- 2956768960815374026 2 IN IP4 127.0.0.1↵s…5525 label:87a9904d-945d-4393-ad98-68be98482104↵", type: "offer"}
peer.min.js:1 PeerJS:  ERROR Error: Failed to parse SessionDescription.  Failed to parse audio codecs correctly.
callingManager.js:293 webrtc:Failed to parse SessionDescription.  Failed to parse audio codecs correctly.
peer.min.js:1 PeerJS:  Failed to setRemoteDescription,  Failed to parse SessionDescription.  Failed to parse audio codecs correctly.
8peer.min.js:1 Uncaught SyntaxError: Failed to execute 'addIceCandidate' on 'RTCPeerConnection': The ICE candidate could not be added.

したがって、エラーは次のとおりです。

Error: Failed to parse SessionDescription.  Failed to parse audio codecs correctly.

Chrome への nodewebkit はうまく機能します。

Nw バージョン: v0.12.3 Chrome バージョン: 46

これはメディア コンデックの問題ですか? 誰でも助けることができますか?ありがとうございました!

4

1 に答える 1

10

Chrome 46 では、SDP m-line のプロトコルが「RTP/SAVPF」から「UDP/TLS/RTP/SAVPF」に変更されました。node-webkit は、これに対処できない非常に古い webrtc バージョン (>1 年) にあるようです。

これはかなり前から発表されています。https://twitter.com/juberti/status/656535175635963904などを参照してください。

SDP を変更し、「UDP/TLS/RTP/SAVPF」を「RTP/SAVPF」に置き換えます。

于 2015-10-22T15:46:07.253 に答える