Método IAudioEndpointVolume::SetMasterVolumeLevelScalar (endpointvolume.h)

O método SetMasterVolumeLevelScalar define o nível de volume master do fluxo de áudio que entra ou sai do dispositivo de ponto de extremidade de áudio. O nível de volume é expresso como um valor normalizado e gravado em áudio no intervalo de 0,0 a 1,0.

Sintaxe

HRESULT SetMasterVolumeLevelScalar(
  [in] float   fLevel,
  [in] LPCGUID pguidEventContext
);

Parâmetros

[in] fLevel

O novo master nível de volume. O nível é expresso como um valor normalizado no intervalo de 0,0 a 1,0.

[in] pguidEventContext

Valor de contexto para o método IAudioEndpointVolumeCallback::OnNotify . Esse parâmetro aponta para um GUID de contexto de evento. Se a chamada SetMasterVolumeLevelScalar alterar o nível de volume do ponto de extremidade, todos os clientes que registraram interfaces IAudioEndpointVolumeCallback com esse ponto de extremidade receberão notificações. Em sua implementação do método OnNotify , um cliente pode inspecionar o GUID de contexto de evento para descobrir se ele ou outro cliente é a origem do evento de alteração de volume. Se o chamador fornecer um ponteiro NULL para esse parâmetro, a rotina de notificação receberá o valor guid de contexto GUID_NULL.

Valor retornado

Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.

Código de retorno Descrição
E_INVALIDARG
O parâmetro fLevel está fora do intervalo de 0,0 a 1,0.
E_OUTOFMEMORY
Sem memória.

Comentários

O nível de volume é normalizado para o intervalo de 0,0 a 1,0, onde 0,0 é o nível mínimo de volume e 1,0 é o nível máximo. Dentro desse intervalo, a relação do nível de volume normalizado com a atenuação da amplitude do sinal é descrita por uma curva afilada de áudio não linear. Observe que a forma da curva pode mudar em versões futuras do Windows. Para obter mais informações sobre curvas afilados em áudio, consulte Controles de volume em fita de áudio.

Os níveis de volume normalizados passados para esse método são adequados para representar as posições dos controles de volume nas janelas do aplicativo e nas telas na tela.

Para obter um exemplo de código que chama SetMasterVolumeLevelScalar, consulte Controles de volume do ponto de extremidade.

Requisitos

   
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 endpointvolume.h

Confira também

IAudioEndpointVolume Interface

IAudioEndpointVolumeCallback Interface

IAudioEndpointVolumeCallback::OnNotify