Modifica il volume dell'audio di Windows tramite la riga di comando


19

È possibile modificare il volume in Windows XP tramite la riga di comando?


1
AutoHotkey può eseguire questa operazione, che è possibile compilare e chiamare dalla riga di comando
Matthew Lock,

È necessario uno strumento di terze parti per impostare il volume. Sono assolutamente spaventato.
m3nda,

Risposte:


31

NirCmd è un'applicazione che fa questo e altro.

Esempio di utilizzo:

  • Aumenta il volume del sistema di 2000 unità (su 65535)
    nircmd.exe changesysvolume 2000
  • Ridurre il volume del sistema di 5000 unità (su 65535)
    nircmd.exe changesysvolume -5000
  • Imposta il volume sul valore più alto
    nircmd.exe setsysvolume 65535
  • muto
    nircmd.exe mutesysvolume 1
  • Attiva
    nircmd.exe mutesysvolume 0

2
Speravo ci fosse un metodo standard di Windows, ma questo sembra molto utile. Lo accetterà se nessuno ne fornisce uno il giorno o due successivi. Grazie Harry.
underskor,

NirCmd sembra molto bello e molto utile. Grazie per il consiglio.
pavimenta il

NirCmd è anche ottimo per far silenziare un laptop ad ogni accesso - in questo modo non continuerà accidentalmente a emettere il suono "ding" sul treno (che non noto a causa delle cuffie fino a un momento imbarazzante quando qualcuno si infastidisce basta evidenziarlo .....)
RomanSt

2
Apparentemente funziona anche su Windows 7, come sottolineato da alcune non risposte cancellate.
Daniel Beck

C'è uno script interattivo facile da usare che ho creato per semplificare, che dipende da nircmd.

8

Crea i file 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

Mostra il controllo del volume, in modo da poter vedere cosa stai facendo:

sndvol
(or maybe sndvol32)

Cambia il volume:

cscript voldown.js

Nota: questo approccio ha funzionato in modo affidabile su macchine su cui ho tentato di utilizzarlo. La risposta di Helen alla domanda StackOverflow di Sibo Lin al riguardoindica che il muting non è affidabile, ma la modifica del volume potrebbe non essere altrettanto affidabile. Sospetto che il livello di affidabilità possa essere diverso su macchine diverse. Questo approccio utilizza la tecnologia di imitazione di una sequenza di tasti, e in particolare un tasto di controllo del volume su una tastiera multimediale avanzata. Al momento in cui Windows ha iniziato a supportarlo, una tastiera del genere era fondamentalmente una funzione frivola poco utilizzata che offriva funzionalità che in precedenza era disponibile solo con driver personalizzati. Non mi sorprenderebbe se questo codice fosse meno raffinato e meno probabile che funzionasse su alcuni dei vari (forse vecchi) hardware disponibili. Detto questo, non ho avuto problemi da solo.

Titoli di coda:

Un avvertimento: questa domanda è stata taggata con Windows XP. Ho appena provato questo in Windows 10. So di averlo usato in Windows 7 (almeno abbastanza per provarlo). Quando ho iniziato a vedere il supporto integrato di Microsoft per queste tastiere avanzate nel periodo di Windows ME, penso che probabilmente funzionerà bene anche con WinXP. Non ricordo se in realtà ho provato questo con quel sistema operativo. Tuttavia, se questo approccio non funziona bene, non mi aspetto che causi effetti collaterali problematici.


Grazie per aver condiviso quei codici chiave! Dato che il mio computer ha già installato Python, sono stato in grado di usarlo sulla riga di comando: pip install SendKeys(pacchetto Python puro per emulare sequenze di tasti), seguito da python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])", che emula una singola pressione e rilascio del tasto del volume. Per emulare 100 stampe distinte (ad esempio), è possibile inserire * 100dopo la chiusura ]e prima della finale ).
ArtOfWarfare

7

Dopo aver letto questi post e aver cercato delle alternative, ho deciso di scrivere la mia utility da riga di comando, chiamata SetVol, per impostare il volume. Funziona un po 'più semplicemente di quanto descritto in alcuni degli altri post in questa pagina, ecco alcuni esempi che dovresti inserire al prompt dei comandi:

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

Ci sono anche altre opzioni. L'ho rilasciato come software gratuito e sei invitato a visitare www.rlatour.com/setvol per ulteriori informazioni e per scaricare una copia.

Godere


È brillante. Grazie mille per questo strumento!
cssyphus,

Grazie!! Tuttavia, ho davvero bisogno di questo per impostare il volume del microfono. (Sto usando Java ma non mi aspetto che JavaSound lo faccia.) Può essere aggiunto?
Stefan Reich,

Fantastico grazie! Richiesta di funzionalità per il futuro: possibilità di ripristinare il livello del volume corrente come errorlevel(in modo da poter salvare l'impostazione corrente per ripristinarla successivamente)
ashleedawg

1
Certo, posso farlo - e in effetti, l'ho appena fatto! Il programma è stato aggiornato alla versione 1.2 sul sito Web, potrebbe essere necessario aggiornare il browser per vedere le modifiche. Ora c'è un nuovo 'rapporto' parm che dovrebbe darti quello che vuoi. La guida sul sito Web e nell'app spiega come utilizzarla. Buon Natale!
Rob,

(che dice restituire il livello del volume corrente secondo il suggerimento di ashleedawg)
Rob

4

A causa e ulteriore semplificazione di 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%

salvarlo come file .bat ed eseguirlo passando un parametro

es: sound 60imposta il volume del suono al 60%

assicurati di mettere il file bat accanto a nircmd o in %windir%(o definisci la sua cartella in %path%)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.