WODM_GETPLAYBACKRATE

The WODM_GETPLAYBACKRATE message requests a waveform output driver to return the current playback rate multiplier value for the specified device.

Parameters

uDeviceId

Device identifier (0, 1, 2, etc.) for the target device.

uMsg

WODM_GETPLAYBACKRATE

dwUser

Device instance identifier.

dwParam1

Pointer to a DWORD location used to return the current playback rate multiplier value. This is specified as a fixed-point value, where the high-order word of the DWORD contains the signed integer part of the number, and the low-order word contains the fractional part. The fraction consists of a WORD value, for which 0x8000 represents one half, and 0x4000 represents one quarter. For example, the value 0x00010000 specifies a multiplier of 1.0 (no rate change), and a value of 0x000F8000 specifies a multiplier of 15.5.

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 waveOutGetPlaybackRate return values in the Win32 SDK.

Comments

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

Support for the WODM_GETPLAYBACKRATE message by user-mode drivers is optional. If a driver supports the WODM_SETPLAYBACKRATE message, it must also support WODM_GETPLAYBACKRATE.

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