Ativando o áudio USB com o script /etc/pm/sleep.d que executa os comandos pacmd

3

O Ubuntu altera irritantemente o dispositivo para entrada e saída de áudio do meu fone de ouvido USB para a placa de som integrada sempre que faço logout, hiberne ou desligo o meu computador. Isso ocorre mesmo que "USB Headset Analog Stereo" tenha a opção "Set as fallback" selecionada no PulseAudio.

Eu decidi executar um script toda vez que meu computador inicia ou descongela. Conseguir que os comandos sejam executados quando eu fizer login é fácil: basta colocá-los no meu arquivo .zshrc. Mas estou tendo problemas em fazer com que eles funcionem ao acordar da hibernação. Aqui está meu script, que eu coloquei em /etc/pm/sleep.d:

#!/bin/bash

case "" in
    thaw|resume)
        pacmd set-default-sink "alsa_output.usb-Sennheiser_Communications_Sennheiser_USB_Headset-00-Headset.analog-stereo"
        pacmd set-default-source "alsa_output.usb-Sennheiser_Communications_Sennheiser_USB_Headset-00-Headset.analog-stereo.monitor"
        ;;
esac

O problema é que ele não executa os comandos pacmd ao descongelar (não suspendo meu computador porque ele congela quando é retomado). Eu tentei inúmeras variações no script, incluindo colocar os comandos pacmd fora da instrução case para que eles (aparentemente) executem independentemente, mas sem sucesso.

Quando coloco outros comandos (como gvim ) no script e hiberne e descongelo o meu computador, eles também não executam. Os comandos são executados, no entanto, se estiverem fora da instrução e eu executar o script na linha de comando. Se eu colocar os comandos em um script em /etc/pm/power.d fora de uma declaração de caso, eles serão executados duas vezes.

    
por Patrick Brinich-Langlois 01.03.2013 / 00:37

0 respostas