HLS と M3U8 の比較
| Aspect | HLS | M3U8 |
|---|---|---|
| それは何ですか | HTTP ライブ ストリーミング、ストリーミング プロトコル。 | HLS およびその他のプレイリスト ワークフローで使用される UTF-8 プレイリスト テキスト ファイル。 |
| Role | プレーヤーが HTTP 経由でプレイリスト、セグメント、キー、バリアントをフェッチする方法を定義します。 | 再生中にプレーヤーが読み取る指示と URL を保存します。 |
| メディアが含まれています | 単一のファイルはありません。それはストリーミングシステムです。 | 通常はいいえ。これは、.ts、.m4s、またはその他のメディア セグメント URLs を指します。 |
| アダプティブビットレート | バリアント プレイリストとプレーヤーの切り替えを通じてサポートされます。 | #EXT-X-STREAM-INF などのタグで表されます。 |
| Encryption | 通常の AES-128 HLS および DRM ワークフローをサポートします。 | #EXT-X-KEY などのタグを使用してキーを参照します。 |
| デバッグフォーカス | エンドツーエンドの再生動作: CORS、セグメント、キー、コーデック、および遅延。 | プレイリストの有効性: タグ、URL、バリアント構造、ライブ/VOD マーカー。 |
HLS はワークフロー、M3U8 はマップ
HLS セッションには、プレーヤー、1 つ以上のプレイリスト、メディア セグメント、オプションの字幕、オプションの暗号化キー、および CORS などのネットワーク ルールが含まれます。 M3U8 ファイルは、どの URL を取得するか、およびそれらを解釈する方法を知るためにプレイヤーが読み取るマップです。
HLS リンクと M3U8 リンクが同じ意味で使われる理由
ほとんどの HLS ストリームは .m3u8 URL として入力されるため、ユーザーはプレイリスト URL を HLS リンクと呼ぶことがよくあります。技術的には、HLS ストリームには、プレイリストに加えて、その背後にあるすべての子プレイリスト、キー ファイル、メディア セグメント、および再生ルールが含まれます。
HLS ストリームで失敗する可能性があるもの
最上位の M3U8 ファイルは、子プレイリスト、キー URL、またはセグメント URL が失敗している間にロードされる可能性があります。ブラウザは、CORS、混合コンテンツ、またはホットリンク保護を理由に、本来は有効なストリームをブロックすることもあります。そのため、実際のHLS テストには、再生に加えてセグメントとキーのチェックが必要です。
ブラウザ HLS プレーヤーが M3U8 を使用する方法
ネイティブ HLS を持たないブラウザでは、Video.js VHS などの JavaScript プレーヤーが M3U8 ファイルを解析し、メディア セグメントをフェッチし、メディア ソース拡張機能にフィードします。 HLS をネイティブにサポートするプラットフォームでは、ブラウザー自体がそのワークフローの多くを処理する場合があります。
関連する HLS および M3U8 ページ
- M3U8 ファイルとは何ですか プレイリスト形式を定義し、一般的な HLS タグについて説明します。
- HLS ストリームテスター バリアント、キー、サンプリングされたセグメントを含む完全な HLS ワークフローをチェックします。
- HLS CORS エラー 有効な HLS/M3U8 ストリームが依然としてブラウザー再生で失敗する可能性がある理由を説明します。
よくある質問
HLS は M3U8 と同じですか?
いいえ。HLS はストリーミング プロトコルです。 M3U8 は、HLS がバリアント、メディア セグメント、字幕、暗号化キー、およびライブ/VOD メタデータをリストするために一般的に使用するプレイリスト ファイル形式です。
HLS ストリームが M3U8 ファイルを使用するのはなぜですか?
HLS ファイルは、メディア セグメント、バリアント ストリーム、暗号化キー、字幕、HTTP 経由のライブ プレイリスト更新を記述することができる単純なテキスト プレイリストであるため、M3U8 ファイルを使用します。
M3U8 ファイルは HLS なしで存在できますか?
はい。 M3U8 は UTF-8 プレイリストを意味するため、完全な HLS ストリームではなくメディア URL をリストできます。 HLS は一般に M3U8 を使用しますが、用語は同一ではありません。
HLS と M3U8 のどちらを最初にテストすべきですか?
M3U8 プレイリストから始めます。プレイリストが読み込まれ、有効なタグがあることを確認します。次に、子プレイリスト、主要な URL、メディア セグメント、CORS、コーデック、およびライブ/VOD の動作をチェックして、完全な HLS ワークフローをテストします。
HLS ストリームに複数のリクエストが必要なのはなぜですか?
HLS 再生では、マスター プレイリスト、メディア プレイリスト、暗号化キー (存在する場合)、および多くのメディア セグメントが取得されます。これらのリクエストはいずれも失敗し、再生が中断される可能性があります。