HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 如何使用AVPlayer在备用音频流之间切换大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个测试应用程序,它使用AVPlayer播放由m3u8 HLS播放列表指定的视频.播放列表指定了几个备用音频流,类似于Apple提供的“清单10”示例播放列表: http://developer.apple.com/library/ios/#technotes/tn2288/_index.html#//apple_ref/doc/uid/DTS40012238-CH1-ALTERNATE_MEDIA应用程序需要能够在视频播放时在备用音频流之间切换.例如,应用程序应该能够在视频播放时通过用户点击应用程序中的按钮在英语,法语和西班牙语音频流之间切换.

AVPlayer及其相关对象将使用哪些AVFoundation类和方法来切换m3u8播放列表中指定的音频流?我查看了AVFoundation类文档,但没有看到如何执行此操作.@H_403_3@

指向如何执行此操作的示例代码链接将非常棒.我一直在网上搜索这些信息但没有成功.感谢您对此的任何帮助.@H_403_3@

解决方法

对于使用AVPlayer播放m3u8,看起来您无法使用AVAsset构建AVPlayerItem.您需要直接从URI构造AVPlayerItem.在使用此AVPlayerItem实例化AVPlayer,然后KVO侦听属性@“status”时,如果状态为AVPlayerStatusReadyToPlay,则[[avPlayerInstance currentItem]资产]中将有一个资产.这在 AV Foundation Programming Guide的第20页中有描述.

要将音频更改为各种替换使用:@H_403_3@ @H_262_9@AVMediaSELEctionGroup *audioSELEctionGroup = [[[avPlayerInstance currentItem] asset] mediaSELEctionGroupForMediaCharacteristic: AVMediaCharacteristicAudible]; NSLog(@"audioSELEctionGroup: %@",audioSELEctionGroup); // [audioSELEctionGroup options] // Array of the options in the group above.

并选择AVMediaSELEctionOption(您想要的音频通道):@H_403_3@ @H_262_9@[[avPlayerInstance currentItem] SELEctMediaOption:avMediaSELEctionOptionInstance] inMediaSELEctionGroup: audioSELEctionGroup];

这同样适用于视频.@H_403_3@

这在AV Foundation Release Notes for IOS 5(第3部分)的“根据语言和其他标准选择音频和字幕媒体”部分中进行了描述.@H_403_3@

大佬总结

以上是大佬教程为你收集整理的ios – 如何使用AVPlayer在备用音频流之间切换全部内容,希望文章能够帮你解决ios – 如何使用AVPlayer在备用音频流之间切换所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。