動画
HLS playlistとは
`.m3u8`はHTTP Live Streaming(HLS)で使われるテキスト形式の再生リストです。再生リスト自体に動画・音声を格納するのではなく、タグとURIでメディアセグメントや別の再生リストを示します。マスタープレイリストは画質別のストリームや音声などを案内し、メディアプレイリストはセグメントを並べます。
.m3u8HLS再生リスト
この形式を選ぶ場面
- 対応するHLSプレーヤーへメディアセグメントと再生情報を提供する
- 配信条件に応じて複数の映像品質を切り替える
避けた方がよい場面
- 動画・音声そのものを格納する
- 拡張子を変えるだけで動画ファイルへ変換する
主な用途
- HLSでライブ映像やオンデマンド映像を配信する
- マスタープレイリストから画質別ストリームや音声・字幕を案内する
特徴
- UTF-8テキストにタグとURIを記述し先頭行に#EXTM3Uを置く
- マスターとメディアの2種類のプレイリストを使い分ける
- 相対URIは再生リストのURLを基準に解決される
メリットとデメリット
メリット
- 回線状況に合わせたストリーム選択を案内できる
- セグメント単位の配信とライブ更新に対応できる
- 映像・音声・字幕などの構成をプレイリストから参照できる
デメリット
- 再生にはHLSに対応するプレーヤーと到達可能なセグメントが必要
- URIの参照先や配信設定が不整合だと再生できない
- 再生リスト単体では映像・音声データを持たない
開く・変換する
開く方法
HLSに対応するブラウザーやメディアプレーヤーで再生リストのURLを開きます。ローカルで調べる場合はテキストエディターで確認できますが、相対URIの解決には配信時のURLが必要です。#EXT-X-STREAM-INFなどのタグで参照先や画質別の構成を確認してください。
変換方法
HLSの配信ツールでメディアをセグメント化し、マスターまたはメディアプレイリストを生成します。.m3u8の拡張子に変えるだけでは動画をHLS化できません。参照URI、セグメント、プレーヤーとの互換性を配信環境で検証してください。RFC 8216では.m3u8と.m3uの両方を識別子として認めていますが、.m3u8が一般的です。
注意点
- 再生リストはUTF-8で保存し、BOMを付けないでください。#EXTM3Uを先頭行に置き、タグやURIの記述を仕様に合わせます。
- 相対URIは再生リストのURLを基準に解決されます。保存場所やCDNのパスを変えた場合は、参照先が引き続き正しいか確認してください。
- Web配信ではプレイリストにapplication/vnd.apple.mpegurlなど適切なContent-Typeを設定し、セグメントもプレーヤーから取得できるようにします。
FAQ
.m3u8ファイルに動画が入っていますか?
いいえ。再生リストはタグやURIでセグメントなどを参照します。映像・音声データは別のメディアファイルやセグメントにあります。
拡張子は.m3u8でないといけませんか?
RFC 8216は.m3u8と.m3uのどちらも識別子として認めています。実際の配信では.m3u8が広く使われます。
一般的な動画プレーヤーで開けますか?
HLSに対応したプレーヤーが必要です。再生リストのURLと、そこから参照されるセグメントへプレーヤーがアクセスできることも必要です。