Terminalbefehl zum Einstellen der Lautstärke?

96

Ich habe eine externe Soundkarte, die meistens einwandfrei funktioniert, außer wenn sie zum ersten Mal eingesteckt wird oder wenn ich meinen Laptop einschalte, wird die Lautstärke auf 100% eingestellt. Das heißt, die Gesamtlautstärke des Systems, wie in der Klanganzeige angezeigt.

Was ich suche, ist ein Terminalbefehl, der diese Lautstärke auf 50% setzt, damit ich sie beim Anmelden ausführen kann und nicht befürchten muss, dass der erste Ton, den ich wiedergebe, mich ausblendet, wenn ich vergesse, mich zu drehen die Lautstärke leiser. Mit welchen Befehlen können Sie die Lautstärke ändern, dh die in der Klanganzeige?

Ich habe mich in gsettings und dbus umgesehen, konnte aber nichts finden, mit dem ich die Systemlautstärke so einstellen konnte. Ich kenne mich mit Alsamixer aus, aber das ist nicht die Lösung, nach der ich suche, da ich dann die Lautstärke nicht über die Sound-Anzeige oder die Multimedia-Tasten meines Laptops ändern kann.

Marius
quelle
@rajagenupula er will die gleiche Lautstärke wie die GUI verringern. ALSA würde in diesem Fall nicht funktionieren, da es nicht von ALSA, sondern von Pulseaudio gesteuert wird. i.stack.imgur.com/9C8Z2.png
Braiam
Siehe auch hier: askubuntu.com/questions/44680/…
Takkat

Antworten:

120

Teile dieser Antwort stammen aus Einstellen der Mikrofon-Eingangslautstärke über die Befehlszeile? , hier für Ihre Bequemlichkeit platziert.

Lautstärke um 5% erhöhen

amixer -D pulse sset Master 5%+

Lautstärke um 5% verringern

amixer -D pulse sset Master 5%-

Lautstärke auf 50% einstellen

amixer -D pulse sset Master 50%

Wenn Sie ALSA verwenden, kann amixer für Ihre Skriptprogrammierung hilfreich sein.

Wenn Sie den amixer --helpBefehl in einem Terminal ablegen, sehen Sie etwa Folgendes:

Bildbeschreibung hier eingeben

Abhängig von Ihrer Soundkarte können sich die Pegel von meinen unterscheiden. Sie können sie jedoch alsamixerim Terminal verwenden, um zu überprüfen, welche Pegel und welche Funktionen Ihrer Soundkarte Sie mit einem Befehl aufrufen können, um die Lautstärke nach Ihren Wünschen einzustellen.

Bildbeschreibung hier eingeben

In meinem Beispiel mit meiner Hauptsoundkarte (ich habe 2: die eingebettete und eine PCI-Audiokarte) liegen die Pegel zwischen 0 und 100. Auf diese Weise kann ich die Lautstärke eines gewünschten Eingangs / Ausgangs in meiner Soundkarte ändern, indem ich auf a lege Terminal den nächsten Befehl:

amixer -c 0 set Front 50DB 
amixer -c 0 set Front 64DB 

Im ersten Befehl setzt das Ergebnis den Frontpanel-Ausgang auf 78% und im zweiten auf 100%.

Wenn Sie den amixerBefehl ohne Parameter löschen, um Informationen zu Ihren Mixer-Steuerelementen zu erhalten, wird eine Liste angezeigt. Oder geben Sie an, mit welchem ​​Audiogerät Sie eine Liste der Steuerelemente anzeigen möchten amixer -c X(wobei "X" die Nummer Ihres Audiogeräts ist).

Übrigens: Denken Sie daran, dass DB-Werte logarithmisch und nicht linear berechnet werden.

Denken Sie daran, dass Sie mit diesem Befehl die Parameter auf dem aktuell verwendeten Audiogerät steuern können.

Viel Glück!

Geppettvs D'Constanzo
quelle
1
Beachten Sie, dass Sie wahrscheinlich mit einer falschen Soundkarte arbeiten, wenn Sie keinen "Master" -Controller oder "Master" -Controller haben, der die tatsächliche Ausgangslautstärke nicht ändern kann. F6ein alsamixerund --card naus amixerSoundkarte wechseln.
Pooyan Khosravi
Das ist ein guter Punkt! @PooyanKhosravi, auch wenn Sie die Soundkarte, die Sie automatisieren möchten, über die Befehlszeile aufrufen können, indem Sie das "-c X" (wobei "X" die Nummer Ihrer Soundkarte ist) löschen, ist es gut, die von Ihnen bereitgestellten Informationen zu kennen. Vielen Dank!
Geppettvs D'Constanzo
pactl(im Gegensatz zu amixer) ermöglicht es, die Lautstärke über 100% zu erhöhen (sehen in pavucontrol) :-)
Pevik
80

Sie können dies mit PulseAudio selbst tun (ich empfehle die Verwendung von ALSA nicht, da Sie dann die GUI nicht zum Erhöhen / Verringern der Lautstärke verwenden können).

Verwenden von Pactl : Sie können die Volumes für ein bestimmtes Gerät wie folgt einstellen:

pactl set-sink-volume 0 +10%

Dies erhöht die Lautstärke um 10%. Wenn Sie 10% weniger möchten:

pactl set-sink-volume 0 -10%

Wenn Sie die Lautstärke bei 50% benötigen:

pactl set-sink-volume 0 50%

Wenn Sie den ganzen Ort rocken müssen:

pactl set-sink-volume 0 150%

Sie können Prozente oder ganze Zahlen verwenden, aber die ganzen Zahlen sind langsam und möglicherweise nicht Ihr Ding.

pactl/ pacmd(im Gegensatz zu amixer) erlaubt es, die Lautstärke um über 100% zu erhöhen :-).

Braiam
quelle
3
Wenn Sie Kopfhörer verwenden, versuchen Sie, die Null auf Eins zu erhöhen: pactl set-sink-volume 1 50%
Smile4ever
13
Wenn Sie dieselben Befehle auf verschiedenen Hosts mit unterschiedlichen Senken verwenden möchten, können Sie @DEFAULT_SINK@anstelle von number eine Senke verwenden 0. Sie setzen Ihre Standardsenke mit pactl set-default-sink my-sink-name(Listennamen mit pactl list short sinks).
Pevik
3
Anfahrt: Failed to get sink information: No such entity, wie dies zu beheben? - Bearbeiten, ich musste außerdem eine Spüle verwenden 0. Die erste Anzahl pactl list short sinkskann verwendet werden. Dieser Befehl funktioniert zum Beispiel:pactl set-sink-volume $(pactl list short sinks | head -n1 | cut -f1) 50%
ideasman42
23

amixer set 'Master' 10%+- um den maximalen Klang um 10% zu erhöhen

amixer set 'Master' 10%-- um den maximalen Klang um 10% zu verringern

amixer set 'Master' 10% - um 10% des maximalen Tons zu erhalten

amixer set 'Master' 80% - um 80% des maximalen Geräusches zu erhalten

.. usw.

Wenn Sie die Lautstärke auf einen anderen Wert als "Master" einstellen möchten, überprüfen Sie die Liste wie folgt:

amixer scontrols


Sie können auch prüfen wollen , alsamixerundpacmd

np8
quelle
6

Eine späte Antwort könnte aber für jemanden nützlich sein.


Sie können die Lautstärke für die Stromsenke mit den folgenden Befehlen steuern

  • Lautstärke erhöhen :pactl set-sink-volume @DEFAULT_SINK@ +1000

  • Geringere Lautstärke :pactl set-sink-volume @DEFAULT_SINK@ -1000

  • Stummschaltung :pactl set-sink-mute @DEFAULT_SINK@ toggle

Sie können die folgenden Werte verwenden, um die Lautstärke zu steuern:

Ganze Zahl

  • Spezifischer Wert: <number>
  • Erhöhen, ansteigen: +<number>
  • Verringern: -<number>

Beispiel:

pactl set-sink-volume @DEFAULT_SINK@ 50000 wird die Lautstärke um 76% einstellen

Linearer Faktor

  • Spezifischer Wert: <number>.<number>
  • Erhöhen, ansteigen: +<number>.<number>
  • Verringern: -<number>.<number>

Beispiel:

pactl set-sink-volume @DEFAULT_SINK@ 0.44\ wird die Lautstärke um 76% einstellen

Prozentzahl

  • Spezifischer Wert: <number>%
  • Erhöhen, ansteigen: +<number>%
  • Verringern: -<number>%

Beispiel:

pactl set-sink-volume @DEFAULT_SINK@ 76% wird die Lautstärke um 76% einstellen

Dezibelwert

WARNUNG: Experimentieren Sie nicht mit Dezibelwerten, wenn Sie Kopfhörer verwenden, es sei denn, Sie wissen, was Sie tun. Sie könnten Ihr Gehör beschädigen

  • Spezifischer Wert: <number>dB
  • Erhöhen, ansteigen: +<number>dB
  • Verringern: -<number>dB

Beispiel:

pactl set-sink-volume @DEFAULT_SINK@ 0.0dB setzt die Lautstärke auf 100%


Quellen Arch Wiki , pactl man page

Cheloide
quelle
+1 !! Die einzige Lösung, die bei mir sofort funktioniert hat.
Dboris