Skip to content

Lautstärke ändern win32 c++

Lösung:

Verwenden Sie die waveOutSetVolume API.

Hier ist ein Beispiel:

  DWORD dwVolume;

  if (waveOutGetVolume(NULL, &dwVolume) == MMSYSERR_NOERROR)
    waveOutSetVolume(NULL, 0); // mute volume

  // later point in code, to unmute volume...
  waveOutSetVolume(NULL, dwVolume);

waveOutSetVolume und mixerSetControlDetails ändern nur die Lautstärke für Ihre Anwendung unter Windows Vista und höher.

Wenn Sie die Hauptlautstärke unter Vista und höher ändern möchten, suchen Sie nach der Schnittstelle IAudioEndpointVolume.

Hier ist ein Blogbeitrag, den ich vor ein paar Jahren dazu geschrieben habe.

Vielleicht sollten Sie erwägen, das globale Volumen NICHT zu ändern. Denken Sie darüber nach - wenn ich die Lautstärke im MediaPlayer reduziere, sind alle anderen Programme immer noch so laut wie zuvor, und genau das erwarte ich von jedem Programm - nur die EIGENE Lautstärke zu senken. Natürlich kann es Gründe geben, die globale Lautstärke zu ändern, nichts für ungut 😉

Click to rate this post!
[Total: 0 Average: 0]



Anderer Beitrag

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.