index.m3u8とは?【2025年完全ガイド】

HLSストリーミングのバリアントを統制するマスタープレイリストを理解する。

index.m3u8 は HLS ワークフローのマスタープレイリストです。複数の画質・ビットレートの子プレイリストを提示し、プレイヤーがネットワーク状況に応じて自然に品質を切り替えられるようにします。

目次

  1. index.m3u8 の定義と役割
  2. ファイル構造と形式
  3. 他の m3u8 との違い
  4. 実用シーン
  5. index.m3u8 の探し方と使い方
  6. よくある質問

index.m3u8 の定義と役割

このファイルは HLS ストリームの入口です。メディアセグメント自体ではなく、ビットレート、解像度、エンコードの異なるバリアントを列挙します。

  • マニフェストをまとめるマスタープレイリストとして機能します。
  • 安定した視聴のための ABR 選択を可能にします。
  • 帯域幅、解像度、コーデック、フレームレートなどのメタデータを定義します。

CDN ではマスターマニフェストを index.m3u8 と名付けることが多いため、通信解析や再生トラブル調査で見つけやすい目印になります。

ファイル構造と形式

index.m3u8 は UTF-8 のテキストで、標準的な HLS ディレクティブを含みます。

  • #EXTM3U は拡張 M3U プレイリストであることを示します。
  • #EXT-X-VERSION と #EXT-X-INDEPENDENT-SEGMENTS はプロトコル機能を示します。
  • #EXT-X-STREAM-INF は各バリアントの BANDWIDTH、RESOLUTION、CODECS などを記述します。
  • 各ディレクティブの後に 1080p.m3u8 など対応するメディアプレイリスト URI が続きます。
#EXTM3U
#EXT-X-VERSION:7
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:BANDWIDTH=5500000,AVERAGE-BANDWIDTH=4800000,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2"
1080p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3200000,AVERAGE-BANDWIDTH=2800000,RESOLUTION=1280x720,CODECS="avc1.64001F,mp4a.40.2"
720p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1600000,AVERAGE-BANDWIDTH=1400000,RESOLUTION=854x480,CODECS="avc1.4d401e,mp4a.40.2"
480p.m3u8

#EXT-X-MEDIA は代替音声や字幕を記述し、#EXT-X-KEY は暗号鍵を参照します。複雑な配信でも、この 1 つのマニフェストから全体を制御できます。

他の m3u8 との違い

  • index.m3u8 はマスターマニフェストで、720p.m3u8 などのメディアプレイリストは実際のセグメントを列挙します。
  • メディアプレイリストは #EXTINF のセグメント長を持ちますが、マスターはバリアントだけを列挙します。
  • マスターは音声、字幕、I-frame 専用レンディションを参照できます。
  • 分析、QoE 監視、ABR ロジックは通常マスタープレイリストのメタデータに依存します。

実用シーン

  • スマートテレビ、ブラウザ、モバイルアプリへの適応型動画配信。
  • 帯域が変動しやすいライブ配信。
  • 安全な鍵ローテーションやバリアント単位の制限が必要な DRM ワークフロー。
  • レンディションの整合性やエンコードラダーを検証する監視ツール。

index.m3u8 の探し方と使い方

  1. ブラウザ DevTools を開き、Network タブで .m3u8 を絞り込みます。
  2. index.m3u8、master.m3u8、variant を含むリクエストを探します。
  3. URL をコピーして HLS プレイヤー、FFmpeg、監視ツールに貼り付けます。
  4. ダウンロード時は必要に応じて -protocol_whitelist を使い、DRM や token パラメータを保持します。

マスタープレイリストを見ると、欠けたレンディション、ビットレートラダーの順序ミス、コーデック宣言の不一致をすぐに確認できます。

よくある質問

index.m3u8 は他の .m3u8 と何が違いますか?
バリアントプレイリストを指すマスタープレイリストです。メディアプレイリストはセグメント URL を含みます。
index.m3u8 を直接再生できますか?
はい。HLS 対応プレイヤーはマスターマニフェストを読み、適切なメディアプレイリストを取得します。
index.m3u8 URL を共有しても安全ですか?
注意が必要です。署名 URL、DRM、期限付き token が含まれることがあります。
字幕や複数音声は必ず含まれますか?
必須ではありません。エンコーダーが生成した場合だけ、マスターが追加メディアグループを参照します。

index.m3u8 は HLS トポロジーの信頼できる入口です。正しく生成・検証することで、配信の信頼性、拡張性、帯域効率を保てます。