waveInUnprepareHeader
This function cleans up the preparation performed by waveInPrepareHeader. The function must be called after the device driver fills a data buffer and returns it to the application. You must call this function before freeing the data buffer.
MMRESULT waveInUnprepareHeader( HWAVEIN hwi, LPWAVEHDR pwh, UINT cbwh );
- hwi
-
Handle to the waveform-audio input device.
- pwh
-
Pointer to a WAVEHDR structure identifying the buffer to be cleaned up.
- cbwh
-
Size, in bytes, of the WAVEHDR structure.
One of the values described in the following table is returned.
| Value | Description |
|---|---|
|
MMSYSERR_NOERROR |
Success. |
|
MMSYSERR_INVALHANDLE |
Specified device handle is invalid. |
|
MMSYSERR_NODRIVER |
No device driver is present. |
|
MMSYSERR_NOMEM |
Unable to allocate or lock memory. |
|
WAVERR_STILLPLAYING |
Buffer pointed to by the pwh parameter is still in the queue. |
This function complements the waveInPrepareHeader function.
You must call this function before freeing the buffer. After passing a buffer to the device driver with the waveInAddBuffer function, you must wait until the driver is finished with the buffer before calling waveInUnprepareHeader. Unpreparing a buffer that has not been prepared has no effect, and the function returns zero.