Execute este comando:
amixer -D pulse set Master 1+ unmute
Quando pressiono a tecla mudo no meu teclado, tanto o canal mestre Alsa quanto o canal mestre PulseAudio ficam silenciados, pressionando-o novamente apenas o áudio principal do canal alsa, o canal mestre pulseaudio fica mudo. Resultado: sem som. Como faço para corrigir isso?
Execute este comando:
amixer -D pulse set Master 1+ unmute
é muito mais simples.
amixer -D pulse set Master Playback Switch toggle
configure isso como uma tecla de atalho para "Silenciar \ Ativar o som". controles de volume podem ser deixados como estão.
Hortelã 15 Companheiro - descobri por mim mesmo, funciona bem para mim.
Eu tive o mesmo problema ao executar o MATE desktop em um Debian Mint Debian Edition (201204).
A ação "Aumentar volume" não conseguiu ativar o volume. Percebi que o problema era com o Pulseaudio, mas o pacote mate-media-gstreamer
e mate-settings-daemon-gstreamer
foram instalados por padrão. Instalando mate-media-pulse
e mate-settings-daemon-pulse
(que desinstalaram mate-media-gstreamer
e mate-settings-daemon-gstreamer
) e tadam ... A ação "Aumentar volume" conseguiu reativar o volume novamente!
Espero que isso também funcione para você!
É um problema com o pulseaudio, os comandos para alsa ou amixer não irão enviar corretamente o som para o pulso. Quando comandos alsa enviam um sinal mudo, é um comando de alternância (envie o mesmo comando para ativar / desativar o som).
Agora, no pulseaudio, eles têm um código mudo e com mudo separado! Muitos relatam que desinstalar o pulseaudio resolverá o problema, mas para alguns isso não é realmente uma resposta aceitável (como eu, porque o pulso é útil para muitos aplicativos).
Então, para resolver isso, precisamos fazer um script,
1- Crie um novo documento vazio em um editor de texto como o gedit ou o mousepad,
2- Cole este código no documento, Soruce of code: 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- Nomeie o arquivo "volume" (nenhuma extensão necessária) coloque em algum lugar que você possa encontrar e não o exclua como sua pasta pessoal
4- Torne o arquivo executável clicando com o botão direito do mouse no arquivo, vá em Propriedades, depois na guia Permissões e use a caixa de seleção para marcá-lo como executável, isso permitirá que o script seja executado. mark-file-as-executible-gui
5- Depois precisamos ligar os comandos ao teclado, os comandos para o código são aumentar, diminuir e silenciar.
Então, vá para as configurações do teclado - how-do- i-mudar-meu-teclado-atalhos-em-xubuntu , na área de atalhos de teclado, clique em adicionar, abra, abra o arquivo "volume" que criamos e adicione o comando para o código após o volume, lendo aumento de volume ou volume mudo ect. mas com a localização de onde o arquivo de código está antes, como "/ home / username / volume mudo"
Em seguida, atribua-o ao teclado pressionando a tecla ou, se a tecla já estiver sendo usada,
~ Provavelmente o caso ~ encontre-os e substitua o comando.
Os principais atalhos provavelmente são chamados de XF86AudioRaiseVolume, XF86AudioLowerVolume, XF86AudioMute . Já que apenas o mudo está quebrado, concentre seus esforços em mudar isso primeiro.
Bug: 1
Trabalhei para mim no dia 12.10:
#!/bin/sh
amixer -c 0 sset Master,0 mute
sleep 5
amixer -D pulse set Master 1+ unmute
Para usuários do KDE e do kmix, se você usar esse script, ainda terá o feedback visual funcionando:
#! /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
Uso:
1) Salve como ~ / bin / mixctl
2) Desmapear os atalhos de teclado kmix padrão para Aumentar volume / Diminuir volume e Mudo
3) Crie três novos atalhos de teclado personalizados chamados 'Aumentar volume', 'Diminuir volume' e 'Mudo'
- > tipo de atalho: comando
- > como os comandos usam ~ / bin / mixctl volup , ~ / bin / mixctl voldn e ~ / bin / mixctl mudo respectivamente
Eu tive o mesmo problema em várias máquinas Xubuntu 12.04 que foram atualizadas para o XFCE 4.10.
Aqui está uma maneira muito rápida de resolver este problema a partir da linha de comando (ou com um script bash
).
Ao contrário das soluções anteriores que oferecem scripts de intervalo de parada, essa solução restaura totalmente a função do botão ativar / desativar som.
Basta emitir os dois comandos a seguir uma vez para resolver o problema de uma vez por todas:
$ 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'
Eu encontrei uma solução simples que funciona bem para mim neste fórum . Em detalhes, você precisa adicionar isso a /etc/asound.conf
:
pcm.pulse {
type pulse
}
ctl.pulse {
type pulse
}
pcm.!default {
type pulse
}
ctl.!default {
type pulse
}
Em seguida, defina um atalho de teclado para a tecla mudo com o comando sendo:
amixer set Master toggle
Você pode usar as configurações do teclado para definir o botão mudo para executar o comando encontrado AQUI . Embora o primeiro método listado neste link fosse inútil para mim, o segundo funciona muito bem para o XFCE4: $ pactl set-sink-mute 0 toggle
. Você também pode criar um script ou lançador para executar o comando no clique do mouse.
FYI, se você estiver usando algo como o Cinnamon (e provavelmente outros desktops baseados no gnome)
A sugestão acima do user197761 parece melhor, como o applet de som da canela reconhece que o volume está mudo: amixer -D pulse set Master Playback Switch toggle
(se você gostar deste último comando, por favor vote sua resposta, não a minha.)
Tags pulseaudio alsa