Estou tentando controlar o volume usando meu script de programação. Como posso fazer o seguinte no Fedora 15, Ubuntu linux?
- Sem som / Sem som
- Aumentar e diminuir volume
Nota: Observe que eu uso um microfone / alto-falante USB da Web e também um microfone / alto-falante analógico. Quero me candidatar a todos para ter certeza.
linux
command-line
audio
alsa
YumYumYum
fonte
fonte
<command>amixer -D pulse sset Master 3%+ unmute</command>
no keybind relevante~/.config/openbox/lubuntu-rc.xml
e em seguida, executandoopenbox --reconfigure
fixa-lo para mimRespostas:
Você pode usar o amixer . Está no
alsa-utils
pacote do Ubuntu e Debian.Execute
amixer
sem parâmetros para obter uma visão geral sobre seus controles para o dispositivo padrão.Você também pode usar
alsamixer
sem parâmetros (do mesmo pacote) para obter uma visão geral mais visual. Use F6 para ver e alternar entre dispositivos. Geralmente, você pode ter o PulseAudio e uma placa de som de hardware para selecionar.Em seguida, use
amixer
com oset
comando para definir o volume. Por exemplo, para definir o canal principal como 50%:Master
é o nome do controle e deve corresponder ao que você vê ao executar sem parâmetros.Observe o
%
sinal, sem ele tratará o valor como nível 0 - 65536.Se o PulseAudio não for o seu dispositivo padrão, você poderá usar o
-D
comutador:Outros comandos úteis apontados nos comentários:
Para aumentar / diminuir o volume usado
+/-
após o número, usePara silenciar, ativar ou desativar o estado mudo / não mudo, use
Observe também que pode haver duas escalas percentuais diferentes, o padrão bruto e, para alguns dispositivos, uma escala mais natural baseada em decibéis , que também é usada por
alsamixer
. Use-M
para usar o último.Por fim, se você estiver interessado apenas no PulseAudio, poderá conferir
pactl
(consulte uma das outras respostas).fonte
amixer set Master 10%+
eamixer set Master 10%-
M
mestre interno faz distinção entre maiúsculas e minúsculas (deve estar em maiúsculas).amixer -D pulse sset Master 50%
Para silenciar:
amixer -D pulse sset Master mute
Para ativar o som:
amixer -D pulse sset Master unmute
Para aumentar o volume em 5%:
amixer -D pulse sset Master 5%+
Para diminuir o volume em 5%:
amixer -D pulse sset Master 5%-
fonte
amixer -D pulse sset Master unmute 5%+
pactl / pacmd (diferente
amixer
) permite aumentar o volume acima de 100% :-).Configurações manuais acima de 100% são possíveis em
pavucontrol
(ao contrárioalsamixer
).NOTA: Se você deseja compartilhar os mesmos comandos em hosts diferentes com coletores diferentes, use-o
@DEFAULT_SINK@
como coletor em vez do número0
:Você define seu coletor padrão com
pactl set-default-sink my-sink-name
(lista nomes compactl list short sinks
).UPDATE: adicionado
toggle mute
(graças a Don Joe).Fonte: askubuntu.com , wiki.archlinux.org .
fonte
Maior volume:
Volume mais baixo:
Alternar sem som:
Exemplos de combinações de teclas para
i3
/sway
, os comandos são depoisexec
:fonte
se o usuário tiver silenciado o dispositivo, você deverá "desativá-lo". caso contrário, definir a porcentagem funcionará, mas o som ainda está desligado
fonte
A resposta da pevik está quase correta no PulseAudio, com duas coisas a serem mencionadas:
o comando de alteração de volume negativo gerará um erro porque a parte menos algo dele será interpretada como uma opção separada (não reconhecida); você precisa desativar a opção de análise com um duplo menos em algum lugar antes do número negativo, por exemplo, "- -5%"
o verdadeiro estado mudo é algo que deve ser possível alternar com a mesma chave, o que não funcionará se você estiver apenas configurando o volume para um valor fixo de 0; portanto, o comando certo para isso seria:
pactl set-sink-mute @DEFAULT_SINK@ toggle
LE: Se a primeira dica é aplicável, pode depender da versão do PulseAudio que você está executando ou de outra coisa na distribuição - notei que no Ubuntu 16 ele funciona sem o "-" e falha se eu adicionar "-" em frente à porcentagem negativa.
fonte
xbindkeys-config
e nem preciso reiniciar o X :) (riso o sorriso ... sem trocadilhos)O amixer funcionou para mim, mas não recebi a boa animação que recebo quando pressiono o botão de aumento de volume no teclado.
Eu decidi usar
xte
para pressionar diretamente essa tecla na linha de comando:Aumentar o volume:
xte 'key 0x1008ff13'
Volume baixo:
xte 'key 0x1008ff11'
Mudo:
xte 'key 0x1008ff12'
Eu descobri o teclado (esse número hexadecimal) usando
xev
.e, em seguida, pressione o botão de aumento de volume no teclado para obter o teclado. O sym principal pode variar de sistema para sistema, portanto, encontrá-lo no xev será a maneira mais confiável.
O resultado é assim para mim:
fonte