commit | author | age
|
299b68
|
1 |
# Radio abspielen mit dem Raspberry Pi |
U |
2 |
|
175e83
|
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 unter [Tomcat](https://de.wikipedia.org/wiki/Apache_Tomcat) laufenden Fernbedienung, die per HTTP gesteuert werden kann. |
U |
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. |
299b68
|
6 |
|
U |
7 |
## Kombination von pirc und radio-ui |
08bce7
|
8 |
|
U |
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 |
|
299b68
|
11 |
In beiden Fällen sendet das radio-ui Kommandos via HTTP an pirc wie nachfolgend beschrieben. |
08bce7
|
12 |
|
299b68
|
13 |
## Kommandos an den Raspberry Pi |
U |
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 |
08bce7
|
16 |
|
U |
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 |
299b68
|
23 |
1. `p=` - optionaler Token zur Authentisierung (kann hier leer bleiben) |
08bce7
|
24 |
|
299b68
|
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. |
08bce7
|
26 |
|
299b68
|
27 |
### Abspielen |
08bce7
|
28 |
|
9643e5
|
29 |
Das Kommando zum Abspielen des Livestreams des Radiosenders radiobob (vgl. [Senderliste](radiostreams.md)) lautet z.B. wie folgt |
08bce7
|
30 |
|
U |
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 |
|
299b68
|
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. |
08bce7
|
36 |
|
299b68
|
37 |
### Stoppen |
08bce7
|
38 |
|
U |
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 |
|
299b68
|
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. |