Webrtc-overview
WebRTC-概要
- WebRTC(Web Real-Time Communication)が登場するにつれて、Webはリアルタイム通信にとってもはや見慣れたものではなくなりました。 2011年5月にリリースされましたが、まだ開発中であり、その基準は変化しています。 プロトコルのセットは、Webブラウザワーキンググループでのリアルタイム通信によって標準化されています。 IETF(Internet Engineering Task Force)のhttp://tools.ietf.org/wg/rtcweb/で、APIの新しいセットが標準化されています W3C(World Wide Web Consortium)*のhttp://www.w3.org/2011/04/webrtc/の_Web Real-Time Communications Working Groupe_によって。 WebRTCの登場により、最新のWebアプリケーションは何百万人もの人々に簡単にオーディオおよびビデオコンテンツをストリーミングできます。
基本スキーム
WebRTCを使用すると、他のWebブラウザーへのピアツーピア接続をすばやく簡単にセットアップできます。 このようなアプリケーションをゼロから構築するには、データ損失、接続の切断、NATトラバーサルなどの典型的な問題に対処する豊富なフレームワークとライブラリが必要です。 WebRTCを使用すると、これらすべてがそのままブラウザに組み込まれます。 この技術は、プラグインやサードパーティのソフトウェアを必要としません。 これはオープンソースであり、そのソースコードはhttp://www.webrtc.org/[[[1]]]から自由に入手できます。
WebRTC APIには、メディアキャプチャ、オーディオとビデオのエンコードとデコード、トランスポートレイヤー、およびセッション管理が含まれます。
メディアキャプチャ
最初のステップは、ユーザーのデバイスのカメラとマイクにアクセスすることです。 利用可能なデバイスのタイプを検出し、これらのデバイスにアクセスするためのユーザー許可を取得して、ストリームを管理します。
オーディオとビデオのエンコードとデコード
インターネットを介してオーディオおよびビデオデータのストリームを送信するのは簡単な作業ではありません。 ここでエンコードとデコードが使用されます。 これは、ビデオフレームとオーディオウェーブを小さなチャンクに分割して圧縮するプロセスです。 このアルゴリズムは codec と呼ばれます。 膨大な量の異なるコーデックがあり、それらは異なるビジネス目標を持つ異なる企業によって維持されています。 H.264、iSAC、Opus、VP8など、WebRTC内には多くのコーデックもあります。 2つのブラウザーが一緒に接続するとき、2人のユーザーの間で最も最適なサポートされるコーデックを選択します。 幸いなことに、WebRTCはほとんどのエンコーディングをバックグラウンドで実行します。
輸送レイヤー
トランスポート層は、パケットの順序を管理し、パケット損失を処理し、他のユーザーに接続します。 この場合も、WebRTC APIを使用すると、接続に問題があるときに通知するイベントに簡単にアクセスできます。
セッション管理
セッション管理は、接続の管理、オープン、および整理を扱います。 これは一般に*シグナリング*と呼ばれます。 オーディオとビデオのストリームをユーザーに転送する場合、付随データを転送することも理にかなっています。 これは RTCDataChannel API によって行われます。
Google、Mozilla、Operaなどの企業のエンジニアは、このリアルタイムエクスペリエンスをWebにもたらすために素晴らしい仕事をしました。
ブラウザの互換性
WebRTC標準はWeb上で最も高速に進化しているものの1つであるため、すべてのブラウザーがすべての同じ機能を同時にサポートしているわけではありません。 ブラウザーがWebRTCをサポートしているかどうかを確認するには、http://caniuse.com/#feat=rtcpeerconnection [[[2]]]にアクセスしてください。すべてのチュートリアルで、すべての例については、Chrome。
WebRTCを試す
今すぐWebRTCの使用を始めましょう。 ブラウザでhttps://apprtc.appspot.com/のデモサイトに移動します
[参加]ボタンをクリックします。 ドロップダウン通知が表示されるはずです。
「許可」ボタンをクリックして、Webページへのビデオとオーディオのストリーミングを開始します。 自分のビデオストリームが表示されます。
次に、現在使用しているURLを新しいブラウザタブで開き、「JOIN」をクリックします。 最初のクライアントからのビデオストリームと2番目のクライアントからのビデオストリームの2つのビデオストリームが表示されます。
ここで、WebRTCが強力なツールである理由を理解する必要があります。
ユースケース
リアルタイムWebは、テキストベースのチャット、画面とファイルの共有、ゲーム、ビデオチャットなど、まったく新しいアプリケーションへの扉を開きます。 通信以外に、WebRTCを次のような他の目的に使用できます-
- リアルタイムマーケティング
- リアルタイム広告
- バックオフィスコミュニケーション(CRM、ERP、SCM、FFM)
- 人事管理
- ソーシャルネットワーキング
- 出会い系サービス
- オンライン医療相談
- 金融業務
- 監視
- マルチプレイヤーゲーム
- 生放送
- eラーニング
概要
これで、WebRTCという用語を明確に理解できるはずです。 また、WebRTCを使用してWebRTCを作成したことがあるため、WebRTCを使用してどのような種類のアプリケーションを構築できるかについても把握しておく必要があります。 要約すると、WebRTCは非常に有用なテクノロジーです。