Conforme descrito no título, experimento um atraso de meio segundo ao reproduzir áudio por Bluetooth com A2DP.
Isso impossibilita a exibição de filmes, pois o som não é sincronizado com o vídeo.
Não tenho certeza se o atraso é causado pelo padrão Bluetooth, pelo protocolo A2PD, pela implementação A2DP no Ubuntu 12.04 ou pelo Belkin Z73 Bluetooth Receiver.
Enfim, isso é um atraso normal? Existe uma maneira de reproduzir áudio por Bluetooth sem latência perceptível?
pulseaudio
bluetooth
brillout
fonte
fonte
mplayer
, você faz isso pressionando as teclas+
e-
. No VLC, não sei como definir o atraso, mas ficaria surpreso se o VLC não tiver essa opção.Tools->Track Synchronisation
, ou brinca com a--audio-desync
opção. Receio não ter certeza de quais são as unidades, e qual direção é positiva, e a ajuda não está disponível sobre o assunto, mas é aí que você deseja procurar.Respostas:
Não, isso não é normal, mas ocasionalmente tive um problema semelhante com os meus alto-falantes Altec Lansing iMT525 Bluetooth. Algo semelhante em conceito à resposta de Sri quase sempre funciona para mim, e eu preciso fazer isso apenas uma vez por conexão.
Troca automática de perfis Bluetooth para reinicializar o PulseAudio
Se você está procurando um culpado, eu procuraria primeiro o sistema de som do Ubuntu, PulseAudio, e depois o seu receptor bluetooth. Tente o seguinte:
Primeiro, exclua e emparelhe seu dispositivo Bluetooth.
Em seguida, copie e cole o texto abaixo em um
.sh
arquivo no diretório inicial, diga/home/brillout/pabluezswitch.sh
:Torne o arquivo executável abrindo um terminal e digitando
chmod +x ~/pabluezswitch.sh
Vá para Configurações ... Teclado ... Atalhos e crie um atalho personalizado; nomeie como quiser, com o comando como
/home/brillout/pabluezswitch.sh
(substitua o nome de usuário apropriado no caminho!). Clique em Aplicar e clique à direita, onde diz Desativado, para configurar um atalho de teclado para executar o script.O que isso faz é forçar o sistema PulseAudio a ressincronizar o áudio que está sendo enviado aos seus fones de ouvido / alto-falantes, trocando os perfis
ad2p -> hsp -> a2dp
, assim, esperançosamente, eliminando qualquer latência.Sempre que você conectar e perceber o atraso, pressione o atalho de teclado escolhido acima para tentar corrigir a latência - espero que funcione para você!
fonte
ad2p
ehsp
. Meu Bose só temad2p_sink
, não esses outros dois.pacmd info | grep "current latency"
epacmd stat
parecem fornecer os mesmos números de latência / tamanho do buffer, independentemente do tamanho da latência real (por exemplo, ao tirar o fone de ouvido do alcance e trazê-lo de volta), talvez uma parte diferente da pilha seja responsável pela latência?ad2p_sink
eoff
funciona para mim. Eu recentemente aded isso para o meu script de controle de áudio Pulso / volume que possa ser útil a alguémsudo apt install pavucontrol
pavucontrol
partir do menufonte
Ocasionalmente, fico com um problema semelhante, independentemente do player usado. O Mine é um fone de ouvido estéreo Nokia BH-503 Bluetooth com laptop MSI CR400 e Ubuntu 11.10. Por acaso encontrei uma solução alternativa que você pode tentar.
fonte
A resposta superior aqui funciona, mas não para todos os dispositivos de áudio bluetooth. Alguns dispositivos têm nomes de perfil diferentes dos que o pôster possui com os alto-falantes bluetooth. Por exemplo, no código a seguir, que foi originalmente publicado por essa pessoa, aparentemente possui perfis nomeados
a2dp
ehsp
. Nenhum deles está disponível nos meus tons LG, por exemplo, mas estão em outros dispositivos, como meu fone de ouvido Sony.Esse código funcionará para a maioria dos dispositivos bluetooth, mas para fazê-lo funcionar corretamente nos dispositivos que não possuem o perfil a2dp ou o perfil hsp, digite:
Isso retornará tudo depois de onde encontrar um dispositivo bluetooth. Por exemplo, com o fone de ouvido LG Tone Ultra, recebo o seguinte:
Estamos interessados na
profiles
seção. Nesta seção, vemos três perfis, que sãoa2dp_sink
,headset_head_unit
eoff
. Os dois perfis que precisamos devem ter neles (A2DP Sink) e (HSP / HFP). Nesse caso, eles sãoa2dp_sink
para o perfil a2dp eheadsethead_unit
para o perfil hsp. Observe que isso é diferente do pôster originala2dp
ehsp
.Agora, com o código acima, vamos modificá-lo e colocá-lo em um arquivo. Eu liguei para o arquivo
bluezswitch.sh
.Mude para o diretório em que deseja colocar o arquivo. Pode estar em qualquer lugar.
Então
Copiar e colar o código no topo deste comentário e substituir o
a2dp
ehsp
com os valores que você tem quando você executou o comando acima, e colá-lo no arquivo. Por exemplo, é assim que meu arquivo se parece com os meus LG Tones.Agora,
ctrl-x
em seguida,y
para salvar o nano arquivo e saia, e, em seguida, tornar o arquivo executável:Em seguida, prossiga configurando um atalho de teclado, conforme explicado.
Isso deve ser tudo o que existe. Isso deve funcionar para todos aqueles para os quais não funcionava antes.
fonte
a2dp_sink
,off
,a2dp_sink
em obras seqüência muito bem para mim. Configurando paraheadset_head_unit
erro de E / S.A modulação adaptativa do código de pulso diferencial envolve um algoritmo de compressão do tipo antecipado, em que as informações não podem ser transmitidas antes que o codificador tenha a chance de examinar vários bytes de informações futuras. Portanto, os dados precisam se acumular no codificador, e há uma mudança de tempo inerente entre os fluxos que entram e saem do codificador. Há muito tempo, fiz um estudo de atrasos na rede de dados para determinar a viabilidade da telefonia de voz sobre dados (o que é agora o VoIP). Acho que concluí que a compactação / codificação no estilo ADPCM apresentaria muito atraso. Penso que para ultrapassar este problema de atraso do Bluetooth, pode ser necessário um tipo de codificação de áudio sem compressão, que deve ter uma latência mais baixa.
fonte
Tentei várias abordagens para esse problema, mas nada poderia corrigi-lo. Então eu tropecei em set-port-latency-offset
Se você estiver usando o pulseaudio, faça:
Isso lhe dará a interface bluetooth. Agora defina a latência de acordo:
Estou usando 100000 microssegundos, o que funciona bem para mim.
fonte
Aqui está o que o resolveu para mim:
$ sudo apt-get install phonon-backend-vlc
e verifique se é o back-end preferido, no KDE, vá para [Configurações do sistema] [Multimídia] [Configurações de áudio e vídeo] [Back-end] e use o [botão Preferir]fonte
pessoas que estão tendo esse problema Consulte este site: http://projectzeorymer.wordpress.com/2011/09/01/ubuntu-how-to-connect-nokia-bh-503-bluetooth-headset-to-your-pc / para ver uma foto do que você precisa baixar.
Faça o download do gerenciador de bluetooth e use-o para manipular as configurações do fone de ouvido. Defina as configurações de som como Reprodução de alta fidelidade (A2DP) e, em seguida, vá nas configurações de som.
fonte
No VLC media player, vá para a guia Ferramentas Sincronizar faixa de sincronização Na faixa Sincronizar faixa de áudio / vídeo, use um valor negativo como cerca de -0,67 e o atraso será totalmente compensado. Você deve fazer isso manualmente sempre que abrir um novo arquivo. Chris
fonte
Da mesma forma que a resposta de Timm, eu também não tinha os perfis da resposta aceita. A configuração do HSP deu um código de erro.
Acabei usando o seguinte script, quase idêntico.
fonte
Parece que esse problema ainda é relevante depois de todos esses anos.
Com base na resposta de Arindam Mani Das e no comentário de Billy Farrington , criei o seguinte shell script:
Estou usando 100000 microssegundos como o Arindam recomendou e também funciona bem para mim.
fonte