By default, when you change music volume when muted, Windows will automatically unmute the speakers. Is there a way to stop Windows from unmuting the speakers? In other words, is there a way to change the volume while the speakers remain muted?

I have an ASUS gaming notebook. When sound plays while I have my headphones plugged in, both the headphones and the notebook's speakers play the sound. Normally the speakers would not make a sound when headphones are plugged in, but now they do, due to the fact that my notebook's audio port is damaged. This is very annoying, as I want to be able to play music only through my headphones.

Disabling the speakers playback device is not an option, because doing that will also disable the headphones audio. Windows does not see the plugged in headphones as a separate playback device.

Now the interesting part: I do not know if this is a bug, or intended, or maybe happening because my audio port is damaged, but if I mute my speakers, my headphones will not be muted. This bug/feature/miracle is very useful to me, as I can now play music only through my headphones.

However, I often want to change the volume, but doing this will unmute the speakers again. That's why I'm asking:

How to change the audio volume while speakers remain disabled/muted?


It can be done from powershell as such.

Function Set_Audio ($volume){
If(-not([bool]!($Volume%2))){$Volume = $volume + 1}
$volume = $volume / 2
$wshShell = new-object -com wscript.shell;1..50 | % {$wshShell.SendKeys([char]174)};1..$Volume | % {$wshShell.SendKeys([char]175)}

# Use like this.
Set_Audio -Volume 100
Set_Audio -Volume 50
  • See here for more - stackoverflow.com/a/21362870 – Knuckle-Dragger Oct 2 '14 at 16:36
  • PowerShell seems like a great tool for this! I'm not very familiar with PowerShell, but there's an issue with the function above: it does not set the audio, but increments it. Using negative values does not seem to lower the audio though. – Ruud Lenders Oct 2 '14 at 16:51
  • @RuudLenders valid range is 1-100 as a percentage. To lower the volume, use a lower number (but not a negative number) – Knuckle-Dragger Oct 2 '14 at 17:11
  • What I meant with increments is that when my volume is currently 10, calling Set_Audio -Volume 20 puts the volume on 30. – Ruud Lenders Oct 2 '14 at 18:57

I ended up programming a WPF tray application that changes the volume on key press myself. Here's the GitHub link. Currently listens to CTRL + Shift + F10, F11 & F12 to mute, decrease and increase volume without actually unmuting the speakers.

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.