Condividi tramite


funzione waveOutSetVolume (mmeapi.h)

La funzione waveOutSetVolume imposta il livello del volume del dispositivo di output waveform-audio specificato.

Sintassi

MMRESULT waveOutSetVolume(
  HWAVEOUT hwo,
  DWORD    dwVolume
);

Parametri

hwo

Gestire un dispositivo di output waveform-audio aperto. Questo parametro può anche essere un identificatore del dispositivo.

dwVolume

Nuova impostazione del volume. La parola a basso ordine contiene l'impostazione del volume a sinistra e la parola con ordine elevato contiene l'impostazione del canale destro. Un valore di 0xFFFF rappresenta il volume completo e un valore di 0x0000 è silenzio.

Se un dispositivo non supporta sia il controllo volume sinistro che destro, la parola a basso ordine di dwVolume specifica il livello del volume e la parola di ordine elevato viene ignorata.

Valore restituito

Restituisce MMSYSERR_NOERROR se ha esito positivo o un errore in caso contrario. I valori di errore possibili includono quanto segue.

Codice restituito Descrizione
MMSYSERR_INVALHANDLE
L'handle del dispositivo specificato non è valido.
MMSYSERR_NODRIVER
Non è presente alcun driver di dispositivo.
MMSYSERR_NOMEM
Impossibile allocare o bloccare la memoria.
MMSYSERR_NOTSUPPORTED
La funzione non è supportata.

Commenti

Se viene usato un identificatore di dispositivo, il risultato della chiamata waveOutSetVolume si applica a tutte le istanze del dispositivo. Se viene usato un handle di dispositivo, il risultato si applica solo all'istanza del dispositivo a cui fa riferimento l'handle del dispositivo.

Non tutti i dispositivi supportano le modifiche al volume. Per determinare se il dispositivo supporta il controllo del volume, usare il flag WAVECAPS_VOLUME per testare il membro dwSupport della struttura WAVEOUTCAPS (riempito dalla funzione waveOutGetDevCaps ). Per determinare se il dispositivo supporta il controllo del volume nei canali sinistro e destro, usare il flag di WAVECAPS_LRVOLUME.

La maggior parte dei dispositivi non supporta i bit completi del controllo a livello di volume e non userà i bit meno significativi dell'impostazione del volume richiesto. Ad esempio, se un dispositivo supporta 4 bit di controllo del volume, i valori 0x4000, 0x4FFF e 0x43BE verranno troncati a 0x4000. La funzione waveOutGetVolume restituisce l'impostazione a 16 bit completa impostata con waveOutSetVolume.

Le impostazioni del volume vengono interpretate in modo logaritmico. Ciò significa che l'aumento percepito del volume è lo stesso quando si aumenta il livello di volume da 0x5000 a 0x6000 così come è da 0x4000 a 0x5000.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione mmeapi.h (includere Windows.h)
Libreria Winmm.lib
DLL Winmm.dll

Vedi anche

Waveform Audio

Funzioni waveform