【发布时间】:2013-02-18 23:14:48
【问题描述】:
我对 2 个 Directsound 流的同步有疑问。
为了录制和播放声音,我目前使用 Portaudio 打开 2 个 Directsound 流。 每次输入缓冲区被填满并且输出缓冲区需要数据时,都会调用2个回调函数。
现在这是我的问题...
输入流以 48kHz 采样率运行(@1024 个样本)。输出流以 192kHz 采样率运行(@4096 个样本)。每次输入缓冲区被填满并调用回调时,我都会做一些 DSP,然后将结果转换为 192kHz。输出流获取结果并输出数据。现在 2 个流完全不同步了。
我查看了整个 Portaudio API,但找不到将 2 个流锁定在一起的同步选项。
有什么方法可以锁定 2 个 Directsound 流吗?我真的需要 48kHz 输入和 192kHz 输出。
兄弟,
文森特·布鲁尼克。
【问题讨论】:
-
您可能在使用 Directsound 以外的其他 API 时运气更好。
-
了解,但 Directsound 和 ASIO 是唯一支持 192kHz 采样率的。 ASIO 只能立即打开一个流。
标签: stream directsound portaudio synchronisation