App zur Steuerung des mpv Mediaplayers auf einem Raspberry Pi über HTTP
edit | blame | history | raw

AV-Direktor

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:

  1. NFS-Client
  2. 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, der Präfix aus dem Parameter nfs-prefix vorangestellt. Wird der AV-Direktor beispielsweise mit folgendem URL aufgerufen:

http://rpi4-wz:9090/avd/play?title=/Filme/H/heat.m4v&th=60&ti=60&o=local

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 Softwarepakete für den NFS Client installiert haben, wie sie z.B. im Rasprry Pi OS in der Variante 'full' bereits enthalten sind. Zudem 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-media-server in den obigen Beispielen muss dafür als NFS-Server eingerichtet sein und entsprechende Inhalte via NFS freigeben.

HTTP-Client

Wir der Parameter nfs-prefix beim Start des AV-Direktors weggelassen, werden im Parameter titel Uniform Resource Locators (URLs) zu Media-Quellen erwartet wie z.B. in

http://rpi4-wz:9090/avd/play?title=http://mein-media-server:8080/mc/Filme/H/heat.m4v&th=60&ti=60&o=local

Für das Abspielen über HTTP muss der Raspberry Pui nicht als NFS-Client eingerichtet werden. Der Media-Server muss dann das Streaming über HTTP implementieren.

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