WODM_SETVOLUME

This message is sent to a waveform output device driver to set the volume for a device.

Parameters

DWORD dwParam1

Specifies the new volume level. The high-order word contains the right channel setting and the low-order word contains the left channel setting. A value of 0 is silence, and a value of 0xFFFF is full volume. If the driver does not support both left and right channel volume changes, it uses the volume specified in the low-order word. The driver will probably not support the full 16 bits of volume control and should truncate the lower bits if necessary. However, the original value requested with WODM_SETVOLUME should be returned with WODM_GETVOLUME.

DWORD dwParam2

Unused.

Return Value

The return value is an error code, or zero (MMSYSERR_NOERROR) if the operation is successful. Possible error codes are:

MMSYSERR_NOTENABLED

The driver failed to load or initialize.

MMSYSERR_NOTSUPPORTED

The driver does not support changes to volume level.

Comments

Driver support for volume level changes is optional. When a driver receives a WODM_GETDEVCAPS message, it should indicate support for volume level changes by setting or clearing the WAVECAPS_VOLUME and WAVECAPS_LRVOLUME bits in the dwSupport field of the WAVEOUTCAPS data structure. If a driver supports the WODM_SETVOLUME message, then it must also support WODM_GETVOLUME.

See Also

WODM_GETVOLUME