Troubleshooting GStreamer Audio Pipeline for HFP/HSP Bluetooth Connection on Raspberry Pi
Hello Guys
I have another HFP/HSP question
I have to connect a phone to a computer to Tx/Rx the phone's audio. Using bluetooth, there are 2 option-> HSP and HFP. I thought of connecting my phone to my RPi using bluetooth, making my RPi mimic a HFP HF while the phone as usual be a HFP AG.
On my RPi(with a external BT dongle) i was able to successfully connect with the Phone and was able to detected as a Headset on my phone.
But now comes my blocker.
There are no source or sink to where i could attach my gstreamer pipeline.
5 Replies
this is the output of my pacmd list-cards
index: 1
name: <bluez_card.2C_BE_EB_8B_F2_D7>
driver: <module-bluez5-device.c>
owner module: 22
properties:
device.description = "melphone"
device.string = "2C:BE:EB:8B:F2:D7"
device.api = "bluez"
device.class = "sound"
device.bus = "bluetooth"
device.form_factor = "phone"
bluez.path = "/org/bluez/hci0/dev_2C_BE_EB_8B_F2_D7"
bluez.class = "0x5a420c"
bluez.alias = "melphone"
device.icon_name = "audio-card-bluetooth"
bluetooth.codec = "CVSD"
profiles:
a2dp_source: High Fidelity Capture (A2DP Source) (priority 20, available: no)
handsfree_audio_gateway: Handsfree Audio Gateway (HFP) (priority 10, available: unknown)
off: Off (priority 0, available: yes)
active profile: <handsfree_audio_gateway>
sinks:
bluez_sink.2C_BE_EB_8B_F2_D7.handsfree_audio_gateway/#1: melphone
sources:
bluez_sink.2C_BE_EB_8B_F2_D7.handsfree_audio_gateway.monitor/#1: Monitor of melphone
bluez_source.2C_BE_EB_8B_F2_D7.handsfree_audio_gateway/#2: melphone
ports:
phone-output: Phone (priority 0, latency offset 0 usec, available: unknown)
properties:
phone-input: Phone (priority 0, latency offset 0 usec, available: unknown)
properties:
Btw @melta101 I cant remember what the problem was but I set a pi up in my house with the stereo as an audio sink and it was an absolute pain in the ass to get it working right, I definitely needed to mess about with things to get the audio part working at all.. then there was a bunch more faf making it work after a reconnection.. if I get a chance I'll see what the config on that pi is but currently very far from computer 🤓
what seems to be the way
is bluez + pulseaudio for now
But the above only works with Headset(only A2DP profile) quite good ngl (include aptx HD)
My mobile is able to detect my rpi, but upon connection[I am able to telephony control], there seems to be no sink/source to interact with it
I feel you at the ending
Now a days
i just connect all my SBC/ FPGA boards with a ethernet Hub and leave it be
maybe once of while clean it.
did a reboot
and
now the virtual sinks/sources are missing
Card #105
Name: bluez_card.2C_BE_EB_8B_F2_D7
Driver: module-bluez5-device.c
Owner Module: n/a
Properties:
api.bluez5.address = "2C:BE:EB:8B:F2:D7"
api.bluez5.class = "0x5a420c"
api.bluez5.connection = "disconnected"
api.bluez5.device = ""
api.bluez5.icon = "phone"
api.bluez5.path = "/org/bluez/hci0/dev_2C_BE_EB_8B_F2_D7"
bluez5.auto-connect = "[ hfp_hf hsp_hs a2dp_sink ]"
bluez5.profile = "off"
device.alias = "melphone"
device.api = "bluez5"
device.bus = "bluetooth"
device.description = "melphone"
device.form_factor = "phone"
device.icon_name = "audio-card-bluetooth"
device.name = "bluez_card.2C_BE_EB_8B_F2_D7"
device.product.id = "0x1200"
device.string = "2C:BE:EB:8B:F2:D7"
device.vendor.id = "bluetooth:0046"
media.class = "Audio/Device"
factory.id = "14"
client.id = "34"
object.id = "72"
object.serial = "105"
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
audio-gateway: Audio Gateway (A2DP Source & HSP/HFP AG) (sinks: 0, sources: 0, priority: 256, available: yes)
Active Profile: audio-gateway