白石 俊平

Googleが語る、WebRTCテクノロジーの最前線

こんにちは、編集長の白石です。

本日は、WebRTC Conference 2016に来ております。 WebRTCの「今」をお伝えするレポートを、HTML5 Experts.jp編集部一同よりお送りいたします。

まずは基調講演より。「Status Update on WebRTC from Google」と題した、GoogleプロダクトマネージャーWebRTC ニコラス・ブルーム氏によるセッションです。

▲GoogleプロダクトマネージャーWebRTC ニコラス・ブルーム氏

ブルーム氏のセッションは非常に専門性が高く、情報量も凄まじかったため、ここではポイントを絞って簡潔にお伝えいたします。 セッションのスライドは以下のURLからからご覧いただけます(Google Slides)。

WebRTC Status Update

WebRTCのエンドポイントは30億台!

まずセッションは、WebRTCの5年間についてのサマリーから始まりました。 WebRTCは、5年前にGoogleが実装をオープンソース化したところから始まったもの。 Facebook MessengerやGoogle Hangoutsなどの著名なアプリに利用されているだけでなく、WebRTCのエンドポイントとして動作する端末の台数は30億台(PC/ブラウザが13億台、モバイル/スマートフォンが13億台、タブレットが3〜4億台)にも及ぶとのこと。 対応サービスも月に平均26個というペースで増え続けているそうで、WebRTCの勢いはもはや本物と言って良いでしょう。

動画や音声の対応を改善

VP9

VP8/VP9とは、Googleがオープンソースで開発を進めている動画コーデックです。VP9は、画質の劣化をほとんど伴うことなくデータ量を30%削減できるとのこと。 VP9は、Chromeでは既に利用可能で、WebRTCの参照実装的なサービスAppRTCではデフォルトで有効化されています。

VP9のデモ。赤い線の右がVP9、左がVP8。画質の劣化は感じられない

H.264のサポート

いよいよ、Google ChromeがWebRTC上でのH.264コーデックをサポートします。 最初のリリースではソフトウェアによるコーデックのみ(エンコードはOpenH264, デコードはlibffmpeg)で、Google Chrome 50からフラグ付きで利用できるようになります。

Opus 1.1.2のサポート

完全フリーで高品質な音声コーデックであるOpusは最新バージョンである1.1.2になり、プラットフォームやアーキテクチャに非依存の最適化が行われました。 様々なシチュエーションで、エンコード効率を10%、デコード効率を15〜17%改善します。

様々な新機能のサポート

Google Chromeにおいて、魅力的な新機能が数多く追加される予定です。

  • 音声の出力デバイスを選べる新しいJavaScript API(HTMLMediaElement.setSinkId()
  • デバイスの一覧を取得するためのAPIがアップデート(MediaDevices.enumerateDevices())。システムで利用可能なカメラ、マイク、スピーカーの一覧を得ることが出来る
  • PromiseベースのAPIがRTCPeerConnectionに追加
  • 録画! WebRTCを通じて受信したメディアデータをローカルに保存し、再生できるようになります。
WebRTCの録画がサポートされた

WebRTCの録画がサポートされた

  • スクリーン共有機能の改善。現在は画面全体、もしくはブラウザウィンドウ全体のスクリーン共有に限定されていますが、今後、タブの中のコンテンツだけを共有できるようになります。ブックマークや通知は表示されません。Google Chrome 50からフラグ付きで利用できるようになります。
  • スクリーン共有時のオーディオサポート。Google Chrome 50からフラグ付きで利用できるようになります。
  • canvas要素、video要素との統合。canvasで加工した動画をWebRTCで送信…といったことも可能になるので、エンターテインメント用途などにも活躍しそうです。

WebRTC仕様のアップデート

仕様としてのWebRTCは、1.0を2016年の第一四半期に勧告候補(Candidate Recommendation)とすることを目指しています。WebRTC 1.0では、ORTC(Object Real-time Communication: マイクロソフトが開発した、WebRTCよりもローレベルなコントロールを可能にするAPI群)のアイデアを多く取り入れ、より直接的な制御を可能にするオブジェクト指向のAPIが提供されます。WebRTC 1.0は、Chromeに2016年中に実装される予定です。

駆け足&ざっくりの紹介でしたが、いかがでしたでしょうか? WebRTCがものすごい勢いで進化していることが、少しでも文章を通じてお伝えできれば幸いです。

Powered byNTT Communications

tag list

アクセシビリティ イベント エンタープライズ デザイン ハイブリッド パフォーマンス ブラウザ プログラミング マークアップ モバイル 海外 高速化 Angular2 AngularJS Canvas Chrome Cordova CSS de:code ECMAScript Edge Firefox Google Google I/O 2014 HTML5 Conference 2013 html5j IoT JavaScript Microsoft Node.js PhoneGap Polymer React Safari SkyWay TypeScript UI UX W3C W3C仕様 Webアプリ Web Components WebGL WebRTC WebSocket