Redirecionar áudio pode se tornar bastante difícil em alguns casos.
Por exemplo, meu firefox nunca gostou de reproduzir áudio através de HDMI enquanto todos os outros softwares faziam isso. Desde que eu uso o pulso de áudio, funciona como charme; verifique o final desta resposta.
Estou usando o Lubuntu 16.04. Pode ser diferente da sua área de trabalho, mas a troca automática nunca ocorreu por padrão. Eu sempre tive que direcionar o fluxo de áudio manualmente. Em geral, você tem pelo menos duas saídas de áudio: um audiojack analógico e um hdmi digital, em geral, em diferentes placas de áudio.
A maneira mais difícil:
Primeiro eu tive que ter uma visão geral sobre as audiocards instaladas no meu htpc (placa-mãe ati com gráficos onboard e cpu onboard):aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: SB [HDA ATI SB], device 0: ALC887-VD Analog [ALC887-VD Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: SB [HDA ATI SB], device 3: ALC887-VD Digital [ALC887-VD Digital] Subdevices: 1/1 Subdevice #0: subdevice #0
e todos os canais de streaming de áudio possíveis que eu poderia direcionar o som:
aplay -L null Discard all samples (playback) or generate zero samples (capture) pulse PulseAudio Sound Server hdmi:CARD=Generic,DEV=0 HD-Audio Generic, HDMI 0 HDMI Audio Output dmix:CARD=Generic,DEV=3 HD-Audio Generic, HDMI 0 Direct sample mixing device dsnoop:CARD=Generic,DEV=3 HD-Audio Generic, HDMI 0 Direct sample snooping device hw:CARD=Generic,DEV=3 HD-Audio Generic, HDMI 0 Direct hardware device without any conversions plughw:CARD=Generic,DEV=3 HD-Audio Generic, HDMI 0 Hardware device with all software conversions default:CARD=SB HDA ATI SB, ALC887-VD Analog Default Audio Device sysdefault:CARD=SB HDA ATI SB, ALC887-VD Analog Default Audio Device front:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog Front speakers surround21:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers hdmi:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Digital HDMI Audio Output dmix:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog Direct sample mixing device dmix:CARD=SB,DEV=3 HDA ATI SB, ALC887-VD Digital Direct sample mixing device dsnoop:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog Direct sample snooping device dsnoop:CARD=SB,DEV=3 HDA ATI SB, ALC887-VD Digital Direct sample snooping device hw:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog Direct hardware device without any conversions hw:CARD=SB,DEV=3 HDA ATI SB, ALC887-VD Digital Direct hardware device without any conversions plughw:CARD=SB,DEV=0 HDA ATI SB, ALC887-VD Analog Hardware device with all software conversions plughw:CARD=SB,DEV=3 HDA ATI SB, ALC887-VD Digital Hardware device with all software conversions
Agora eu precisava descobrir qual desses canais é usado pelo meu cabo HDMI. Por isso eu precisava de um audioplayer que me permitisse direcionar o áudio manualmente para testar cada um dos canais acima, um por um, até que descobrisse, qual deles pertence ao meu HDMI. Com um GUI vlc e especialmente audacioso vem a calhar. Na base do CLI, também poderíamos usar aplay, mas não estou familiarizado com isso.
Agora, depois de ter descoberto, qual canal pertence ao meu cabo HDMI, era o cartão 0, dispositivo 3, eu precisava criar um arquivo na minha homefolder. asoundrc Wiki Asound com as informações sobre qual placa e qual dispositivo usar.
pcm.snd_card { type hw card 0 device 3 } ctl.snd_card { type hw card 0 device 3 }
Eu também precisava rodar 'alsamixer'. Com F6 eu selecionei minha placa de som e tive que navegar com as teclas de seta para o S / PDIF e ativar (ativar) com a tecla M.
Após a reinicialização do áudio, o HDMI funcionou, mas o Firefox continuou sem vontade de reproduzir áudio via HDMI.
longa história curta, agora eu uso o PulseAudio e estou muito feliz com isso.
O caminho mais fácil
Desde que instalei o PulseAudio, o manuseio dos dispositivos de áudio se tornou muito fácil.
Eu sugiro que você instale:
sudo apt-get install gstreamer1.0-pulseaudio pavucontrol pulseaudio-module-x11
pavucontrol
é uma GUI confortável para (re) direcionar seus fluxos de áudio para o dispositivo / canal desejado.
Espero que isso ajude você a encontrar uma solução.