Anleitung Teil 1: Der RPi als "Sender"

 

In diesem Abschnitt zeige ich Euch, wie Ihr einen "RPi-Radio-Sender" erstellt. Am Ende könnt Ihr dann schon einmal Musik als Stream hören.

Ein allgemeiner Hinweis, der das Leben leichter macht: Wenn Ihr hier die Befehle markiert und `kopiert` (<STRG>+<C>), dann könnt Ihr Sie mit "Rechte-Maustaste-Klick" direkt in PuTTY "einsetzen" (Sowohl als Befehl, also auch in nano).

Voraussetzung:

Ihr habt einen RaspberryPi (im folgenden RPi) und eine passende SD-Card mit mindestens 4GB Speicher. Außerdem benötigt Ihr ein USB-Kartenleser und eine PC oder Mac

 

Installation RaspberryPi Raspian Stretch Lite:

Ihr benötigt:

(mit * markierte Links sind direkte Downloads, ohne *: Ihr kommt auf die Seite und müßt Euch die passende Version aussuchen)

    Step-By-Step

    • Download RPi-Image, download ein IMG2USB-Programm. Installiert das Programm und flasht als erses das RPi-Image.
    • Hinweis: balenaEtcher wirft nach erfolgreichen Brennen den Kartenleser aus - Ihr müsst den Kartenleser noch einmal neu mit dem PC verbinden. Windows 10 wirft daraufhin Fehler aus, das 2 Laufwerke nicht lesbar sind - einfach ignorieren.
    • Erstellt nun auf dem USB-Laufwerk (Laufwerk "boot") eine Datei "ssh", ohne Endung (Rechtsklick: Neu -> Textdatei), ggf. müsst Ihr vorher in Windows einstellen, dass Ihr die Endungen aller Dateitypen sehen wollt.
      Das machen wir, damit wir via SSH-Protokoll (PuTTY) auf den RPi zugreifen können - wer das nicht will, der muss sich eine Tastatur und einen Monitor besorgen.
    • SD-Karte in den RPi und starten
    • PuTTY aufrufen und sich mit den RPi verbinden - über die Netzwerkumgebung (Windows), über Euren Router oder mit dem Advanced-IP-Scanner erfahrt Ihr, welche IP-Adresse der RPi bekommen hat.
    • ggf. bietet es sich an, im Router dem RPi immer die selbe IP Adresse zuzuweisen.
    • Login für den RPi: Benuztername ist: pi, das Kennwort ist: raspberry

    Nun kommt die Installation der einzelnen Pakete (gefunden bei Jan Karres , dort ist es etwas ausführlicher beschrieben):

     

    sudo apt-get update && sudo apt-get upgrade && sudo apt-get install mpc mpd icecast2

     

    Mit dieser Befehlszeile ist schon 70% zum "Grundplayer" erledigt .
    Ihr werdet im weiteren Prozess gefragt, ob Ihr Icecast2 konfigurieren wollt, antwortet mit Y

    Dann müsst Ihr drei Kennwörter vergeben. Diese solltet Ihr Euch notieren. Später kann man dann über http://<IP-RPi>:8000 auf den RPi zugreifen. Benutzername admin und Eurer Kennwort.

    Solltet Ihr während der Installation eine Warnung bekommen, dass Port 6600 nicht funktioniert, dann gebt bitte noch foldes ein:

     

    sudo modprobe ipv6

     

    Anschliessend müssen wir den MPD (Music Player Daemon) konfigurieren, dazu bearbeiten wir die Datei /etc/mdp.conf

     

    sudo nano /etc/mpd.conf

     

    und tragen dort folgendes ein:

     

    audio_output {
      type "shout"
      name "NOPLLI-Stream"
      description "NoPlayList-RPi"
      host "localhost"
      port "8000"
      mount "/mpd"
      password "<Kennwort>"
      bitrate "192"
      format "44100:16:2"
      encoding "mp3"
    }

    Name und Despription könnt Ihr natürlich frei wählen, bei password nutzt Ihr das eingebene Kennwort und bei der Bitrate scheiden sich die Geister - ich nehme 192 - das ist dann schon ordentliche Qualität.

    Jetzt muß der Daemon (Dienst) neu gestartet werden:

     

    sudo /etc/init.d/mpd restart

     

    In der Grundinstallation sind die Musikdateien zum Streamen unter /var/lib/mpd/music/ und die Playlisten unter /var/lib/mpd/playlists/ gespeichert. Dies wird dann zukünftig geändert, jetzt aber zum ersten Testen reicht es.

    Der Benutzer pi hat aber nicht die nötigen Rechte um darauf schreiben und lesen zu können. Wir fügen den Benutzer pi nun zu der Gruppe audio hinzu und geben dieser entsprechende Rechte. (Die Gruppe audio sowie die Verzeichnisse wurden durch die Installation des MPD hinzugefügt).

     

    sudo usermod -a pi -G audio
    sudo chmod g+w /var/lib/mpd/music/ /var/lib/mpd/playlists/
    sudo chgrp audio /var/lib/mpd/music/ /var/lib/mpd/playlists/

    Jetzt muss nur noch Musik (MP3) in das Verzeichnis kopiert werden, dazu müssen wir z.B. einen USB-Stick mounten (einbinden) und die MP3s kopieren, oder Ihr habt eine NAS- bzw. Windows-Freigabe, dann kann man die mounten.

    Weil auf der SD-Karte nicht so viel Platz ist, mounten wir einfach eine NAS-/Windows-Freigabe (es geht natürlich auch eine iOS-Freigabe) in den Ordner /var/lib/mpd/music.

     

    sudo mkdir /var/lib/mpd/music/NAS
    sudo mount -t cifs -o username="<Benutzername-auf-dem-NAS>",password="<Passwort-auf-dem-NAS>" //<IP-Adresse-des-NAS>/music /var/lib/mpd/music/NAS
    

    Hinweis: Dieses mount ist noch temporär, d.h., wenn Ihr den RPi neu startet, dann ist die Verbindung nicht mehr da ( später mehr in Teil 2 )!
    (Benuztername,Passwort,IP-Adresse bitte an Eure Verhältnisse anpassen (den Freigabename music ggf. auch!)

    Wichtiger Hinweis: Der Benutzername und das Passwort müssen in " stehen!

    Kontrolliert, ob es geklappt hat. Außerdem stellt sich W10 manchmal zickig an, wenn es also nicht klappt, dann sucht bei W10, nicht beim Pi:

     

    ls /var/lib/mpd/music/NAS

    Als Ausgabe sollten dann Ordner und MP3-Dateien zu sehen sein.

     

    Nun müssen wir dem MPC noch sagen, dass er aktuelle neue MP3s hat, diese in seine Playliste übernimmt, ggf. REPEAT und/oder SHUFFLE einschalten und dann "Play" drücken:

    mpc update
    mpc ls | mpc add
    
    // optional:
    mpc repeat on
    // optional:
    mpc shuffle on
    
    mpc play

    Mit mpc playlist könnt Ihr Euch die aktuelle Playliste ansehen.

     

    Wenn alles bis hierher erfolgreich war, dann solltet Ihr, wenn Ihr im Webbrowser Eurer Wahl folgendes öffnet:

    http://<IP-Adresse-RPi>:8000 ungefähr folgendes sehen:

    Klickt oben auf den Link M3U, der Browser Eurer Wahl wird dann versuchen den Stream z.B. mit dem Media-Player zu öffnen.

    Der Link zum Stream lautet wie folgt: http://<IP-Adresse-RPi>:8000/<mountpoint>.m3u (Den mountpoit> haben wir in der mdp.conf angegeben: mount "/mpd", also in diesem Falle: http://<IP-Adresse-RPi>:8000/mpd.m3u

     

    Ende Teil 1.

    Jetzt habt Ihr einen eigenen Radio-Sender! Ihr könnt es auch sofort auf Eurem SONOS-System einrichten. Leider wird dazu der SONOS-Player für Windows bzw. iOS   benötigt - in der SONOS App geht es nicht!

    Im Windows-SONOS-Player könnt Ihr unter "Verwalten" einen "neuen Radiosender hinzufügen". Kopiert hier den Link rein, gebt dem Ding einen Namen und fertig - Ihr findet den "Sender" dann unter TuneIn > Meine Radiosender.