HLSとは?
HLSとは、動画をストリーミング送信するための通信プロトコル(HTTP Live Streaming)のことです。
概要
・汎用性の高いHTTPプロトコルに準じており、サーバ側もクライアント側も利用しやすく、様々なOS・ブラウザで再生可能です。
・動画の符号化・圧縮には汎用的なH.264を用いているので多くのライブ配信・ストリーミングサービスに採用されています。
・エンコーダのHLSサーバ機能で暗号化(HTTPS)を行い、不特定多数に見られることを防ぎプライバシーを保護します。
・HLSはApple社が開発した技術ですが、MacやiOSだけでなくWindows(JavaScript等がインストールされていることが条件)やAndroid環境でも再生可能です。
・現在ではNHKオンデマンドやアベマTVをはじめ、HTTPストリーミング配信では最も多く利用されています。
技術
mp4をストリーミング用に変換したものがHLSです。
[生成手順]
まず、H.264+AACなどでできている動画ファイルを10秒ぐらいずつに分割します(.ts、というファイル)。1分の動画であれば、10秒×6本に分割します。
分割されたファイルをどういった順番で再生させるかが記述されているプレイリストファイルをつくります(.m3u8、というファイル)。
再生に対応したブラウザやアプリケーションでプレイリストファイルを読み込んで再生を開始します。
再生の方法は、プレイリストファイルに記載されている、分割された動画ファイル(.ts)を順番にサーバーから読み込みます。
マルチビットレートは画質の「高中低」設定のことで、画質ごとにビットレートを変えた動画を準備して、それを切り替えることで画質を切り替えます。
回線の通信速度にあわせてそれを自動的に行うことをABR( アダプティブ・ビットレート)と呼び、あらかじめいくつかのビットレートでエンコードしたtsファイル群を準備しておくことで、マルチビットレートを実現します。
1つの動画に対して、複数のビットレート別の動画を準備することになり、画質高・中・低であれば、3つのビットレートの動画を準備します。
メリット
・ローコストにライブ/ストリーミング配信が実現できる。
・ローコストにABR( アダプティブ・ビットレート)配信が実現できる。
・幅広いOSで再生ができる。
デメリット
・ローコストとはいえ、プログレッシブダウンロードよりは導入にコストがかかる。
・ABR( アダプティブ・ビットレート)の実装には複数のビットレートのファイルを準備するため、動画を保存するのに必要な容量が増える。
・多数のファイル群で構成され、管理が難しい。
・ライブ配信の場合、遅延時間が長い。(CDNやWebRTCなどある程度専門的な技術や仕組みで遅延を解消することが可能。)
・導入例
Black Box の対応製品