Gostaria de receber / gravar áudio do dispositivo bluetooth na minha caixa linux. O que eu tenho funciona corretamente como um fone de ouvido (o microfone funciona corretamente em particular), ou seja, no macOS, mas não consigo trabalhar com o linux - em particular, o jessy raspbian - mas pelo que vejo, ele afeta outras distros também.
- o dispositivo está emparelhado e conectado corretamente usando
bluetoothctl
- O perfil A2DP funciona corretamente
-
pactl ls relatórios entre outros headset_head_unit: Headset Head Unit (HSP/HFP) (priority 20, available: no)
- ao tentar alternar para
headset_head_unit pulseaudio reports [pulseaudio] module-bluez5-device.c: Refused to switch profile to headset_head_unit: Not connected
Eu encontrei e tentei várias sugestões para atualizar bluez , pulseaudio , usar ofono etc., mas sem sucesso. Os comentários mais comuns são que o suporte a HSP / HFP foi descartado no recente bluez e o ofono deve ser usado (ainda não sei como o ofono deve ajudar aqui como AFAIK está relacionado quando o susistema BT está sendo usado como um cliente ou seja, conectado ao celular). Eu posso ver um número de bugs não resolvidos, ou seja, para freedesktop aqui e aqui , redhat , ubuntu e debian e também perguntas similares feitas no stackexchange.
Embora haja alguns sucessos relatados, não consegui avançar, ou seja,
- use
pulseaudio config load-module module-bluetooth-discover headset=ofono (e auto , native variants também), versões 7, 8, 10
-
bluez 5.24, 5.42, 5.43 (não foi possível encontrar outras versões para o debian, por exemplo, há algum sucesso relatado com bluez 5.35)
- reemparelhando e reconectando o dispositivo de fone de ouvido com
bluetoothctl
Também há alguma confusão nos relatórios, como provavelmente algumas pessoas estão misturando usando o bluux linux como cliente / servidor - pelo menos esse é o meu entendimento de usar ofono .
Embora também haja alguns relatórios de problemas relacionados ao bluetooth no RPI 3, eu gostaria de encontrar primeiro qualquer sinal se o HFP / HSP for possível com o atual bluez / pulseaudio . Ter qualquer relatório de sucesso com passos claros, ou seja, no debian (e melhor ainda no raspbian), ajudaria muito. Mesmo qualquer configuração bem-sucedida em qualquer outra distro pode me ajudar a construir o mesmo na minha caixa. Parece que o problema afeta pulseaudio / bluez stack por mais de um ano e é difícil acreditar que as pessoas não podem usar seus headsets BT, ou seja, para chamadas VOiP por tanto tempo ... Não tenho certeza se forneci todas as informações importantes detalhes da minha investigação, por isso, no caso de comentários, posso atualizar esta questão.
Gostaria também de saber se há algum relatório de bug com algum desenvolvimento ativo e chances de solução.
UPDATE:
Muito provavelmente depois de remover ofono eu finalmente consegui mudar a conexão para headset_head_unit enquanto tentava gravar ou tocar o som, o dispositivo mostrava alguma atividade (isto é, pulsação embutida) mas nenhum dado estava sendo recebido / enviado (isto é, parec cria vazio wav do tamanho 44b que é apenas o cabeçalho wav). Eu testei o mesmo dispositivo usando a2dp_sink profile e posso reproduzir som sem nenhum problema. Eu me pergunto como isso pode ser depurado.