暗号化されたHLS シグナルを確認する
| Signal | それが何を意味するか | 何をテストするか |
|---|---|---|
| #EXT-X-KEY:METHOD=AES-128 | ストリームでは標準の HLS セグメント暗号化が使用されます。 | キー URI がセグメントと同じ直接パスまたはプロキシ パスを介して読み込まれることを確認します。 |
| キーリクエストがブロックされました | マニフェストはロードされますが、プレーヤーがキーをフェッチすると再生が失敗します。 | プロキシを有効にするか、キー URL の Access-Control-Allow-Origin を修正します。 |
| 保護されたキーエンドポイント | リクエストに元のページ コンテキストが含まれていない限り、キー URL は 403 を返します。 | プロキシ経由でソースページをRefererとして設定し、再生を再試行してください。 |
| 回転キー | プレイリストは、時間の経過とともに複数のキーを参照します。 | ストリームを十分にテストして、参照されているすべてのキーが到達可能であることを確認します。 |
| DRMシステム | ストリームには Widevine、FairPlay、PlayReady、またはライセンス交換が必要です。 | ライセンスを取得したアプリまたはプレーヤーを使用してください。このツールは DRM をバイパスしません。 |
暗号化されたM3U8 ストリームをテストする方法
- 1暗号化された M3U8 URL を貼り付けます。直接 URL で再生を開始すると、追加のルーティングなしでマニフェスト、キー、セグメントに到達できるかどうかがわかります。
- 2健全性レポートを使用してマニフェストを検査するバリデーターを実行して、プレイリストが #EXT-X-KEY を参照しているかどうか、またそれがライブまたは VOD HLS のように見えるかどうかを確認します。
- 3キーとセグメントを一緒にルーティングするCORS がキー ファイルまたはメディア ファイルをブロックする場合は、プロキシを有効にして、マニフェスト、キー URI、セグメントがすべてブラウザで読み取り可能な同じオリジンを使用するようにします。
- 4保護されたキーエンドポイントに Referer を追加キー URL が 403 を返した場合は、プロキシ経由で元の再生ページを Referer として設定し、ストリームを再試行します。
- 5DRM 境界で停止するストリームにライセンス サーバーまたは DRM スタックが必要な場合は、承認されたプレーヤーを使用してください。 AES-128 キー アクセスは DRM バイパスと同じではありません。
AES-128 HLSはDRMとは異なります
AES-128 HLS は #EXT-X-KEY でキー URI をプレイリストに格納し、通常のメディア セグメントを暗号化します。キーへのアクセスが許可されている場合、ブラウザ HLS プレーヤーは通常、再生を復号化できます。 DRM システムにはライセンス交換とプラットフォーム CDM が必要ですが、このツールはこれらを置き換えたりバイパスしたりしません。
マニフェストがロードされてもキー URL が失敗する理由
マニフェスト、キー、セグメントは、異なるパスまたはドメインに存在できます。ストリームはプレイリストを公開できますが、CORS、署名された URL 有効期限、または Referer チェックでキーをブロックできます。暗号化されたストリームの場合、最初の .m3u8 ファイルだけでなく、チェーン内のすべてのリクエストが到達可能である必要があります。
変換による暗号化の処理方法 HLS
アクセス可能な通常の AES-128 ストリームの場合、MP4 コンバータはマニフェストによって参照されるキーをフェッチし、FFmpeg ステップ中に復号化できます。キー アクセスがブロックされている場合は、MP4 または MP3 をエクスポートする前に、プロキシまたは Referer ルーティングを修正してください。
関連する暗号化されたHLS ページ
- M3U8 から MP4 へのコンバータ アクセス可能なAES-128 HLS ストリームをローカルの FFmpeg WebAssembly とともにエクスポートできます。
- HLS CORS エラー キーとセグメントのリクエストにブラウザで読み取り可能な応答が必要な理由を説明します。
- カスタム Referer M3U8 プレーヤー 直接リクエストを拒否する保護されたキーまたはセグメントのエンドポイントをカバーします。
よくある質問
このプレーヤーは暗号化されたM3U8 ストリームを再生できますか?
はい、マニフェスト、キー URL、およびメディア セグメントに到達可能な場合の通常の AES-128 HLS ストリームの場合。 DRM システムやライセンス サーバーをバイパスすることはできません。
M3U8 ファイル内の #EXT-X-KEY は何を意味しますか?
#EXT-X-KEY は、HLS プレーヤーに、メディア セグメントの暗号化方法と復号化キーを取得する場所を指示します。 AES-128 HLS の場合、再生または変換が機能するには、そのキー URL に到達できる必要があります。
マニフェストのロード後に暗号化ストリームが失敗するのはなぜですか?
最も一般的な原因は、キー要求がブロックされたことです。マニフェストは読み込まれる可能性がありますが、ブラウザが AES-128 キーまたはそれ以降の暗号化されたセグメントを取得できない場合、再生は失敗します。
CORS プロキシは暗号化された HLS に役立ちますか?
はい、問題がブラウザー アクセスの場合は可能です。プロキシは、暗号化されたすべての HLS リクエストがブラウザで読み取れるように、マニフェスト、キー URL、およびメディア セグメントをまとめてルーティングする必要があります。
これは Widevine、FairPlay、または PlayReady をバイパスしますか?
いいえ。DRM で保護されたストリームには、承認されたライセンス交換とプラットフォームの DRM サポートが必要です。このツールは通常のHLS デバッグ用であり、DRM バイパス用ではありません。