为啥 iPod 的音频在我的应用程序导致它淡出后没有淡入?
Posted
技术标签:
【中文标题】为啥 iPod 的音频在我的应用程序导致它淡出后没有淡入?【英文标题】:Why does iPod's audio not fade back in after my app caused it to fade out?为什么 iPod 的音频在我的应用程序导致它淡出后没有淡入? 【发布时间】:2008-12-22 12:11:47 【问题描述】:我的应用程序需要播放一些音频文件,我想淡出 iPod 声音,播放我的文件,然后当我的音频停止播放淡入式 iPod 时(就像 iPhone 处理 iPod 音乐时传入来电)
我正在将我的应用程序的音频会话设置为 kAudiosessionCategory_MediaPlayback,然后在我播放文件之前我调用 AudioSessionSetActive (true) 然后当我的文件结束播放时,我调用 AudioSessionSetActive (false)
发生的情况是 iPod 音频在调用 AudioSessionSetActive (true) 时淡出,但在我调用 AudioSessionSetActive (false) 后它再也不会淡入
我正在使用 AVFoundation 类播放我的音频,我在我的委托方法中使用 audioPlayerDidFinishPlaying,这就是我调用 AudioSessionSetActive (false) 的地方。
我在这里缺少什么?为什么当我停用音频会话时 iPod 没有淡入?我是否为此设置了错误的音频会话类别?
【问题讨论】:
【参考方案1】:好的,这很可爱。 在 iPhone OS3 中,请参阅 AddMusic 示例。
本质上,你这样做:
#import <MediaPlayer/MediaPlayer.h>
...
[[MPMusicPlayerController iPodMusicPlayer] pause]
...(play your audio, with AmbientSound category)
[[MPMusicPlayerController iPodMusicPlayer] play]
这是基本的。您还可以通过循环音量变化等来添加淡出。
【讨论】:
【参考方案2】:我得到了 Apple 的答复。不幸的是,SDK 2.2 无法实现。我提交了一个功能请求,所以谁知道将来可能会添加这个功能。
【讨论】:
以上是关于为啥 iPod 的音频在我的应用程序导致它淡出后没有淡入?的主要内容,如果未能解决你的问题,请参考以下文章