snd-hda-intel e o HP Envy 17

3

Então eu sei que outro pessoas tiveram questões com áudio em notebooks da série Envy. No entanto, há muito pouco por aí em termos do HP Envy 17-3200 (4 alto-falantes e um woofer). Em vista disso, tive problemas consideráveis para que o som funcionasse corretamente. Mas mais do que isso, eu nem sei se o som pode funcionar corretamente com os módulos atuais do kernel ou se alguém em algum lugar terá que fazer alguma codificação.

O cartão é dado por:

$ cat /proc/asound/card0/codec#0 | grep Codec
Codec: IDT 92HD91BXX

Agora, este cartão não aparece em lista de cartões compatíveis . No entanto, toda a funcionalidade pode ser obtida usando uma combinação de diferentes cartões suportados (e é aí que fica estranho).

Dois dos quatro tweeters funcionam imediatamente, mas uma série de erros do kernel é enviada pelo snd-usb-audio, que tenta controlar o subwoofer.

Blacklisting snd-usb-audio e configuração do modelo de snd-hda-intel para 'ref' permitem que os alto-falantes internos (incluindo o subwoofer) funcionem. No entanto, é impossível silenciar os alto-falantes internos sem também silenciar fones de ouvido. Se o modelo estiver configurado para qualquer valor razoável diferente de 'ref' (incluindo 'auto'), os alto-falantes internos irão silenciar corretamente quando os fones de ouvido estiverem conectados, mas o subwoofer não funcionará.

Eu posso executar um script para alternar o modelo em tempo de execução toda vez que eu conectar fones de ouvido, mas isso requer privilégios de superusuário e é algo que eu não deveria ter que fazer. Eu enviei um um relatório de bug para o kernel.org , mas estou cada vez mais inseguro sobre se isso era certo então.

Este problema também existe sob o Arch e o Fedora. Pensamentos?

    
por astex 31.10.2012 / 02:55

1 resposta

2

Wow isso levou muito tempo para resolver.

A partir do Linux 3.10 (agora uso o ArchLinux em vez do Ubuntu), o driver snd-hda-intel funcionará automaticamente corretamente com os conectores de fone de ouvido (ou seja, os alto-falantes internos serão desativados corretamente quando os fones de ouvido estiverem conectados), mas o subwoofer será assumido para ser conectado à porta errada. Você pode corrigir isso manipulando manualmente a porta em que o woofer está conectado usando hdajackretask in alsa-tools-gui (para mim, era 0x10). A ferramenta também fornece os meios para tornar isso uma opção de inicialização, para que esse processo não precise ser repetido.

    
por astex 09.01.2014 / 04:08