Sessiz tuşu Alsa ve PulseAudio'nun sesini kapatır, ancak yalnızca Alsa'nın sesini açar


20

Klavyemdeki sessiz tuşuna bastığımda, hem Alsa ana kanalı hem de PulseAudio ana kanalı susturulur, tekrar basıldığında sadece alsa ana kanalının sesi kapatılır, pulseaudio ana kanalı sessiz kalır. Sonuç: ses yok. Bunu nasıl düzeltebilirim?

Yanıtlar:


11

Bu komutu çalıştırın:

amixer -D pulse set Master 1+ unmute

12
Diğer kullanıcıların bilmesi için bu komutun ne yaptığını açıklayabilir misiniz?
Monica'yı eski durumuna getirin - Aug--

1
Bu 1+ ne için? Amixer'ın man sayfasında bir açıklama bulamadım.
jarno

komutu bir donanım anahtarına amixer -D pulse set Master 1+ toggle
bağlarsanız

20

yine de çok daha basit.

amixer -D pulse set Master Playback Switch toggle

bunu kısayol tuşu olarak "Sessiz \ Sesi Aç" olarak ayarlayın. ses seviyesi kontrolleri oldukları gibi bırakılabilir.

Mint 15 Mate - kendim anladım, benim için iyi çalışıyor.


Ne olursa olsun - kemer linux üzerinde iyi çalıştı. Sesi tamamen kapatıp açın. Şimdi bu komutu dizüstü bilgisayarımdaki sessiz komutuna bağladım, çünkü varsayılan bir tüm kanalların sesini açmıyor. TEŞEKKÜRLER
Erikas

Bu benim için Ubuntu 14.04 + i3 ile çalıştı, kabul edilen cevap işe yaramadı.
Ingo Bürk

1
amixer -D pulse set Master toggleyapacağım. Amixer, set veya sset komutu için basit bir mikser kontrol adı bekler ve tam bir mikser kontrol adını kabul etse bile, böyle bir çok kelimeli isim vermeniz gerekir. Komutta isteğe bağlı değiştiriciyi şu şekilde kullanabilirsiniz playback: amixer -D pulse set Master playback toggleancak Masteryakalama yetenekleri de yoksa gereksizdir . İsteğe bağlı değiştiriciler kullanarak, sisteminizin surround ses kapasitesine sahip olması durumunda komutun hangi kanallara uygulanacağını da kontrol edebilirsiniz.
jarno

5

Bir Linux Mint Debian Edition'da (201204) MATE masaüstünü çalıştırırken de aynı sorunu yaşadım.

"Ses açma" işlemi sesin sesini açamadı. Sorunun Pulseaudio ile olduğunu, ancak paketin mate-media-gstreamerve mate-settings-daemon-gstreamervarsayılan olarak yüklendiği yerde olduğunu fark ettim . Yükleyerek mate-media-pulseve mate-settings-daemon-pulse(kaldırıldı olduğu mate-media-gstreamerve mate-settings-daemon-gstreamer) ve tadam ... "yukarı Ses" eylem tekrar hacmini sesini başardı!

Umarım bu senin için de işe yarar!


Benim için çalıştım (Debian Jessie üzerinde) ve bu çözüm kalıcıdır, buna karşılık AFAIU çözümleri amixer -D pulse set Master xxxtek çekimdir veya manuel olarak bir kısayola eşleştirilmesi gerekir. Burada önerilen çözüm olması gerektiği gibi görünüyor.
Jérôme

2

Bu pulseaudio ile ilgili bir sorundur, alsa veya amixer için komutlar darbeye sessiz olarak gönderilmez. Alsa komutları bir sessiz sinyali gönderdiğinde bu bir açma / kapatma komutudur (sessiz / sessiz olarak aynı komutu gönderin).

Şimdi pulseaudio'da ayrı sessiz ve sessiz kodu var! Birçoğu, pulseaudio'yu kaldırmanın sorunu çözeceğini bildiriyor, ancak bazıları için gerçekten kabul edilebilir bir cevap değil (benim gibi, darbe birçok uygulama için yararlı olduğu için).

Bunu çözmek için bir senaryo yapmamız gerekiyor,

1- gedit veya mousepad gibi bir metin editöründe yeni bir boş belge hazırlayın,

2- Bu kodu dokümana yapıştırın, Kod kusuru: 2

#!/bin/bash
#### Create ~/.pulse/mute if not exists
ls ~/.pulse/mute &> /dev/null
if [[ $? != 0 ]]
then
    echo "false" > ~/.pulse/mute
fi

####Create ~/.pulse/volume if not exists
ls ~/.pulse/volume &> /dev/null
if [[ $? != 0 ]]
then
    echo "65536" > ~/.pulse/volume
fi

CURVOL=`cat ~/.pulse/volume`     #Reads in the current volume
MUTE=`cat ~/.pulse/mute`          #Reads mute state

if [[ $1 == "increase" ]]
then
    CURVOL=$(($CURVOL + 3277)) #3277 is 5% of the total volume, you can change this to suit your needs.
    if [[ $CURVOL -ge 65536 ]]
    then
        CURVOL=65536        
    fi
elif [[ $1 == "decrease" ]]
then
    CURVOL=$(($CURVOL - 3277))
    if [[ $CURVOL -le 0 ]]
    then
        CURVOL=0        
    fi
elif [[ $1 == "mute" ]]
then
    if [[ $MUTE == "false" ]]
    then
        pactl set-sink-mute 0 1
        echo "true" > ~/.pulse/mute
    exit    
    else
        pactl set-sink-mute 0 0
        echo "false" > ~/.pulse/mute    
    exit
    fi
fi

pactl set-sink-volume 0 $CURVOL
echo $CURVOL > ~/.pulse/volume # Write the new volume to disk to be read the next time the script is run.

3- Dosyaya "birim" adını verin (eklenti gerekmez) bulabileceğiniz bir yere koyun ve ana klasörünüz gibi silmeyin

4- Dosyayı sağ tıklatıp yürütülebilir yapın, Özellikler'e, ardından İzinler sekmesine gidin ve yürütülebilir dosyayı işaretlemek için onay kutusunu kullanın, bu komut dosyasının çalıştırılmasına izin verecektir. mark-file-as-executible-gui

5- Sonra komutları klavyeye bağlamalıyız, kod için komutlar artar, azalır ve susturulur.

Bu nedenle klavye ayarlarına gidin - nasıl yapılır-i-değiştir-klavyem-kısayollar-in-xubuntu , Klavye kısayolları alanında, ekle'yi tıklayın, ardından açın, Oluşturduğumuz "birim" dosyasını açın, ardından komutu ekleyin ses düzeyi, okuma ses seviyesi artışı veya ses kapatma sesinden sonraki kod için . ancak kod dosyasının önündeki konumun "/ home / kullanıcı adı / ses kapatma" gibi

Daha sonra tuşa basarak klavyeye atayın veya tuş zaten kullanılıyorsa,
~ Büyük olasılıkla ~ bunları bulun ve komutu değiştirin.

Tuş kısayollarına büyük olasılıkla XF86AudioRaiseVolume, XF86AudioLowerVolume, XF86AudioMute denir . Sadece sessizlik bozulduğundan, ilk önce bunu değiştirme çabalarınızı yoğunlaştırın.

Hata: 1


Sadece XF86AudioMutekomuta eşledim amixer set Master toggle. Yükseltme ve alçak vol tuşları amixerkomutlara benzer şekilde eşlenir .
Chan-Ho Suh

@ Chan-HoSuh aynı sorunu yaşıyor musunuz? İsterseniz bu komut dosyasının sessiz komutunu çağırabilirsiniz, bir nedenden dolayı nabız makinemdeki sessizliği durduruyordu, amikser sadece darbe ile sessiz olarak yorumlanan veya sadece tuşa basmayı engelleyen bir geçiş gönderir mi? Daha önce bir ses çubuğu gösteren benzer bir komut dosyası kullanıyordum: ama bu sesi kapatıyor ve açıyor ve şimdi bildirimleri var, bu yüzden hepsi iyi, geçiş daha önce nasıl ayarlandığı.
Mateo

Komut dosyasında yapılan küçük bir iyileştirme, ses düzeyini artırmak / azaltmak için sesi açmayı zorlamaktır. Ayrıca cilt hakkında geri bildirim almak için 'paplay /usr/share/sounds/ubuntu/stereo/message.ogg' ekledim.
dma

Belki de daha önce farklı, ama PulseAudio'dan 4.0 ile aşağıdaki gibi komutları kullanabilirsiniz pactl set-sink-volume 0 +5%, pactl set-sink-volume 0 -5%ve pactl set-sink-mute 0 togglesırasıyla, hacim, sesi azaltır ve hacim geçiş artırmak.
jarno

@jarno evet, bu belirli bir sorunu (hata) çözmekti, bu yüzden muhtemelen sabit / ilgili değil, ama başka bir şey işe
Mateo


1

12.10'da benim için çalıştı:

    #!/bin/sh
    amixer -c 0 sset Master,0 mute
    sleep 5
    amixer -D pulse set Master 1+ unmute

1

KDE ve kmix kullanıcıları için, bu komut dosyasını kullanırsanız görsel geribildirimler çalışmaya devam eder:

#! /bin/bash

DBUS=qdbus 2> /dev/null

case "$1" in
  volup)
        pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo 0
        ${DBUS} org.kde.kmix /kmix/KMixWindow/actions/increase_volume com.trolltech.Qt.QAction.trigger
        ;;
  voldn)
        pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo 0
        ${DBUS} org.kde.kmix /kmix/KMixWindow/actions/decrease_volume com.trolltech.Qt.QAction.trigger
        ;;
  mute)
        ${DBUS} org.kde.kmix /kmix/KMixWindow/actions/mute com.trolltech.Qt.QAction.trigger
        pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo $(${DBUS} org.kde.kmix /Mixers/0/Master_0 org.kde.KMix.Control.mute | sed 's/false/0/g;s/true/1/g')
        ;;
  *)
    echo "Usage: mixctl <volup|voldn|mute>" >&2
    exit 1
    ;;
esac

exit 0

Kullanımı:

1) ~ / bin / mixctl olarak kaydedin
2) Sesi Açma / Sesi Kısma ve Sesi Kapatma için varsayılan kmix klavye kısayollarının eşlemesini kaldırma
3) 'Sesi Açma', 'Sesi Kısma' ve 'Sesi Kısma' adlı üç yeni özel klavye kısayolu oluşturun
- > kısayol türü: komut
-> komutlar sırasıyla ~ / bin / mixctl volup , ~ / bin / mixctl voldn ve ~ / bin / mixctl sessiz olarak kullanılır


1

Aynı sorunu XFCE 4.10'a yükseltilmiş birden çok Xubuntu 12.04 makinesinde de yaşadım. İşte bu sorunu komut satırından (veya bir bashkomut dosyasıyla) çözmenin çok hızlı bir yolu .

Durdurma boşluğu komut dosyaları sunan önceki çözümlerden farklı olarak, bu çözüm sessiz / sessiz düğmesinin işlevini tamamen geri yükler.

Sorunu bir kez ve herkes için çözmek için aşağıdaki iki komutu bir kez vermeniz yeterlidir:

$ xfconf-query --channel xfce4-mixer --property /active-card --set PlaybackInternalAudioAnalogStereoPulseAudioMixer --reset
$ xfconf-query --create --channel xfce4-keyboard-shortcuts --property /commands/custom/XF86AudioMute --type string --set 'amixer -D pulse set Master 1+ toggle'

1

Bu forumda benim için iyi çalışan basit bir çözüm buldum . Ayrıntılı olarak, bunu aşağıdakilere eklemeniz gerekir /etc/asound.conf:

pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

Ardından, sessiz tuşu için komut şu şekilde olacak şekilde bir klavye kısayolu ayarlayın:

amixer set Master toggle

0

BURADA bulunan komutu yürütmek için sessiz düğmesini ayarlamak üzere klavye ayarlarını kullanabilirsiniz . Bu bağlantıda listelenen ilk yöntem benim için yararsız olmasına rağmen, ikinci bir Xfce4 için büyük çalışır: $ pactl set-sink-mute 0 toggle. Ayrıca fare tıklamasıyla komutu yürütmek için bir komut dosyası veya başlatıcı da oluşturabilirsiniz.

FYI, Cinnamon (ve muhtemelen diğer gnome tabanlı masaüstü bilgisayarlar) gibi bir şey kullanıyorsanız user197761'in yukarıdaki önerisi daha iyi görünüyor, cinnamon'un ses uygulaması sesin sessiz amixer -D pulse set Master Playback Switch toggleolduğunu fark ettiğinden : (bu ikinci komutu beğendiyseniz, lütfen cevabını yükseltin, benim değil.)

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.