我目前正在阅读MSDN的文档,以将流渲染到音频渲染器。
换句话说,就是从麦克风播放我捕获的数据。
http://msdn.microsoft.com/en-us/library/dd316756%28v=vs.85%29.aspx
这个例子提供了例子。
我现在的问题是我无法真正理解项目流程。
我目前有一个不同的类,存储从捕获过程中获取的以下参数。
当程序从麦克风捕获流音频数据时,这些参数将被连续重写。
BYTE data;
UINT32 bufferframecount;
DWORD flag;
WAVEFORMATEX *pwfx;
我的问题是
loadData()函数实际上是如何工作的。
是否应该从捕获过程中获取我正在编写的参数?
程序如何将数据发送到音频渲染器,并在扬声器中播放。
最佳答案
loadData()函数填充pData指向的音频。该示例提取了音频源,因此可以是.wav文件到您已捕获的麦克风音频的任何内容。
因此,如果您尝试从该示例进行构建,则将实现MyAudioSource类,并在调用loadData()时使其仅读取PCM或从文件中浮点采样。然后,如果您运行该程序,它将从扬声器中播放文件中的音频。
关于winapi - 渲染音频流(WASAPI/WINAPI),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5382928/