hdajackretask é uma ferramenta para reatribuir a função de seus conectores para entrada, saída ou desativação diferentes - por exemplo, transformar o conector do microfone em um fone de ouvido extra ou porque não conectá-los ao seu receptor surround?
Instale alsa-tools-gui
sudo apt-get update
sudo apt-get install alsa-tools-gui
Executar hdajackretask
Then Para substituir um dos seus jaques:
- Selecione um codec
- Clique na caixa de seleção "Substituir" desse pino e selecione o novo função desejada
- Clique em "Aplicar agora"
Nota: Se o conector de fone de ouvido tiver um interruptor de hardware integrado que redireciona o áudio, você está SOL (Desculpe, sem sorte). No entanto, se o sistema operacional detectar quando uma linha está conectada ao conector de fone de ouvido, o áudio provavelmente não será comutado mecanicamente.
Descobri que substituir os fones de ouvido e os alto-falantes ao mesmo tempo funciona melhor.
hdajackretask Screenshot para mudar o fone de ouvido para alto-falantes:
Depois de clicar em "Aplicar agora", um script de shell é criado para que as alterações e solicitações de senha de superusuário sejam executadas. O script também é salvo em /tmp
, que pode ser copiado e depois executado com sudo na linha de comando.
Execução de linha de comando
Como mencionado anteriormente, hdajackretask
cria um script, script.sh
in /tmp
semelhante a /tmp/hda-jack-retask-QW1EEZ/
para as funções do jack que você deseja:
#!/bin/sh
echo "0x12 0x90a60140" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x14 0x90170150" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x17 0x40000000" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x18 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x19 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1a 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1b 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1d 0x40700001" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x1e 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo "0x21 0x40f000f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
echo 1 | tee /sys/class/sound/hwC0D0/reconfig 2>>/tmp/hda-jack-retask-WFEIEZ/errors.log
Copie este script em algum outro lugar em seu sistema (diferente de / tmp)
cd /tmp/hda-jack-retask-QW1EEZ
cp script.sh ~username/speaker.sh
Em seguida, edite o speaker.sh
cd ~username
nano speaker.sh
Adicione a linha killall pulseaudio &
na parte superior do arquivo. Isso é necessário porque a função jack não pode ser alterada enquanto pulseaudio
estiver em execução. Por padrão pulseaudio
irá reaparecer. Altere também o caminho do arquivo errors.log
para /tmp
ou de onde você quiser:
#!/bin/sh
killall pulseaudio &
echo "0x12 0x90a60140" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x14 0x90170150" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x17 0x40000000" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x18 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x19 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1a 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1b 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1d 0x40700001" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x1e 0x411111f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo "0x21 0x40f000f0" | tee /sys/class/sound/hwC0D0/user_pin_configs 2>>/tmp/errors.log
echo 1 | tee /sys/class/sound/hwC0D0/reconfig 2>>/tmp/errors.log
Para executar o script:
sudo ./speaker.sh
A partir da documentação do alsa-tools-1.1.5 / hdajackretask / README :
Documentação para hdajackretask
A maioria das placas de som Intel HDA é até certo ponto reavaliada, e pode ser usada para mais de uma coisa. Esta ferramenta é uma interface gráfica para facilitar a retocagem de seus conectores - por exemplo, transformar o conector do microfone em um fone de ouvido extra ou, por que não, separá-los e conectá-los ao seu receptor surround?
Início rápido
Inicie o aplicativo "hdajackretask" na linha de comando. Selecione um codec na barra superior; algumas pessoas têm apenas uma - se você tiver mais de uma, uma é a "principal", e as outras são provavelmente codecs HDMI.
Todos os conectores (e outras entradas / saídas) são mostrados em "Configuração de pinos". Para substituir um de seus conectores, clique na caixa de seleção "Substituir" desse pino e selecione a função desejada. Nota: Se você selecionar uma substituição de "Saída de linha (voltar)", também deverá ter uma substituição "Saída de linha (frontal)". Uma substituição "Line out (Center / LFE)" funcionará apenas com as duas substituições anteriores, e assim por diante.
Você pode experimentar sua nova configuração clicando em "Aplicar agora". Para tornar sua nova configuração o padrão de inicialização, clique em "Instalar reinicialização de inicialização". Fazer qualquer um deles requer privilégios de root, então você provavelmente será perguntado por sua senha.
Quickend
Você errou? Clique no botão "Remover boot override" e, assim que o processo estiver concluído, desligue o computador, aguarde um pouco e ligue-o novamente. Agora você deve estar de volta onde você começou.
Funcionou?
Se sim, seja feliz, compartilhe sua alegria, faça algo de bom!
Se não, aqui estão algumas coisas para tentar:
-
Entre no alsamixer e veja se há novos controles de volume, e veja se eles estão com som e definidos para um valor razoável.
-
Às vezes, o motorista não desliga os pinos desconectados (se eles não estiverem conectados, por que se preocupar?). Você pode consertar isso desligando o computador por alguns instantes.
-
Veja a opção "model = auto" abaixo
Se isso não ajudar, há grandes chances de você encontrar um driver ou uma limitação de hardware. Você pode se deparar com erros de driver (talvez ninguém tenha testado quatro fones de ouvido antes!). Se fizer isso, sinta-se à vontade para denunciá-los na mailinglist do alsa-devel: no entanto, devido à falta de mão de obra, as chances são de que isso seja tratado com uma prioridade muito baixa (ter um som pronto para ser usado em uma configuração padrão). mais importante do que suportar configurações estranhas). No entanto, se você for um hacker do kernel e criar um patch que resolva seu problema sem estragar mais nada, as chances são altas de que ele será mesclado.
Se você suspeitar que o problema está com este aplicativo GUI em vez do driver do kernel, sinta-se à vontade para me escrever um e-mail (e, se preferir, inclua um patch!). Em caso afirmativo, escreva para [email protected].
Opções
-
Mostrar pinos não conectados Seu BIOS é responsável por configurar quais pinos no codec estão realmente conectados a algo e quais não estão. Às vezes, o BIOS apresenta bugs e não mostra todos os seus conectores. Se você tem um conector que seu BIOS diz que não tem, você pode tentar ativar pinos aleatórios e ver se funciona.
-
Definir modelo = auto Alguns codecs, especialmente os mais antigos e nos kernels 3.8 e abaixo, são codificados para usar um modelo específico e, portanto, não se importam com suas substituições. Em muitos casos e com um kernel razoavelmente novo, o analisador automático também funciona bem para esses codecs. Você pode forçar o analisador automático a ser usado, marcando esta caixa. Em alguns casos, no entanto, o modelo explícito está lá por um motivo; se estiver, você está preso.
-
Substituição avançada Isto é apenas para os especialistas. Isso faz com que você selecione cada campo de configuração individualmente, em vez de apenas alguns valores predefinidos que fazem sentido. Note que a maioria das combinações aqui são inválidas de uma forma ou de outra, então você provavelmente não deve mexer com isso a menos que tenha lido e entendido a seção "Configuração padrão" da especificação HD Audio. (Que, no momento da redação deste artigo, está disponível aqui: link )
-
Dicas do analisador Isso permite que você envie "dicas" especiais para o driver que fazem com que a análise se comporte de maneira diferente. Deixe-os na configuração "padrão", a menos que você tenha lido a documentação do driver. (Que, no momento da redação deste artigo, está disponível aqui: link - veja a seção "Hint strings".)