私のワークステーション(Ubuntu 22.04)で散発的なBluetooth接続の問題を調査中に、他のユーザーが起動した同じシステム上の他のpulseaudioインスタンスが何らかの方法でpulseaudioからBluetoothリスナーをキャプチャし、私のpulseaudioインスタンスからデバイスを盗んでいることがわかりました。設定は、私はワークステーションをモニター付きのデスクトップとして使用しますが、他の同僚もSSHを介してワークステーションを使用しています。
bluetoothctl
この場合、次に自分のユーザーと他のユーザーのデバイスを表示できますuser
。
user@ws:~$ bluetoothctl
Agent registered
[CHG] Controller <...> Pairable: yes
[CHG] Controller <...> Pairable: yes
[WH-1000XM5]# info <MAC address of device>
Device <MAC address of device> (public)
Name: WH-1000XM5
Alias: WH-1000XM5
Class: 0x00240404
Icon: audio-headset
Paired: yes
Trusted: yes
Blocked: no
Connected: yes
WakeAllowed: yes
[...]
[WH-1000XM5]#
ただし、または次のいずれかpavucontrol
でパルスオーディオのシンクを見ることはできません。pactl
pacmd
user@ws:~$ pactl list short sinks
0 alsa_output.pci-0000_01_00.1.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
1 alsa_output.usb-Generic_USB_Audio-00.iec958-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
そしてヘッドフォンが動作しません。
報告されるBluetoothイヤホンArch Wikiによると、これはGDMが独自のpulseaudioデーモンを起動して受信機を盗むときに発生します。私の場合、他のユーザーはpulseaudioデーモンを起動しました。
理想的には、Bluetoothヘッドセットは個人用であるため、私のユーザーだけがデバイスを見ることができ、もちろん私のパルスオーディオデーモンは受信機の独占的な所有権を維持する必要があります。
この問題を解決するために、私の最初のアイデアは、システム全体の設定ファイルからBluetooth設定を削除し、個人用/etc/pulse/default.pa
ファイルからBluetoothモジュールのみをロードすることでした~/.config/pulse
。
ただし、これにより他のユーザーが使用できなくなる可能性があります。彼ら私のワークステーションにBluetoothヘッドセットがあります。これは珍しいことで、おそらくこのようなものは必要ありません。しかし、この問題を回避できる他の解決策がある場合は聞きたいです。