ストリーミング専用プロトコル

Related Post

> ストリーミング専用プロトコル

A.ブラウザ標準対応のプロトコル

【HTTP Live Streaming (HLS)】
アップルによるHTTPベースのストリーミング・プロトコル。IETF標準化を目指して仕様が公開されており、多くのサーバーやクライアントが対応している。また、いくらかのブラウザ(Safari、Androidなど)でも直接再生することができる。Flash Playerも再生に対応している。

【MPEG-DASH (Dynamic Adaptive Streaming over HTTP)】
MPEGによって開発されたHTTPベースのストリーミング技術。VLCとGPACが再生に対応しているほか、dash.jsを使うことによってHTML5のMedia Source APIに対応しているブラウザでも再生することができ、dash.asを使うことによってFlash Playerでも再生することができる。
MP4BoxやFFmpegがMPEG-DASH互換MP4フラグメントの生成に対応している。

【HTML5 Media Source Extensions】
HTML5のメディア要素(video要素及びaudio要素)を拡張し、ストリーミングに対応させるための仕様案。Google、Microsoft及びNetflixが標準化を進めており、Chrome 23以降(Android版はAndroid 4.2以降)、IE11以降及びSafari 8以降がこの再生に対応している。

 

B.ブラウザ再生にプラグインが必要となるプロトコル

【RTSP (Real Time Streaming Protocol)】
IETFで標準化されており、RealMedia / QuickTime / Windows Media / GStreamer を含む多くのプレーヤーで再生することができる。また、Flash Playerからは、Locomote Video Playerなどのプレイヤーを通して再生することができる。ただし、多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。
多くのストリーミングソフトウェアで、この送出が可能。

【MMS (Microsoft Streaming Server)】
Windows Mediaのストリーミング配信に使用される。EUの独占禁止法による問題から、楕円曲線暗号を使ったDRMを含むプロトコル仕様が公開されている。MMSを再生できるプレーヤーは多いが、互換性に問題があるものもある。また、多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。
いくらかのストリーミングソフトウェアで、この送出が可能。

【Microsoft Smooth Streaming】
MicrosoftによるSiverlight用のストリーミング・プロトコル。HTTPプログレッシブダウンロード技術を用いている[2]。VLC 2.1以降がこの再生に対応している。Flash Playerからは、Smooth Streaming Plugin for OSMFを使うことで再生することができる。多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。
FFmpegがスムースストリーミングに使われるISMVフラグメントの生成に対応している。

【RTMP (Real Time Messaging Protocol)】
アドビシステムズによるFlash Video用のストリーミング・プロトコル。リバースエンジニアリングによって仕様が解析されているため、多くのオープンソースソフトウェアがこの再生及び送出に対応している。ただし、多くのブラウザは直接再生することができず、プラグインを使う必要がある。このことは、プラグインに対応していないモバイル端末で特に問題となる。

【Adobe HTTP Dynamic Streaming (HDS)】
アドビシステムズによるHTTPベースのFlash Video用ストリーミング・プロトコル。ファイルを分割しフラグメント毎にダウンロードするという手法を使っている。多くのブラウザは直接対応しておらず、プラグインを使う必要がある。
FFmpegがHDSフラグメントの生成に対応している。

 

C. P2Pマルチキャスト配信プロトコル

【Real Time Media Flow Protocol】
アドビシステムズが開発したFlash用P2Pプロトコルであり、RFC 7016としてプロトコル仕様が公開されている。P2Pマルチキャスト配信に対応している

【PeerCastプロトコル】
PeerCastの使っているプロトコル。

【WebRTC】
P2Pマルチキャスト配信が実現可能なWeb標準のP2P APIであり、ブラウザが直接対応している。P2P配信プロトコル自体は標準化されていない。WebRTCに対応するブラウザとして、Chrome、Firefox、Operaがある。
その他、JavaアプレットによるP2Pマルチキャスト配信も使われている。