Home / LinuxUser / 2007 / 01 / Blauer Sound

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Blauer Sound

Drahtloser Sound über Bluetooth-Stereo-Headsets

01.01.2007 Ob zum Telefonieren oder für den drahtlosen Musikgenuss: Ein Bluetooth-Stereoheadset räumt dabei komfortable Bewegungsfreiheit ein.

Bluetooth gehört heute zur Standardausstattung von aktuellen Handys und Notebooks. Die Technologie fristet neben WLAN jedoch eher ein Schattendasein. Dabei kann Bluetooth gegenüber WLAN zwei deutliche Vorteile ins Rennen schicken:

  • es benötigt deutlich weniger Strom,
  • es eignet sich nicht nur zum Surfen im Internet.

Dieser Artikel beschäftigt sich mit den Soundfähigkeiten von Bluetooth unter Linux. Er basiert auf dem ausgezeichneten Howto für Ubuntu [1]. Die Anleitung funktioniert aber unter jeder Distribution mit einem halbwegs aktuellen Kernel und Bluetooth-Stack. Die Projektseite von Bluetooth-Alsa mit weiterführenden Infos finden Sie unter [2].

Mono oder Stereo

Bluetooth kennt zwei Profile für die Übermittlung von Audiosignalen: SCO und A2DP. Beim SCO-Profil handelt es sich um eine Zweiwege-Verbindung mit schnellen Reaktionszeiten (tiefe Latenz) zur Übertragung von Gesprächen. Es überträgt Töne in der Regel in Mono-Qualität, mit dem SCO-Profil lassen sich sowohl Töne empfangen als auch senden. Das A2DP-Profil hat dagegen die Aufgabe, Stereosound in hoher Qualität zu übertragen. Hierbei handelt es sich um eine Einwegverbindung mit hoher Latenz (langsame Reaktionszeit). Im Bereich Stereoausgabe befindet sich Linux in einer Spitzenposition, was die Qualität der Wiedergabe und die Geschwindigkeit der Entwicklung betrifft.

Je nachdem, welches Bluetooth-Headset Sie benutzen, unterstützt dieses nur SCO, nur A2DP oder beide Profile. Einohr-Headsets, wie sie bei Mobiltelefonen verbreitet sind, unterstützen in der Regel nur das SCO-Profil, Stereo-Headsets beherrschen oft beide. In den Tests zu diesem Artikel benutze LinuxUser das Stereo-Headset BT620s von Jabra und die Wireless Headphones for PC von Logitech (Abbildung 1). Das Jabra-Gerät unterstützt sowohl SCO als auch A2DP. Den jeweiligen Modus verrät das Blinken der LEDs. Die Logitech-Kopfhörer unterstützen nur A2DP. Beim Logitech-Headset handelt es sich offiziell nicht um ein Bluetooth-Gerät: Logitech verkauft es mit einem USB-Dongle als gewöhnliche Drahtlos-Lösung. Die Ohrhörer sind aber Bluetooth-fähig.

Abbildung 1: Die Bluetooth-Headsets von Jabra (links) und Logitech (rechts) beherrschen beide Stereosound. Das Jabra-Headset lässt sich zudem auch über das SCO-Profil ansprechen.

Download und Installation

Der Artikel beschränkt sich im Folgenden auf die Stereowiedergabe über den Daemon a2dpd. Die etwas umständlichere Einrichtung der SCO-Verbindung über ein separates Kernelmodul erklärt der Kasten "Die alte Methode". Diese kann dann interessant sein, wenn Sie das Headset auch zum telefonieren (zum Beispiel über Skype) benutzen möchten.

Für den A2DP-Daemon benötigen Sie die Bibliothek sbc und die Bluetooth-ALSA-Tools btsco. Von beiden Programmen finden Sie CVS-Versionen von Ende November auf der Heft-CD. Da die Entwicklung von Bluetooth-Audio jedoch ziemlich schnell voranschreitet, empfiehlt es sich, die Quellen direkt aus dem Versionskontrollsystem auszuchecken. Die dazu nötigen Befehle listet der Kasten "Code aus dem CVS ziehen" auf.

Code aus dem CVS ziehen

Nach dem Login-Befehl erscheint jeweils eine Passwortaufforderung. Drücken Sie dann einfach die Eingabetaste.

cvs -d:pserver:anonymous@sbc.cvs.sourceforge.net:/cvsroot/sbc login
cvs -d:pserver:anonymous@sbc.cvs.sourceforge.net:/cvsroot/sbc co sbc
cvs -d:pserver:anonymous@bluetooth-alsa.cvs.sourceforge.net:/cvsroot/bluetooth-alsa login
cvs -d:pserver:anonymous@bluetooth-alsa.cvs.sourceforge.net:/cvsroot/bluetooth-alsa co btsco

Nach dem Entpacken beziehungsweise Herunterladen des nötigen Quellcodes wechseln Sie zunächst ins Verzeichnis sbc und geben hier folgende Befehle ein:

./bootstrap
./configure --prefix=/usr
make
sudo make install

Für die Installation per sudo-Kommando müssen Sie je nach Distribution das Root-Passwort (Suse, Fedora) oder Ihr Benutzerpasswort (Ubuntu) eingeben. Wechseln Sie anschließend ins Verzeichnis btsco und tippen Sie hier die gleichen Befehle, wobei der ./configure-Aufruf zusätzlich die Option --enable-alsaplugin benötigt:

./bootstrap
./configure --prefix=/usr --enable-alsaplugin
make
sudo make install

Damit ist die Installation abgeschlossen; als nächstes gilt es den A2DP-Daemon zu konfigurieren.

Die alte Methode

Sollte bei Ihnen die Methode über den A2DP-Daemon nicht richtig funktionieren, dann versuchen Sie die alte Methode über das Kernelmodul snd-bt-sco. In der Redaktion gab es jedoch keinen Fall, bei dem diese Version funktioniert hätte und der A2DP-Daemon nicht.

Laden Sie sich den CVS-Code von btsco und sbc herunter. Übersetzen und installieren Sie diesen anschließend wie im Artikel beschrieben. Wechseln Sie danach ins Verzeichnis btsco/kernel und führen Sie hier den Befehl make aus. Der Compiler erstellt dann das Kernel-Modul snd-bt-sco.ko. Dieses kopieren Sie mit administrativen Rechten ins Verzeichnis /lib/modules/Kernelversion /kernel/drivers/bluetooth. Die Kernelversion gibt der Befehl uname -a aus.

Hat alles geklappt, laden Sie das Modul über den Befehl modprobe snd-bt-sco. Im nächsten Schritt nehmen Sie die Verbindung mit dem Bluetooth-Headset auf. Dazu muss das Headset im Pairing-Modus sein. Geben Sie auf der Konsole folgenden Befehl ein:

btsco -r -v Bt-Adresse

wobei Sie Bt-Adresse durch die Bluetooth-Adresse des Headsets ersetzen müssen. Erhalten Sie die Fehlermeldung:

btsco v0.42
Error: control open (hw:1): No such device
Error: Can't find device. Bail

dann wird Ihr Headset vom Modul entweder nicht unterstützt, oder das Kernelmodul ist nicht geladen. Hat alles geklappt, sehen Sie die Meldung:

btsco v0.42
Device is 1:0
Voice setting: 0x0060
RFCOMM channel 1 connected
Using interface hci0

In einer zweiten Konsole starten Sie nun die Wiedergabe über den Befehl:

mpg123 --au - datei.mp3
 | a2play Bt-Adresse

wobei Sie datei.mp3 durch eine beliebige MP3-Datei ersetzen müssen und Bt-Adresse wiederum für die Bluetooth-Adresse des Headsets steht. Sehen Sie daraufhin die Meldungen:

Listen thread running
read 2C00C0 2873 times / sec.
read 30ABC0 1197 times / sec.
read 3061C0 1198 times / sec.
read 2FF0C0 1120 times / sec.
read 3052C0 1154 times / sec.

läuft das Playback. Die Methode über das Kernelmodul bringt allerdings erhebliche Nachteile gegenüber dem A2DP-Daemon. So lassen sich über diesen Weg Musikstücke nur umständlich von der Kommandozeile aus abspielen und Playlisten oder ähnliches sind nicht möglich. Auch gilt es bei jedem Kernelupdate ein neues Modul zu installieren. Zudem funktionierte das Playback mangels SCO-Unterstützung auf dem Logitech-Headsets überhaupt nicht.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

2357 Hits
Wertung: 168 Punkte (10 Stimmen)

Schlecht Gut

Infos zum Autor

Marcel Hilzinger

Marcel Hilzinger

Marcel Hilzinger arbeitet als Redakteur für die Zeitschriften LinuxUser und EasyLinux. Am liebsten schreibt er Artikel zu netten Gadgets oder Multimedia-Software. In seiner Freizeit spielt er gerne Kicker.

Zum Blog von Marcel Hilzinger →


Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...