waveOutUnprepareHeader (Windows Embedded CE 6.0)

1/6/2010

This function cleans up the preparation performed by waveOutPrepareHeader. The function must be called after the device driver is finished with a data block. You must call this function before freeing the data buffer.

Syntax

MMRESULT waveOutUnprepareHeader(
  HWAVEOUT hwo, 
  LPWAVEHDR pwh, 
  UINT cbwh 
); 

Parameters

  • hwo
    Handle to the waveform-audio output device.
  • pwh
    Pointer to a WAVEHDR structure identifying the data block to be cleaned up.
  • 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_NODRIVER

No device driver is present.

MMSYSERR_NOMEM

Unable to allocate or lock memory.

WAVERR_STILLPLAYING

Data block pointed to by the pwh parameter is still in the queue.

Remarks

This function complements waveOutPrepareHeader. You must call this function before freeing the buffer. After passing a buffer to the device driver with the waveOutWrite function, you must wait until the driver is finished with the buffer before calling waveOutUnprepareHeader.

Unpreparing a buffer that has not been prepared has no effect, and the function returns zero.

Requirements

Header mmsystem.h
Library coredll.lib
Windows Embedded CE Windows CE 2.0 and later

See Also

Reference

Waveform Audio Functions