Polecenie terminalu, aby ustawić głośność dźwięku?

96

Mam zewnętrzną kartę dźwiękową, która w większości działa dobrze, z wyjątkiem tego, że po pierwszym podłączeniu lub po włączeniu laptopa głośność zostaje ustawiona na 100%. Oznacza to ogólną głośność systemu, jak pokazano na wskaźniku dźwięku.

To, czego szukam, to polecenie terminalu, które ustawi tę głośność na 50%, dzięki czemu będę mógł uruchomić ją przy logowaniu i nie będę musiał się martwić, że pierwszy dźwięk, który odtwarzam, wybuchnie na mnie, jeśli zapomnę włączyć zmniejszenie głośności. Jakie polecenia pozwalają ci zmienić głośność, tj. Ten na wskaźniku dźwięku?

Grzebałem w ustawieniach i dbusie, ale nie byłem w stanie znaleźć niczego, co pozwoliłoby mi ustawić taką głośność systemu. Wiem o alsamixerze, ale nie jest to rozwiązanie, którego szukam, ponieważ nie pozwala mi to zmienić głośności za pomocą wskaźnika dźwięku lub klawiszy multimedialnych mojego laptopa.

Marius
źródło
@rajagenupula chce zmniejszyć tę samą głośność co GUI. ALSA nie działałaby w tym przypadku, ponieważ nie jest kontrolowana przez ALSA, ale Pulseaudio. i.stack.imgur.com/9C8Z2.png
Braiam
Zobacz także tutaj: askubuntu.com/questions/44680/…
Takkat

Odpowiedzi:

120

Części tej odpowiedzi pochodzi z Ustawianie głośności wejściowej mikrofonu za pomocą wiersza polecenia? , umieszczone tutaj dla Twojej wygody.

Zwiększ głośność o 5%

amixer -D pulse sset Master 5%+

Zmniejsz głośność o 5%

amixer -D pulse sset Master 5%-

Ustaw głośność na 50%

amixer -D pulse sset Master 50%

Jeśli używasz ALSA, amixer może być pomocny w programowaniu skryptów.

Po upuszczeniu amixer --helppolecenia w terminalu zobaczysz coś takiego:

wprowadź opis zdjęcia tutaj

W zależności od karty dźwiękowej poziomy mogą być inne niż moje, ale możesz użyć jej alsamixerw terminalu, aby sprawdzić, które poziomy i które funkcje karty dźwiękowej możesz wywołać w poleceniu, aby ustawić głośność według własnego uznania.

wprowadź opis zdjęcia tutaj

W moim przykładzie z moją główną kartą dźwiękową (mam 2: wbudowaną i PCI audio) poziomy wynoszą od 0 do 100, w ten sposób mogę zmienić głośność pożądanego wejścia / wyjścia na mojej karcie dźwiękowej, upuszczając zakończ następne polecenie:

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

W pierwszym poleceniu wynik ustawi poziom wyjściowy panelu przedniego na poziom 78%, a drugi ustawi poziom wyjściowy panelu przedniego na poziom 100%.

Aby zebrać informacje związane z kontrolkami miksera, upuść amixerpolecenie bez parametrów, a otrzymasz listę. Lub wskaż, za pomocą którego urządzenia audio chcesz wyświetlić listę kontrolek amixer -c X(gdzie „X” to numer twojego urządzenia audio).

BTW: Pamiętaj, że wartości DB są obliczane logarytmicznie, a nie liniowo.

Pamiętaj, że to polecenie pozwala kontrolować parametry na dowolnym urządzeniu dźwiękowym, którego aktualnie używasz.

Powodzenia!

Geppettvs D'Constanzo
źródło
1
Warto zauważyć, że jeśli nie masz kontrolera „Master” lub kontrolera „Master” nie możesz zmienić rzeczywistej głośności wyjściowej, prawdopodobnie pracujesz z niewłaściwą kartą dźwiękową. F6na alsamixeri --card nna amixerzmiany karty dźwiękowej.
Pooyan Khosravi
Trafne spostrzeżenie! @PooyanKhosravi, nawet jeśli możesz wywołać kartę dźwiękową, którą chcesz zautomatyzować z wiersza poleceń, upuszczając „-c X” (gdzie „X” to numer twojej karty dźwiękowej), dobrze jest znać podane informacje. Dziękuję Ci bardzo!
Geppettvs D'Constanzo
pactl(w przeciwieństwie do amixer) pozwala zwiększyć głośność o ponad 100% (widzenie w pavucontrol) :-)
pevik
80

Możesz to zrobić za pomocą samego PulseAudio (nie zalecam używania ALSA, ponieważ wtedy nie możesz użyć GUI do zwiększenia / zmniejszenia głośności).

Za pomocą pactl : możesz ustawić woluminy dla określonego urządzenia w następujący sposób:

pactl set-sink-volume 0 +10%

To zwiększa głośność o 10%. Jeśli chcesz to 10% mniej:

pactl set-sink-volume 0 -10%

Jeśli potrzebujesz głośności na poziomie 50%:

pactl set-sink-volume 0 50%

Jeśli chcesz wstrząsnąć całym miejscem:

pactl set-sink-volume 0 150%

Możesz użyć procentów lub liczb całkowitych, ale liczby całkowite są wolne i mogą nie być twoje.

pactl/ pacmd(w przeciwieństwie do amixer) pozwala zwiększyć głośność o ponad 100% :-).

Braiam
źródło
3
Jeśli używasz słuchawek, spróbuj zwiększyć zero do jednego: pactl set-sink-volume 1 50%
Smile4ever
13
Jeśli chcesz udostępniać te same polecenia na różnych hostach z różnymi ujściami, możesz użyć @DEFAULT_SINK@jako ujścia zamiast liczby 0. Ustawiasz domyślny zlew za pomocą pactl set-default-sink my-sink-name(nazwy nazw z pactl list short sinks).
pevik
3
Pierwsze: Failed to get sink information: No such entityjak rozwiązać ten problem? - Edytuj, oprócz tego musiałem użyć zlewu 0. pactl list short sinksMożna użyć pierwszej liczby . Polecenie to działa na przykład:pactl set-sink-volume $(pactl list short sinks | head -n1 | cut -f1) 50%
ideasman42
23

amixer set 'Master' 10%+- aby zwiększyć maksymalny dźwięk 10%

amixer set 'Master' 10%-- w celu zmniejszenia maksymalnego dźwięku o 10%

amixer set 'Master' 10% - aby uzyskać 10% maksymalnego dźwięku

amixer set 'Master' 80% - uzyskać 80% maksymalnego dźwięku

.. itd.

Jeśli chcesz ustawić głośność na inną niż „Master”, sprawdź listę według:

amixer scontrols


Możesz także sprawdzić alsamixeripacmd

np8
źródło
6

Późna odpowiedź, ale może być przydatna dla kogoś.


Możesz kontrolować głośność bieżącego ujścia za pomocą następujących poleceń

  • Zwiększ głośność :pactl set-sink-volume @DEFAULT_SINK@ +1000

  • Niższa głośność :pactl set-sink-volume @DEFAULT_SINK@ -1000

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

Do sterowania głośnością można użyć następujących wartości:

Liczba całkowita

  • Określona wartość: <number>
  • Zwiększać: +<number>
  • Zmniejszać: -<number>

Przykład:

pactl set-sink-volume @DEFAULT_SINK@ 50000 ustawi głośność na około 76%

Współczynnik liniowy

  • Określona wartość: <number>.<number>
  • Zwiększać: +<number>.<number>
  • Zmniejszać: -<number>.<number>

Przykład:

pactl set-sink-volume @DEFAULT_SINK@ 0.44\ ustawi głośność na około 76%

Percentaje

  • Określona wartość: <number>%
  • Zwiększać: +<number>%
  • Zmniejszać: -<number>%

Przykład:

pactl set-sink-volume @DEFAULT_SINK@ 76% ustawi głośność na około 76%

Wartość w decybelach

OSTRZEŻENIE: nie eksperymentuj z wartościami decybeli podczas korzystania ze słuchawek, chyba że wiesz, co robisz, ponieważ możesz uszkodzić słuch

  • Określona wartość: <number>dB
  • Zwiększać: +<number>dB
  • Zmniejszać: -<number>dB

Przykład:

pactl set-sink-volume @DEFAULT_SINK@ 0.0dB ustawi głośność na 100%


Źródła Arch Wiki , strona podręcznika użytkownika pactl

Cheloide
źródło
+1 !! Jedyne rozwiązanie, które zadziałało dla mnie natychmiast.
dboris