Compartir a través de


Función waveOutSetVolume (mmeapi.h)

La función waveOutSetVolume establece el nivel de volumen del dispositivo de salida waveform-audio especificado.

Sintaxis

MMRESULT waveOutSetVolume(
  HWAVEOUT hwo,
  DWORD    dwVolume
);

Parámetros

hwo

Controle un dispositivo de salida de forma de onda abierta. Este parámetro también puede ser un identificador de dispositivo.

dwVolume

Nueva configuración de volumen. La palabra de orden bajo contiene la configuración del volumen del canal izquierdo y la palabra de orden superior contiene la configuración del canal derecho. Un valor de 0xFFFF representa el volumen completo y un valor de 0x0000 es silencio.

Si un dispositivo no admite el control de volumen izquierdo y derecho, la palabra de orden bajo de dwVolume especifica el nivel de volumen y se omite la palabra de orden superior.

Valor devuelto

Devuelve MMSYSERR_NOERROR si se ejecuta correctamente o si se produce un error. Entre los posibles valores de error se incluyen los siguientes.

Código devuelto Descripción
MMSYSERR_INVALHANDLE
El identificador de dispositivo especificado no es válido.
MMSYSERR_NODRIVER
No hay ningún controlador de dispositivo presente.
MMSYSERR_NOMEM
No se puede asignar o bloquear la memoria.
MMSYSERR_NOTSUPPORTED
No se admite la función.

Comentarios

Si se usa un identificador de dispositivo, el resultado de la llamada waveOutSetVolume se aplica a todas las instancias del dispositivo. Si se usa un identificador de dispositivo, el resultado solo se aplica a la instancia del dispositivo al que hace referencia el identificador del dispositivo.

No todos los dispositivos admiten cambios de volumen. Para determinar si el dispositivo admite el control de volumen, use la marca WAVECAPS_VOLUME para probar el miembro dwSupport de la estructura WAVEOUTCAPS (rellenada por la función waveOutGetDevCaps ). Para determinar si el dispositivo admite el control de volumen en los canales izquierdo y derecho, use la marca WAVECAPS_LRVOLUME.

La mayoría de los dispositivos no admiten los 16 bits completos del control de nivel de volumen y no usarán los bits menos significativos de la configuración de volumen solicitada. Por ejemplo, si un dispositivo admite 4 bits de control de volumen, los valores 0x4000, 0x4FFF y 0x43BE se truncarán en 0x4000. La función waveOutGetVolume devuelve la configuración completa de 16 bits establecida con waveOutSetVolume.

La configuración del volumen se interpreta logarítmicamente. Esto significa que el aumento percibido en el volumen es el mismo al aumentar el nivel de volumen de 0x5000 a 0x6000, ya que es de 0x4000 a 0x5000.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado mmeapi.h (incluye Windows.h)
Library Winmm.lib
Archivo DLL Winmm.dll

Consulte también

Audio de forma de onda

Funciones de forma de onda