Modifier le volume sonore de Windows via la ligne de commande

19

Est-il possible de changer le volume dans Windows XP via la ligne de commande?

underkor
la source
1
AutoHotkey peut le faire, que vous pouvez compiler et appeler à partir de la ligne de commande
Matthew Lock
Besoin d'un outil tiers pour régler le volume. J'ai totalement peur.
m3nda

Réponses:

31

NirCmd est une application qui fait cela et plus encore.

Exemple d'utilisation:

  • Augmentez le volume du système de 2000 unités (sur 65535)
    nircmd.exe changesysvolume 2000
  • Diminue le volume du système de 5000 unités (sur 65535)
    nircmd.exe changesysvolume -5000
  • Réglez le volume sur la valeur la plus élevée
    nircmd.exe setsysvolume 65535
  • Muet
    nircmd.exe mutesysvolume 1
  • Activer le son
    nircmd.exe mutesysvolume 0
harrymc
la source
2
J'espérais qu'il y avait une méthode Windows standard, mais cela semble très pratique. Acceptera cela si personne n'en fournit un le jour suivant ou deux. Merci, Harry.
underkor
NirCmd a l'air très cool et très pratique. Merci pour le conseil.
ouvrir le
NirCmd est également idéal pour mettre un ordinateur portable en sourdine à chaque connexion - de cette façon, il ne continuera pas accidentellement à émettre le son "ding" dans le train (ce que je ne remarque pas à cause des écouteurs jusqu'à un moment embarrassant où quelqu'un s'énerve) assez pour le signaler .....)
RomanSt
2
Cela fonctionne apparemment également sur Windows 7, comme l'ont signalé plus tôt quelques non-réponses supprimées.
Daniel Beck
Il y a un script interactif convivial que j'ai fait pour la simplification qui dépend nircmd.
8

Créez les fichiers JavaScript:

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

Affichez le contrôle du volume pour voir ce que vous faites:

sndvol
(or maybe sndvol32)

Modifiez le volume:

cscript voldown.js

Remarque: cette approche a fonctionné de manière fiable sur les machines sur lesquelles j'ai essayé de l'utiliser. La réponse d'Helen à la question StackOverflow de Sibo Lin à ce sujetindique que le muting n'est pas fiable, mais le changement de volume peut ne pas être aussi fiable. Je soupçonne que le niveau de fiabilité peut être différent sur différentes machines. Cette approche utilise la technologie de mimétisme d'une frappe, et en particulier une touche de contrôle du volume sur un clavier multimédia amélioré. Au moment où Windows a commencé à prendre en charge cela, un tel clavier était essentiellement une fonctionnalité frivole peu utilisée qui offrait des fonctionnalités qui n'étaient auparavant disponibles qu'avec des pilotes personnalisés. Cela ne me surprendrait pas si ce code était moins raffiné et moins susceptible de fonctionner sur certains des différents matériels (peut-être plus anciens) qui existent. Cela dit, je n'ai pas eu de problèmes avec ça moi-même.

Crédits:

Une mise en garde: cette question a été balisée avec Windows XP. Je viens de l'essayer dans Windows 10. Je sais que je l'ai utilisé dans Windows 7 (au moins assez pour le tester). Comme j'ai commencé à voir la prise en charge intégrée de Microsoft pour ces claviers améliorés à l'époque de Windows ME, je pense que cela fonctionnera probablement bien sous WinXP. Je ne me souviens pas si j'ai réellement testé cela avec ce système d'exploitation. Pourtant, si cette approche ne fonctionne pas bien, je ne m'attends pas à ce qu'elle provoque des effets secondaires problématiques.

TOOGAM
la source
Merci d'avoir partagé ces codes clés! Étant donné que mon ordinateur a déjà installé python, j'ai pu l'utiliser sur la ligne de commande: pip install SendKeys(package Python pur pour émuler les frappes), suivi de python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])", qui émule une simple pression et relâchement de la touche de volume. Pour émuler 100 presses distinctes (par exemple), vous pouvez insérer * 100après la fermeture ]et avant la finale ).
ArtOfWarfare
7

Après avoir lu ces articles et recherché des alternatives, j'ai décidé d'écrire mon propre utilitaire de ligne de commande, appelé SetVol, pour régler le volume. Cela fonctionne un peu plus simplement que ce qui est décrit dans certains des autres articles de cette page, voici quelques exemples que vous saisiriez à l'invite de commande:

setvol 75
setvol -10
setvol +12
setvol mute
setvol unmute

Il existe également d'autres options. Je l'ai publié en tant que freeware, et vous êtes invités à visiter www.rlatour.com/setvol pour plus d'informations et pour télécharger une copie.

Prendre plaisir

Rob
la source
C'est génial. Merci beaucoup pour cet outil!
cssyphus
Merci!! Cependant, j'ai vraiment besoin de cela pour régler le volume du micro. (J'utilise Java mais je ne m'attends pas à ce que JavaSound fasse cela.) Peut-il être ajouté?
Stefan Reich
Super merci! Demande de fonctionnalités pour l'avenir: possibilité de retourner le niveau de volume actuel en tant que errorlevel(afin que je puisse enregistrer le paramètre actuel pour le restaurer plus tard)
ashleedawg
1
Bien sûr, je peux le faire - et en fait, je viens de le faire! Le programme a été mis à jour vers la version 1.2 sur le site Web, vous devrez peut-être actualiser votre navigateur pour voir les changements. Il y a maintenant un nouveau «rapport» parm qui devrait vous donner ce que vous voulez. L'aide sur le site Web et dans l'application explique son utilisation. Joyeux Noël!
Rob
(qu'il indique retourner le niveau de volume actuel selon la suggestion d'Ashleedawg)
Rob
4

Posséder et simplifier davantage Nircmd

@echo off
rem 65536 is 100%
rem device where zero is the default device
rem left and right
rem supports whole numbers only therefore throws "missing operator" error when specifying 655.36
set /a volume=%1 * 655
nircmd setvolume 0 %volume% %volume%

enregistrez-le en tant que fichier .bat et exécutez-le en passant un paramètre

par exemple: sound 60va régler le volume sonore à 60%

assurez-vous de placer le fichier bat à côté du nircmd ou dans %windir%(ou définissez son dossier dans %path%)


la source