Alterando o volume de Waveform-Audio reprodução
[O recurso associado a esta página, Waveform Audio, é um recurso herdado. Ele foi substituído por WASAPI e Audio Graphs. WASAPI e Audio Graphs foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use WASAPI e Audio Graphs em vez de Waveform Audio, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O Windows fornece as seguintes funções para consultar e definir o nível de volume de dispositivos de saída waveform-audio.
Função | Descrição |
---|---|
waveOutGetVolume | Recupera o nível de volume atual do dispositivo de saída waveform-audio especificado. |
waveOutSetVolume | Define o nível de volume do dispositivo de saída waveform-audio especificado. |
Nem todos os dispositivos de áudio de forma de onda dão suporte a alterações de volume. Alguns dispositivos dão suporte ao controle de volume individual nos canais esquerdo e direito. Para obter informações sobre como determinar os recursos de controle de volume de dispositivos de áudio de forma de onda, consulte Dispositivos e tipos de dados.
Alguns aplicativos permitem que o usuário controle o volume de todos os dispositivos de áudio em um sistema. (Muitos aplicativos desse tipo usam os serviços de mixer de áudio; para obter mais informações, consulte Audio Mixers.) A menos que seu aplicativo seja capaz desse tipo de controle de volume master, você deve abrir um dispositivo de áudio antes de alterar seu volume. Você também deve consultar o nível de volume antes de alterá-lo e restaurar o nível de volume para o nível anterior o mais rápido possível.
O volume é especificado em um valor de palavra dupla. Quando o formato de áudio é estéreo, os 16 bits superiores especificam o volume relativo do canal direito e os 16 bits inferiores especificam o volume relativo do canal esquerdo. Para dispositivos que não dão suporte ao controle de volume de canal esquerdo e direito, os 16 bits inferiores especificam o nível de volume e os 16 bits superiores são ignorados.
Os valores no nível do volume variam de 0x0 (silêncio) a 0xFFFF (volume máximo) e são interpretados logaritmoticamente. O aumento de volume percebido é o mesmo ao aumentar o nível de volume de 0x5000 para 0x6000, pois é de 0x4000 para 0x5000.