Compartir a través de


Interfaz IMFSimpleAudioVolume (mfidl.h)

Controla el nivel de volumen maestro de la sesión de audio asociada al representador de audio de streaming (SAR) y al origen de captura de audio.

El SAR y el origen de captura de audio exponen esta interfaz como servicio. Para obtener un puntero a la interfaz, llame a IMFGetService::GetService. Para sar, use el identificador de servicio MR_POLICY_VOLUME_SERVICE. Para el origen de captura de audio, use el identificador de servicio MR_CAPTURE_POLICY_VOLUME_SERVICE. Puede llamar a GetService directamente en el SAR o en el origen de captura de audio o llamarlo en la sesión multimedia.

Herencia

La interfaz IMFSimpleAudioVolume hereda de la interfaz IUnknown . IMFSimpleAudioVolume también tiene estos tipos de miembros:

Métodos

La interfaz IMFSimpleAudioVolume tiene estos métodos.

 
IMFSimpleAudioVolume::GetMasterVolume

Recupera el nivel de volumen maestro.
IMFSimpleAudioVolume::GetMute

Consulta si el audio está silenciado. (IMFSimpleAudioVolume.GetMute)
IMFSimpleAudioVolume::SetMasterVolume

Establece el nivel de volumen maestro.
IMFSimpleAudioVolume::SetMute

Silencia o desmuta el audio. (IMFSimpleAudioVolume.SetMute)

Comentarios

Para controlar los niveles de volumen de canales individuales, use la interfaz IMFAudioStreamVolume . La interfaz IMFAudioStreamVolume solo es compatible con la SAR.

El volumen se expresa como un nivel de atenuación, donde 0,0 indica silencio y 1,0 indica volumen completo (sin atenuación). Para cada canal, el nivel de atenuación es el producto de:

  • Nivel de volumen maestro de la sesión de audio.
  • Nivel de volumen del canal.
Por ejemplo, si el volumen maestro es 0,8 y el volumen del canal es 0,5, la atenuación de ese canal es 0,8 × 0,5 = 0,4. Los niveles de volumen pueden superar los 1,0 (ganancia positiva), pero el motor de audio recorta cualquier muestra de audio que supere cero decibelios. Para cambiar el nivel de volumen de canales individuales, use la interfaz IMFAudioStreamVolume .

Use la fórmula siguiente para convertir el nivel de volumen a la escala de decibel (dB):

Atenuación (dB) = 20 * log10(Level)

Por ejemplo, un nivel de volumen de 0,50 representa 6,02 dB de atenuación.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado mfidl.h

Consulte también

Interfaces de Media Foundation

Representador de audio de streaming