2013-10-11 111 views
5

我一个VOIP应用工作。 我使用Core Audio Audio Units播放和录制音频。我需要能够操作音量和输出设备。我正在尝试使用MPVolumeView设置音量并选择输出设备。的Core Audio(音频单元),音频会议和MPVolumeView

我的问题是:当我开始使用(开始播放和捕获RemoteIO音频单元)音频单元时,似乎MPVolumeView不再控制我的会话音量,而是控制系统宽度的声音首选项。与此同时,硬件按钮控制音频单元播放的音量。另外,当我开始使用音频单元MPVolumeView开始显示按钮来更改输出设备,但在此之前它不。

似乎MPVolumeView控制对某些系统范围的音频对话音量,但是当我开始使用音频单元被创建并用来播放声音的另一个应用广泛的(甚至是音频单元宽)音频会议。

所以现在的问题是,如何让MPVolumeView控制音量对我的Core Audio音频会议?

我将不胜感激为什么发生这种情况的任何提示。我花了几乎一整天google搜索,我看到一些人有关的问题,但没有得到任何提示:(。我还可以根据需要发布更多细节。

+1

好吧,它似乎是iOS的错误。我向苹果提交了一个错误报告,他们甚至回应我说它是某人的错误的“重复”。所以我仍然在等待任何解决方案。同时,如果有人能指点我一些解决方法,我将不胜感激。 – user1264176

回答

1

确认为苹果工程师的错误。

更详细地说,MPVolumeView应该绑定到特定的音频路由(更广泛的意义上,如音频路由+音频类别+模式等),它适用于几种最常见的路由(例如耳机+播放类别+默认模式)但不适用于所有可以创建的自定义路由

所以基本上当创建一些自定义路由时,MPVolumeView仍然试图控制它的最后(可行)或默认路由