2012-01-10 4 views
10

私はAVPlayerを使用してオーディオを再生し、リモートmp3 URLを再生しました。MPNowPlayingInfoCenter nowPlayingInfoはAirPlay経由のAVPlayerオーディオでは無視されます

MPNowPlayingInfoCenternowPlayingInfoメソッドを使用して、現在再生中のオーディオに関する情報を表示したいとします。

私は画面をロックするとイメージとタイトルが設定されているので、何らかの方法で情報を登録していることがわかりますが、AirPlayからAppleTVに切り替えると、プログレスバーは下部に表示されますが、経過時間と所要時間は正しく表示されます。

これをnowPlayingInfoに設定してからAudioQueueを使用してオーディオを開始すると、画面の半分に画像が正しく表示されます(iPod/Musicアプリでポッドキャストを再生するように見えます)。

これは、AVPlayerを使用したオーディオのAirPlayサポートの制限に過ぎないのですか、それともイメージや情報を正しく表示するための方法がありますか?

答えて

13

オクラホマ - 私はアップルのdevフォーラムを通して掘り出したヒントを見つけました。

AVPlayerをオーディオ専用に使用していて、それをバックグラウンドで動作させたい場合は、allowsAirPlayVideoの設定を無効にする必要があります。

明らかにiOS 5+のAVPlayerは、AirPlay経由でビデオを再生していると想定しているため、AirPlayを明示的に無効にしない限り、バックグラウンドは許可されません。

これを無効にすると(つまり、)、オーディオはAirPlay経由で再生されますが、オーディオ/ iPodのようなインターフェイスが正しく表示されます。

+0

私が追加した場合は、 'player.allowsExternalPlayback = false'を一切映像や音声がAirPlayを経由して存在していない:( – anitteb

4

あなたはiOS7にしている場合は、外部の再生を無効にするには持っている:

self.player.allowsExternalPlayback = NO;

関連する問題