Zmień głośność systemu Windows za pomocą wiersza polecenia

19

Czy można zmienić głośność w systemie Windows XP za pomocą wiersza polecenia?

underskor
źródło
1
AutoHotkey może to zrobić, które możesz skompilować i wywołać z wiersza poleceń
Matthew Lock
Potrzebuje narzędzia innej firmy do ustawienia głośności. Całkowicie się boję.
m3nda

Odpowiedzi:

31

NirCmd to aplikacja, która robi to i wiele więcej.

Przykład zastosowania:

  • Zwiększ głośność systemu o 2000 jednostek (z 65535)
    nircmd.exe changesysvolume 2000
  • Zmniejsz głośność systemu o 5000 jednostek (spośród 65535)
    nircmd.exe changesysvolume -5000
  • Ustaw głośność na najwyższą wartość
    nircmd.exe setsysvolume 65535
  • Niemy
    nircmd.exe mutesysvolume 1
  • Wyłącz wyciszenie
    nircmd.exe mutesysvolume 0
harrymc
źródło
2
Miałem nadzieję, że istnieje standardowa metoda systemu Windows, ale wygląda to bardzo przydatnie. Zaakceptuje to, jeśli nikt nie dostarczy jednego w ciągu następnego dnia lub dwóch. Dzięki, Harry.
underskor
NirCmd wygląda bardzo fajnie i bardzo przydatnie. Dzięki za wskazówkę.
brukuje
NirCmd jest również świetny do wyciszania laptopa przy każdym logowaniu - w ten sposób nie będzie on przypadkowo wydawał dźwięku „dingowania” w pociągu (czego nie zauważam ze względu na słuchawki aż do wstydliwego momentu, gdy ktoś się denerwuje) wystarczy, aby to podkreślić .....)
RomanSt
2
To najwyraźniej działa również w systemie Windows 7, ponieważ kilka już usuniętych nie-odpowiedzi wskazało wcześniej.
Daniel Beck
Stworzyłem przyjazny dla użytkownika interaktywny skrypt , który upraszczam i zależy od niego nircmd.
8

Utwórz pliki 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

Pokaż regulację głośności, aby zobaczyć, co robisz:

sndvol
(or maybe sndvol32)

Zmień głośność:

cscript voldown.js

Uwaga: takie podejście działało niezawodnie na komputerach, na których próbowałem go używać. Odpowiedź Helen na pytanie StackOverflow Sibo Lin na ten tematwskazuje, że wyciszenie nie jest niezawodne, ale zmiana głośności może nie być tak niezawodna. Podejrzewam, że poziom niezawodności może być różny na różnych maszynach. Podejście to wykorzystuje technologię naśladowania naciśnięcia klawisza, a zwłaszcza klawisza regulacji głośności na ulepszonej klawiaturze multimedialnej. W momencie, gdy system Windows zaczął to obsługiwać, taka klawiatura była w zasadzie mało używaną frywolną funkcją oferującą funkcjonalność, która wcześniej była dostępna tylko z niestandardowymi sterownikami. Nie zaskoczyłoby mnie, gdyby ten kod był mniej dopracowany i rzadziej działał na niektórych (być może starszych) sprzętach, które tam są. To powiedziawszy, sam nie miałem z tym kłopotów.

Kredyty:

Jedno zastrzeżenie: to pytanie zostało oznaczone tagiem Windows XP. Właśnie wypróbowałem to w systemie Windows 10. Wiem, że użyłem tego w systemie Windows 7 (przynajmniej na tyle, aby to przetestować). Gdy po raz pierwszy zobaczyłem wbudowane wsparcie Microsoftu dla tych ulepszonych klawiatur w czasach Windows ME, pomyślałem, że to może dobrze działać również w WinXP. Nie pamiętam, czy faktycznie przetestowałem to z tym systemem operacyjnym. Mimo to, jeśli to podejście nie działa dobrze, nie oczekuję, że spowoduje to problematyczne skutki uboczne.

TOOGAM
źródło
Dziękujemy za udostępnienie tych kodów! Ponieważ na moim komputerze jest już zainstalowany Python, mogłem użyć tego w wierszu poleceń: pip install SendKeys(czysty pakiet Python do emulacji naciśnięć klawiszy), a następnie python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])", który emuluje pojedyncze naciśnięcie i zwolnienie klawisza głośności. Aby emulować 100 różnych pras (na przykład), możesz wstawić * 100po zamknięciu ]i przed finałem ).
ArtOfWarfare
7

Po przeczytaniu tych postów i szukaniu alternatyw postanowiłem napisać własne narzędzie wiersza poleceń o nazwie SetVol, aby ustawić głośność. Działa to nieco prościej niż opisano w niektórych innych postach na tej stronie, oto kilka przykładów, które można wprowadzić w wierszu polecenia:

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

Istnieją również inne opcje. Udostępniłem go jako darmowy i zapraszamy do odwiedzenia strony www.rlatour.com/setvol, aby uzyskać więcej informacji i pobrać kopię.

Cieszyć się

Obrabować
źródło
To jest genialne. Bardzo dziękuję za to narzędzie!
cssyphus
Dzięki!! Jednak NAPRAWDĘ potrzebuję tego do ustawienia głośności mikrofonu. (Używam Java, ale nie oczekuję, że JavaSound to zrobi.) Czy można to dodać?
Stefan Reich
Wspaniale! Dziękuję! Prośba o funkcję na przyszłość: możliwość przywrócenia bieżącego poziomu głośności jako errorlevel(więc mogę zapisać bieżące ustawienie, aby później je przywrócić)
ashleedawg
1
Jasne, mogę to zrobić - i tak właśnie się stało! Program został zaktualizowany do wersji 1.2 na stronie internetowej, może być konieczne odświeżenie przeglądarki, aby zobaczyć zmiany. Jest teraz nowy „raport” Parma, który powinien dać ci to, czego chcesz. Pomoc na stronie internetowej oraz w aplikacji wyjaśnia, jak z niej korzystać. Wesołych Świąt!
Rob
(to znaczy, że przywróć bieżący poziom głośności zgodnie z sugestią ashleedawg)
Rob
4

Dzięki i dalszemu uproszczeniu 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%

zapisz go jako plik .bat i uruchom, przekazując parametr

np .: sound 60ustawi głośność dźwięku na 60%

upewnij się, że umieściłeś plik bat obok nircmd lub w %windir%(lub zdefiniowałeś jego folder %path%)


źródło