Raspberry Pi Audioplayer: Installation und Konfiguration

Dieser Artikel ist der zweite Artikel in einer Artikelserie, die sich mit dem Bau eines Audioplayers auf Basis des Raspberry Pi beschäftigt. Bisher habe ich folgende Artikel zu diesem Thema veröffentlicht:

Hier geht es nun eben um Konfiguration und Problembehebung – zum Teil wird’s da ziemlich technisch. Für einen einfachen Überblich empfehle ich den o.g. ersten Artikel der Serie.

Installation

Als Betriebssystem verwende ich Raspbmc, das eine speziell für den Raspberry Pi angepasste Version von XBMC mitbringt. Raspbmc bringt einen Installer mit, so dass man neben einem Rechner von dem aus man die Installation durchführen kann theoretisch nix anderes braucht.

Bei meinem Linux-Notebook allerdings wollte sich die SD-Karte nicht so richtig mounten lassen (so dass der Installer keine Liste verfügbarer Devices angezeigt hat). Mit „sudo fdisk -l“ kann man sich aber anzeigen lassen, wo das Ding liegt und wie es heißt, um dann den richtigen Gerätenamen rauszufinden (bei mir „mmcblk1“).

Dann wird alles was an Hardware da ist zusammengesteckt, Netzwerk- und HDMI-Kabel dran (fürs Setup hab‘ ich den Pi an den Fernseher angeschlossen) und direkt nach dem Einstecken des Stromsteckers beginnt der Pi mit der Installation von Raspbmc. Der rödelt jetzt einige Minuten mit dem Download und der Installation der Software rum und kurze Zeit und einige Reboots später wird man vom XBMC-Startbildschirm begrüßt.

Die erste Hürde war nun, dass die Tastatur nicht funktioniert hat. Hier war die Lösung sich per SSH einzuloggen (Benutzername ist „pi“ und Passwort „raspberry“) und dann die Schritte die dort angeboten werden durchzuführen (Time-Zone-Auswahl und Tastaturlayout). Nach einem weiteren Reboot funktionierte dann auch die Tastatur und es konnte weiter gehen.

Basiskonfiguration

In XBMC sollte man nun neben der Sprache noch einige weitere Einstellungen tätigen:

Settings -> Music -> Playback -> Visualization: None

Da der Pi ja ohne Monitor betrieben wird, brauch man die CPU mit einer Visualization nicht zu belasten.

Settings -> Services -> Webserver: Allow control of XBMC via HTTP

Erlaubt die Steuerung des Pi durch die iPad-Apps. Zusätzlich sollte man dem Pi im Router eine feste IP-Adresse zuweisen. Damit das dann auch greift, muss man dann wieder bei Programs -> Raspbmc Settings -> Network ConfigurationUse DHCP“ abschalten und die im Router eingetragene IP-Adresse eintragen, „Update Now“ aktivieren und dann auf „OK„.

Settings -> Services -> Airplay: Allow XBMC to receive Airplay content

Hier gab’s bei mir allerdings das Problem, dass das iPad zwar erstmal den Airplay-Button angeboten hat, nach ein paar Minuten aber die Verbindung verlor und dann auch keinen Airplay-Button mehr angezeigt hat. Was schnell klar war, war dass es hier wohl ein Problem mit meinem Router gab – was mich allerdings länger gebraucht hat war die Lösung zu finden: Mein Router hat einen „Wireless Enhance Mode„, der das Problem verursacht hat – nachdem ich den abgeschaltet hatte ging’s dann.

Settings -> Appearance -> Navigation sounds: Off oder Skin default

Das ist ein bisschen merkwürdig bei mir: Eigentlich man eh keine Navigation Sounds, wenn man das Ding ohne Fernseher betreibt. Aaaaaaaber: Bei mir fängt die Musik übel an zu Rauschen, wenn ich hier auf „Off“ stelle. Als Workaround habe ich den Quartz Skin installiert, und dann die Navigation Sounds wieder auf „Skin default“ gestellt.

USB-Audio

Da meine Stereoanlage noch aus der Zeit stammt bevor es HDMI gab, muss ich den Sound per USB-Soundkarte ausgeben (und dann via Cinch-Kabel in den Verstärker leiten). Das funktioniert mit Raspbmc 12.1 folgendermaßen (siehe auch Raspmc: Probleme mit Sound und Soundblaster play USB):

Via SSH ALSA installieren:

sudo apt-get install alsa

Dann die Zeile options snd-usb-audio index=-2 in /etc/modprobe.d/alsa-base.conf auskommentieren und anschließend in den „Raspbmc Settings“ in XBMC die Audio Engine aktivieren. Danach muss man dann neu booten.

Sinnvoll ist es offenbar noch bei den „Raspbmc Settings“ unter „System Configuration“ die Option „keep Raspbmc updated“ abzustellen: Bei mir hat ein automatisches Update nämlich den Sound abgeschaltet (in der neuen Version war offenbar kein PulseAudio drin) und ich musste auf einen Nightly Build gehen (bzw. auf Version 12.1 zurück): Nightly Build Configuration -> Install XBMC Nightly

Musik hinzufügen

Bevor man Musik zum Pi hinzufügt, sollte man noch bei Settings -> Music -> LibraryDownload additional information during updates“ anhaken, damit beim Scannen der Musikbibliothek gleich auch Cover-Art und Künstlerbilder von XBMC runtergeladen werden. Wer mag kann noch bei Settings -> Music -> LibraryInclude artists who appear only on compilations“ weggehaken.

Für mich persönlich ist die Last.fm-Integration ein wichtiges Feature: Bei Settings -> Music -> Song submission lässt sich ganz einfach „Submit songs to Last.fm“ aktivieren, Username und Passwort eintragen und schon kann gescrobbelt werden :-)

Dann hab‘ ich per FTP meine Musik auf den Pi rüberkopiert und entsprechend der XBMC-Anleitung hinzugefügt. Das dauert einen Moment wegen dem gerade erwähnten Download von Artist- und Cover-Art.

Beim ersten Versuch hat der Album-Art-Download wohl zwischendurch irgendwo abgebrochen. Also hab ich bei den Settings -> Add-ons mal alle Quellen aktiviert (v.a. auch Last.fm) und dann in der „Music -> Library -> Artists“ im Kontextmenü („c“) ausgewählt „Query info for all artists“ (bzw. bei „Music -> Library -> Albums“ dann „Query info for all albums„). Danach hatte ich dann für so dreiviertel meiner Musiksammlung korrekte Cover-Art. Wie man für den Rest noch die Cover-Art hinzufügen kann, beschreibe ich dann in einem anderen Artikel.

Log-File-Troubleshooting

Ein besonderes Problem hatte ich noch mit den Log-Files. Das /var/log/syslog hat sich mit folgender Nachricht gefüllt:

May 11 07:12:37 raspbmc kernel: delay: estimated 0, actual 89

Und zwar mehrmals pro Sekunde. Da Raspbmc dem Log-Verzeichnis nur 10 MB einer RAM-Disk einräumt war das Ruckzuck voll und ich konnte nicht sehen, was so an wirklich wichtigen Meldungen ins Log geschrieben wurde.

Also hab‘ ich mich im Raspbmc-Forum erkundigt und folgende Lösung bzw. Workaround eingebaut:

In /etc/rsyslog.conf kann folgende Rule eingebaut werden, um die Ausgabe der o.g. Log-Meldung einfach zu unterdrücken (ist zwar dann quasi noch da, wird aber nicht mehr ins Log geschrieben):

:msg,contains,"delay: estimated 0" ~

Schlusswort

Wie man hier lesen kann, ist die Konfiguration nicht so ganz trivial und man stößt immer mal wieder auf Probleme, die man ohne ein paar Linux-Skills nicht lösen kann. Wenn man die aber hat, dann kommt man nicht zuletzt wegen der extrem guten und hilfsbereiten Community eigentlich immer zu einer Lösung.

5 Gedanken zu „Raspberry Pi Audioplayer: Installation und Konfiguration“

  1. Hallo!
    Erstmal Lob und Dank für das Projekt und die Anleitung hier!
    Ich versuche mir grad ebenfalls einen kleinen Musikserver mit dem Pi zu basteln (http://extreme.pcgameshardware.de/tagebuecher/296817-mini-htpc-rasperrypi-auf-den-zahn-gefuehlt.html)
    Leider sind alle aktuellen „Frodo“-basierten Raspbmc-Versionen nicht zu USB-Audio fähig…
    Darum meine Frage:
    Kannst Du mir vielleicht ein Standalone-Image deiner 12.1.-Version zukommen lassen, oder mir einen Link geben, wo ich sowas finden könnte??
    Gruß Andreas

    1. Hallo Andreas,
      was Du mal versuchen könntest ist unter

      Programs -> Raspbmc Settings -> Nightly Build Configuration -> Switch builds

      einen älteren Build auszuwählen (so irgendwas aus Mai 2013 müsste es tun).

      Beni

  2. Hallo Beni,
    Vielen Dank für den Tipp…
    So hat es geklappt. Es gibt einfach viel zu lernen, wenn man den Pi neu hat…
    Gruß Andreas

  3. Hallo Beni,

    also bei mir will das einfach nicht klappen.
    mit aplay kann ich abspielen.
    Nightly Build vom Mai aktiv.
    Sound unter Xmbc settings aktiv.

    hast du die SoundCard unter den Normalen Systemsettings drinnen?
    Fällt dir vielleicht noch was ein?
    Mir würde die Idee vom Upload deines Images sehr gut gefallen… :-)
    Wäre das vielleicht möglich?

    Danke im Voraus!

    Mfg Christian

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *