当我使用Windows WASAPI的函数IAudioClient :: Initialize来初始化音频设备上的捕获流时,有时需要几秒钟才能成功返回,尽管通常它只需要几百毫秒。我使用的代码如下:
// Create a capturing stream.
hr = _ptrClientIn->Initialize(AUDCLNT_SHAREMODE_SHARED,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK |
AUDCLNT_STREAMFLAGS_NOPERSIST,
0,
0,
(WAVEFORMATEX*)&Wfx,
NULL);
不确定为什么相同的函数调用可能会有所不同。