iOS应用程序中AVAudioPlayer和MPMusicPlayerController的独立音量控制.

Vib*_*yal 2 cocoa-touch avaudioplayer mpmusicplayercontroller ios

在我的应用程序中,我正在使用AVAudioPlayer播放下载的音频,同时使用MPMusicPlayerController从用户的iPod音乐库播放音频.

我需要能够调整AVAudioPlayer实例的音量,使其比来自MPMusicPlayerController的音频更响亮.

问题是,当我调整AVAudioPlayer的Volume属性时,它还会调整MPMusicPlayerController的音量.

有没有任何解决方案可以让我独立控制这两个玩家的音量?

如果没有,我应该用另一种技术来做这件事吗?任何帮助表示赞赏.

Mig*_*elB 6

看一下AVAudioSession的文档.例如,在AVAudioSession编程指南中,说明如下:

"最后,您可以增强一个类别,以便在播放音频时自动降低其他音频的音量.例如,这可以在练习应用程序中使用.假设当您的应用程序想要覆盖时,用户正在练习iPod例如,"你已经划船了10分钟."为了确保你的应用程序中的消息是可理解的,将kAudioSessionProperty_OtherMixableAudioShouldDuck属性应用于你的音频会话.当发生躲避时,设备上的所有其他音频 - 除了手机音频音量下降外."

我认为它可以解决你的问题.初始化AVAudioSession并设置其类别和属性的文档非常清晰且易于理解; 你应该没有问题.