mjpg-streamer Script für Raspberry PI

Da nun die Raspberry PI Kameras geliefert wurden, habe ich mich mit dem Camera Streaming etwas beschäftigt. Heraus gekommen ist eine Kombination aus „raspistill“ und „mjpg-streamer“ als Commandline Tools.

Aus der Kombination heraus sind folgende Scripts entstanden:

[codesyntax lang=“java“]

mkdir /tmp/stream
raspistill -w 640 -h 480 -q 100 -o /tmp/stream/pic.jpg -tl 100 -t 9999999 -th 0:0:0

[/codesyntax]

Raspberry PI Kamera
Raspberry PI Kamera

[codesyntax lang=“java“]

#!/bin/bash
set -x
RESOLUTION="640x480"
FRAMERATE="10"
MJPG_WEB_ROOT="/usr/www"
TIMELAPS_DIR="/var/www/webcam"
STREAMDIR="/tmp/stream"
PORT="8081"
INPUTFILE_LIB="/usr/lib/input_file.so"
OUTHTTP_LIB="/usr/lib/output_http.so"
OUTPUTFILE_LIB="/usr/lib/output_file.so"
LABSTIMER="15000"

mjpg_streamer $1 -i "$INPUTFILE_LIB  -f  $STREAMDIR -r $RESOLUTION" -o "$OUTHTTP_LIB -p $PORT -w $MJPG_WEB_ROOT" -o "$OUTPUTFILE_LIB -f $TIMELAPS_DIR -d $LABSTIMER"

[/codesyntax]

Dieses Script liest das Bild aus dem Verzeichnis „/tmp/stream“ welches alle 100 ms neu erzeugt wird. Die Anweisung „$OUTPUTFILE_LIB -f $TIMELAPS_DIR -d $LABSTIMER“ erzeugt ein neues Bild alle 15 Sekunden im Verzeichnis „/var/www/webcam“ mit Zeitstempel als Dateiname.
Aus der Sammlung der Bilder kann ein Timelaps-Movie erstellt werden. Gleichzeitig kann die Kamera als Livestream auf dem „<IP-des-Raspberry>:8081“ angesehen werden.

Mir war es in diesem Aufbau wichtig, Livebilder und Timelaps-Bilder für die spätere Nachbearbeitung zu haben, was mir mit diesem Aufbau gut gelungen ist.

Wenn der Server Online und aktiv ist kann dieser unter folgender Adresse besucht werden:
http://jhummel.myftp.org:8085 

Raspberry PI Kamera
Raspberry PI Kamera

 

Joachim

Aus Leidenschaft für Technik. Aktuelle Themen sind Datensicherheit, Software für Datenschutz, Mobile Geräte, Smartphone Sicherheit und Anwendungen, Raspberry Pi Geek.

Alle Beiträge ansehen von Joachim →

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert