MPD mit Bluetoothlautsprecher - Hilfe bitte?!

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich möchte auf einem Pi2(rasbian-jessie) mit MPD über Bluetoothstick Musik mit dem BT-Lautsprecher hören.
    Bisher sind alle Versuche gescheitert die Ausgabe von MPD zum BT-LS zu schicken.

    Nach dieser Anleitung http://www.rottenrei.be/posts/2013-07-…e-raspberry-pi/habe ich dem BT-LS erfolgreich mit mplayer Musik entlocken können. Also ist die Hardware schon mal ok.

    Ziel:
    *alle Programme nutzen default die Bluetoothschnittstelle
    *alternativ soll die onboardcard mit alsa Ton an 3.5Klinke(mit Kabelkopfhörern reinhören) oder HDMI ausgeben können # Nebenbaustelle
    *für MPD
    **soll wahlweise ALSA oder Pulseaudio nutzbar sein
    **soll man mit dem Mixer die Lautstärke ändern können
    **Bedienung über gmpc am angeschlossenen 7"Touchdisplay oder über AndroidApp
    Ist das so machbar?

    Könnt Ihr mal bitte auf meine configs schauen und mir sagen was falsch ist,bitte?

    Konsolenausgabe

    nach dieser Seite https://wiki.debianforum.de/MPD_als_System…_und_Pulseaudio habe ich versucht die Konfiguration vorzunehmen. Leider ist die Bluetoothanbindung nicht beschrieben.

    /etc/asound.conf # ~/.asoundrc habe ich gelöscht um eine Fehlerquelle weniger zu haben


    /etc/mpd.conf # nur der Teil den ich angefasst habe

    wenn noch Infos fehlen bitte nachfragen.
    Ich hoffe auf eure Tips

    cu xbow

    Einmal editiert, zuletzt von xbow (5. Januar 2016 um 14:54)

  • Was mir auffällt ist, dass du unter Alsa (in der asound.conf) die "type bluetooth"-Dinger verwendest. Ich weiß nicht wie aktuell dein System oder wie alt der Blog-Beitrag ist, aber meines Wissens ist der Bluetooth-Support komplett aus Alsa rausgeflogen, daher gibt es das Paket bluez-alsa auch nicht mehr.
    Ich weiß nicht welche Gründe das hat, aber ich weiß, dass die Konfiguration von Bluetoothgeräten in Alsa, naja drücken wir es vorsichtig aus, sehr gewöhnungsbedürftig und ziemlich wackelig war.

    Im Endeffekt heißt das, dass man für Bluetooth(audio)geräte zwangsweise auf Pulseaudio angewiesen ist, was aber insofern meistens kein Problem ist, weil man auch über den Umweg von Alsa über Pulseaudio wiedergeben kann.

    Einmal editiert, zuletzt von smutbert (5. Januar 2016 um 15:25)


  • Was mir auffällt ist, dass du unter Alsa (in der asound.conf) die "type bluetooth"-Dinger verwendest. Ich weiß nicht wie aktuell dein System oder wie alt der Blog-Beitrag ist, aber meines Wissens ist der Bluetooth-Support komplett aus Alsa rausgeflogen, daher gibt es das Paket bluez-alsa auch nicht mehr.
    Ich weiß nicht welche Gründe das hat, aber ich weiß, dass die Konfiguration von Bluetoothgeräten in Alsa, naja drücken wir es vorsichtig aus, sehr gewöhnungsbedürftig und ziemlich wackelig war.

    Im Endeffekt heißt das, dass man für Bluetooth(audio)geräte zwangsweise auf Pulseaudio angewiesen ist, was aber insofern meistens kein Problem ist, weil man auch über den Umweg von Alsa über Pulseaudio wiedergeben kann.

    apt-get install -y bluetooth bluez-utils blueman
    Preferences->Bluetooth Manager

    paulaner

  • danke für eure Rückmeldung!

    Zitat

    ...zwangsweise auf Pulseaudio angewiesen ist, was aber insofern meistens kein Problem ist, weil man auch über den Umweg von Alsa über Pulseaudio wiedergeben kann.


    ist für mich leider schon ein Problem. Kannst du mir sagen wie das geht. Also für das ganze System immer alsa mit puseaudio einrichten und defaultoutput an Bluetoothspeaker.

    Hab blöderweise pulse mal deinstalliert um erst mal alsa&bt zum laufen zu bringen. jetzt spielt noch micht mal mer mplayer sound auf BT-LS :(.

    paulaner: das Paket bluez-utils gibt's nicht mehr. Irgendwie war dein Beitrag für mich nicht hilfreich.

    Also wenn einer eine funktionierende Anleitung (mpd-pulseaudio-bluetooth) für ein aktuelles System (jessie) für mich hat wäre ich dankbar.

    cu xbow


  • danke für eure Rückmeldung!


    ist für mich leider schon ein Problem. Kannst du mir sagen wie das geht. Also für das ganze System immer alsa mit puseaudio einrichten und defaultoutput an Bluetoothspeaker.

    Hab blöderweise pulse mal deinstalliert um erst mal alsa&bt zum laufen zu bringen. jetzt spielt noch micht mal mer mplayer sound auf BT-LS :(.

    paulaner: das Paket bluez-utils gibt's nicht mehr. Irgendwie war dein Beitrag für mich nicht hilfreich.

    Also wenn einer eine funktionierende Anleitung (mpd-pulseaudio-bluetooth) für ein aktuelles System (jessie) für mich hat wäre ich dankbar.

    sorry
    sudo apt-get install bluetooth bluez blueman
    https://www.raspberrypi.org/forums/viewtop…=16440&p=169826

    paulaner

  • also mal ganz ehrlich, ich will nicht alles vorgekaut haben. Aber ich bin schon einige Stunden am recherchieren, und weiß dass man die Pakete erst installieren muss. Ich gehe mal davon aus du hast 1-2 suchbegriffe bei der Suchmaschiene deines vertrauen eingegeben, einen Treffer verlink und so eine bluetoothkonfiguration selbst nicht am laufen hast. sorry wenn ich falsch liege, dann zeige mir bitte deine Konfiguration.
    aplay -l liefert übrigens keinen Kenntnis über ein Bluetoothgerät, aplay -L zeigt mir zumindest meine Konfiguration aus der asound.conf(was nicht zwangsläufig richtig konfiguriert ist).


    Nach meinem Verständnis muss der Datenstrom über einen Soundchip(z.b den internen Soundcard0 bcm2835) zur Bluetoothschnittstelle umgelent werden. Vorher mittels Software (alsa, pulse, mixer) kodiert bez. beeinflusst werden.
    Liege ich da richtig? Möchte es gern verstehen.

    smutbert: an deiner Lösung bin ich auch sehr interessiert.

    cu xbow

    Einmal editiert, zuletzt von xbow (5. Januar 2016 um 19:38)


  • also mal ganz ehrlich, ich will nicht alles vorgekaut haben. Aber ich bin schon einige Stunden am recherchieren, und weiß dass man die Pakete erst installieren muss. Ich gehe mal davon aus du hast 1-2 suchbegriffe bei der Suchmaschiene deines vertrauen eingegeben, einen Treffer verlink und so eine bluetoothkonfiguration selbst nicht am laufen hast. sorry wenn ich falsch liege, dann zeige mir bitte deine Konfiguration.
    aplay -l liefert übrigens keinen Kenntnis über ein Bluetoothgerät, aplay -L zeigt mir zumindest meine Konfiguration aus der asound.conf(was nicht zwangsläufig richtig konfiguriert ist).


    Nach meinem Verständnis muss der Datenstrom über einen Soundchip(z.b den internen Soundcard0 bcm2835) zur Bluetoothschnittstelle umgelent werden. Vorher mittels Software (alsa, pulse, mixer) kodiert bez. beeinflusst werden.
    Liege ich da richtig? Möchte es gern verstehen.

    smutbert: an deiner Lösung bin ich auch sehr interessiert.

    Bluetooth Geräte werden unter Jessie mit den neuen Blueman v5 installiert. Mehr kann ich dazu nicht sagen.
    Und falsch habe nicht gegooglet, habe das gleiche Problem auch schon gehabt.

    paulaner

    Einmal editiert, zuletzt von paulaner (5. Januar 2016 um 22:37)

  • Nachdem du das Bluetoothgerät "gepaart" hast, ob auf der Kommandozeile oder mit Blueman oder etwas anderem sollte egal sein, sollte es soweit ich weiß in Pulseaudio schon automatisch zur Verfügung stehen. Selbst ausprobieren kann ich mangels Bluetooth-Controller und Bluetooth-Audiogerät nicht, aber du kannst nach dem Paaren einmal die Ausgabe von

    Code
    $ pactl list cards short


    herzeigen - da sollte das Bluetoothgerät bereits auftauchen.


    Bei mpd sollte die Wahl des Audiogeräts sowieso kein Problem sein. Was den Rest angeht sollte sich Pulseaudio selbst merken, dass das Bluetoothgerät der Default ist, man kann es aber noch einmal explizit in die Pulseaudiokonfiguration schreiben - zuerst muss es einmal das Bluetooth-Audiogerät prinzipiell funktionieren.

    Soll das ganze dann ohne GUI am Raspberry laufen oder soll das alles auf der Kommandozeile gemacht werden?
    Standardmäßig wird mpd nämlich seine eigene Pulseaudio-Instanz starten und wenn dann in der grafischen Oberfläche jemand angemeldet ist, kann mpd erst einmal keinen Ton mehr ausgeben, aber das ist lässt sich leicht lösen.

  • nach dem pair & trust

    Code
    pi@WoWaPi2:~ $ pactl list cards short
    0       alsa_card.0     module-alsa-card.c
    1       bluez_card.00_0C_8A_E4_FF_E9    module-bluez5-device.c

    ich hab mal zum Test das 3.5Klinkenkabel mit angeschlossen und an der Box auf den Eingang umgestellt.
    hier mal die Ausgabe des ssh-terminals


    Sound kommt mit dem pulse-Treiber an der Box an, aber nicht wenn die Box per Bluetooth connected ist.

    Zitat

    Soll das ganze dann ohne GUI am Raspberry laufen oder soll das alles auf der Kommandozeile gemacht werden?
    Standardmäßig wird mpd nämlich seine eigene Pulseaudio-Instanz starten und wenn dann in der grafischen Oberfläche jemand angemeldet ist, kann mpd erst einmal keinen Ton mehr ausgeben, aber das ist lässt sich leicht lösen.


    Kommandozeile ist nur zum testen & später zur Titelinfo im WoWaInfoModus
    Also wie Eingangs schon geschrieben ist ein 7"Touchdisplay per HDMI angeschlossen. Angemeldet an GUI ist der user "pi". Zur Bedienung des mpd möchte ich den GnomeMusicPlayerClient vewenden. Alternativ möchte ich mpd aber auch über Netwerk mit Androidapp bedienen können.
    Hintergrund: der RaspberryPi2 ist mein Wohnwagenboradcomputer den ich nun auch für etwas Multimedia nutzen will. Musik hören im Wohnwagen oder BT-Box mit raus ins Vorzelt und per Smartphone bedienen.

    wie mache ich denn jetzt weiter, wie leite ich den Sound zu BT-Schnittstelle??

    in der GUI
    unter Menü/Einstellungen/Audio Device Setting" kann ich z.z. nur als Soundkarte die "bcm2835 ALSA" wählen
    unter Menü/Einstellungen/PulseAudio-Einstellungen" hab ich erst mal so ziemlich alle Haken gesetzt u.a. "Multicast/RTP-Sender aktivieren, -> (*)Separates Audio-Gerät für Multicast/RTP einstellen"

    danke schon mal für die Geduld!

    cu xbow

    Einmal editiert, zuletzt von xbow (6. Januar 2016 um 20:07)

  • Na, das ist kein großes Problem, bzw. ist das einzige Problem, dass ich mich mit den Kommandozeilenparametern von mplayer so überhaupt nicht auskenne :)

    Später bei mpd kann man, wenn ich mich jetzt nicht ganz vertue, in die mpd.conf eh die gewünschte(n) Pulseaudio-Sink(s) eintragen. Interessanter ist es jetzt auf der Kommandozeile, da habe ich es im Internet für mplayer in der Form von

    Code
    $ mplayer -ao pulse::SINKNAME /media/music/Hello.mp3


    gefunden oder du legst einfach vorher das Bluetoothgerät als Default- (eigentlich Fallback-) Sink fest

    Code
    $ pactl set-default-sink SINKNAME


    Den Namen der Senke kannst du aus der Ausgabe von

    Code
    $ pactl list sinks short


    ablesen, wahrscheinlich lautet er "bluez_card.00_0C_8A_E4_FF_E9.analog-stereo"

    Einmal editiert, zuletzt von smutbert (6. Januar 2016 um 20:36)


  • Na, das ist kein großes Problem, bzw. ist das einzige Problem, dass ich mich mit den Kommandozeilenparametern von mplayer so überhaupt nicht auskenne :)

    Den Namen der Senke ....

    genau das war der entscheidende Tip :danke_ATDE:
    bluez_sink.00_0C_8A_E4_FF_E9 in meine Fall funktioniert genau so wie du es beschrieben hast.
    Auch nach neustart sind die Einstellungen erhalten geblieben.
    Ich habe im GUI/"PulseAudio-Laustärkeregler" beim MPDaemon noch die Senke von bcm... auf "Bose Mini-Soundlink" umgestellt. Nun läuft auch gmpc wie gewünscht.

    Morgen werde ich mir dann mal die mpd.conf für Netzwerknutzung via Android vornehmen.
    Für heute ein schöner Ausklang vom Urlaub, Gute nacht!

    cu xbow

  • Hallo,
    ich habe ähnliche Probleme. Ich habe PulseAudio wie hier im Forum für Jessie auf einen Pi3 installiert und möchte nun den Sound auf verschieden BT-Lautsprechern ausgeben.
    Das pairen/verbinden der einzelnen Lautsprecher klappt, auch den Ton kann ich über den mplayer wiedergeben.
    Nur die Ausgabe über mpd klappt einfach nicht, wenn überhaupt nach langem probieren von einem Lautsprecher.

    Die Lautsprecher erscheinen wie gewollt nach dem connecten, und ich kann den Default-Sink auswählen.
    Wie gesagt über mplayer(sogar ohne -ao pulse)geht es, bei mpd kommt kein Ton.

    meine mpd.conf:

    Code
    audio_output {
           type            "pulse"
           name            "My Pulse"
           server          "127.0.0.1"                     
    #       sink            "bluez_sink.5C:F6:DC:CC:B9:0A"  # AirTrack
    }
  • Du musst etwas mehr über deine Konfiguration verraten.
    Lässt du mpd automatisch als Systemdienst starten?
    Pulseaudio hast du nicht als systemweiten Daemon eingerichtet?

    Mit deinem pulse-Output-Abschnitt sollte sich mpd über das Netzwerk mit dem Pulseaudio-Server verbinden, das muss aber auch erlaubt sein, dh du musst zuerst einmal dafür sorgen, dass Pulseaudio überhaupt im Netzwerk horcht, auch wenn es nur das Loopback-Interface ist und zweitens musst du die Verbindung erlauben. Wenn du also angemeldet bist sollte das mit dem Befehl

    Code
    load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1


    erledigt sein.

    Wenn du mit mpd auch etwas abspielen willst, wenn lokal niemand angemeldet ist, musst du dir eventuell etwas anderes überlegen. Meine bevorzugte Lösung wäre mit mpd ein systemweiter Pulseaudiodaemon, wenn es dir allerdings nicht darauf ankommt, dass auch ein lokal angemeldeter Benutzer Audio abspielen darf/kann ist das nicht notwendig.

    Wenn du dich andererseits ohnehin immer am RPi anmelden willst, dann kannst du mpd gleich ebenfalls als benutzereigenen Daemon ausführen. Damit sollte es ohne weitere Änderungen mit Pulseaudio funktionieren.

    Ich hoffe ich habs nicht zu konfus geschrieben, aber die beste Lösung hängt davon an mit welchen Programmen und von welchen Nutzern abgespielt werden soll und ob sich immer jemand am RPi anmeldet oder nicht.

  • Hallo,

    der Pi3 läuft an einem Touchscreen 24 Stunden mit Autologin in Pixel.

    MPD wird automatisch gestartet, ich denke als Systemdienst.
    Pulseaudio wird laut der Anleitung im Forum, beim Hochfahren als Systemdienst gestartet.

    In der default.pa und system.pa habe ich load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 hinterlegt.

    Nach dem Einschalten der verschiedenen Lautsprecher, verbinden sich diese und werden dann auch mit pactl list sinks short angezeigt.

    Code
    pi@homePi:~ $ pactl list sinks short
    0       alsa_output.0.analog-stereo     module-alsa-card.c      s16le 2ch 44100Hz       SUSPENDED
    1       bluez_sink.FC_58_FA_D7_8B_6F    module-bluez5-device.c  s16le 2ch 44100Hz       SUSPENDED

    Danach setze ich mit pactl set-default-sink 1 das Defaultgerät, ab hier funktioniert jetzt die Ausgabe mit mplayer, nur der MPD bleibt stumm.

    Mein Wunsch ist es über MPD meine Playlists in verschiedenen Räumen zu hören, das bedeutet wenn man im Bad sich befindet schaltet man den Lautsprecher ein und startet den MPD über den Play Button des Lautsprechers, oder Alternativ über den Touchscreen oder Sprachsteuerung.

    Die einzigste Alternative wäre mplayer, bei dem die Ausgabe ja funktioniert.

  • Wenn Pulseaudio bereits als Systemdienst läuft, dann kann mpd einfach ganz normal ohne Netzwerk auf Pulseaudio zugreifen. Dazu muss nur der Benutzer mpd Mitglied der Gruppe pulse-access sein

    Code
    # adduser mpd pulse-access


    und der Output-Abschnitt in der mpd.conf muss/soll/darf keine Netzwerkadresse enthalten

    Code
    audio_output {
           type    "pulse"
           name    "Pulseaudio"
    }


    Die Senke (sink) kannst du schon angeben, wenn du willst, es wird aber wohl kaum notwendig sein.

    Einmal editiert, zuletzt von smutbert (26. Dezember 2016 um 20:51)

  • Ich hänge mich hier mal mit rein. Stehe vor einem ähnlichen Problem.
    Ich betreibe einen RPI mit aktuellem Raspbian ohne GUI. MPD läuft super mit Tonausgabe über Hifiberry. Nun möchte ich aber zwischen Hifiberry und Bluetooth Box als Tonausgabe wählen können.

    Pairen und Verbinden mit der BT Box funktioniert. Bekomme aber keinen Ton in MPD raus.


    Code
    pi@rpi:~ $ pactl list sinks short
    0 alsa_output.platform-soc_sound.analog-stereo module-alsa-card.c s16le 2ch 44100Hz SUSPENDED
    1 bluez_sink.00_0C_8A_B3_FD_2E module-bluez5-device.c s16le 2ch 44100Hz SUSPENDED


    Die benötigten Einträge in der mpd.conf lauten

    Code
    audio_output {
     type "alsa"
    name "HifiBerry"
    device "hw:0,0" # optional
    mixer_type      "software"      # optional
    }

    und

    Code
    audio_output {
     type "pulse"
    name "Bose"
    # server "127.0.0.1" # optional
    sink "bluez_sink.00_0C_8A_B3_FD_2E" # optional
    }

    mein Vorredner hat es wohl hinbekommen indem er MPD im Userspace Modus laufen lassen hat. Verstehe aber leider nicht so ganz wie ich das realisiere. Natürlich möchte ich weiterhin, nur zum Musik hören, keine GUI laufen lassen.

    Ich hoffe ihr könnt mir hierbei auf die Sprünge helfen.

    Einmal editiert, zuletzt von psyGanja (24. März 2017 um 21:46)

  • Eins vorweg,da ich noch mit anderen Problemen zu kämpfen hatte, bin ich nun zu Arch Linux gewechselt. Wenn man die Eigenheiten von arch kennt ist das ganze viel einfacher zu lösen. Zudem startet das System schneller als mit Jessie.

    Hast du Jessie lite oder mit Gui?

    Unter Jessie bin ich auch nach deinem verlinkten Tutorial vorgegangen.
    Was sagt die log Datei diesbezüglich? Irgendwelche Fehlermeldung? Bei mir meckerte mpc schon beim Aufruf das mpd nicht auf Pulse zugreifen kann!
    Kann mpd auf das Pulse Audio Gerät zugreifen? Ist die Bluetooth Box gepaird und connected?

    Gesendet von meinem SM-N910F mit Tapatalk

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!