ios - 在后台创建新的 AVPlayer 不起作用?

标签 ios cocoa-touch avfoundation avplayer

我正在使用 AVPlayer 播放音乐。现在在某个时间 NSTimer 触发,我想淡出到另一条轨道。所以我开始淡出我的 AVPlayer 并创建一个新的 AVPlayer 实例来播放下一首歌曲。

在前台时,这会按预期工作。但是当我的应用程序在后台运行时。播放轨道淡出,但新的 AVPlayer 实例没有开始播放。是不是不可能在后台创建一个新的 AVPlayer 实例?或者我怎样才能让它发挥作用?或者有另一种方法可以重叠两条轨道吗?

我可以使用 AVQeueuPalyer 进行播放,但我不能让轨道重叠。有什么建议吗?

-- 编辑--

如果不清楚,我可以播放任意长的背景音频。仅仅在后台创建一个新的 AVPlayer 实例是行不通的。

最佳答案

做我想做的事情的正确方法似乎是 AVMutableComposition。这样我就不需要多个 AVPlayer 和其他一些好处。有关更多详细信息:我在博文中对其进行了总结:http://www.postblog.me/2012/03/playing-multiple-overlapping-audio-tracks-in-background/

关于ios - 在后台创建新的 AVPlayer 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9618668/

相关文章:

ios - 在滚动期间更改背景颜色

ios - UITableviewCell 高度未在滚动时重置

iphone - Objective C 线程问题

frameworks - CoreMedia.CMTime

.net - 执行 POST 到 WCF 服务时出现 iOS 5 Json 错误 400

html - iOS7 Safari 地址栏在 iPad 模拟器中与页面内容重叠约 10 px

ios - 在UIWebView中拦截图像中的链接

iphone - UIControlEventTouchDragOutside 和 UIControlEventTouchDragExit 之间的区别在哪里?

xcode - 使用 AVPlayer 播放多个音频文件

ios - 从麦克风录音和处理(PCM?)文件的示例