我在做一个VOIP应用程序。我使用核心音频单元来播放和录制音频。我需要能够操纵声音音量和输出设备。我试图使用MPVolumeView来设置声音音量并选择输出设备。
我的问题是:当我开始使用( RemoteIO音频单元的开始播放和捕获)音频单元时,似乎MPVolumeView不再控制会话的音量,而是控制系统范围的声音首选项。同时,硬件按钮可以控制音频单元播放的声音音量。另外,当我开始使用音频单元时,MPVolumeView开始显示按钮来改变输出设备,但在此之前它没有。
MPVolumeView似乎控制了一些系统范围的音频会话的音量,但是当我开始使用音频单元时,会创建另一个应用程序宽(甚至是音频单元宽)的音频会话,并用来播放声音。
那么问题是如何使MPVolumeView控制声音音量为我的核心音频会话?
我很想知道为什么会发生这种情况。我花了几乎一整天的时间在谷歌上搜索,我发现有些人有相关的问题,但没有人得到任何提示。我也可以张贴更多的细节,如果需要。
发布于 2016-07-28 14:32:05
被苹果工程师确认为窃听器。
在更多细节中- MPVolumeView应该绑定到特定的音频路由(从更广泛的意义上说,比如音频路由+音频类别+模式等等),而且它适用于几个最常见的路由(例如耳机+播放类别+默认模式),但不是所有您可以创建的自定义路由。
因此,基本上,当您创建一些自定义路由时,MPVolumeView仍然试图控制它的最后(可行的)路由或默认路由。
https://stackoverflow.com/questions/19321479
复制相似问题