Ändern Sie die Windows-Lautstärke über die Befehlszeile

19

Ist es möglich, die Lautstärke in Windows XP über die Befehlszeile zu ändern?

underskor
quelle
1
AutoHotkey kann dies tun, was Sie kompilieren und über die Befehlszeile aufrufen können
Matthew Lock
Benötigen Sie ein Drittanbieter-Tool, um die Lautstärke einzustellen. Ich habe total Angst.
m3nda

Antworten:

31

NirCmd ist eine Anwendung, die das und mehr leistet.

Anwendungsbeispiel:

  • Erhöhen Sie das Systemvolumen um 2000 Einheiten (von 65535)
    nircmd.exe changesysvolume 2000
  • Verringern Sie das Systemvolumen um 5000 Einheiten (von insgesamt 65535).
    nircmd.exe changesysvolume -5000
  • Stellen Sie die Lautstärke auf den höchsten Wert ein
    nircmd.exe setsysvolume 65535
  • Stumm
    nircmd.exe mutesysvolume 1
  • Stummschaltung aufheben
    nircmd.exe mutesysvolume 0
Harrymc
quelle
2
Ich hatte gehofft, dass es eine Standard-Windows-Methode gibt, aber das sieht sehr praktisch aus. Akzeptiert dies, wenn am nächsten oder zweiten Tag niemand liefert. Danke, Harry.
Underskor
NirCmd sieht sehr cool und sehr praktisch aus. Danke für den Tipp.
Pflastern Sie den
NirCmd eignet sich auch hervorragend, um einen Laptop bei jeder Anmeldung stumm zu schalten. Auf diese Weise wird nicht aus Versehen ein "ding" im Zug ausgegeben (was ich aufgrund der Kopfhörer erst in einem peinlichen Moment bemerke, wenn sich jemand ärgert genug, um darauf hinzuweisen .....)
RomanSt
2
Dies funktioniert anscheinend auch unter Windows 7, da einige jetzt gelöschte Nicht-Antworten bereits früher darauf hingewiesen haben.
Daniel Beck
Es gibt ein benutzerfreundliches interaktives Skript, das ich zur Vereinfachung erstellt habe und von dem es abhängt nircmd.
8

Machen Sie die JavaScript-Dateien:

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

Zeigen Sie die Lautstärkeregelung an, damit Sie sehen können, was Sie tun:

sndvol
(or maybe sndvol32)

Ändern Sie die Lautstärke:

cscript voldown.js

Hinweis: Auf Computern, auf denen ich versucht habe, es zu verwenden, hat dieser Ansatz zuverlässig funktioniert. Helens Antwort auf Sibo Lins StackOverflow-Frage dazuDies bedeutet, dass die Stummschaltung nicht zuverlässig ist, die Lautstärke jedoch möglicherweise nicht so zuverlässig geändert wird. Ich vermute, dass die Zuverlässigkeit auf verschiedenen Maschinen unterschiedlich sein kann. Bei diesem Ansatz wird die Technologie der Nachahmung eines Tastenanschlags und insbesondere einer Lautstärkeregelungstaste auf einer erweiterten Medientastatur verwendet. Zu der Zeit, als Windows dies unterstützte, war eine solche Tastatur im Grunde eine wenig genutzte, leichtfertige Funktion, die Funktionen bot, die zuvor nur mit benutzerdefinierten Treibern verfügbar waren. Es würde mich nicht überraschen, wenn dieser Code weniger ausgefeilt wäre und weniger wahrscheinlich auf einigen der verschiedenen (möglicherweise älteren) Hardwarekomponenten funktionieren würde, die es gibt. Trotzdem hatte ich selbst keine Probleme damit.

Credits:

Eine Einschränkung: Diese Frage wurde mit Windows XP getaggt. Ich habe dies gerade in Windows 10 ausprobiert. Ich weiß, dass ich dies in Windows 7 verwendet habe (zumindest genug, um es zu testen). Als ich zum ersten Mal in der Zeit von Windows ME bemerkte, dass Microsoft diese erweiterten Tastaturen unterstützt, konnte ich mir vorstellen, dass dies auch unter WinXP gut funktionieren wird. Ich erinnere mich nicht, ob ich das tatsächlich mit diesem Betriebssystem getestet habe. Trotzdem erwarte ich keine problematischen Nebenwirkungen, wenn dieser Ansatz nicht gut funktioniert.

TOOGAM
quelle
Vielen Dank, dass Sie diese Schlüsselcodes geteilt haben! Da auf meinem Computer bereits Python installiert ist, konnte ich dies in der Befehlszeile verwenden: pip install SendKeys(reines Python-Paket zum Emulieren von Tastenanschlägen), gefolgt von python -c "from SendKeys import playkeys; playkeys([(0xAE, True), (0xAE, False)])"einem einzigen Drücken und Loslassen der Lautstärketaste. Um beispielsweise 100 verschiedene Pressen zu emulieren, können Sie * 100nach dem Schließen ]und vor dem Finale einfügen ).
ArtOfWarfare
7

Nachdem ich diese Beiträge gelesen und nach Alternativen gesucht hatte, entschloss ich mich, mein eigenes Befehlszeilendienstprogramm mit dem Namen SetVol zu schreiben, um die Lautstärke einzustellen. Es funktioniert ein bisschen einfacher als in einigen anderen Beiträgen auf dieser Seite beschrieben. Hier sind einige Beispiele, die Sie an der Eingabeaufforderung eingeben würden:

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

Es gibt auch andere Möglichkeiten. Ich habe es als Freeware veröffentlicht, und Sie können gerne www.rlatour.com/setvol besuchen, um weitere Informationen zu erhalten und eine Kopie herunterzuladen.

Genießen

rauben
quelle
Das ist brilliant. Vielen Dank für dieses Tool!
Cssyphus
Vielen Dank!! Ich brauche dies jedoch WIRKLICH, um die Mikrofonlautstärke einzustellen. (Ich verwende Java, aber ich erwarte nicht, dass JavaSound dies tut.) Kann es hinzugefügt werden?
Stefan Reich
Großartig, danke! Feature-Anfrage für die Zukunft: Möglichkeit, den aktuellen Lautstärkepegel als errorlevel(damit ich die aktuelle Einstellung speichern kann, um sie später wiederherzustellen) zurückzugeben
ashleedawg
1
Klar, das kann ich - und das tat ich auch! Das Programm wurde auf der Website auf Version 1.2 aktualisiert. Möglicherweise müssen Sie Ihren Browser aktualisieren, um die Änderungen zu sehen. Es gibt jetzt einen neuen Parm "Bericht", der Ihnen geben sollte, was Sie wollen. Hilfe auf der Website und in der App erklärt die Verwendung. Fröhliche Weihnachten!
Rob
(dass es heißt, geben Sie den aktuellen Lautstärkepegel gemäß dem Vorschlag von ashleedawg zurück)
Rob
4

Dank und weitere Vereinfachung von 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%

Speichern Sie es als .bat-Datei und führen Sie es aus, indem Sie einen Parameter übergeben

Beispiel: sound 60Legt die Lautstärke auf 60% fest

Stellen Sie sicher, dass Sie die bat-Datei entweder neben dem nircmd oder in %windir%(oder definieren Sie den Ordner in %path%)


quelle