The waveOutGetPosition function retrieves the current playback position of the given waveform-audio output device.

MMRESULT waveOutGetPosition(
  HWAVEOUT hwo,  
  LPMMTIME pmmt, 
  UINT cbmmt     



Handle to the waveform-audio output device.


Pointer to an MMTIME structure.


Size, in bytes, of the MMTIME 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.


Before calling this function, set the wType member of the MMTIME structure to indicate the time format you want. After calling this function, check wType to determine whether the time format is supported. If the format is not supported, wType will specify an alternative format.

The position is set to zero when the device is opened or reset.


**  Windows NT/2000/XP:** Included in Windows NT 3.1 and later.
**  Windows 95/98/Me:** Included in Windows 95 and later.
**  Header:** Declared in Mmsystem.h; include Windows.h.
**  Library:** Use Winmm.lib.

See Also

Waveform Audio, Waveform Functions, MMTIME