核心音频(音频单元)音频会话和MPVolumeView



我在开发VOIP应用程序。我使用核心音频音频单元来播放和录制音频。我需要能够操纵音量和输出设备。我正在尝试使用MPVolumeView来设置音量并选择输出设备。

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

似乎MPVolumeView控制某些系统范围的音频会话的音量,但是当我开始使用音频单元时,会创建另一个应用程序范围(甚至音频单元范围(的音频会话并用于播放声音。

所以问题是如何使MPVolumeView控制我的核心音频会话的音量?

我将不胜感激任何关于为什么会发生这种情况的提示。我几乎花了一整天的时间在谷歌上搜索,我看到有些人有相关的问题,但没有人得到任何提示:(。如果需要,我还可以发布更多详细信息。

被 Apple 工程师确认为错误。

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

因此,基本上,当创建一些自定义路由MPVolumeView时,仍然会尝试控制其最后(可行(或默认路由。

最新更新