这取决于所使用的声音系统。对于使用 pipewire(Ubuntu 22.04)的用户,答案 https://askubuntu.com/a/1432859/1646539 是有效的。当在 Ubuntu 上使用 pipewire 安装 libspa-0.2-bluetooth
并重新启动 wireplumber
,如上所述。
您可以检查是否使用 pipewire:
$ pactl info | grep -i "server name"
Server Name: PulseAudio (on PipeWire 0.3.48)
我在安装软件包
libspa-0.2-bluetooth
时也遇到了问题。
Preparing to unpack .../libldacbt-abr2_2.0.2.3+git20200429+ed310a0-4_amd64.deb ...
Unpacking libldacbt-abr2:amd64 (2.0.2.3+git20200429+ed310a0-4) ...
dpkg: error processing archive /var/cache/apt/archives/libldacbt-abr2_2.0.2.3+git20200429+ed310a0-4_amd64.deb (--unpack):
trying to overwrite '/usr/lib/x86_64-linux-gnu/libldacBT_abr.so.2', which is also in package libldac:amd64 2.0.2.3~r26478861
Errors were encountered while processing:
/var/cache/apt/archives/libldacbt-abr2_2.0.2.3+git20200429+ed310a0-4_amd64.deb
以下命令解决了我的问题(使用pipewire):
sudo apt purge libldac
sudo apt install libspa-0.2-bluetooth
systemctl --user restart wireplumber.service
安装完软件包并运行
systemctl status bluetooth
后,错误
src/service.c:btd_service_connect() a2dp-sink profile connect failed for …: Protocol not available
消失了。
… bluetoothd[1246]: Player registered: sender=:1.32573 path=/media_player0
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSource/ldac
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSink/sbc
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSource/sbc
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSink/sbc_xq
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSource/sbc_xq
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSource/faststream
… bluetoothd[1246]: Endpoint registered: sender=:1.32573 path=/MediaEndpoint/A2DPSource/faststream_duplex
pulseaudio
用户也可能有所帮助,请查看https://unix.stackexchange.com/a/721697/221903。 - Japheth Ongeri - inkalimeva