将音频输出到内置输出设备(非默认设备)

时间:2016-09-04 18:35:19

标签: macos audio core-audio

我需要在我的应用程序中进行一些系统范围的音频处理 我已经安装了Soundflower并选择它作为我的默认输出设备,以获得系统音频。我知道Soundflower只是将混音缓冲区复制到ThruBuffer并将其传递给应用程序,以便他们可以在AudioDeviceIOProc回调中获取它。
我不明白的是在完成音频处理后如何将音频路由回内置输出设备。我将Soundflower设备作为默认设备,当我尝试将音频路由到默认输出单元时,它会产生静音。也许我需要的是在我的程序中创建一个多输出设备,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

您可以在osx上创建一个多输出设备 - 他们被称为"聚合设备"。你可以在Audio MIDI Setup应用程序中手动完成,并在你的应用程序中使用该设备,或者在你的应用程序中以编程方式进行。

如果您在应用程序中执行此操作,示例代码似乎很少见。我从this blog post中抄下了我需要的信息。

NB 帖子很老,我不得不去Internet Archive Wayback Machine找到它。