Método IAudioEndpointVolume::SetChannelVolumeLevel (endpointvolume.h)
El método SetChannelVolumeLevel establece el nivel de volumen, en decibelios, del canal especificado de la secuencia de audio que entra o sale del dispositivo de punto de conexión de audio.
Sintaxis
HRESULT SetChannelVolumeLevel(
[in] UINT nChannel,
[in] float fLevelDB,
[in] LPCGUID pguidEventContext
);
Parámetros
[in] nChannel
Número de canal. Si la secuencia de audio contiene n canales, los canales se numeran de 0 a n– 1. Para obtener el número de canales, llame al método IAudioEndpointVolume::GetChannelCount .
[in] fLevelDB
Nuevo nivel de volumen en decibelios. Para obtener el intervalo y la granularidad de los niveles de volumen que puede establecer este método, llame al método IAudioEndpointVolume::GetVolumeRange .
[in] pguidEventContext
Valor de contexto del método IAudioEndpointVolumeCallback::OnNotify . Este parámetro apunta a un GUID de contexto de evento. Si la llamada a SetChannelVolumeLevel cambia el nivel de volumen del punto de conexión, todos los clientes que han registrado interfaces IAudioEndpointVolumeCallback con ese punto de conexión recibirán notificaciones. En su implementación del método OnNotify , un cliente puede inspeccionar el GUID del contexto de eventos para detectar si es el origen del evento de cambio de volumen. Si el autor de la llamada proporciona un puntero NULL para este parámetro, la rutina de notificación recibe el valor guid de contexto GUID_NULL.
Valor devuelto
Si el método se realiza correctamente, devuelve S_OK. Si se produce un error en el método, los posibles códigos de retorno incluyen, entre otros, los valores que se muestran en la tabla siguiente.
Código devuelto | Descripción |
---|---|
|
El parámetro nChannel es mayor o igual que el número de canales de la secuencia; o el parámetro fLevelDB se encuentra fuera del intervalo de volúmenes admitido por el dispositivo. |
|
Memoria insuficiente |
Comentarios
Si el nivel de volumen fLevelDB está fuera del intervalo de volúmenes notificado por el método IAudioEndpointVolume::GetVolumeRange , se produce un error en la llamada SetChannelVolumeLevel y se devuelve el código de error E_INVALIDARG.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | endpointvolume.h |
Consulte también
IAudioEndpointVolume (interfaz)
IAudioEndpointVolume::GetChannelCount
IAudioEndpointVolume::GetVolumeRange