IAudioStreamVolume::GetChannelVolume Method

The GetChannelVolume method retrieves the volume level for the specified channel in the audio stream.

Syntax

public:
HRESULT GetChannelVolume(
         UINT32 dwIndex,
         float *pfLevel
)  

Parameters

dwIndex
Type: UINT32 

[in]

The channel number. If the stream format has N channels, then the channels are numbered from 0 to N– 1. To get the number of channels, call the IAudioStreamVolume::GetChannelCount method.

pfLevel
Type: float *

[out]

Pointer to a float variable into which the method writes the volume level of the specified channel. The volume level is in the range 0.0 to 1.0.

Return value

Type: HRESULT 

If the method succeeds, it returns S_OK. If it fails, possible return codes include, but are not limited to, the values shown in the following table.

Return codes
Return code Description
E_INVALIDARG Parameter dwIndex is set to an invalid channel number.
E_POINTER Parameter pfLevel is NULL.
AUDCLNT_E_DEVICE_INVALIDATED The audio endpoint device has been unplugged, or the audio hardware or associated hardware resources have been reconfigured, disabled, removed, or otherwise made unavailable for use.
AUDCLNT_E_SERVICE_NOT_RUNNING The Windows audio service is not running.

Refer to WASAPI error codes.

Remarks

Clients can call the IAudioStreamVolume::SetAllVolumes or IAudioStreamVolume::SetChannelVolume method to set the per-channel volume levels in an audio stream.

Requirements

Header: Declared in audioclient.h.

Library: Use mmdevapi.lib.

See also

IAudioStreamVolume

IAudioStreamVolume Members