Benutzer-Werkzeuge

Webseiten-Werkzeuge


projekte:internetradio

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
projekte:internetradio [2013/05/19 10:26] – angelegt marcoprojekte:internetradio [2021/01/17 01:06] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
-====== Raspberry Pi als Internetradio ====== +====== RaspberryPi als Internetradio ======
 ---- datatemplateentry project ---- ---- datatemplateentry project ----
 template        : templates:project template        : templates:project
-name            : PROJEKTNAME +name            : RaspberryPi Internetradio 
-imgname_img90   : BILDDATEINAME RELATIV ZU projekte: ODER intern:projekte +persons         marco 
-person_pages    LINKS ZU MITGLIEDERSEITEN +start           2013-04-04 
-start_dt        : STARTDATUM IM FORMAT JJJJ-MM-TT +end             2013-04-04 
-end_dt          ENDDATUM IM FORMAT JJJJ-MM-TT +imgname_img90   : none.png 
-status_         : ETWAS WIE "in Arbeit", "fertig", "eingestellt"...+status_         : aktualisiert 2018-04-26
 ---- ----
 +Ziel dieses Projektes ist, auf dem RaspberryPi ein Internetradio zu installieren.
 +Bedienbar soll das Ganze dann über eine Weboberfläche sein, also über den Browser vom PC, Tablett oder Handy.
 +Somit werden keine Bedienteile am Raspberry selbst benötigt.\\
 +\\
 +Ich gehe jetzt in der folgenden Beschreibung davon aus, dass das System mit dem Raspbian “strech”-Image (hier 2018-03-13-raspbian-stretch-lite.img) von [[http://www.raspberrypi.org/downloads|RaspberryPi.org]] grundinstalliert ist, im Netzwerk hängt und per ssh erreichbar ist.\\
 +Optional zu ssh kann natürlich ein Monitor und eine Tastatur angeschlossen werden.\\
 +\\
 +Anmerkung:\\
 +Im aktuellen Raspbian-Image ist der Benutzer //pi// mit dem Passwort //raspberry// vorgeleistet.\\
 +
 +----
 +
 +===== Schritt 1: Installation des Webservers =====
 +
 +
 +Da die Bedienung über eine Weboberfläche laufen soll, braucht man natürlich einen Webserver.\\
 +Dieser sollte möglichst sparsam mit den Resourcen umgehen. Deshalb kommt [[http://www.lighttpd.net|lighttpd]] zum Einsatz.\\
 +Zusätzlich muss, falls noch nicht vorhanden, php (hier php7.0) installiert werden.\\
 +\\
 +  * Pakete von lighttpd installieren
 +<code>pi@raspberrypi ~ $ sudo apt-get install lighttpd</code>
 +  * PHP7.0 Pakete installieren
 +<code>pi@raspberrypi ~ $ sudo apt-get install php7.0 php7.0-cgi</code>
 +  * Nach der Installation das Modul fastcgi aktivieren
 +<code>pi@raspberrypi ~ $ sudo lighty-enable-mod fastcgi
 +Enabling fastcgi: ok
 +Run /etc/init.d/lighttpd force-reload to enable changes</code>
 +  * Jetzt wird die lighttpd.conf angepasst.
 +Dazu wird diese mit einem Editor geöffnet.
 +<code>sudo nano /etc/lighttpd/lighttpd.conf</code>
 +
 +und folgendes ans Ende der Datei eingefügt:
 +
 +<code>
 +fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket" )))</code>
 +
 +Speichern nicht vergessen! Im Falle des hier benutzten Editors nano geht das mit der Tastenkombination Strg+o, ENTER und Strg+x.
 +
 +Nun wird der Benutzer pi in die Gruppe www-data hinzugefügt
 +
 +<code>
 +pi@raspberrypi ~ $ sudo adduser pi www-data
 +Füge Benutzer »pi« der Gruppe »www-data« hinzu ...
 +Benutzer pi wird zur Gruppe www-data hinzugefügt.
 +Fertig.
 +</code>
 +
 +und es werden noch ein paar Rechte angepasst.
 +<code>
 +pi@raspberrypi ~ $ sudo chown -R www-data:www-data /var/www
 +pi@raspberrypi ~ $ sudo chmod -R 775 /var/www
 +</code>
 +Jetzt noch ein Neustart des Webservers:
 +<code>
 +pi@raspberrypi ~ $ sudo /etc/init.d/lighttpd force-reload
 +[ ok ] Reloading web server configuration: lighttpd.
 +</code>
 +und dann der Test:
 +
 +im Browser die IP-Adresse oder den Hostname bom RaspberryPi eingeben und es sollte ungefähr so aussehen:
 +
 +{{:projekte:wiki_lighttpd_webserver.png?nolink&300|}}
 +
 +----
 +
 +===== Schritt 2: Der eigentliche Player =====
 +
 +
 +Nachdem der Webserver jetzt läuft, gehts an das Internetradio selbst.\\
 +Für das Raspberry-Internetradio installiert man Music Player Daemon (mpd) und Music Player Command (mpc).
 +<code>
 +pi@raspberrypi ~ $ sudo apt-get install mpd mpc
 +</code>
 +Nun müssen in der Datei /etc/mpd.conf einige Einstellungen angepasst werden.
 +Dazu wird diese mit 
 +<code>
 +pi@raspberrypi ~ $ sudo nano /etc/mpd.conf
 +</code>
 +geöffnet und folgende Änderungen durchgeführt.
 +<code>
 +.
 +.
 +.
 +# The special value "syslog" makes MPD use the local syslog daemon. This
 +# setting defaults to logging to syslog, otherwise logging is disabled.
 +#
 +# log_file        "/var/log/mpd/mpd.log"                      <---- auskommentieren
 +#
 +..
 +.
 +#
 +# For network
 +bind_to_address         "127.0.0.1"                       <---- ändern in 127.0.0.1
 +#
 +..
 +.
 +# MPD Internal Buffering ######################################################
 +#
 +# This setting adjusts the size of internal decoded audio buffering. Changing
 +# this may have undesired effects. Don't change this if you don't know what you
 +# are doing.
 +#
 +audio_buffer_size              "2048"            <---- Kommmentarzeiche # entfernen
 +#
 +# This setting controls the percentage of the buffer which is filled before
 +# beginning to play. Increasing this reduces the chance of audio file skipping,
 +# at the cost of increased time prior to audio playback.
 +#
 +buffer_before_play             "10%"             <---- Kommmentarzeiche # entfernen
 +#
 +###############################################################################
 +..
 +.
 +</code>
 +Speichern nicht vergessen! Im Falle des hier benutzten Editors nano geht das mit der Tastenkombination Strg+o, ENTER und Strg+x.
 +\\
 +Nach diesen Änderungen muss der mpd-Prozess neu gestartet werden:
 +<code>
 +pi@raspberrypi ~ $ sudo /etc/init.d/mpd restart
 +[ ok ] Stopping Music Player Daemon: mpd.
 +[....] Starting Music Player Daemon: mpdlisten: bind to '127.0.0.1:6600' succeeded
 +. ok 
 +</code>
 +
 +
 +----
 +
 +===== Schritt 3: Die Playlist =====
 +
 +Der Player läuft jetzt quasi, aber die Playlist mit den einzelnen Radiostreams fehlt noch.
 +Diese kommt in das Verzeichnis // /var/lib/mpd/playlists// .
 +
 +Dazu wird mit dem Editor eine Textdatei angelegt, die die Adressen zu den einzelnen Radiostationen enthält.\\
 +Der Dateiname muss mit .m3u enden.
 +<code>
 +pi@raspberrypi ~ $ sudo nano /var/lib/mpd/playlists/internetradio.m3u
 +</code>
 +
 +Hier ein paar Beispielstreams:
 +<code>
 +http://stream.laut.fm/best_of_80s
 +http://stream.laut.fm/maximix
 +http://stream.laut.fm/eurosmoothjazz
 +http://stream.laut.fm/jahfari
 +http://stream.laut.fm/just80s
 +http://stream.laut.fm/rockin_c
 +https://stream.absolutradio.de/relax/mp3-160/stream.absolutradio.de/
 +https://stream.absolutradio.de/hot/mp3-160/stream.absolutradio.de/
 +https://stream.absolutradio.de/hq/mp3-160/stream.absolutradio.de/
 +</code>
 +Speichern nicht vergessen! Im Falle des hier benutzten Editors nano geht das mit der Tastenkombination Strg+o, ENTER und Strg+x.
 +\\
 +Die eben erstellte Playlist wird mit folgendem Kommando geladen:
 +<code>
 +pi@raspberrypi ~ $ mpc load internetradio
 +loading: internetradio
 +</code>
 +Mit dem Kommando
 +<code>
 +pi@raspberrypi ~ $ mpc play 3
 +</code>
 +startet man z.B. den 3. Stream (Titel) der Playlist
 +\\
 +Mit dem Kommando
 +<code>
 +pi@raspberrypi ~ $ mpc stop
 +</code>
 +stoppt man die Wiedergabe.
 +\\
 +Soviel muss zum Test reichen, da das Ziel ja die Steuerung über ein Webinterface ist.
 +
 +
 +----
 +
 +===== Schritt 4: Das Webinterface =====
 +
 +
 +Nach etwas Suchen fand sich dieses Projekt https://github.com/sn0opy/MPD-Webinterface
 +\\
 +Der Download und die Installation ist problemlos, solange die richtige Reihenfolge eingehalten wird.
 +\\
 +  * Verzeichnis für die Webseite anlegen
 +<code>sudo mkdir /var/www/internetradio</code>
 +  * Das Verzeichnis dem Benutzer pi zuweisen
 +<code>sudo chown pi /var/www/internetradio</code>
 +  * In das Webverzeichnis wechseln
 +<code>cd /var/www/internetradio</code>
 +  * Download der gepackten Dateien
 +<code>wget https://github.com/sn0opy/MPD-Webinterface/archive/master.zip</code>
 +  * Entpacken der Dateien im aktuellen Verzeichnis
 +<code>unzip master.zip</code>
 +  * In das entpackte Verzeichnis wechseln
 +<code>cd MPD-Webinterface-master</code>
 +  * Den Inhalt in /var/www/internetradio verschieben
 +<code>mv * ../</code>
 +  * Installationsverzeichnis verlassen
 +<code>cd ..</code>
 +  * und anschließend löschen
 +<code>rmdir MPD-Webinterface-master</code>
 +
 +
 +----
 +
 +===== Schritt 5: Der ultimative Test =====
 +
 +Wenn alles richtig installiert wurde, ist die Weboberfläche unter 
 +<code>http://<IP-Adresse>/internetradio</code>
 +erreichbar und sieht so aus:\\
  
 +{{:projekte:wiki_internetradio.png?nolink|}}
projekte/internetradio.1368959206.txt.gz · Zuletzt geändert: 2021/01/17 01:07 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki