Compartilhar via


Interface ISimpleAudioVolume (audioclient.h)

A interface ISimpleAudioVolume permite que um cliente controle o nível de volume master de uma sessão de áudio. O método IAudioClient::Initialize inicializa um objeto stream e atribui o fluxo a uma sessão de áudio. O cliente obtém uma referência à interface ISimpleAudioVolume em um objeto de fluxo chamando o método IAudioClient::GetService com riid de parâmetro definido como REFIID IID_ISimpleAudioVolume.

Como alternativa, um cliente pode obter a interface ISimpleAudioVolume de uma sessão existente sem precisar primeiro criar um objeto de fluxo e adicionar o fluxo à sessão. Em vez disso, o cliente chama o método IAudioSessionManager::GetSimpleAudioVolume com o GUID da sessão.

O nível de volume efetivo de qualquer canal na submixagem de sessão, conforme ouvido nos alto-falantes, é o produto dos quatro fatores de nível de volume a seguir:

  • Os níveis de volume por canal dos fluxos na sessão, que os clientes podem controlar por meio dos métodos na interface IAudioStreamVolume .
  • O master nível de volume da sessão, que os clientes podem controlar por meio dos métodos na interface ISimpleAudioVolume.
  • O nível de volume por canal da sessão, que os clientes podem controlar por meio dos métodos na interface IChannelAudioVolume .
  • O nível de volume baseado em política da sessão, que o sistema atribui dinamicamente à sessão à medida que a combinação global é alterada.
Cada um dos quatro fatores de nível de volume na lista anterior é um valor no intervalo de 0,0 a 1,0, em que 0,0 indica silêncio e 1,0 indica volume completo (sem atenuação). O nível de volume efetivo também é um valor no intervalo de 0,0 a 1,0.

Aplicativos de áudio típicos não modificam os níveis de volume de sessões. Em vez disso, eles dependem dos usuários para definir esses níveis de volume por meio do programa Sndvol. O Sndvol modifica apenas os níveis de volume master de sessões. Por padrão, o gerenciador de sessão define o nível de volume master como 1,0 na ativação inicial de uma sessão. As alterações de volume subsequentes do Sndvol ou de outros clientes são persistentes entre as reinicializações do computador.

Ao liberar uma instância de interface ISimpleAudioVolume , o cliente deve chamar o método Release da interface do mesmo thread que a chamada para IAudioClient::GetService que criou o objeto.

A interface ISimpleAudioVolume controla o volume de uma sessão de áudio. Uma sessão de áudio é uma coleção de fluxos de modo compartilhado. Essa interface não funciona com fluxos de modo exclusivo. Para obter informações sobre controles de volume para fluxos de modo exclusivo, consulte API EndpointVolume.

Herança

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

Métodos

A interface ISimpleAudioVolume tem esses métodos.

 
ISimpleAudioVolume::GetMasterVolume

O método GetMasterVolume recupera o nível de volume do cliente para a sessão de áudio.
ISimpleAudioVolume::GetMute

O método GetMute recupera o estado de mudo atual da sessão de áudio.
ISimpleAudioVolume::SetMasterVolume

O método SetMasterVolume define o nível de volume master para a sessão de áudio.
ISimpleAudioVolume::SetMute

O método SetMute define o estado de mudo para a sessão de áudio.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho audioclient.h

Confira também

Principais interfaces de áudio

IAudioClient::GetService

IAudioClient::Initialize

IAudioStreamVolume Interface

IChannelAudioVolume Interface

WASAPI