技術チュートリアル

M3U8とは?HLSプレイリストの仕組みをやさしく解説

M3U8の仕組み、再生方法、MP4変換、トラブル対処をまとめた実践ガイド。

2025年9月18日·1 分で読めます

M3U8とは?HLSプレイリストをやさしく解説(仕組み・再生・変換・トラブル対処)

要点まとめ(TL;DR)

  • M3U8はHLS配信用のUTF‑8テキスト「プレイリスト」。動画本体ではなく、短い.tsセグメントの場所を示す「地図」です。
  • 再生方法:VLCに.m3u8のURLを貼り付け。WebではSafariがネイティブ対応、その他ブラウザはhls.jsを利用。
  • MP4に変換:まずは再エンコードなしのリマックス、ダメならFFmpegで再エンコード。DRM保護は変換不可。

1) M3U8って何?

M3U8はHTTP Live Streaming(HLS)のためのテキストファイルです。動画を数秒ごとの.tsに分割し、その並びやルールをM3U8に記述します。プレイヤーはこのリストを読み、順番に取得して途切れず再生します。

最小例:

#EXTM3U
#EXTINF:6,
segment1.ts
#EXTINF:6,
segment2.ts

画質違いをまとめたマスタープレイリストもあり、プレイヤーが自動で最適なものを選びます。

2) HLSの動き(かんたん)

  • エンコード → 短いセグメントに分割 → M3U8生成。
  • プレイヤーはM3U8を読み、HTTPで順次ダウンロード。
  • 帯域が落ちれば低ビットレートへ切替(アダプティブ)。

3) .m3u8の再生方法

  • デスクトップ: VLC → メディア → ネットワークストリームを開く → URL貼付。
  • モバイル: iOS/AndroidのVLCでも多くの公開ストリームが再生可能。
  • Web: Safariは標準対応、他ブラウザはhls.jsでHTML5 videoに接続。 再生できない場合は、公開可否・認証/トークン・DRMの有無を確認しましょう。

4) FFmpegで M3U8 を MP4 へ変換

まずは無劣化リマックス:

ffmpeg -i "https://example.com/stream.m3u8" -c copy -bsf:a aac_adtstoasc output.mp4

問題がある場合は安全に再エンコード:

ffmpeg -i "https://example.com/stream.m3u8" -c:v libx264 -c:a aac -movflags +faststart output.mp4

メモ:私的/DRM配信は不可。黒画面・無音は再エンコードで改善。

5) よくある問題と対処

  • 403/401: ヘッダー/クッキーやログインが必要。正規サイト/プレイヤーを使用。
  • 404: プレイリスト/セグメントが失効。新しい URL を取得。
  • CORS(Web): クロスドメインでブロック。サーバーでCORS許可、またはプロキシ。
  • DRM/暗号化: 権限がなければ再生・保存不可。
  • カクつき: 低い画質へ切替、または回線改善。

6) 法的注意

権利のあるコンテンツのみ利用してください。利用規約、DRM、関連法令を遵守。

7) まとめ

M3U8はHLSの「地図」。VLCやhls.jsで再生し、必要ならFFmpegでリマックス/再エンコード。まずは認証・CORS・DRMを確認しましょう。

FAQ

  • M3U8は動画ファイル? いいえ、セグメントへの参照リストです。
  • Safariでは再生できるのにChromeでは? SafariはHLSを標準サポート、Chromeはhls.jsが必要。
  • 1つのMP4に結合できる? はい、FFmpegで可能です(上記参照)。

関連記事

著者:m3u8-player.net