動画や音楽の配信で、「ストリーミング」という言葉をよく目にするのではないでしょうか。
今回この記事では「ストリーミング」配信の少しだけ深いところの「配信プロトコル」について、簡単に解説していきます。
そもそも、ストリーミング配信の「配信プロトコル」とは?
ストリーミング配信をするためのプロトコル(取り決め)のことです。
MPEG-DASH や HLS が一般的に広く使われています。
ストリーミング配信の「配信プロトコル」の変遷
かつて、ストリーミング配信は、各社がそれぞれの仕様で様々な「配信プロトコル」を採用していました。
- Microsoft Media Server(MMS)
- Microsoft Smooth Streaming
- Adobe HTTP Dynamic Streaming(HDS)
- Real Time Streaming Protocol(RTSP)
- HTTP Live Streaming(HLS)
ただ、上記はそれぞれに互換性がないため、各種再生するプレイヤーがプラグインで対応するなどしていました。
その後の2012年 MPEG-DASH(Dynamic Adaptive Streaming over HTTP) というISO国際標準規格化された「配信方式」が登場したことによって一気に流れが変わり、dash.js を使うことで、Media Source Extensions(MSE)のAPIに MPEG-DASH を対応させることができ、その結果 Google Chrome や Microsoft Edge、Internet Explorer 111)Windows 8 以降 で利用が可能となりました。
一方、HLS(HTTP Live Streaming)は、Apple の標準規格として現在もバージョンアップによって進化を続け、利用され続けています。
そして、かつて主流だった、MMS、Microsoft SS、HDS、RTSPは、Google ChromeやFirefox、Microsoft Edge、Safari などの主要ブラウザによる相次ぐ Flash や Silverlight などのアドオンの利用不可2)NPAPI(Netscape Plugin Application Programming Interface)の無効化とする動きがあって、それらが MPEG-DASH と HLS へ変わっていきました。
終わりに
いかかでしたでしょうか。
今回は、ストリーミング配信の「配信プロトコル」とその変遷について、お話させて頂きました。
次回は、MPEG-DASH のより深い仕様について、書きたいと思います。
References
1. | ↑ | Windows 8 以降 |
2. | ↑ | NPAPI(Netscape Plugin Application Programming Interface)の無効化 |