Esta solução deve funcionar para todos os Thinkpads com um botão mudo que também tenha uma luz embutida. Pode também funcionar para outros Thinkpads.
Além das bolhas de notificação:
Existem dois possíveis indicadores de "hardware" (para mostrar que o mudo está ativado ou desativado):
- A luz do botão Liga / Desliga (verde) piscará para mostrar quando o mudo estiver ativado
-
A luz do botão de microfone mudo (laranja) estará ligada ou desligada para mostrar o status do mudo (assim como no Windows)
A solução 2 requer um módulo de kernel
thinkpad_acpi
corrigido e é recomendada apenas para usuários avançados que sabem o que estão fazendo. Isso ocorre porque o patch não é incluído pelos desenvolvedores do thinkpad_acpi por padrão, ( Veja esta discussão para mais detalhes ).
Etapas Comuns
a. Determinando o código da tecla de atalho do Mic-Mute e o dispositivo de entrada do microfone
- Abra o terminal com
Ctrl+Alt+T
- Execute
acpi_listen
e pressione a tecla mudo -
Observe o resultado, que deve ser algo como:
ibm/hotkey HKEY 00000080 0000101b
-
Em seguida, execute
amixer scontrols
, você deve ver uma das seguintes opções na saída:
Simple mixer control 'Internal Mic',0
ou
Simple mixer control 'Capture',0
Dependendo do que você vê, "Microfone interno" ou "Captura" é o seu dispositivo de entrada.
b. Criar o manipulador de eventos ACPI Mic-Mute
- Abra o terminal, digite
gksudo gedit /etc/acpi/events/lenovo-mutemic
para abrir o editor. - No editor, cole o seguinte, onde a primeira linha deve ser o código mostrado na seção anterior por
acpi_listen
:event=ibm/hotkey HKEY 00000080 0000101b action=/etc/acpi/lenovo-mutemic.sh
- Salve e saia do editor.
Escolhendo os indicadores Power Light ou Mic Mute
c-1. Script Mic-Mute com indicador do Botão de Energia
- Faça isso se você quiser uma solução fácil e não quiser usar o módulo de kernel corrigido (consulte C-2).
- Abra o terminal, digite
gksudo gedit /etc/acpi/lenovo-mutemic.sh
-
No editor, cole:
#!/bin/bash INPUT_DEVICE="'Internal Mic'" YOUR_USERNAME="place_your_username_here" if amixer sget $INPUT_DEVICE,0 | grep '\[on\]' ; then amixer sset $INPUT_DEVICE,0 toggle echo "0 blink" > /proc/acpi/ibm/led su $YOUR_USERNAME -c 'DISPLAY=":0.0" notify-send -t 50 \ -i microphone-sensitivity-muted-symbolic "Mic MUTED"' else amixer sset $INPUT_DEVICE,0 toggle su $YOUR_USERNAME -c 'DISPLAY=":0.0" notify-send -t 50 \ -i microphone-sensitivity-high-symbolic "Mic ON"' echo "0 on" > /proc/acpi/ibm/led fi
-
Substitua o valor da variável INPUT_DEVICE por
Capture
se esse for o nome do seu dispositivo de entrada (deixe todos os ticks intactos). - Substituir valor da variável YOUR_USERNAME pelo nome da conta do usuário para o qual você deseja enviar notificações
- Salve e saia do editor.
- Agora, execute o seguinte (do terminal):
sudo chmod +x /etc/acpi/lenovo-mutemic.sh sudo service acpid restart
- Ir para a seção Teste (d) para confirmar que funciona.
c-2. Mic-mudo com luz indicadora de microfilme oficial
Configurando o script
- Por favor, não use este método se você não estiver familiarizado com o terminal / shell.
- Isso exigirá a compilação de um módulo
thinkpad_acpi
corrigido e foi verificado que funciona com o Ubuntu Precise 12.04 e o Quantal 12.10, os kernels 3.2.0-23 e 3.2.0-24 e 3.5.0-21. -
Vamos criar o script primeiro:
/etc/acpi/lenovo-mutemic.sh
deve ser como na seção c-1, com as seguintes adições: -
Inserir esta linha após o cabeçalho (
#!/bin/bash
):MICMUTE=/sys/devices/platform/thinkpad_acpi/leds/tpacpi::micmute/brightness
-
Após a primeira linha
echo...
, insira:echo 1 > $MICMUTE
-
Depois da segunda linha
echo...
, insira:echo 0 > $MICMUTE
-
Você pode encontrar um exemplo do que o script completo deve ter nesta pasta
-
Então:
sudo chmod +x /etc/acpi/lenovo-mutemic.sh sudo service acpid restart
-
Confirme que pressionar o botão mudo resulta em uma luz de energia piscando; pressionando novamente dá uma luz de energia constante.
Construindo, testando e instalando o módulo do kernel
-
Instale (ou garanta) que você tenha os cabeçalhos e ferramentas construídas para o seu kernel atualmente em execução com:
sudo apt-get install linux-headers-$(uname -r) build-essential
-
Crie um diretório temporário e altere para ele:
mkdir ~/tpacpi && cd ~/tpacpi
-
Faça o download do arquivo de origem
thinkpad_acpi.c
do repositório git do Kernel do Ubuntu:wget -Othinkpad_acpi.c "http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-$(lsb_release -sc).git;\ a=blob_plain;f=drivers/platform/x86/thinkpad_acpi.c;hb=HEAD"
-
Corrigir com (copiar e colar a linha completa):
sed -i -e 's/"tpacpi::thinkvantage",/"tpacpi::thinkvantage",\n\t"tpacpi::unknown_led4",\n\t"tpacpi::micmute",/g' -e 's/0x1081U/0x5081U/g' -e 's/0x1fffU/0x5fffU/g' thinkpad_acpi.c
-
Na mesma pasta em que
thinkpad_acpi.c
foi baixado, você precisará de um "Makefile". Você pode baixá-lo diretamente deste Pastebin , usando:wget -OMakefile http://pastebin.com/raw.php?i=ybpnxeUT
OU cole o abaixo em um arquivo chamado
Makefile
:obj-m += thinkpad_acpi.o
all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean -
Agora digite
make
para criar o módulo; você verá um arquivothinkpad_acpi.ko
na pasta quando terminar. -
Teste o módulo corrigido depois de carregá-lo com:
sudo rmmod thinkpad_acpi && sudo insmod thinkpad_acpi.ko
-
Agora confirme que pressionar o botão do microfone ativará / desativará a luz laranja do microfone E a luz de energia piscará / ficará estável.
-
Se confirmado, faça o seguinte para substituir seu módulo
thinkpad_acpi
atual:TPDIR=/lib/modules/$(uname -r)/kernel/drivers/platform/x86 sudo mv $TPDIR/thinkpad_acpi.ko $TPDIR/thinkpad_acpi.ko.stock sudo mv /where/you/built/it/tpacpi_micmute/thinkpad_acpi.ko $TPDIR/thinkpad_acpi.ko
-
Comente ou exclua as linhas de energia em
lenovo-micmute.sh
d. Testando
- Além da escolha do indicador, você também pode confirmar o mudo por meio do seguinte:
- Clique no ícone de volume no canto superior direito e nas configurações de som na parte inferior:
- Mude para o separador "Entrada".
-
Agora, divirta-se pressionando o botão Mic Mute, você deve vê-lo refletido em:
- A caixa de seleção Mudo na janela
- Bolhas de notificação (não aparecerão instantaneamente se você pressionar o microfone mudo mais de uma vez em alguns segundos!)
- O indicador escolhido: a luz do botão de energia piscando ou a luz interna do microfone Mute.