Compartilhar via


Função waveOutSetVolume (mmeapi.h)

A função waveOutSetVolume define o nível de volume do dispositivo de saída waveform-audio especificado.

Sintaxe

MMRESULT waveOutSetVolume(
  HWAVEOUT hwo,
  DWORD    dwVolume
);

Parâmetros

hwo

Identificador para um dispositivo de saída de áudio de forma de onda aberta. Esse parâmetro também pode ser um identificador de dispositivo.

dwVolume

Nova configuração de volume. A palavra de baixa ordem contém a configuração de volume do canal esquerdo e a palavra de alta ordem contém a configuração de canal direito. Um valor de 0xFFFF representa o volume completo e um valor de 0x0000 é o silêncio.

Se um dispositivo não oferecer suporte ao controle de volume esquerdo e direito, a palavra de baixa ordem dwVolume especificará o nível de volume e a palavra de alta ordem será ignorada.

Valor retornado

Retorna MMSYSERR_NOERROR se tiver êxito ou um erro de outra forma. Os valores de erro possíveis incluem o seguinte.

Código de retorno Descrição
MMSYSERR_INVALHANDLE
O identificador de dispositivo especificado é inválido.
MMSYSERR_NODRIVER
Nenhum driver de dispositivo está presente.
MMSYSERR_NOMEM
Não é possível alocar ou bloquear memória.
MMSYSERR_NOTSUPPORTED
Não há suporte para a função .

Comentários

Se um identificador de dispositivo for usado, o resultado da chamada waveOutSetVolume se aplicará a todas as instâncias do dispositivo. Se um identificador de dispositivo for usado, o resultado se aplicará somente à instância do dispositivo referenciada pelo identificador do dispositivo.

Nem todos os dispositivos dão suporte a alterações de volume. Para determinar se o dispositivo dá suporte ao controle de volume, use o sinalizador WAVECAPS_VOLUME para testar o membro dwSupport da estrutura WAVEOUTCAPS (preenchido pela função waveOutGetDevCaps ). Para determinar se o dispositivo dá suporte ao controle de volume nos canais esquerdo e direito, use o sinalizador WAVECAPS_LRVOLUME.

A maioria dos dispositivos não dá suporte a 16 bits completos de controle de nível de volume e não usará os bits menos significativos da configuração de volume solicitada. Por exemplo, se um dispositivo der suporte a 4 bits de controle de volume, os valores 0x4000, 0x4FFF e 0x43BE serão truncados para 0x4000. A função waveOutGetVolume retorna a configuração completa de 16 bits definida com waveOutSetVolume.

As configurações de volume são interpretadas logaritmoticamente. Isso significa que o aumento percebido no volume é o mesmo ao aumentar o nível de volume de 0x5000 para 0x6000 como é de 0x4000 para 0x5000.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mmeapi.h (inclua Windows.h)
Biblioteca Winmm.lib
DLL Winmm.dll

Confira também

Áudio de forma de onda

Funções waveform