MPEG-DASH の普及が予想される 2013 年
前回の記事では、同じ品質のコンテンツの半分の帯域幅しか必要としない、新たなエンコーディング フォーマット、HEVC(または H.265 とも呼ばれる)について触れました。今回は、デバイスへのコンテンツ配信方法を改善する、MPEG-DASH と呼ばれるストリーミング コンテンツ用の新しいフォーマットについて説明します。
最初に少し背景を説明します。現在、アダプティブ ビットレート コンテンツのストリーミングにおける最大の問題は多様化です。コンテンツをデバイスにストリーミングする方法は無数にあり、RTMP、プログレッシブ ダウンロード、HTTP ライブ ストリーミング(HLS)、Smooth Streaming、HTTP ダイナミック ストリーミング(HDS)などのフォーマットも含まれています。このように多数のフォーマットがあるため、コンテンツをすべてのデバイスに配信することは困難です。それだけでなく、これらのフォーマットの各種デバイス、特に Android 上での実装は、ハードウェアやオペレーティング システムによって異なります。そこで登場したのが MPEG-DASH です。MPEG-DASH を管轄しているのは、大部分のデバイスへの配信に必要とされるストリーミング プロトコルの数を減らそうという目的で集まった、Adobe、Microsoft、Netflix などの企業です。
DASH フォーマットは Apple の HLS、Adobe の HDS、Microsoft の Smooth Streaming に似ています。インデックス ファイルとセグメント化されたコンテンツを使用してデバイスへのストリーミングを行い、インデックス ファイルが指定した順番でセグメントを再生します。Adobe も Microsoft も DASH を標準として推進しているので、HDS と Smooth Streaming の代わりに DASH が使用されるようになり、フォーマット数が減少すると思われます。例によって Apple は抵抗しているようで、今のところ公式には DASH のサポートを表明していません。しかし最終的には、HLS と DASH という 2 つの主要なストリーミング フォーマットに集約されることになるでしょう。
ではなぜ別のストリーミング プロトコルの代わりとして HLS を導入しないのでしょうか? そのほうが自然だと思いますよね? HLS はすでに iOS や Android デバイス、多くのコネクテッド TV、ゲーム用コンソールでサポートされています。Flash プレーヤで再生可能な HLS ストリーミングに使用できるプラグインもあります。しかし、表面上は HLS への標準化が当然のように見えても、HLS をソリューションとして採用できない 2 つの大きな理由があります。
- まず、HLS が公式な標準ではなく、現在 Apple が定義している仕様であり、6 か月ごとに変わるという点です。また Apple では、HLS をサポートしているデバイスの再生断片化技術も作り出してしています。
- 次に、HLS はマルチ DRM ソリューションに対応していません。一方、DASH は対応しているので、ほとんどのスタジオ ハウスが DASH を採用しているのです。
DASH のテストをする企業が増え始めており、DASH の本格導入に向けて業界もますます緊密な協力関係を確立しています。Chrome の最新バージョンには DASH のサポートが追加され、他にも DASH をサポートするようになったプラグインもあります。それでもまだ大規模な導入にはいたっていません。たとえば、まだ限定的な相互運用性テストしか行われておらず、初期のテストでは、DASH の実装結果にばらつきがあることがわかっています。2013 年は DASH の実装が拡大し、今後 2 年の間に一般にも普及すると思います。
ブライトコーブではコンテンツをあらゆるデバイスにストリーミングできるようにしたいと考えており、現在のような断片化された環境では、ストリーミング用に異なるフォーマットを多数作成せざるを得ない状況です。保存が必要なコンテンツ フォーマット数をもっと少なくして、より多くのデバイスにストリーミングできるようになることで、パブリッシャがストリーミングの手間を軽減して、ストレージ コストが削減できる環境になることを願っています。