MotionEye Plugin


AutorMichael Schlenstedt
Logo

Status

UNSTABLE

Version0.1.4
Min. LB Version

 LB 2.2.1

Download

Release: https://github.com/mschlenstedt/LoxBerry-Plugin-MotionEye/archive/refs/tags/loxberry-plugin-motioneye-0.1.4.zip

Pre-Release: -

Zweck

Das MotionEye Plugin macht den LoxBerry zum Kamera Surveillance System - inkl. Bewegungserkennung und Aufzeichnung. Alle Videostreams werden als MJPEG-Stream zur Verfügung gestellt.

LanguagesEN
Diskussionhttps://www.loxforum.com/forum/projektforen/loxberry/plugins/331116-plugin-motioneye-kamera-surveillance-system-f%C3%BCr-den-loxberry
 Version History...

Nutze die Beobachten-Funktion rechts oben um über neue Versionen informiert zu werden. 

Inhalt




Aufgabe des Plugins

Das MotionEye Plugin installiert die Software MotionEye auf dem LoxBerry. Damit wird er zum vollwertigen Kamera Surveillance System. Zudem konvertiert die Software beliebige Kamera-/Video-Streams in MJPEG-Streams um, sodass auch Kameras, die kein MJPEG bieten, mit dem Türsteuerungsbaustein verwendet werden können. Die Konvertierung übernimmt dabei die Software ffmpeg. Ffmpeg kann so ziemlich alle gängigen Codecs und Videoformate decodieren.

MotionEye bietet dabei folgende Features:

  • kompatibel mit den meisten USB Kameras und dem Raspberry PI Kamera Modul
  • Support für IP (network) Kameras
  • Mmotion Detection mit Email Notifications, Zeitplan und Schalten von virtuellen Eingängen am Miniserver
  • Aufzeichnung bei Ereignis oder permanent, JPEG Dateien für Images, AVI/MP4 Dateien für Videos
  • Uploading zu Google Drive und Dropbox sowie auf externe Datenträger und Netzwerk-Shares

  

Warnung!

Die Verarbeitung von Videostreams benötigt erhebliche Systemressourcen. Voraussetzung für eine vernünftige Nutzung ist ein Raspberry 4 mit großem Kühlkörper und Lüfter. Zudem muss ein gutes, leistungsstarkes Netzteil verwendet werden. Handy-Ladegeräte sind keine Netzteile! Wieviele Videostreams gleichzeitig verarbeitet werden können, hängt zudem auch von der Auflösung, Bitrate und Frames/s der Streams ab.


Einige Worte zur Systemauslastung...

MotionEye kann technisch gesehen mehr oder weniger jeden Stream in jeder Qualität in einen MJPEG-Stream wandeln, Bewegung auswerten, aufzeichnen. Und das auch für beliebig viele Kameras. Aber die Hardware begrenzt die Möglichkeiten stark! Die Konvertierung eines Videostreams benötigt sehr viel CPU-Last - je höher die Qualität des Streams ist (Auflösung, Frames/s,, Bitrate), desto höher sind die Anforderungen an die Hardware.

Soll der Stream konvertiert werden (z. B. aus einem H.264 Stream), gilt es als ersten Schritt die Videoqualität in der Kamera so gering wie nur irgendwie möglich einzustellen. Man sollte die Videogröße und die Bitrate soweit herunternehmen, bis das Bild gerade noch akzeptabel ist.

Nachdem man die Kameras in MotionEye aktiviert hat, sollte man die CPU-Auslastung und die CPU-Temperatur des LoxBerrys kontrollieren. Das geht in den Systemeinstellungen über das Widget "Mein LoxBerry" → "System Informationen".

Download

Fehlerberichte


Fehlerberichte bitte direkt im Repository auf GitHub melden.


Konfigurationsoptionen

Das Plugin bietet keine Konfigurationsoptionen an. Sämtliche Einstellungen werden in MotionEye durchgeführt. 

Für eine Erklärung sämtlicher Optionen empfehle ich Euch die entsprechenden Tutorials auf YouTube: https://www.youtube.com/results?search_query=MotionEye


  

Virtueller Eingang bei Bewegung

Neben den Aktionen, die innerhalb von MotionEye konfiguriert werden können, wenn von der Kamera eine Bewegung erkannt wurde, kann auch eine externe Webseite bei Bewegungserkennung aufgerufen werden. So ist es möglich in Loxone einen virtuellen Eingang bei Bewegungserkennung zu schalten und so weitere Aktionen in LoxoneConfig zu programmieren (Licht an z. B.).

Dazu gebt ihr in MotionEye in der Kamerakonfiguration unter "Motion Notifications" eine sogenannte Web Hook URL an. Diese schaltet den Virtuellen Eingang innerhalb von Loxone. Bitte schaut in die Doku von Loxone bzw. ins Wiki, wie sich die URLs zusammensetzen: REST Webservice oder https://www.loxone.com/dede/kb/webservices/

Eine URL für den Eingang/Baustein "kamera_garten" sieht z. B. so aus (Impuls): http://LOXONE_USER:LOXONE_PASSWORT@IP_MINISERVER/dev/sps/io/kamera_garten/Impulse


Kamera Streams auf externem Datenträger/Netzwerkshare speichern

Richtet zunächst im LoxBerry euer Netzwerkshare oder aber einen externen Datenträger über das Netshares- oder USB Storage-Widget ein: Widget Netshares oder Widget USB Storages

Im System werden sowohl die Netzwerkshares als auch die USB Datenträger unter dem Pfad /opt/loxberry/system/storage/usb/NAME bzw. /opt/loxberry/system/storage/smb/NAME eingebunden. Wenn ihr im Widget auf "Browse" geht, seht ihr den exakten Pfad. Der Pfad zu eurem Datenträger oder Netzwerkshare muss nun in MotionEye unter "Filestorage" als "Custom Path" eingetragen werden:


Achtung! Standardmäßig ist hier das Datenverzeichnis des Plugins auf eurer SD-Karte vorausgewählt. Ich empfehle Euch dringend keine großen Datenmengen permanent auf der SD-Karte zu speichern! Die Speicherkarte könnte dadurch Schaden nehmen.


Multiview

Das Plugin fügt jede aktivierte Kamera in eine simple Webseite ein, die über den Webage-Baustein in die Loxone Config integriert werden kann. So kann man sich mit einem Klick alle Kameras auf einen Blick anschauen. Ein Klick auf das jeweilige Kamerabild öffnet den Kamerastream im Großformat.



LoxBerry als Überwachungskamera/Türkamera

Mit MotionEye könnt ihr sehr einfach einen LoxBerry zur Überwachungskamera oder Türkamera umbauen. Insbesondere mit dem Raspberry Kameramodul und einem Pi ZeroW kann man so eine sehr komptakte, stromsparende WLAN-Kamera aufbauen.

Die ANleitung dazu findet ihr hier: LoxBerry als Überwachungskamera