Perfil do PulseAudio + HFP no Ubuntu

2

O objetivo é atender a chamada via dispositivos pareados via BT usando o HFP

Etapas concluídas:

a. Os softwares usados são

-pulseaudio-4.99.2

-Bluez-5.14

-ofono-1.14

b. O aplicativo mencionado acima foi iniciado e, em seguida, usando métodos bluetoothctl, eu emparelhei e conectei o celular ao PC do Ubuntu.

c. A ligação foi feita para o celular. Depois que a chamada foi atendida, eu estava tentando ouvir o áudio através do fone de ouvido conectado ao PC do Ubuntu. Mas não houve áudio ouvido.

d. Eu tentei listar o bluez sink e fontes usando o comando abaixo:

pactl list short sources | grep bluez_source
pactl list short sinks | grep -v Monitor | grep alsa_output.pci

e. Em seguida, faça o loopback dos dispositivos usando o comando abaixo

pactl load-module module-loopback source=[BTSOURCE] sink=[SINK]

f. Eu também editei /etc/bluetooth/audio.conf para ativar

[General]
Enable=Gateway,Source,Socket,Sink,Media,Headset

Por favor me ajude se eu perdi alguma coisa. Há algo a ser modificado no arquivo daemon.conf?

Também estou recebendo esses registros no pulseAudio

D: [pulseaudio] module-loopback.c: Loopback overall latency is 43.55 ms + 335.02 ms + 26.97 ms = 405.54 ms

D: [pulseaudio] module-loopback.c: Should buffer 2112 bytes, buffered at minimum 3346 bytes

I: [pulseaudio] module-loopback.c: New rate of 8061 Hz not within 2‰ of 7919 Hz, forcing smaller adjustment

D: [pulseaudio] module-loopback.c: [alsa_output.pci-0000_00_1b.0.analog-stereo] Updated sampling rate to 7934 Hz.

D: [pulseaudio] module-loopback.c: Loopback overall latency is 0.00 ms + 19584.88 ms + 0.00 ms = 19584.88 ms

D: [pulseaudio] module-loopback.c: Should buffer 96 bytes, buffered at minimum 154078 bytes

W: [pulseaudio] module-loopback.c: Sample rates too different, not adjusting (8000 vs. 15699).

D: [pulseaudio] module-loopback.c: [bluez_sink.4C_21_D0_3A_29_04] Updated sampling rate to 8000 Hz.

D: [bluetooth] ratelimit.c: 134 events suppressed

D: [bluetooth] memblock.c: Pool full

D: [alsa-sink-ALC892 Analog] memblock.c: Pool full

D: [bluetooth] memblock.c: Pool full

=============================================== =============================

Por favor me ajude !!!

    
por user3811909 07.07.2014 / 18:07

1 resposta

0

Com Bluez e ofono você pode conseguir isso.

Eu tentei com o bluez 4.x. Não tenho certeza se funcionará com o bluez 5.x.

link

Primeiro, verifique se o HFP é compatível com o hardware.

$ sdptool browse local

Isso listará todos os perfis suportados. Deve aparecer algo como:

Service Name: Hands-Free Audio Gateway
Service RecHandle: 0x10002
Service Class ID List:
  "Handsfree Audio Gateway" (0x111f)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 13
Profile Descriptor List:
  "Handsfree" (0x111e)
    Version: 0x0105

Service Name: Hands-Free
Service RecHandle: 0x10003
Service Class ID List:
  "Handsfree" (0x111e)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 7
Profile Descriptor List:
  "Handsfree" (0x111e)
    Version: 0x0105

O próximo passo é emparelhar o seu telefone com o pc usando bluetoothctl ou GUI. Agora você precisa verificar com ofono para modems. Aqui seu telefone age como um modem. Ir para o diretório de teste ofono e digite

$./list-modems

Agora, ele deve listar seu telefone na lista. Em seguida, ative-o

$./enable-modem

Comece a ligar para o seu telefone e você poderá obter a voz para o PC.

    
por abhinandanbr 08.09.2017 / 06:40