WODM_GETVOLUME

The WODM_GETVOLUME message requests a waveform output driver to return the current volume level setting for the specified device.

Parameters
uDeviceId
Device identifier (0, 1, 2, and so on) for the target device.
uMsg
WODM_GETVOLUME
dwUser
Device instance identifier.
dwParam1
Pointer to a DWORD location to receive the volume setting.
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 waveOutGetVolume return values in the Win32 SDK.

Comments

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

Support for this message by user-mode drivers is optional. If the driver supports WODM_SETVOLUME, it must support WODM_GETVOLUME.

The volume value is returned in the DWORD pointed to by dwParam1 as follows.

Channel

Portion of dwParam1 Used

Left channel

Low word

Right channel

High word

Single channel

Low word

A value of zero is silence, and a value of 0xFFFF is full volume.

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