App zur Steuerung des mpv Mediaplayers auf einem Raspberry Pi über HTTP
ulrich
2021-03-24 0af362883d659d9481a7f2bf6cf0c7459997f5e2
README.md
@@ -2,5 +2,90 @@
# AV-Direktor
Eine Anwendung zur Steuerung des Mediaplayers 
[OMXPlayer](https://www.raspberrypi.org/documentation/raspbian/applications/omxplayer.md)
auf einem Raspberry Pi über HTTP.
[OMXPlayer](https://www.raspberrypi.org/documentation/raspbian/applications/omxplayer.md)
## Video und Audio abspielen
Der AV-Direktor arbeitet als Empfänger von HTTP-Signalen und setzt diese in Kommandos an den OMXPlayer um. Auf diese Weise kann ein Raspberry Pi als Abspieler von anderen Geräten aus fernbedient werden, am Pi selbst ist keine Bedienung erforderlich.
## Media-Quellen einrichen
Der AV-Direktor kann in zwei Betriebsarten gestartet werden:
. NFS-Client
. HTTP-Client
### NFS-Client
Mit dem Parameter `nfs-prefix` spielt der AV-Direktor Media-Inhalte aus NFS-Quellen ab.
```
java -jar av-director.jar nfs-prefix="/media/mc" port=9000
```
In dieser Betriebsart wird dem Inhalt, der beim Abspielen über den Parameter title angegeben wird, besagter Präfix vorangestellt. Wird beispielsweise der AV-Direktor aufgerufen mit
```
http://rpi4-wz:9090/avd/play?title=/Filme/H/heat.m4v
```
wird die Datei `/media/mc/Filme/H/heat-m4v` abgespielt. Zur Verwendung des AV-Direktors in der Betriebsart NFS Client muss der Raspberry Pi die Pakete für den NFS Client installiert bekommen und es muss auf dem Raspberry Pi in der Datei `/etc/fstab` ein Eintrag gemacht werden, der die entsprechende Quelle angibt, z.B.
```
mein-media-server:/media/extssd/mc /media/mc nfs rw 0 0
```
Welche Quellen für einen solchen Eintrag verfügbar sind lässt sich auf dem Raspberry Pi mit folgendem Kommando sehen.
```
showmount -e mein-media-server
```
Die Maschine `mein-mdeia-server` in den obigen Beispielen muss dafür als NFS-Server eingerichtet sein und entsprechende Inhalte via NFS freigeben.
## AV-Direktor als Dienst einrichten
```
cd /home/pi/prg/av-direktor
sudo cp avd.service /etc/systemd/system/avd.service
```
### Dienst starten
```
sudo systemctl start avd.service
```
### Dienst stoppen
Der laufende Dienst kann mit folgendem Signal via HTTP veranlasst werden, sich zu beenden.
```
http://rpi4-wz:9090/avd/server/stop
```
Ueber systemd kann stattdessen der Prozess wie folgt 'hart' beendet werden.
```
sudo systemctl stop avd.service
```
### Dienst dauerhaft aktivieren
Der folgende Befehl bewirkt, dass der Dienst nach einem Neustart automatisch startet.
```
sudo systemctl enable avd.service
```
### Dienst deaktivieren
```
sudo systemctl disable avd.service
```
### Status des Dienstes pruefen
```
sudo systemctl status avd
```