私はAirPlayをAVPlayerで再生する暗号化されたストリームで動作させるのに苦労してきました。
Appleがこのページを読んでも、私はあまり役に立たない。
保護されたHTTPSレルムからキーを提供します。再生を開始する前に、アプリはNSURLConnectionを使用して自身を認証し、非表示にされた資格情報を提供できます。
私はこれをシミュレーターでしか動作させることができませんでした。デバイス上ではありません。
HTTPS経由でCookieを使用します。アプリはHTTPSサーバーに接続し、アプリケーション定義の方法でアプリケーションを認証できます。その後、サーバーはキーURLに適用されるCookieを発行できます。再生が完了してからかなり経ってからCookieの有効期限が切れるように設定する必要があります。サーバーは、キーに対する将来のGET要求で、有効なセッションCookieの存在を要求する必要があります。信頼性を最大にするために、有効期限が近い場合、サーバーは将来のGETリクエストへの応答でCookieの有効期限を更新する必要があります。
サーバーのセットアップに直接アクセスできないため、実際にこれを試したことはありませんが、他に回答が表示されない場合は試します。
アプリケーション定義のURLスキームを使用して、.m3u8ファイルのキーを指定します。アプリは、これらのURLのリクエストを処理するために、カスタムNSURLProtocolを登録する必要があります。プレーヤーは、キーURLを読み込む必要があるときに、アプリにコールバックします。その後、アプリは安全なサイドチャネルを使用してキーを取得し、プレーヤーに提供できます。
AVPlayer HTTP接続はNSURLProtocolシステムを完全にバイパスするため、これは機能しないようです。AVPlayerによって行われたHTTPリクエストを傍受することはできません。
AVPlayerとAirPlayで動作する方法で暗号化キーの提供の問題を解決する方法を誰かが持っていれば、私は永遠に感謝します。