Home » Questions » Computers [ Ask a new question ]

Change Windows sound volume via the command line

Change Windows sound volume via the command line

Is it possible to change the volume in Windows XP via the command line?

Asked by: Guest | Views: 333
Total answers/comments: 2
Guest [Entry]

"NirCmd is an application that does that and more.

Example of use:

Increase the system volume by 2000 units (out of 65535)
nircmd.exe changesysvolume 2000
Decrease the system volume by 5000 units (out of 65535)
nircmd.exe changesysvolume -5000
Set the volume to the highest value
nircmd.exe setsysvolume 65535
Mute
nircmd.exe mutesysvolume 1
Unmute
nircmd.exe mutesysvolume 0"
Guest [Entry]

"Make the JavaScript files:

echo var oShell = new ActiveXObject(""WScript.Shell""); >> volup.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAF)); >> volup.js

echo var oShell = new ActiveXObject(""WScript.Shell""); >> voldown.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAE)); >> voldown.js

echo var oShell = new ActiveXObject(""WScript.Shell""); >> togglemute.js<BR>
echo oShell.SendKeys(String.fromCharCode(0xAD)); >> togglemute.js

Show the volume control, so you can see what you're doing:

sndvol
(or maybe sndvol32)

Change the volume:

cscript voldown.js

Note: I've had this approach work reliably on machines that I've attempted to use it on. Helen's answer to Sibo Lin's StackOverflow question about this indicates muting isn't reliable, but volume-changing may not be quite as reliable. I suspect that the level of reliability may be different on different machines. This approach is using the technology of mimicking a keystroke, and specifically a volume control key on an enhanced media keyboard. At the time that Windows started supporting this, such a keyboard was basically a little-used frivolous feature that offered functionality that was previously available only with custom drivers. It wouldn't surprise me if this code was less polished, and less likely to work on some of the various (perhaps older) hardware that's out there. All that said, I haven't had troubles with it myself.

Credits:

This answer was heavily influenced by Ryan's answer to Sibo Lin's question about changing the volume on the command line. (Having a good idea of how to do this, I looked for some example on how to get this done.)
I suspect that Ed Wilson's “Hey Scripting Guy!” blog on Microsoft: article about using a cheesy script to set speaker volume may have been the (direct or indirect) inspiration for many people who have suggested this approach.

One caveat: This question has been tagged with Windows XP. I just tried this in Windows 10. I know I've used this in Windows 7 (at least enough to test it out). As I first started to see Microsoft's built-in support for these enhanced keyboards around the time of Windows ME, I would think this is likely to work well win WinXP too. I don't recall if I actually tested this with that operating system. Still, if this approach doesn't work well, I don't expect it to cause problematic side effects."