我正在编写一个 iPad 应用程序,它使用“Flite”文本到语音引擎来宣布特定事件。Flite 引擎使用 AVAudioPlayer 实例在呈现语音音频后播放它。为了好玩,我决定在我的应用程序中添加一些简单的控件,以允许用户在我的应用程序使用 MPMusicPlayerController 运行时控制 iPod 播放(下一个、上一个、播放/暂停和音量 - 基础)。
我遇到的问题是,当我使用 MPMusicPlayerController 调整 iPod 音量时,我的所有音频都会受到影响,包括其他音效和语音音频。在播放声音之前,我将这些其他音频播放器(AVAudioPlayer 实例)的音量设置为 1.0,但无论 iPod 播放器音量设置为什么,我似乎总是将音量设置为上限......
这是正常的吗?我能做些什么来绕过它?无论 iPod 播放器的音量如何,我都希望我的应用程序的音频以系统全音量播放。(示例:用户已将系统音量设置为设备最大音量的 80%。我希望我的应用以 80% 的 100% 播放音频,同时允许用户将 iPod 音频播放调整为 80% 的 0-100% %.) 注意:我对“闪避”不感兴趣,而是在我的应用程序运行时始终将 iPod 音量调低(背景音乐)。
我也有一个问题,即 - 有时 - 当您第一次启动应用程序并按下 iPod 播放器上的播放(发送 [player play] 调用)时,iPod 没有响应。如果我按下主页按钮,进入 iPod 应用程序并开始播放,然后返回我的应用程序,它工作正常。那有什么关系?
提前感谢您的帮助!!