Terminalden ses seviyesini ayarlayın


83

Ses seviyesini, üst çubuktaki hoparlör simgesine tıklamak yerine terminali kullanarak ayarlamak mümkün müdür?

Bunu yapmak istememin sebebi, klavyemin ses artırma / azaltma düğmelerine sahip olmaması ve fareye ulaşmak için can sıkıcı buluyorum.


1
Master Hacim seviyesini yüzde sayısında oku% 0-% 100: amixer sget Master | grep 'Right:' | awk -F'[][]' '{ print $2 }' Master volüm seviyesini% 10 arttır:amixer -q sset Master 10%+
Eric Leschinski

Yanıtlar:


97

İnteraktif kullanım için kullanabilirsiniz alsamixer. Komut dosyası yazmak için (örneğin, tuş kombinasyonlarına bağlama) göz atın amixer.

alsamixer çoğu sistemde varsayılan olarak bulunur.


Ana ses seviyesini ayarlamak için:

# Gets a list of simple mixer controls
$ amixer scontrols 

Ardından, örnek olarak istediğiniz hacme ayarlayın

$ amixer sset 'Master' 50%

1
"Sset" ve sadece "set" arasındaki fark nedir. (
İkisini

@ Venryx man amixeronların eşdeğer olduğunu ve "sset" deki "s" nin "basit" anlamına geldiğini öne sürüyor. Ayrıca kart kontrol içeriğini ayarlayan bir "cset" de var.
Matthias Braun

42

Openbox'ın yapılandırma dosyasında bulundu rc.xml:

# increase by 3%
amixer -q sset Master 3%+

# decrease by 3%
amixer -q sset Master 3%-

# mute/unmute
amixer -q sset Master toggle

amixer manuel sayfa daha fazla ayrıntı verebilir.


21

Sisteminiz kullanıyorsa pulseaudioşunları kullanabilirsiniz pactl:

pactl set-sink-volume 0 +15%

veya

pactl set-sink-volume 0 -5dB

bir tamsayı veya doğrusal bir faktör de belirleyebilirsiniz:

set-sink-volume SINK VOLUME [VOLUME ...]
          Set the volume of the specified sink (identified by its symbolic name or numerical index). VOLUME can be speci‐
          fied as an integer (e.g. 2000, 16384), a linear factor (e.g. 0.4, 1.100), a percentage (e.g. 10%, 100%) or a
          decibel value (e.g. 0dB, 20dB). If the volume specification start with a + or - the volume  adjustment  will  be
          relative to the current sink volume. A single volume value affects all channels; if multiple volume values are
          given their number has to match the sink's number of channels.

2
Gönderilen not kemer linux wiki : pactl'geçersiz seçenek' hatasıyla başarısız olur negatif yüzde bağımsız değişken alır komutlar. --Negatif argümandan önce argüman ayrıştırmayı devre dışı bırakmak için standart kabuk sözde argümanı kullanın. egpactl set-sink-volume 1 -- -5%
Jamie Cockburn

2
@JamieCockburn - Ne zaman yazıldığından emin değilim ama ben archlinux kullanıyorum ve --negatif değere sahip ilavelara kesinlikle gerek yok (yüzde, db, tamsayılar… hepsi iyi çalışıyor). Aslında, tam tersi : --wiki'ye göre kullanırsam , örneğin pactl set-sink-volume 1 -- -3% alırım Invalid volume specification.
don_crissti

Öyleyse kabuğa bağlı olmalı mı? Ubuntu 14.04, Xfce ile çalışıyorum ve komutu bash (4.3.11) ile çalıştırıyorum. İhmal --edersem, geçersiz bir seçenek alıyorum.
Jamie Cockburn

1
@JamieCockburn - Ben kabuk (kayıt için, her iki ile benim için çalışıyor alakalı olduğunu sanmıyorum bashve zsh). Muhtemelen önceki sürümlerinde pactlbu sorun vardı ve yukarı akış büyük olasılıkla çözüldü (v. 6.0 kullanıyorum).
don_crissti

1
@JamieCockburn 16.04 xfce bash ubuntu kullanıyorum ve "-" mükemmel bir şekilde çalışıyor, sadece bir not.
Reishin

9

Bunun eski olduğunu biliyorum. Alsa ve pulseaudio birbirine bağlı olduğu için, askubuntu'dan gelen bu cevap , hem ana sesimden hem de HDMI'dan ses seviyesini yönetmeme yardımcı oldu:

sesi arttır

amixer -q -D pulse sset Master 10%+

ses seviyesini azalt

amixer -q -D pulse sset Master 10%-

geçiş sesini kapat

amixer -q -D pulse sset Master toggle

Diğer karıştırıcı sset komutları da çalışır.




4

pamixerTam olarak ne istersen onu yapan yeni bir projeyi de deneyebilirsin . Aynı adı taşıyan ArchLinux AUR deposunda.


şimdi topluluk deposunda bile
Michal Polovka
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.