waveOutWrite

The waveOutWrite function sends a data block to the given waveform-audio output device.

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

Parameters

hwo
Handle of the waveform-audio output device.
pwh
Address of a WAVEHDR structure containing information about the data block.
cbwh
Size, in bytes, of the WAVEHDR structure.

Return Values

Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following:

Value Description
MMSYSERR_INVALHANDLE Specified device handle is invalid.
MMSYSERR_NODRIVER No device driver is present.
MMSYSERR_NOMEM Unable to allocate or lock memory.
WAVERR_UNPREPARED The data block pointed to by the pwh parameter hasn't been prepared.

Remarks

When the buffer is finished, the WHDR_DONE bit is set in the dwFlags member of the WAVEHDR structure.

The buffer must be prepared with the waveOutPrepareHeader function before it is passed to waveOutWrite. Unless the device is paused by calling the waveOutPause function, playback begins when the first data block is sent to the device.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 2.0 or later.
  Header: Declared in mmsystem.h.
  Import Library: Use winmm.lib.

See Also

Waveform Audio Overview, Waveform Functions, WAVEHDR, waveOutPrepareHeader, waveOutPause