WebRTC - RTCDataChannel デモ、API の変更、Chrome と Firefox の通信

古くからおなじみの WebRTC に関する朗報がもう 1 つあります。

正確に言うと、3 つのうれしいニュースと、いくつかのマイナーな API の変更です。

Chrome の RTCDataChannel

RTCDataChannel は Chrome に実装されています。simpl.info/dc でデモを試すことができます。

このデモでは、100 行未満のコードを記述して任意のデータのピアツーピア通信を行います。これには Chrome 25 以降が必要です。現時点では、Beta または Canary です。

RTCDataChannel は、RTCPeerConnection に組み込まれている機能(特に、ファイアウォールと NAT を通過するための ICE フレームワークの使用)を最大限に活用します。低レイテンシが不可欠なゲーム、リモート デスクトップ アプリケーション、リアルタイムのテキスト チャット、ファイル転送など、さまざまなユースケースに使用できます。

RTCDataChannel の詳細については、WebRTC のスタートガイドをご覧ください。

API の変更

あまり目立たない変更ですが、重要です。Chrome 26 より、RTCPeerConnection と MediaStream API の一部のプロパティがゲッター メソッドになりました。

  1. MediaStream に、audioTracks プロパティの代わりに getAudioTracks() メソッドと、videoTracks の代わりに getVideoTracks() が追加されました。
  2. RTCPeerConnection に、localStreams の代わりに getLocalStreams()remoteStreams の代わりに getRemoteStreams() が追加されました。

MediaStream の動作を確認するには、simpl.info/gumgetUserMedia デモをご覧ください。stream 変数はグローバル スコープにあります。コンソールから確認します。同様に、simpl.info/pc の RTCPeerConnection の場合、RTCPeerConnection オブジェクト pc1pc2 はグローバル スコープにあります。

Chrome <=> Firefox

また万が一見逃した 場合、Chrome は Firefox と「会話」できるようになりました。

webrtc.org/start で今すぐお試しいただけます。このページには、詳細な手順、ソースコードへのリンク、API の違いに関する情報が記載されています。

実現に尽力した Mozilla と Google の皆様に感謝します。

ぜひご活用ください。バグが見つかった場合は、この投稿へのコメントまたは bugs.chromium.org からお知らせください。最新の実装情報については、chromestatus.com をご覧ください。