2012-07-20 51 views
8

'u kullanarak alternatif ses akışları arasında nasıl geçiş yapılır m3u8 HLS çalma listesi tarafından belirtilen videoyu oynatmak için AVPlayer kullanan bir test uygulamasına sahibim. Çalma listesi birkaç alternatif ses akışları belirtir, Apple tarafından sağlanan "İlanı 10" örnek çalma listesine benzer burada bulunabilir: http://developer.apple.com/library/ios/#technotes/tn2288/_index.html#//apple_ref/doc/uid/DTS40012238-CH1-ALTERNATE_MEDIA uygulama video oynatılırken alternatif ses akışları arasında geçiş yapabilmek gerekiyor. Örneğin, uygulama, video oynatılırken uygulamadaki kullanıcı düğmelerine dokunarak İngilizce, Fransızca ve İspanyolca ses akışları arasında geçiş yapabilmelidir.AVPlayer

AVFoundation sınıflar ve yöntemler m3u8 çalma listesinde belirtilen ses akışları arasında geçiş yapmak için AVPlayer ve ilgili nesneler tarafından kullanılacak

? AVFoundation sınıf belgelerine baktım ama nasıl yapıldığını görmüyorum.

bu harika olurdu bunu nasıl yapacağınızı gösteren bazı örnek kod bir bağlantı. Bu bilgi için web'i başarılı olmadan araştırıyorum. Bununla ilgili herhangi bir yardım için teşekkürler. Bir AVPlayerItem kurulması konulu AVAsset kullanamazsınız gibi

+0

Bu merak, ancak üzerinde alternatif videoya benzer "Liste 12" için de duyuyorum. Bulduğun cevabın bana yardım edeceğini hayal ediyorum. – user1636983

cevap

18

AVPlayer ile m3u8 oynatma için görünüyor. Doğrudan URI'den bir AVPlayerItem oluşturmalısınız. Durum AVPlayerStatusReadyToPlay ise o zaman bu AVPlayerItem ile AVPlayer başlatmasını ve üzerine KVO mülkiyet @ "durumu" dinleme, sen [[avPlayerInstance currentItem] asset] içinde bir varlık olacaktır. Bu, AV Foundation Programming Guide sayfa 20'de açıklanmıştır. video için çalışacak

[[avPlayerInstance currentItem] selectMediaOption:avMediaSelectionOptionInstance] inMediaSelectionGroup: audioSelectionGroup]; 

aynı:

AVMediaSelectionGroup *audioSelectionGroup = [[[avPlayerInstance currentItem] asset] mediaSelectionGroupForMediaCharacteristic: AVMediaCharacteristicAudible]; 

NSLog(@"audioSelectionGroup: %@", audioSelectionGroup); 

// [audioSelectionGroup options] // Array of the options in the group above. 

Ve seçme AVMediaSelectionOption (istediğiniz ses kanalı) ile: Çeşitli alternatifler kullanmak

ses değiştirin.

Bu, AV Foundation Release Notes for IOS 5'un (3. bölüm) "Dil ve diğer ölçütlere göre ses ve altyazı ortamı seçimi" bölümünde açıklanmaktadır. http://developer.apple.com/library/ios/#technotes/tn2288/_index.html:

İlgili konular