【发布时间】:2012-07-05 08:05:53
【问题描述】:
有没有关于如何在 Mac OS X 上输出原始声音缓冲区的示例?
类似pa_simple_write() 的pulseaudio 或waveOutWrite() 来自WINAPI。
【问题讨论】:
有没有关于如何在 Mac OS X 上输出原始声音缓冲区的示例?
类似pa_simple_write() 的pulseaudio 或waveOutWrite() 来自WINAPI。
【问题讨论】:
您需要创建一个AudioQueue。
接下来你需要allocate a buffer。分配后,然后用数据和enqueue it 填充它。最后你打电话给AudioQueueStart。然后,您可以立即调用 AudioQueueStop,并将 false 作为最后一个参数。
不过,如果您需要同时播放多个声音,上述方法就不能很好地工作。如果您希望这样做,AFAIK,您将需要一个更复杂的设置,将音频混合到缓冲区中。不过这很快就会变得复杂......
【讨论】:
我遇到的最简单的方法是使用libao。方便的是,它也是跨平台的。
【讨论】: