3

在阅读 Mac OS X 音频 API 时,他们似乎列出了很多功能,但没有(我能找到)如何使用它们。

例如,他们列出了一个子类IOAudioLevelControl. 我应该用它创建一个对象,并假设它控制音频电平吗?如果是这样,我应该假设什么?它有一个设置音频级别的构造函数,所以我应该声明它们IOAudioLevelControl levelControl(5);

我在这里很困惑。

编辑:我的目标是制作一个程序来检测所有正在运行的程序的音频级别(例如当您从 Youtube 播放音乐时的 Chrome 等),并在超过用户设置的某个级别时降低级别。

4

1 回答 1

3

IOKit太低级了——它是系统上设备驱动程序的用户空间代理MacOSX 提供了几个层来解决这个问题。最有可能的是,您无需 root 即可直接使用这些 API。

Core Audio提供了堆栈中的下一层。 此页面上的图表显示了体系结构。

设置 CoreAudio 是更高级别的 API,例如 Audio Units 和 AVFoundation。这很可能是你想要的。

于 2013-07-13T14:01:27.610 回答