ulrich
2018-03-24 0a9af0cd78302f9439dfe9276fce4817d0743fce
commit | author | age
9c2c3c 1 # Radio abspielen mit dem Raspberry Pi
U 2
3 Das [radio-ui](README.md) kann verwendet werden, um den Livestream eines Radiosenders von einem Raspberry Pi wiedergeben zu lassen. Hierzu wird auf dem betreffenden Raspberry Pi die Anwendung [pirc](/gitblit/docs/pirc.git) genutzt. Pirc kombiniert zum Spielen von Audiostreams den [omxplayer](https://elinux.org/Omxplayer) mit einer auf [Tomcat](https://de.wikipedia.org/wiki/Apache_Tomcat) laufenden Fernbedienung, die per HTTP gesteuert werden kann.
4
5 Auf dieser Seite ist beschrieben, wie pirc aus dem radio-ui heraus genutzt und mithin das Abspielen von Webradio auf dem Raspberry Pi bewerkstelligt werden kann.
6
7 ## Kombination von pirc und radio-ui
8
9 Zur Verwendung des radio-ui mit [pirc](/gitblit/docs/pirc.git) kann die Anwendung radio-ui direkt auf einen Raspberry Pi installiert werden, beispielsweise ähnlich wie pirc als Webanwendung für Tomcat. Stattdessen kann radio-ui auch von einer anderen Maschine aus die pirc-Instanz auf einen Raspberry Pi aufrufen.
10
11 In beiden Fällen sendet das radio-ui Kommandos via HTTP an pirc wie nachfolgend beschrieben.
12
13 ## Kommandos an den Raspberry Pi
14
15 Wird [pirc](/gitblit/docs/pirc.git) auf dem Raspberry Pi ausgeführt, können Kommandos via HTTP an die betreffende Maschine gesendet werden. Sie bestehen aus einem Klassennamen `c`, einem Methodennamen `m` und Parametern `p`. Ein Kommando setzt sich wie folgt zusammen
16
17 1. `http://raspi:8080/` - URL der Maschine
18 1. `pirc/` - Name des Kontext, unter dem die Anwendung pirc läuft
19 1. `sys/rpc` - Service-Endpunkt der pirc-API
20 1. `c=de.uhilger.pirc.App` - Name der Klasse von pirc, die die Abspielmethode enthält
21 1. `m=abspielen` - Name der Methode zum Abspielen
22 1. `p=Sender-URL` - der Parameter mit dem URL zum Audiostream des Webradiosenders
23 1. `p=` - optionaler Token zur Authentisierung (kann hier leer bleiben)
24
25 Das obige Beispiel geht davon aus, dass der betreffende Raspberry Pi unter dem Namen `raspi` auf Port `8080` über `HTTP` erreichbar ist und dass auf dem Pi die Anwendung pirc unter dem Kontextnamen `pirc` installiert wurde. Zum Aufruf mit dem radio-ui kann das obige Kommando weitgehend unverändert bleiben. Nur der Teil 6. mit dem URL des Senders muss veränderlich gestaltet sein.
26
27 ### Abspielen
28
29 Das Kommando zum Abspielen des Livestreams des Radiosenders radiobob (vgl. [Senderliste](radiostreams.md)) lautet z.B. wie folgt
30
31 ````
32 http://raspi:8080/pirc/sys/rpc?c=de.uhilger.pirc.App&m=abspielen&p=http://bob.hoerradar.de/radiobob-live-mp3-hq&p=
33 ````
34
35 Es bewirkt, dass auf dem betreffenden Raspberry Pi eine Instanz des [omxplayer](https://elinux.org/Omxplayer) gestartet wird und diese fortlaufend den Webradio-Stream unter der angegebenen Adresse abspielt.
36
37 ### Stoppen
38
39 Zum Stoppen des zur Zeit abgespielten Webradios dient das folgende Kommando
40
41 ````
42 http://raspi:8080/sys/rpc?c=de.uhilger.pirc.App&m=kommando&p=q
43 ````
44
45 Mit dem obigen Aufruf wird das Kommando `q` an den auf dem Raspberry Pi laufenden Abspielprozess gesendet. Das bewirkt, dass der im Abspielprozess laufende [omxplayer](https://elinux.org/Omxplayer) das Abspielen stoppt und der Prozess endet.