Correção de falhas de áudio com o Intel HDA Realtek 887-VD

3

Eu apenas construí um novo desktop robusto, com um mobo Gigabyte Z97P-D3, Intel i7-4790K, 16GB de RAM. Eu estou usando o hardware de som on-board Intel HDA (Realtek ALC887-VD) para saída de áudio. Estou executando o Ubuntu 14.04 LTS.

A cada poucos minutos eu ouço um pulo curto na reprodução de áudio, quase como se um quadro estivesse sendo removido. É incrivelmente irritante e acontece independentemente da fonte (navegador VLC / Spotify / Chromium). No breve momento durante um salto, as preferências de som > A lista de dispositivos da guia de saída fica acinzentada, e o indicador de controle de volume pisca brevemente como se estivesse sem som, antes de todos voltarem ao normal.

O ALSAmixer também falha de forma semelhante durante os saltos com as barras de volume, todos desaparecendo por uma fração de segundo.

Eu tentei as seguintes soluções alternativas (nenhuma delas funciona para mim):

1) /etc/modprobe.d/alsa-base.conf: configuração Position_fix

options snd-hda-intel model=generic position_fix=1

2) PulseAudio /etc/pulse/default.pa: Como desativar o tsched

load-module module-udev-detect use_ucm=0 tsched=0

3) PulseAudio /etc/pulse/default.pa: Ajustando padrões (todos os tipos de combinações e valores dos itens abaixo)

default-fragments = 2
default-fragment-size-msec = 250
default-sample-rate = 48000
realtime-scheduling = yes
realtime-priority = 5

4) Reinstalando o PulseAudio

5) Atualizando o kernel para o último estável (4.4.2)

6) Usando o Jack2 em vez do PulseAudio

7) Comprar uma nova placa de som (SoundBlaster Live), que parece não funcionar com vários aplicativos como o Spotify.

Saída de cat /proc/asound/card*/codec* | grep Codec :

Codec: Intel Generic

Codec: Realtek ALC887-VD

Codec: Nvidia GPU 60 HDMI/DP

Saída de cat /proc/asound/card*

0 [HDMI ]: HDA-Intel - HDA Intel HDMI HDA Intel HDMI at 0xf7914000 irq 33

1 [PCH ]: HDA-Intel - HDA Intel PCH HDA Intel PCH at 0xf7910000 irq 32

2 [NVidia ]: HDA-Intel - HDA NVidia HDA NVidia at 0xf7080000 irq 17

É o cartão nº 1 que estou usando.

Saída de uname -a :

Linux alnitak 4.4.2-040402-generic #201602171633 SMP Wed Feb 17 21:35:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Eu suspeito que isso tenha algo a ver com os drivers intel HDA, já que Pulse, ALSA e Jack estão todos afetados.

Há alguma correção que está faltando?

    
por michaeljtbrooks 24.02.2016 / 18:23

2 respostas

0

Ok, resolvi ... A resposta foi:

1) Compre uma nova placa de som (no meu caso, um Soundblaster Live)

2) Instale o Jack Audio (jackd)

sudo apt-get install jackd qjackctl

3) Instale a ponte Jack-Pulseaudio (jack do módulo pulseaudio)

sudo apt-get install pulseaudio-module-jack

4) Fire up jack (eu usei o qJackctl) com configurações amigáveis ao Soundblaster:

Driver: alsa

Realtime

Frames/Period: 2048

Periods/Buffer: 2

Input Device: hw:Live

Output Device: hw:Live

5) Certifique-se de que as conexões do Jack estão remendando o coletor JAVA do PulseAudio à reprodução do sistema

jack_connect 'PulseAudio JACK Sink:front-left' 'system:playback_1'
jack_connect 'PulseAudio JACK Sink:front-right' 'system:playback_2'

6) Certifique-se de que o PulseAudio esteja usando o Jack Sink conforme a saída

pacmd set-default-sink "jack_out" && pacmd set-default-source "jack_in"

7) Reinicie o Spotify / VLC ou o que você estiver usando para reproduzir som ... ele vai funcionar!

É um fudge absoluto de uma solução alternativa, mas isso ocorre porque os drivers de áudio Intel HDA no Linux são de má qualidade. O problema está no relatório DMA Position Pointer (um problema conhecido: link ) .

O áudio do Linux é uma bagunça. Eu tenho usado o Ubuntu desde 2010 e nos últimos 6 anos é o cluster de áudio ## k que tem consistentemente me dado as maiores dores de cabeça. O PulseAudio pode ter um lindo widget de desktop, mas causa muitos problemas. Jack está mal documentado e o qjackctl não lhe dá muita vantagem. Apenas o ALSA parece se comportar, mas, infelizmente, ninguém escreveu um widget agradável de área de trabalho nem uma interface para controlar os programas que o vincularam.

As mensagens para levar para casa são:

Não use áudio on-board Intel HDA se estiver executando o Linux.

O áudio do Linux é uma bagunça. Se não estiver funcionando corretamente, você terá todo um mundo de dor!

    
por michaeljtbrooks 26.02.2016 / 15:17
2

O driver de dispositivo do Linux chamado snd-hda-intel tem aparentemente causado enormes quantidades de agravamento desde pelo menos novembro de 2010, quando um usuário agravado escreveu um PulseAudioMicrophoneGuide.pdf.

Aqui está o que eu descobri até agora: o PulseAudio é uma camada de software que é executada no Alsa. Alsa é uma camada de software que carrega um grande número de pacotes de software de driver. A Alsa não é apenas um driver para os sinais eletrônicos. Alsa carrega vários pequenos softwares diferentes para cada sinal elétrico, como um mixer e como o software que lê bytes de um microfone ou grava bytes em um amplificador de headphone.

Meu laptop 2015 Lenovo S21e tem um problema "não há som no microfone embutido" e, como resultado, nem o Skype nem o GoogleHangouts Chat funcionam com o microfone embutido.

A correção a curto prazo para mim é conectar uma webcam com microfone ou usar um fone de ouvido Plantonics USB.

Aqui está o que eu acho que precisa ser feito. Eu não sou um programador C (apenas Python, Perl e Arduino). Dentro do driver de dispositivo que está falando com o hardware, encontre o local no código-fonte onde os dados de áudio estão sendo copiados do local da memória do microfone. Um dos canais de saída, direita ou esquerda, está sendo invertido de alguma forma no software. Meu palpite é que eles fizeram uma inversão de sinal na esperança de cancelar algum tipo de ruído do sinal. Então o truque é descobrir por que o programador original forçou uma inversão. Se nada mais, remova a inversão e veja se isso torna os canais direito e esquerdo OK.

    
por Lee McKusick 19.03.2016 / 06:25