2013-07-08 5 views
18

WebRTCピアツーピア接続の基礎となるツールや方法がわかりましたか?WebRTCピアツーピア接続のネットワークトラッキングまたはデバッグ方法

単純な例として、webrtcを使用してビデオチャットを実装している場合、すべての接続(オファー、アンサー、アイスクリーム)は確立されていますが、ビデオストリーミングが見えません。どのようにデバッグして、これらの2人のピア間で何かを送るかどうか

答えて

20

Chromeをお使いの場合は、chrome://webrtc-internalsに移動できます。これにより、オファー、回答、ICE状態、接続に関する統計情報(確立後)が表示されます。

より詳細なデバッグでは、次のフラグでChromeを起動することによって候補者間のすべてのSTUNのpingのログを見ることができます:

--enable-logging --v=4 

ログは、ユーザーのデータディレクトリにchrome_debug.logファイルになります:http://dev.chromium.org/user-experience/user-data-directory

1

ビデオがストリーミングされない理由はいくつかあります。

  1. あなたのスタンサーバーは応答していますか?これを確認するには、受信した氷の候補をコンソールに記録します。タイプを確認してください。あなたの気絶サーバーが応答しているならば、ちょうど "ホスト"タイプの氷の候補ではなく、タイプsrflxが表示されます。 chrome:// webrtc-internalsでそれらを探すこともできます。

  2. onstreamでRTCPeerConnectionオブジェクトから返された正しいsrc BLOBをビデオ要素に貼り付けていますか?

  3. リモートビデオストリームを開始するには、JavaScriptから明示的にvideo要素の.play()メソッドを呼び出す必要があります。

1

基本的な接続状態をデバッグする方法があります。 Webアプリケーションを使用している場合は、ブラウザの統計にナビゲートできます。クロムに関しては、chrome://webrtc-internalsAPI structure)。 This threadも参考にすることができます(peerJsを使用)。 firefoxの場合は、about:webrtcを参照してください。

ネイティブアプリケーションの場合、つまりWindowsの場合は、コンパイラー自体からログを取得しています。 MS Visual Studio 2015では、デバッグ>アタッチプロセス>ネイティブアプリケーションPID、デバッグ>ウィンドウ>出力を試してください。