如何使用Mac OS X音频API函数?

时间:2013-07-13 12:22:54

标签: c++ macos api audio

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

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

我在这里很困惑。

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

1 个答案:

答案 0 :(得分:2)

IOKit的方式级别太低 - 它是系统上设备驱动程序的用户空间代理。 MacOSX提供了几个与此相关的层。最有可能的是,您可以直接使用这些API而不是root用户。

Core Audio在堆栈中提供下一层。此页面上的The diagram显示了该体系结构。

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