WODM_PAUSE

The WODM_PAUSE message requests a waveform output driver to pause playback of a waveform.

Parameters

uDeviceId

Device identifier (0, 1, 2, and so on) for the target device.

uMsg

WODM_PAUSE

dwUser

Pointer to location to receive device instance identifier.

dwParam1

Not used.

dwParam2

Not used.

Return Value

The driver should return MMSYSERR_NOERROR if the operation succeeds. Otherwise it should return one of the MMSYSERR or WAVERR error codes defined in mmsystem.h. See waveOutPause return values in the Win32 SDK.

Comments

A client sends the WODM_PAUSE message by calling the user-mode driver’s wodMessage entry point, passing the specified parameters.

The driver should stop playing the waveform and should save the current position. Playback should continue from this position when a WODM_RESTART message is received. Output buffers received with the WODM_WRITE message while playback is paused should be placed in the output queue.

If the driver receives this message while output is already paused, it should return MMSYSERR_NOERROR.

Typically, the user-mode driver calls DeviceIoControl to send the kernel-mode driver an IOCTL_WAVE_SET_STATE control code.