WebRTC

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』
WebRTC
WebRTC Logo.svg
作者 Justin Uberti
Peter Thatcher
初版 2011年(8年前) (2011
最新版 1.1 / 2017年5月4日(2年前) (2017-05-04
リポジトリ webrtc.googlesource.com
プログラミング言語 C++[1]JavaScript
ライセンス BSDライセンス
公式サイト webrtc.org
テンプレートを表示

WebRTC: Web Real-Time Communication)は、ウェブブラウザモバイルアプリケーションにシンプルなAPI経由でリアルタイム通信(: real-time communication; RTC)を提供する自由かつオープンソースのプロジェクトである。ウェブページ内で直接のピア・ツー・ピア通信によって、プラグインのインストールやネイティブアプリのダウンロードをせずに、ウェブブラウザ間のボイスチャットビデオチャットファイル共有が可能になる[2]。WebRTCはアップルGoogleマイクロソフトMozillaOperaがサポートしており、World Wide Web Consortium (W3C) およびInternet Engineering Task Force(IETF)で標準化が進行中である[3]

WebRTCの目的は、「ブラウザ、モバイルプラットフォーム、IoTデバイス向けのリッチで高品質なRTPアプリケーションを、開発できるようにし、共通のプロトコルセットで通信できるようにすること」である[3]リファレンス実装BSDライセンスフリーソフトウェアとして公開されている。また、マルチメディアフレームワークのGStreamerをベースに実装されたOpenWebRTCという別のフリー実装も存在する。JavaScriptを発明したBrendan Eich英語版は、WebRTCのことを "new front in the long war for an open and unencumbered web" と評している[4]

歴史[編集]

ブラウザでリアルタイムなコミュニケーションを可能にするWebRTCはGoogleによってオープンソース化されていて[5]、IETFによる関連プロトコル[6]とW3Cによるブラウザ対応APIの標準化が進められてきた[7]

W3CによるWebRTCのドラフト[8]はChromeとFirefoxで特別に実装されるという形で実験的に行われている。APIはWHATWGで予備的に著述されていて[9]ConnectionPeer APIと称され、Ericsson Labsによって仮の標準概念実装として作成された[10]。ウェブリアルタイムコミュニケーションワーキンググループはこの仕様が以下の項目に基づいて進化することを期待している:

  • ウェブブラウザでのリアルタイムなコミュニケーションを可能にするこのドキュメントと一緒に一連のプロトコルを定義するためのIETFにおける仲間のRTCWEBグループ[11]での継続的交流の成果
  • ローカルキャパシティとローカルストリームを公開する時に発生するプライバシー問題
  • 特殊な環境でデータチャネルの実装に関するグループでの技術的ディスカッション[12]
  • 初期の実験を通して得られる経験
  • 他のグループや個人からのフィードバックの受け取り

設計[編集]

2012年3月時点でIETF WebRTC Codec and Media Processing Requirementsのドラフト[13]では実装のためにPCMA/PCMU (RFC3551)、コミュニケーション機能ではDTMF (RFC4733) とOpus (RFC6716) や数種類あるビデオコーデックの最低限機能を必要としている。Peerconnection、データチャネル、メディアキャプチャのブラウザAPIはW3Cで詳述されている。

対応ブラウザ[編集]

2015年9月現在、Internet ExplorerおよびSafariはWebRTCをサポートしていなかった。これら2つのブラウザに対してWebRTCのサポートを追加するプラグインが複数発表されている[20][21]。2016年4月にSafariのブラウザエンジンであるWebKitでWebRTCへのサポートが開発中にあることが明らかになった[22]

脚注[編集]

[ヘルプ]
  1. ^ https://webrtc.googlesource.com/src/webrtc/
  2. ^ How WebRTC Is Revolutionizing Telephony. Blogs.trilogy-lte.com (2014-02-21). Retrieved on 2014-04-11.
  3. ^ a b WebRTC”. WebRTC. 2018年1月8日時点のオリジナルよりアーカイブ。2018年2月6日閲覧。
  4. ^ WebRTC: Plugin-free realtime communication”. 2018年2月6日閲覧。
  5. ^ Google release of WebRTC source code from Harald Alvestrand on 2011-05-31 (public-webrtc@w3.org from May 2011)”. Lists.w3.org. 2012年9月12日閲覧。
  6. ^ //tools.ietf.org/wg/rtcweb/charters?item=charter-rtcweb-2011-05-03.txt
  7. ^ WebRTC 1.0: Real-time Communication Between Browsers”. W3.org. 2012年9月12日閲覧。
  8. ^ WebRTC 1.0: Real-time Communication Between Browsers”. Dev.w3.org. 2012年9月12日閲覧。
  9. ^ href. “1 Introduction — HTML Standard”. Whatwg.org. 2012年9月12日閲覧。
  10. ^ Beyond HTML5: Peer-to-Peer Conversational Video | Ericsson Labs”. Labs.ericsson.com. 2012年9月12日閲覧。
  11. ^ Rtcweb Status Pages”. Tools.ietf.org. 2012年9月12日閲覧。
  12. ^ draft-jesup-rtcweb-data-protocol-00 - WebRTC Data Channel Protocol”. Tools.ietf.org. 2012年9月12日閲覧。
  13. ^ draft-cbran-rtcweb-codec-02 - WebRTC Codec and Media Processing Requirements”. Tools.ietf.org (2012年3月12日). 2012年9月12日閲覧。
  14. ^ Microsoft Edge Dev. Windows.com (2015-09-18). Retrieved on 2015-09-19.
  15. ^ Firefox Notes - Desktop. Mozilla.org (2013-06-25). Retrieved on 2014-04-11.
  16. ^ Safari 11.0”. Apple Inc.. 2018年3月26日閲覧。
  17. ^ Opera News. blogs.opera.com (2013-11-19). Retrieved on 2015-09-17.
  18. ^ Firefox Notes - Desktop. Mozilla.org (2013-09-17). Retrieved on 2014-08-04.
  19. ^ http://www.openwebrtc.org/bowser/
  20. ^ Priologic Releases First Open Source WebRTC Plugin for Internet Explorer
  21. ^ http://www.prweb.com/releases/2014/05/prweb11844308.htm
  22. ^ WebRTC - An API to facilitate real-time communication for browser-to-browser applications.”. WebKit (2016年1月28日). 2016年4月18日閲覧。

関連項目[編集]