Compartilhar via


Interface IMFSimpleAudioVolume (mfidl.h)

Controla o master nível de volume da sessão de áudio associada ao SAR (renderizador de áudio de streaming) e à origem da captura de áudio.

O SAR e a origem da captura de áudio expõem essa interface como um serviço. Para obter um ponteiro para a interface, chame IMFGetService::GetService. Para o SAR, use o identificador de serviço MR_POLICY_VOLUME_SERVICE. Para a origem da captura de áudio, use o identificador de serviço MR_CAPTURE_POLICY_VOLUME_SERVICE. Você pode chamar GetService diretamente no SAR ou na origem da captura de áudio ou chamá-lo na Sessão de Mídia.

Herança

A interface IMFSimpleAudioVolume herda da interface IUnknown . IMFSimpleAudioVolume também tem estes tipos de membros:

Métodos

A interface IMFSimpleAudioVolume tem esses métodos.

 
IMFSimpleAudioVolume::GetMasterVolume

Recupera o nível de volume master.
IMFSimpleAudioVolume::GetMute

Consulta se o áudio está mudo. (IMFSimpleAudioVolume.GetMute)
IMFSimpleAudioVolume::SetMasterVolume

Define o nível de volume master.
IMFSimpleAudioVolume::SetMute

Ativa ou desativa o mudo do áudio. (IMFSimpleAudioVolume.SetMute)

Comentários

Para controlar os níveis de volume de canais individuais, use a interface IMFAudioStreamVolume . A interface IMFAudioStreamVolume é compatível apenas com o SAR.

O volume é expresso como um nível de atenuação, em que 0,0 indica silêncio e 1,0 indica volume completo (sem atenuação). Para cada canal, o nível de atenuação é o produto de:

  • O master nível de volume da sessão de áudio.
  • O nível de volume do canal.
Por exemplo, se o volume master for 0,8 e o volume do canal for 0,5, a atenuação desse canal será 0,8 × 0,5 = 0,4. Os níveis de volume podem exceder 1,0 (ganho positivo), mas o mecanismo de áudio corta todos os exemplos de áudio que excedem zero decibéis. Para alterar o nível de volume de canais individuais, use a interface IMFAudioStreamVolume .

Use a seguinte fórmula para converter o nível de volume na escala de decibéis (dB):

Atenuação (dB) = 20 * log10(Level)

Por exemplo, um nível de volume de 0,50 representa 6,02 dB de atenuação.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mfidl.h

Confira também

Media Foundation Interfaces

Renderizador de áudio de streaming