Warnung
Die neueste Quelle verwendet neue Namen für einige Kernkomponenten:
bluealsa
-Daemon heißt jetzt bluealsad
bluealsa-cli
Dienstprogramm heißt jetzt bluealsactl
Weitere Informationen finden Sie im Wiki Guide Migrating von Release 4.3.1 oder früher.
Dieses Projekt ist eine Wiedergeburt einer direkten Integration zwischen Bluez und ALSA. Seit Bluez> = 5 wurde die integrierte Integration zugunsten von Audioanwendungen von Drittanbietern entfernt. Von nun an fungiert Bluez als Middleware zwischen einer Audioanwendung, die das Bluetooth -Audioprofil und ein Bluetooth -Audiogerät implementiert.
Der aktuelle Status Quo ist, dass man, um Audio von/auf ein Bluetooth-Gerät zu streamen, einen allgemeinen Audioserver wie Pipewire oder Pulseaudio installieren oder Bluez Version 4 verwenden, die veraltet und nicht berücksichtigt ist.
Dieses Projekt hat ein Produkt namens Bluealsa erstellt und verwaltet, mit dem man den gleichen Bluetooth -Audioprofilunterstützung wie bei PulseAdio erzielen kann, jedoch mit weniger Abhängigkeiten und auf einer niedrigeren Ebene im Software -Stapel. Bluealsa registriert alle bekannten Bluetooth -Audioprofile in Bluez, sodass jedes Bluetooth -Gerät (mit Audiofunktionen) angeschlossen werden kann.
Bluealsa ist speziell für die Verwendung von kleinen, dedizierten Audio- oder Audio-/visuellen Systemen konzipiert, bei denen die hochrangigen Audio-Management-Funktionen von Pulseaudio oder PipeWire nicht erforderlich sind. Das Zielsystem muss in der Lage sein, mit allen Audioanwendungen, die sich direkt mit ALSA zu verhindern, korrekt zu funktionieren, wobei jeweils nur jeweils eine Anwendung mit jedem Bluetooth -Audio -Stream verwendet wird. In solchen Systemen fügt Bluealsa der vorhandenen Unterstützung der ALSA Sound Card die Bluetooth -Audio -Unterstützung hinzu. Beachten Sie, dass die Anwendungen durch die Fähigkeiten der ALSA-API eingeschränkt werden und die Audioverarbeitungsfunktionen von Audio-Servern wie Pulseaudio und PipeWire nicht verfügbar sind.
Bluealsa besteht aus dem Daemon bluealsad
, Alsa-Plug-Ins und einer Reihe von Dienstprogrammen. Der grundlegende Kontext wird in diesem Diagramm gezeigt:
Flussdiagramm TD
ClassDEF externe Füllung:#eee, stroke:#333, stroke-width: 4px, Farbe: schwarz;
classDef blualsa fill:#bbf, stroke:#333, stroke-width: 4px, farbe: schwarz;
A [Bluetooth-Adapter] <-> B ((Bluetoothd <br/> Daemon))
A <-> c ((Blualsad-Daemon))
B <-dbus-> c
C <-dbus-> g ((Bluealsactl))
C <-dbus-> d ((Bluealsa-aplay))
D -> e ([alsa libasound])
E -> k [Sprecher]
C <-dbus-> f ((Bluealsa <br/> alsa Plug-Ins)))
F <-> h ([alsa libasound])
H <-> i ((alsa <br/> Anwendungen))
C <-dbus-> j ("Andere D-Bus <br/> Clients"))
C <-> l ((alsa midi <br/> sequencer))
L <-> m ([alsa libasound])
M <-> n ((alsa midi <br/> Anwendung)))
Klasse A, B, E, H, I, J, K, L, M, N extern;
Klasse C, D, F, G Bluealsa;
Das Herz von Bluealsa ist der Daemon bluealsad
, der mit dem Bluez Bluetooth -Daemon bluetoothd
und dem lokalen Bluetooth -Adapter übergeht. Es übernimmt die Profilverbindungs- und Konfigurationslogik für A2DP, HFP und HSP und präsentiert die resultierenden Audio-Streams für Anwendungen über D-Bus.
Bluealsa enthält ALSA-Plug-Ins, die alle D-Bus-Einzelheiten ausblenden und Anwendungen ermöglichen, die ALSA-PCM- und Mixer-Schnittstellen zu verwenden, sodass vorhandene ALSA-Anwendungen auf Bluetooth-Audiogeräte zugreifen können, wie sie wie Sound-Card-PCMs und Mixer verwenden.
Im Falle von BLE MIDI erstellt der Daemon einen einfachen MIDI -Anschluss direkt in der ALSA MIDI -Sequenzer, sodass die ALSA -MIDI -Anwendung auf die gleiche Weise mit dem entfernten MIDI -Gerät eine Verbindung zu einem lokalen MIDI -Gerät herstellen kann.
Bluealsa enthält auch eine Reihe von Dienstprogrammanwendungen. Besonders beachten Sie:
Bluealsactl
Eine Anwendung, um die Befehlszeilenverwaltung des Bluealsa-Systems zu ermöglichen.
Bluealsa-aplay
Eine Anwendung zur Vereinfachung der Aufgabe, einen Bluetooth -Lautsprecher mit Bluealsa zu erstellen.
Blualsa-rfcomm
Eine Befehlszeilenanwendung, die Zugriff auf das RFComm-Terminal für HFP/HSP-Geräte bietet.
Aufbau und Installation von Anweisungen finden Sie in der Datei install.md und detailliertere Anweisungen sind im Wiki verfügbar.
Die Hauptkomponente von Bluealsa ist ein Programm namens bluealsad
. Standardmäßig wird dieses Programm während des Systems Start als Root ausgeführt. Es wird org.bluealsa
Service im D-Bus-Systembus registriert, der zum Zugriff auf konfigurierte Audiogeräte verwendet werden kann. Im Allgemeinen fungiert Bluealsa als Stellvertreter zwischen Bluez und ALSA.
Der bluealsad
-Daemon muss ausgeführt werden, um Remote -Bluetooth -Audiogeräte zu kombinieren, zu verbinden und zu verwenden. Um Audio auf ein Bluetooth -Headset zu streamen, muss man zunächst das Gerät anschließen. Wenn Sie mit der Bluetooth -Paarung und -verbindungsprozeduren unter Linux nicht vertraut sind, befindet sich im Wiki: Bluetooth -Paarung und -verbindung eine einfache Anleitung.
Weitere Informationen zu Befehlszeilenoptionen für bluealsad
finden Sie in der Seite Bluealsad.
Wenn ein Bluetooth -Audiogerät angeschlossen ist, kann man das bluealsa
Virtual PCM -Gerät mit ALSA -Anwendungen wie jedes andere PCM -Gerät verwenden:
aplay -D bluealsa Bourree_in_E_minor.wav
Wenn mehr als ein Bluetooth -Gerät angeschlossen ist, kann das Ziel als Parameter für die PCM angegeben werden:
aplay -D bluealsa:XX:XX:XX:XX:XX:XX, Bourree_in_E_minor.wav
Bitte beachten Sie, dass dieses PCM -Gerät auf dem PCM -E/A -Plug -In der ALSA -Software basiert. Es verfügt über keine Soundkarte und ist in der ALSA -Kernel -Proc -Schnittstelle nicht verfügbar.
Die Einrichtungsparameter des bluealsa
-PCM -Geräts können in der lokalen .asoundrc
-Konfigurationsdatei wie folgt eingestellt werden:
cat ~ /.asoundrc
defaults.bluealsa.service " org.bluealsa "
defaults.bluealsa.device " XX:XX:XX:XX:XX:XX "
defaults.bluealsa.profile " a2dp "
defaults.bluealsa.delay 10000
Bluealsa ermöglicht auch Audio aus dem angeschlossenen Bluetooth -Gerät. Dazu muss man das Capture PCM -Gerät verwenden, z. B.:
arecord -D bluealsa -f s16_le -c 2 -r 48000 capture.wav
Neben dem A2DP -Profil, das für hochwertige Audio verwendet wird, ermöglicht Bluealsa auch die Verwendung der Telefon -Audioverbindung über SCO -Link. Man kann entweder einen integrierten HSP/HFP-Support verwenden, der nur einen audiobezogenen Teil der Spezifikation implementiert, oder die Nutzung desono-Dienstes als Back-End. Um die SCO -Audioverbindung zu öffnen, muss man wie folgt auf sco
-Profil wechseln:
aplay -D bluealsa:DEV=XX:XX:XX:XX:XX:XX,PROFILE=sco Bourree_in_E_minor.wav
Um die Eingangs- oder Ausgangs-Audioebene zu steuern, kann das bluealsa
Steuerungs-Plug-In zur Verfügung gestellt werden. Dieses Plug-In ermöglicht das Einstellen der Lautstärke des Audiostroms oder einfach stumm/leisten Sie es, z. B.:
amixer -D bluealsa sset ' <control name> ' 70%
wobei der Steuername der Name eines angeschlossenen Bluetooth -Geräts mit einem Steuerelement -Suffix ist, z. B.:
amixer -D bluealsa sset ' Jabra MOVE v2.3.0 A2DP ' 50%
Ausführliche Informationen zum Bluealsa ALSA PCM-Gerät und zum Mixer-Gerät finden Sie auf der Seite "Bluealsa Plug-Ins".
Es gibt auch eine Reihe von Artikeln zum Bluez-ALSA-Projekt Wiki, das mehr Beispiele für die Verwendung dieser Plug-Ins enthält.
Weitere erweiterte ALSA-Konfiguration finden Sie in der ASOUNDRC-Online-Dokumentation, die von der ALSAPROJECICI-Seite Wiki bereitgestellt wird.
Mit Bluealsa ist es möglich, Bluetooth-Lautsprecher zu erstellen. Dafür ist es erforderlich, das Audiosignal von der Bluealsa Capture PCM an eine andere Wiedergabe-PCM (z. B. eingebaute Audiokarte) zu erhalten. Um diese Aufgabe zu vereinfachen, enthält Bluealsa ein Programm namens bluealsa-aplay
, das als einfacher Blualsa-Spieler fungiert. Schließen Sie Ihr Bluetooth -Gerät (z. B. Smartphone) an und tun Sie wie folgt:
bluealsa-aplay XX:XX:XX:XX:XX:XX
Weitere Informationen zu Befehlszeilenoptionen für bluealsa-aplay
finden Sie in der Seite "Bluealsa-aplay". Es gibt auch einige Artikel über das Bluez-ALSA-Projekt, das Beispiele für die Verwendung geben.
Die Liste der verfügbaren Bluealsa-PCMs (bereitgestellt von angeschlossenen Bluetooth-Geräten mit Audiofunktionen) kann direkt von Bluealsa D-Bus-API oder mit bluealsa-aplay
als bequemer Wrapper wie folgt erhalten werden:
bluealsa-aplay -L
Dieses Projekt begrüßt Beiträge von Code, Dokumentation und Test.
Weitere Informationen finden Sie im beitragenden Leitfaden.
Die am häufigsten auftretenden Fehler werden in der Fehlerbehebung erörtert. Bitte überprüfen Sie diese Datei, um festzustellen, ob es bereits eine Lösung für Ihr Problem gibt.
Wenn Sie in diesem Dokument keine Lösung finden oder die manuellen Seiten lesen, suchen Sie bitte frühere Ausgaben (sowohl offen als auch geschlossen) und konsultieren Sie das Wiki, bevor Sie ein neues Problem ansprechen. Leider wird das Wiki nicht von Web-Suchmaschinen indiziert. Wenn Sie also online nach Ihrem Problem suchen, werden die Informationen dort nicht ermittelt.
Wenn Sie ein Problem als neues Problem melden, verwenden Sie bitte die entsprechende Bluez-Alsa-Github-Problemberichterstattung und vervollständigen Sie jeden Abschnitt der Vorlage so vollständig wie möglich.
Bluealsa ist unter den Bedingungen der MIT -Lizenz lizenziert. Weitere Informationen finden Sie in der Lizenzdatei.