waveInAddBuffer

A version of this page is also available for

Windows Embedded CE 6.0 R3

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

See Also

Reference

Waveform Audio Functions
waveInPrepareHeader
WAVEHDR