私は間にゲートウェイを使用してTCP経由でWebRTCメディアを作成しようとしていますが、ICE接続フェーズで興味深い問題があります。さらに進歩を遂げる前に、私はUDPの設定が同じで、すべてが正しく動作することを知っておくことが重要です。Chrome WebRTC over TCP
a=candidate:1 1 tcp 1 <gw_ip> <gw_port> typ host tcptype passive generation 0
はまた、私はパッシブとしての属性の設定を送信している:我々は、単一のTCP候補を(メディアポートは、同じポートを含むように修正された)を含むように、リモートアンサーSDPを変更するゲートウェイで
:
a=setup:passive
秒Chromeでのリモート記述を適用した後、私は私がバインド成功応答で答えてるゲートウェイ(私はトランザクションIDとメッセージ整合性の両方をチェックした上でSTUN BIND要求を受けたことだし、彼らはうまくいくようです)。
このクロムの後では、ICEチェック(DTLSメッセージではありません)を続行しません。私は外観を撮影した「共有ソケット上でSTUNバインディング応答メッセージを無視する」
を
:私はいくつかのエラーが起こっていたかどうかを確認するためにクロムのログを有効にしていると私は、興味深い出力を見つけましたクロムソースコードでは、これは表示されているようですが、クロムは共有ソケットを使用していますが、理由はわかりません。
アイデア?ありがとう!
は、それがのWebRTCでTCPパケットを介してメディアを転送することは可能ですか? – sureshkumar
@sureshkumarはい、可能ですが、webrtc側にメディアを送る前に、長さのフレーミングメカニズムが実装されていることを確認してください。詳しくはhttps://tools.ietf.org/html/rfc5389をご覧ください。 –