オーディオやビデオコンテンツを Web サイトから得たり、またあなたの iOS アプリ内で表示したり、オーディオやビデオコンテンツを提供する場合は、AirPlay について学ぶ必要があります。 AirPlay ではユーザーは、高精細ディスプレイと高忠実度のオーディオシステムにオーディオとビデオをストリーミングすることができます。 AirPlay を使用して、ユーザーはオーディオやビデオを、iTunes や iOS ベースのデバイスから Apple TV など(そしてホームシアターシステムへ)または AirPlay に対応したサウンドシステムへリダイレクトできます。 AirPlay はメディアを、インターネットからライブストリーミングすることができ、すでに iTunes で保存されているメディア、または iOS ベースのデバイスに保存されたメディアをストリーミングできます。AirPlay は iOS アプリ内で再生されているときや、iOS ベースのデバイス上の Safari ブラウザ内や、または任意のプラットフォーム上の iTunes で、インターネットベースのメディアをストリーミングすることができます。
AirPlay は iOS 4.3 以降でサポートし、OS X と Windows 上の iTunes 10.2 以降でサポートしています。
AirPlay を使用すると、ユーザーは Apple TV、あるいは AirPlay 対応サウンドシステムやリモートスピーカーにオーディオとビデオをリダイレクトできます。 AirPlay は、ユーザーが制御できます。コンテンツプロバイダとして、あなたの主な役割は、あなたのメディアが AirPlay に互換性があり、あなたのアプリや Web サイトが AirPlay と正常に動作することを確認する事です。また、高精細ビデオやあなたのコンテンツをホームシアターシステムにリダイレクトされているサラウンドサウンドオーディオを提供したいと思うようになるでしょう。
アプリの開発者は、いくつかの方法で、ユーザーの AirPlay の経験値を上げることができます。
- AirPlay の出力デバイス ピッカーを提供する。
- AirPlay の対応の出力デバイスが表示することができる、音声、メタデータを提供する。
- AirPlay 出力デバイスからの、再生/一時停止などのリモートイベントへの応答を聞く。
- 第二のディスプレイがアクティブなとき独立して iOS ベースのデバイスの内蔵ディスプレイを使用してください。
あなたは、4つの異なる方法で iOS ベースのデバイスへの AirPlay 対応のオーディオおよびビデオを配信することができます。
- HTML5 の <audio> と <video> タグを使用して、あなたの Web サイト内にオーディオやビデオを埋め込めます。メディアはこの方法で、Safari ブラウザまたは Web ビューを使用するアプリでの iOS ベースのデバイス上で動作します。
- AV ファウンデーション、 MPMoviePlayerController クラス、または UIWebView クラスを使用してメディアを再生するアプリに直接ストリームオーディオとビデオを配信します。
- iOS ベースのデバイス上でローカルにメディアを保管します。
- 商業的に、またはポッドキャストで、iTunes 経由でコンテンツを利用できるようにします。
AirPlay は、プログレッシブダウンロードまたは HTTP ライブストリーミングで配信されるメディアと互換性がありますが、HTTP ライブストリーミングの方が好ましいです。AirPlay 経由の再生のためのメディアを準備をするためには、それがサポートされるフォーマットだということを確認して下さい。例えば、H.264 ビデオと AAC や MP3 オーディオだと言う事を。特別なサーバー構成は必要なく、メディアを送信するために使用されるファイル拡張子の正しい MIME タイプを関連付けることから離れて。ユーザーの AirPlay の経験値を豊かにするには、ホームシアターシステムの機能を利用して、代替のオーディオおよびビデオストリームを提供することもできます。
関連する章:「AirPlay のためのメディアとサーバの準備」
ビデオの AirPlay を選択するか除外するか
AirPlay は、一般的に言えば、ユーザーが開始して、ユーザーが制御できます。(システムサウンド以外の) 音声コンテンツは、常にユーザーから AirPlay 対応サウンドシステムに、リダイレクトされ、そのように iTunes のコンテンツは、オーディオやビデオもできます。あなたのウェブサイトからビデオを提供したり、あなたのアプリの中からそれを表示する場合は、しかし、ユーザーのリダイレクトを有効にし、AirPlay の選択をすることも、それが受信されているデバイスにビデオを制限する、AirPlay から手を引く事も可能です。
iOS 5.0 以降では (IOS 5.0 でのサファリを含む)、AirPlay はデフォルトで有効にされていますが、ユーザーが Apple TV にビデオをリダイレクトできないようにする場合は、明示的に AirPlay をやめなければなりません。
関連する章:「AirPlay の選択と除外」
アプリの大きな AirPlay ユーザー経験値を提供
ユーザーはアプリを離れることなく、出力用の AirPlay デバイスを選択することができるように、アプリのユーザーインターフェイスでの AirPlay ピッカーを含めることができます。
アプリの音声またはビデオは、独自のコントロールがある AirPlay 対応デバイスにリダイレクトされている場合は、曲のタイトルやアルバムアートワークへのユーザー体験値を向上させるように、メタデータなどを提供することができます。また、アプリは、再生/一時停止や次のトラックの要求などのリモートイベントに応答する必要があります。
関連する章:「AirPlay 体験値を豊かにする」
暗号化および認証を使用してメディアを保護する
HTTP ライブストリーミングを使用して、オーディオとビデオを配信する場合、そこに内蔵されている暗号化のサポートと、定期的に暗号化キーと初期化ベクトルの自動生成(詳細については、HTTP ライブストリーミングの概要 を参照してください) があります。HTTPS を介してキーを提供し、認証を使用する場合は、しかし、アプリは、最初の認証ハンドシェイクを担当しています。
関連する章:「暗号と認証」
以下も参照のこと
- iOS 用マルチディスプレイプログラミングガイドは iOS ベースのデバイスの内容をミラーリングまたはデバイスごとに異なるコンテンツを表示することで、外部ディスプレイを活用する方法について説明します。
- HTTPライブストリーミングの概要は、HTTP ライブストリーミングをセットアップし、使用し、通常の Web サーバーから HTTP 経由でライブおよびオンデマンドのオーディオおよびビデオを配信する方法について説明します。
- Safari の HTML5 のオーディオとビデオガイド は、ウェブサイト内にオーディオとビデオを埋め込む方法を説明します。
- >AVPlayer クラスリファレンス は、AVPlayer に特有のプロパティを含む AirPlayer クラスについて説明します。
- MPMoviePlayerController クラスリファレンス は、AirPlay に固有のプロパティを含む、MPMoviePlayerController クラスについて説明します。
- UIWebView クラスリファレンス は、AirPlay に固有のプロパティを含む、UIWebView クラスについて説明します。
次:AirPlay のためのメディアとサーバの準備