同时使用AVAudioPlayer和MPMoviePlayerController

时间:2009-08-07 04:45:07

标签: iphone

我需要同时使用 AVAudioPlayer MPMoviePlayerController ,即在播放背景循环时播放电影。
当电影开始播放时,我的bg音乐循环停止工作,所以我试图停止bg音乐循环并启动电影,当电影停止时,再次开始播放bg循环,但这也无效。

2 个答案:

答案 0 :(得分:2)

事实上,从3.x起,它是可以实现的。我曾经在我的一个应用程序中完成此操作,它与任何后台处理或任何其他新的iOS功能无关。您只需要正确配置音频会话。如果您确保音频播放器和视频播放器都使用环境音频会话,则可以使用。

在开始播放AVAudioPlayer之前,请将音频会话的类别设置为AVAudioSessionCategoryAmbient。这是系统范围的常见音频会话。这样可以播放其他声音,例如来自iPod应用程序的声音。

如果您使用的是iOS 3.2或更高版本的MPMoviePlayerController,请务必将useApplicationAudioSession设置为NO。这可确保其他声音播放。它是早期版本的iOS中的默认设置。

答案 1 :(得分:1)

目前的iPhone SDK(2.x和3.x)存在限制,当电影在MPMoviePlayerController API中播放时,不允许播放任何背景音频。不幸的是,目前无法在iPhone SDK中执行您所要求的操作。

我建议Apple logging an enhancement request在未来版本的SDK中提供此功能。