Hallo Liste,
beim vorletzten Treffen hatten wir über das Feature "Audio Sink" im normalen PC gesprochen.
Ich habe mal zusammengeschrieben, was ich so gemacht habe bis es klappte, dass von meiner grafischen Oberfläche (KDE Neon) das externe Signal verwaltbar und hörbar war.
Vielleicht hilft das einem von Euch weiter. (Christian?)
Viel Erfolg beim eigenen Forschen!
----------------
Hinweis: Es wird im bluetoothctl zwischen "controller" (Chip im Rechner) und "device" (anderes Gerät, mit dem man sich z.B. verbinden will) unterschieden.)
1.) Welche Controller habe ich verfügbar?
bernd@bs04:~$ bluetoothctl list
Controller 74:29:AF:5F:C4:C8 bs04 [default]
2.) Was sind die aktuellen Eigenschaften des Controllers?
bernd@bs04:~$ bluetoothctl show
Controller 74:29:AF:5F:C4:C8 (public)
Manufacturer: 0x005d (93)
Version: 0x06 (6)
Name: bs04
Alias: bs04
Class: 0x007c010c (8126732)
Powered: yes
Discoverable: no
DiscoverableTimeout: 0x000000b4 (180)
Pairable: yes
UUID: Message Notification Se.. (00001133-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: OBEX Object Push (00001105-0000-1000-8000-00805f9b34fb)
UUID: Message Access Server (00001132-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
UUID: IrMC Sync (00001104-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific (00005005-0000-1000-8000-0002ee000001)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Phonebook Access Server (0000112f-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Handsfree Audio Gateway (0000111f-0000-1000-8000-00805f9b34fb)
UUID: Audio Source (0000110a-0000-1000-8000-00805f9b34fb)
UUID: OBEX File Transfer (00001106-0000-1000-8000-00805f9b34fb)
UUID: Handsfree (0000111e-0000-1000-8000-00805f9b34fb)
Modalias: usb:v1D6Bp0246d0548
Discovering: no
Roles: central
Roles: peripheral
Advertising Features:
ActiveInstances: 0x00 (0)
SupportedInstances: 0x05 (5)
SupportedIncludes: tx-power
SupportedIncludes: appearance
SupportedIncludes: local-name
2.) Feststellen, ob der Controller Audio kann:
bernd@bs04:~$ bluetoothctl show | grep -i audio
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: Handsfree Audio Gateway (0000111f-0000-1000-8000-00805f9b34fb)
UUID: Audio Source (0000110a-0000-1000-8000-00805f9b34fb)
3.1.) Der Controller sollte von außen sichtbar sein:
bernd@bs04:~$ bluetoothctl show | grep -i discover
Discoverable: no
DiscoverableTimeout: 0x000000b4 (180)
Discovering: no
3.2.) ggf. setzen:
bernd@bs04:~$ bluetoothctl discoverable on
hci0 new_settings: powered connectable bondable ssp br/edr le secure-conn
hci0 new_settings: powered connectable discoverable bondable ssp br/edr le secure-conn
Changing discoverable on succeeded
bernd@bs04:~$ bluetoothctl discoverable-timeout 36000
Changing discoverable-timeout 36000 succeeded
Jetzt muss rechnerseitig für Sound über Bluetooth gesorgt werden (Empfang und Senden):
1.) Bluetooth-Alsa Kopplung installieren
root@bs04:~# apt install bluez-alsa-utils
2.) Läuft das Zeug?
root@bs04:~# systemctl status bluealsa
bluealsa.service - BlueALSA service
Loaded: loaded (/usr/lib/systemd/system/bluealsa.service; enabled; preset: enabled)
Active: active (running) since Fri 2025-08-15 14:37:23 CEST; 5min ago
Docs: man:bluealsa(8)
Main PID: 6529 (bluealsa)
Tasks: 4 (limit: 4396)
Memory: 1.1M (peak: 1.6M)
CPU: 148ms
CGroup: /system.slice/bluealsa.service
└─6529 /usr/bin/bluealsa -S -p a2dp-source -p a2dp-sink
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:1180: UUID already registered in BlueZ [hci0]: 0000110B-0000-1000-8000-00805F9B34FB
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:783: Registering battery provider: /org/bluez/hci0/battery
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:598: Creating media endpoint object: /org/bluez/hci0/A2DP/SBC/source/1
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:509: Registering media endpoint: /org/bluez/hci0/A2DP/SBC/source/1
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:598: Creating media endpoint object: /org/bluez/hci0/A2DP/SBC/source/2
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:509: Registering media endpoint: /org/bluez/hci0/A2DP/SBC/source/2
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:598: Creating media endpoint object: /org/bluez/hci0/A2DP/SBC/sink/1
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:509: Registering media endpoint: /org/bluez/hci0/A2DP/SBC/sink/1
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:598: Creating media endpoint object: /org/bluez/hci0/A2DP/SBC/sink/2
Aug 15 14:37:23 bs04 bluealsa[6529]: bluez.c:509: Registering media endpoint: /org/bluez/hci0/A2DP/SBC/sink/2
Jetzt war BT-Pairing von meinem Handy ("Device") mit dem PC ("Controller") über GUI (Kennwortabfrage) möglich. Das geht bestimmt auch via bluetoothctl, war aber nicht mehr nötig.
Die Audio-Sink-Funktion wurde vom Handy automatisch ausgewählt.
Danach wurde in der Audioabteilung der GUI die Quelle (vom "Device") angezeigt und war einstellbar/hörbar.
Wie das Signal dann im PC genau geroutet wurde, kann ich nicht sagen.
Es spielen mit:
ALSA (keine "BT-Soundkarte" auffindbar, was die bluez-alsa-utils machen, kann ich auch nicht sagen)
Pipewire / Pulseaudio (Es ist gut möglich, dass Pipewire sich direkt in den Datastream der BT-Schnittstelle einklinkt, das verrechnet und erst dann an ALSA zur Ausgabe weiterleitet.)