Mac OS X声音输出

时间:2012-07-05 08:05:54

标签: c++ c macos audio buffer

有没有关于如何在Mac OS X上输出原始声音缓冲区的示例? 类似于pa_simple_write()用于pulseaudio或waveOutWrite()来自WINAPI。

2 个答案:

答案 0 :(得分:1)

您需要创建AudioQueue

接下来你需要allocate a buffer。分配完成后,您可以使用数据enqueue it填充它。最后你打电话给AudioQueueStart。然后,您可以立即调用AudioQueueStop传递false作为最后一个参数。

但是,如果你需要同时播放多个声音,上面的效果不会很好。如果您希望这样做,AFAIK,您需要一个更复杂的设置,将音频混合到一个缓冲区。尽管如此......这将很快变得复杂。

答案 1 :(得分:0)

我遇到的最简单的方法是使用libao。方便的是,它也是跨平台的。