我用waveInOpen打开采集声音,
siRelt = waveInOpen(&hWaveIn,
WAVE_MAPPER,
&wFormat,
(DWORD)WaveInProc,
(DWORD)this,
CALLBACK_FUNCTION
);
用了两个缓冲区来回切换,在waveinproc处理中,
case WIM_DATA:
//......
WAVEHDR* pHdr = (WAVEHDR*)udwParam1;
waveInAddBuffer (hWaveIn, pHdr, sizeof (WAVEHDR));我看了一下任务管理器,我的软件的内存会一直增加阿,基本上是每刷新一次就增加了4k。
问问大侠们这是什么现象,要处理吗?如何处理?
谢谢!
siRelt = waveInOpen(&hWaveIn,
WAVE_MAPPER,
&wFormat,
(DWORD)WaveInProc,
(DWORD)this,
CALLBACK_FUNCTION
);
用了两个缓冲区来回切换,在waveinproc处理中,
case WIM_DATA:
//......
WAVEHDR* pHdr = (WAVEHDR*)udwParam1;
waveInAddBuffer (hWaveIn, pHdr, sizeof (WAVEHDR));我看了一下任务管理器,我的软件的内存会一直增加阿,基本上是每刷新一次就增加了4k。
问问大侠们这是什么现象,要处理吗?如何处理?
谢谢!
但是参数wavehdr只是在初始才分配的,
录音完后waveInReset(), waveInClose()