waveInAddBuffer
A version of this page is also available for
4/8/2010
This function sends an input buffer to the specified waveform-audio input device. When the buffer is filled, the application is notified.
Syntax
MMRESULT waveInAddBuffer(
HWAVEIN hwi,
LPWAVEHDR pwh,
UINT cbwh
);
Parameters
- hwi
Handle to the waveform-audio input device.
- pwh
Pointer to a WAVEHDR structure that identifies the buffer.
- cbwh
Size, in bytes, of the WAVEHDR structure.
Return Value
One of the values described in the following table is returned.
Value | Description |
---|---|
MMSYSERR_NOERROR |
Success. |
MMSYSERR_INVALHANDLE |
Specified device handle is invalid. |
MMSYSERR_NODRIVE |
No device driver is present. |
MMSYSERR_NOMEM |
Unable to allocate or lock memory. |
WAVERR_UNPREPARED |
Buffer pointed to by the pwh parameter has not been prepared. |
Remarks
When the buffer is filled, the WHDR_DONE bit is set in the dwFlags member of the WAVEHDR structure.
The buffer must be prepared with the waveInPrepareHeader function before it is passed to this function.
When waveInOpen opens an input stream, it places that stream in the stopped state. Capture will only begin after you have called waveInStart, this lets the driver know that your application is ready to begin capturing sound. If you have given the driver a buffer, through a prior call to waveInAddBuffer, then sound capture will begin immediately after the call to waveInStart. If the driver does not already have a buffer before the call to waveInStart, then sound capture will begin immediately after you provide it one using waveInAddBuffer.
Requirements
Header | mmsystem.h |
Library | coredll.lib |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |