2016-07-05 40 views
6

氷の候補を追加しようとすると、このエラーDOMException: Error processing ICE candidateが発生します。ここで、候補者は次のとおりです。DOMException:ICE候補を処理中にエラーが発生しました

候補:1278028030 1つのUDP 2122260223 10.0.18.123 62694標準ホスト 世代0 ufrag eGOGlVCnFLZYKTscネットワークID 1

また、それは常に発生しません - 他の時間のすべてが行きますスムーズに。私はこのエラーを投げる一貫したパターンを再現することができません。任意のアイデアをどのようにこれを解決する/それをデバッグに行くと感謝される!

答えて

8

この問題はほぼ完全に文書化され、そしてさらに悪いことには、GoogleはW3ののWebRTCの標準を実装しているようです。彼らはまた、この標準から逸脱しています。

しかし、この(私は、Firefoxをチェックしていない、とSafariがgetUserMedia()を実装していません)Chromeで発生しますが、コンソールからChromeを起動することにより得られるこのエラーメッセージは、おそらく役立つ可能性が最も高いと:

[ERROR:rtc_peer_connection_handler.cc(1439)] Error processing ICE candidate. 
[ERROR:webrtcsession.cc(1134)] ProcessIceMessage: ICE candidates can't be added without any remote session description. 

したがって、Chromeの最新のビルドに従ってリモート記述を設定せずにICE候補を追加することはできません.2017年にはFacebook Messenger以外のwebRTCの進捗状況がないため、これは予測可能なものとして有効です。未来。

ので

if(!peerConnection || !peerConnection.remoteDescription.type){ 
    //push candidate onto queue... 
} 

を呼び出すと、リモートの説明を設定した後、右の状態でのピア接続で候補者を追加するためのキューを反復することを忘れないでください!あなたがあなた自身のピア(ローカル)IDに接続しようとすると

1

2回目のオファー・アンサーを行うと動作します。なぜこれが必要なのかわからない。

1

あなたはsetRemoteDescriptionを呼び出す前に候補を追加していますか? Firefox 36はリモート記述の前に候補者を送ったが、それは長い間解決されていたという問題があった。

1

あなたの周りに複数のRTCPeerConnectionオブジェクトを保持している場合は、あなたが正しいものにICE候補と説明を追加していることを確認しなければなりません。

0

も、このエラーが発生することがあります。

1

これは時代遅れかもしれないが、私はChromeで、

を同じエラーが発生しました私は、FirefoxでDOMException: Error processing ICE candidate

を得た、唯一のDOMExceptionを述べたエラーが発生しました。

追加メッセージは"Invalid candidate (both sdpMid and sdpMLineIndex are null)."でした。まさにそのケースでした。私は氷の候補についてシグナリングサーバから得た応答から実際には使用しませんでした。 I信号を受信したときに、これら2つの値を使用し

が再び起こってからこのエラーを停止します。

これは他の人に役立つことを願っています。

関連する問題