2012-01-10 28 views
10

Uzak bir mp3 url'si oynatırken AVPlayer kullanarak ses çalma gerçekleştirdim.MPNowPlayingInfoCenter nowPlayingInfo, AirPlay üzerinden AVPlayer sesi için göz ardı Edildi

Yürütmekte olan sesle ilgili bilgileri MPNowPlayingInfoCenternowPlayingInfo yöntemini kullanarak görüntülemek istiyorum.

Ekranı kilitlediğimde, ayarladığım görüntü ve başlığı görüyorum, bu nedenle bu yöntemin bilgileri bir şekilde kaydettirdiğini biliyorum, ancak AirPlay'e bir AppleTV'ye geçtiğimde, ekran genel bir görünüme benziyor video çıkışı, altta ilerleme çubuğuyla birlikte, ancak geçen süre ve süre doğru şekilde görüntülendi.

Aynı şeyi nowPlayingInfo olarak ayarlıyorum, ancak daha sonra bir AudioQueue kullanarak bazı sesleri başlatırsanız, görüntüyü ekranın yarısında doğru şekilde görüntüler (iPod/Müzik uygulamasıyla bir podcast çalmak gibi görünür).

Bu, AVPlayer kullanarak ses için AirPlay desteğinin bir sınırlaması mıdır, yoksa görüntüyü ve bilgileri düzgün görüntüleyebilmenin bir yolu var mı?

cevap

13

Tamam - Ben elma forumları üzerinden kazdık ve bir ipucu buldum.

AVPlayer'ı yalnızca ses için kullanıyorsanız ve müzik çalma sırasında arka planda çalışmasını istiyorsanız, allowsAirPlayVideo ayarını devre dışı bırakmanız gerekir.

Görünüşe göre, iOS 5+ üzerindeki AVPlayer, AirPlay üzerinden video oynattığını ve video AirPlay'i açıkça devre dışı bırakmadığınız sürece arka plana izin vermediğini varsayar.

Bunu (örneğin, self.player.allowsAirPlayVideo = NO;) devre dışı bıraktığınızda, sesiniz yine de AirPlay üzerinden oynatılacak, ancak şimdi ses/ipod benzeri arabirimi doğru şekilde gösterecektir.

+0

ben eklerseniz 'player.allowsExternalPlayback = FALSE video veya ses :(AirPlay üzerinden var – anitteb

4

sen -iOS7 üzerinde çalışıyorsanız, dış oynatmayı devre dışı lazım:

self.player.allowsExternalPlayback = NO;