Livebild einer Kamera lokal auf dem Pi speichern

  • Hallo an alle!


    Bin neu hier, aber ich hätte trotzdem ein Projekt, was ich gerne realisieren würde:


    Und zwar würde ich ganz grob gesagt, gerne mit dem Raspberry Pi das Live-Bild einer Überwachungskamera abspeichern.


    Das ganze noch mal im Detail:

    - Eine Live-Bild-Kamera (wird dann gekauft) schickt das Live-Bild an den Raspberry Pi. (Bin gerne für Produktempfehlungen offen.)

    - Der Pi speichert das Video in einer Datei ab. Entweder eine Datei für einen Tag oder eine Datei für eine Stunde. (Läuft eventuell nur stundenweise)

    - Am besten speichert der Pi das ganze auf einem Stick ab. Das Programm darum zu erweitern wäre aber kein Problem für mich.

    - Die Kamera soll über W-LAN und einem Repeater mit dem Router verbunden werden. An dem Router ist der Pi angeschlossen.


    Probleme werde ich wahrscheinlich dabei haben, den Live-Stream in Video-Dateien zu speichern.

    Ich wäre hier für jede Hilfe dankbar.

  • Live-Bild oder Live-Video? Das solltest Du schon unterscheiden. Ein Bild ist ein einzelnes Bild, eine Momentaufnahme. Ein Video ist ein Film, wo vielleicht 25 Bilder pro Sekunde über eine vorgegebene Dauer aufgenommen und gespeichert werden.


    Eine Video-Datei für einen Tag...?... auf nen USB-Stick... ?... wow... der sollte dann schon wirklich groß sein. ... so Schuhkarton-Größe müsste ausreichend sein *lol* .. keine Ahnung, aber mir drängt sich da gerade der Gedanke auf, dass diese Idee hier noch nicht wirklich durchdacht ist. Nur mal so als Beispiel, meine Cams erfassen am Tag NUR jeweils etwa 1000 bis 1500 Bilder, und zwar machen sie NUR jeweils nach Bewegungsalarm 8 Sekunden lang je Sekunde eine Aufnahme. Das macht dann schon locker über 1 GB Speicherbedarf am Tag. Jetzt kannst Du ungefähr hochrechnen oder schätzen, was ein kontinuierlicher Stream mit 25 Bildern/sek. an Platz benötigt.

    Dann denke ich, dass du mit dieser zu speichernden Datenmenge durch Videostreams über kurz oder lang jeden USB-Stick und jede SD-Karte zerschiessen wirst. Das heisst, je nach Aufbewahrungsdauer ist da ggf. sogar ne dicke Festplatte ggf. mit Terrabytes notwendig.


    Also, was ich deutlich machen will, ist das Problem der Datenmenge. Es wird bei einer Überwachungscam unmengen Daten-Müll erzeugt, der solange Datenmüll bleibt, bis eine Überwachungscam aufgrund eines Vorfalls "wichtiges" aufgezeichet hat. Und wenn man sich nicht um die Entsorung des Mülls kümmert, schreibt die Cam alle Speicher voll, bis nix mehr geht. Und wenn man das wiederum nicht mitbekommt, erfüllt sie ab dem Moment nicht mehr ihre Aufgabe. Ich habe das so gelöst, dass der Vor-Vortag gelöscht wird, wenn gestern "vollständig" (also 24h) ist. Die Cams speichern ihre Aufnahmen auf einem Banana PI M3 als FTP-Server, auf einer 1 GB-Ram-Disk. Dazu gibt es eine Logik für Speicherplatzmanagement und um Datenverlust zu verhindern, in dem Daten paketiert und AES-Verschlüsselt auf einen externen FTP-Server gesichert werden.


    Und wenn es sich um Wohnraum-Cams handelt, tja... denen würde ich jedenfalls rigoros den Zugriff aufs Internet verbieten. Das muss man sich mal vorstellen, ein proprietärer Webserver in der Cam mit Blick aufs Wohnzimmer... weil die Cam die dortige Terrassentür überwachen soll.... *lol*... also diverse Aktivitäten vorm Kaminfeuer sollte man da noch mal überdenken... *lol


    Btw, ich nutze für Innen 2 Instar-Cams ... und mein Fazit: die sind richtig gut. Für außen seit Jahren eine Wans-View, weil die eine ausgewiesene Minus-20-Grad-Tauglichkeit hat. Ob ich heute noch mal Wans-View empfehlen würde.... keine Ahnung im Moment....


    J.m.2.c.

    Edited 2 times, last by ThomasL ().

  • Erst mal vielen Dank für die sehr hilfreiche Antwort.


    Da hab ich wohl nicht den großen Speicherverbrauch eingeplant. :saint:

    Ist wahrscheinlich wirklich besser, wenn der Raspberry Pi nur ein 8 Sekunden-Video abspeichert, wenn er Bewegung erkannt hat.

    Ich hab auf meinem Pi schon ein paar Python Scripts geschrieben und würde gerne bei Python bleiben. Gibt es für die Bewegungserkennung irgendwelche APIs oder fertige Packages die du empfehlen kannst?


    Achso falls es relevant ist: Die Kamera soll einen Carport von einem Freund beobachten und es ist möglich, dass es ihm reicht, wenn das Bild der Cam nur nachts gespeichert wird. Das kläre ich aber mal ab. Wenn ich noch weitere wichtige Details kenne, melde ich mich nochmal.

  • Gibt es für die Bewegungserkennung irgendwelche APIs oder fertige Packages die du empfehlen kannst?

    Ein paar Zeilen OpenCV. Viel Spaß beim Kompilieren :sleeping:


  • Ist wahrscheinlich wirklich besser, wenn der Raspberry Pi nur ein 8 Sekunden-Video abspeichert, wenn er Bewegung erkannt hat.

    Ich hab auf meinem Pi schon ein paar Python Scripts geschrieben und würde gerne bei Python bleiben. Gibt es für die Bewegungserkennung irgendwelche APIs oder fertige Packages die du empfehlen kannst?


    Achso falls es relevant ist: Die Kamera soll einen Carport von einem Freund beobachten und es ist möglich, dass es ihm reicht, wenn das Bild der Cam nur nachts gespeichert wird. Das kläre ich aber mal ab. Wenn ich noch weitere wichtige Details kenne, melde ich mich nochmal.

    Nein, bei mir ist es kein 8-Sekunden-Video, das wären bei einer üblichen Frame-Rate von 30 fps 240 Bilder. Bei mir ist es 8 Sekunden lang eine Frame-Rate von 1 fps, also nicht mehr als 8 Bilder in den 8 Sekunden, und zwar als Jpeg's.


    Die Instar-IP-Cams können via WLAN oder Cat5-Kabel die Aufnahmen direkt auf einen FTP-Server schreiben.... das können die also schon von sich aus. Man kann im Gesamtbild 4 Bereiche definieren, auf die bei Änderung in diesen Bereichen reagiert werden soll, und man kann die Sensitivität bzw. Empfindlichkeit in den Bereichen einstellen, quasi wie ein Alarm, Die Bewegungserkennung können die üblichen IP-Cams alle von sich aus, programmieren muss man da nix.Man kann in den Einstellungen der Cam über die 7 Wochentage in Viertelstundenweise festlegen, wann die Cam aktiv ist und wann nicht.


    Allerdings habe ich bei meinen Cams auch das WLAN deaktiviert, die Cams sind alle via Cat5 verbunden. Die möglicherweise geringe, aber dennoch vorhandene Möglichkeit der Fremdkontrolle wollte ich komplett eliminieren. Also, die Cam bringt alles mögliche an Funktionen schon mit.


    Man muss nur noch den FTP-Server verbinden und gut ist. Schreibt die Cam direkt auf einen ISP-FTP-Server, z.B. irgend ein gebuchter Webspace oder ne Homepage, dann liegen die Daten dort unverschlüsselt vor. Wird der Webspace gehackt oder der ISP verdient sein Geld mit Auswertung der gespeicherten Daten, wars das mit dem Datenschutz. Aber das geht natürlich. Ich speichere die Daten zunächst lokal und lade nur verschlüsselte Pakete hoch. Aber es brauchts immer ne aufwendige Logik, um rollierend alle alten Daten zu löschen, egal wo man speichert. Das macht bei mir der BPi.

    Edited once, last by ThomasL ().

  • Nein, bei mir ist es kein 8-Sekunden-Video, das wären bei einer üblichen Frame-Rate von 30 fps 240 Bilder. Bei mir ist es 8 Sekunden lang eine Frame-Rate von 1 fps, also nicht mehr als 8 Bilder in den 8 Sekunden, und zwar als Jpeg's.

    Ja, das hab ich schon verstanden. Ich denke ein Video mit nur 10 oder 15 fps könnte von der Größe doch ok sein.

    Die Instar-IP-Cams können via WLAN oder Cat5-Kabel die Aufnahmen direkt auf einen FTP-Server schreiben

    Ich hab mir gerade die Preise von den Instar-IP-Cams angeschaut: Die sind einfach zu teuer. Da versuche ich eher ein eigenes Programm zu schreiben, was die Videos einer billigeren Cam speichert.

  • Ja, das hab ich schon verstanden. Ich denke ein Video mit nur 10 oder 15 fps könnte von der Größe doch ok sein.


    Selbst wenn solche flexiblen Framerates möglich wären (was sie nicht sind), welche Vorteile versprichst Du Dir davon? Ich sehe da keine. Aber ganz abgesehen davon, man kann im Regelfall an der Cam keine flexiblen Framerates einstellen. Es gibt da nur die zwei sinnvollen Möglichkeiten, sie macht Einzelbilder oder sie streamt. Und streamen bedeutet heute imho 30 fps - H.264-komprimiert. Die Ausgabe über das Netzwerk zu speichern (z.B. via FTP) ist eine Standardfunktion von IP-Cams. Das konnten schon vor Jahren die alten PTZ-Cams von Wansview.

    Ich hab mir gerade die Preise von den Instar-IP-Cams angeschaut: Die sind einfach zu teuer.


    Natürlich geht es auch billig.... aber Du wirst defintiiv wenig Freude an der Bildqualität haben, der Chip bei den Aldi-Cams ist einfach Scheisse, die Infrarot-Ausleuchtung ist am unteren brauchbaren Level. Man wird dann zu dem Schluss kommen, "Bild ist scheisse, aber für den Zweck wird das wohl irgendwie reichen". Darüber hinaus musst Du auch die Ansprüche an die Material-Qualität an sich, an die Cam-Software (Web-Server und Web-GUI) und den Support reduzieren.... Support gibts bei diesen Asia-Importen definitiv nicht. Und wenn sich das Dingen aufhängt, muss halt einer raus und den Stecker ziehen.


    Quote from LedimLPMore

    Da versuche ich eher ein eigenes Programm zu schreiben, was die Videos einer billigeren Cam speichert.

    Noch mal... Du brauchst kein eigenes Programm schreiben, dass die Bilder speichert, dass tut und kann die Cam von ganz alleine - wobei ich glaube (sorry für die deutlichen Worte), dass es Deinen Kenntnisstand sowieso um mehrere Jahre überfordert, einen Stream via TCP-Netzwerk zu grabben. Du musst nur ein Programm für das Archiv-Management schreiben... und selbst das ist schon anspruchsvoll genug.


    Und nicht vergessen.... das es sich um eine Außencam handelt, Cam-Heizung nicht vergessen.... da gibt es spezielle Teile, die den Betrieb auch im Winter garantieren.

  • Ich frag heute mal meinen Bekannten, was er dazu meint. Gedacht war es eine ca. 70 Euro teure Kamera zu kaufen und die Videos dann manuell abzuspeichern, wenn die das nicht selbst kann.


    Man merkt wahrscheinlich, dass ich keine Ahnung von Überwachungskameras und so habe. Sonst programmiere ich eher reine Software und da auch eher Windows-Programme. Also sind Programme mit Hardware für mich komplettes Neuland.

  • Nun ja, die heutigen IP-Cams haben alle eine sehr komfortable integrierte Basis-Funktionalität, was sie massgeblich von einer normalen "früheren" Überwachungs-Cam unterscheidet, die nur stumpf ein analoges Filmsignal gesendet hat ....so wie beim Abspielen einer Videokassette oder von einem DVD-Player. Da ging dann meistens vom Abspielgerät (eben auch von der Cam) ein HF-Antennenkabel ab und der TV hat das Bild angezeigt. Bei einer solchen Cam war dann früher dementsprechend auch oft eine TV-Karte im PC notwendig, um dort den "Film" anzuzeigen - also quasi ein Receiver wie im TV. Und um das Bild/den Film aufzunehmen hatte der "Videobild-Manager" am PC meist eine Grabbing-Funktion integriert, um den Film in irgendeinem Filmformat zu speichern. Also, ein weiterer markanter Unterschied ist das erwähnte analoge Signal, IP-Cams verwenden keine analogen Signale, sondern senden via TCP-IP digitale Daten. Und digitale Daten können halt leichter gespeichert werden.... idealerweise auf der lokalen SD-Karte der Cam oder via Netzwerk auf einem FTP-Server.


    Und jetzt noch ein paar Hinweise zu den Überlegungen einer IP-Überwachungs-Cam. Wenn ich "Carport" lese, dann fällt mir als alter Camper und Leser des Wohnwagen-Forums sofort eine Antidiebstahl-Maßnahme für einen Caravan ein. Gerade im Wohnwaren-Forum ist der RPi ja ein ständig wiederkehrendes und wiederholtes Thema , u.a. als WLAN-Hotspot oder zur Erweiterung von Komfortfunktionen in der Caravan-Elektronik. Und es wird auch häufiger vom Diebstahl eines neuen Wohnwagens berichtet.


    Also, nehmen wir der Einfachheit an, ein Diebstahlschutz ist geplant. Eine Billig-Cam, die nachts nur unscharfe verschwomme Gesichrer aufnimmt, ist genauso sinnvoll wie eine ausgeschaltete Cam. Das kann man sich sparen. Die Alarmfunktion einer Überwachungs-Cam macht darüber hinaus nur Sinn, wenn sie mich auch im Moment des Geschehens darauf aufmerksam macht, dass da was passiert ...wenn sich also Leute an meinem Caravan oder an meinem Auto zu schaffen machen. Und erst dann soll die Aufnahmefunktion beginnen. Das ist doch totaler quatsch 24h am Tag eine unbewegliche Deichsel oder Radkralle aufzunehmen und die Aufnahmen auch noch zu speichern. Aber die Cam kann nicht unterscheiden, dass da nur ne Taube im Grünstreifen pickt, oder das sich die durchlaufende Katze nur vom Platz unterm Wohnwagen ein Rezept für die Taube ausdenken möchte. Und ein waberndes Spinnennetz vor der Cam, eine Motte vor den Infrarot-LEDs oder ne fette Fliege... all das löst einen Bewegungs-Alarm aus ... weil die Cam eben massive Veränderungen am bestehenden Bild feststellt. Ne kleine Motte verdeckt nämlich den kleinen Bildsensor direkt auf der Cam und wirkt ebenso wie Mothra im Kino auf der Leinwand bildfüllend. Um damit also fehlerminimierend umzugehen, sollte die Cam zwar ein "weites" Objektiv (in Abstimmung zur Entfernung des Objektes) haben, aber sie muss mehrere Bereiche zulassen, die man einzeln im Gesamt-Bild markiert und so einstellt, das speziell nur auf Veränderungen in diesen Bereichen reagiert wird... und das auch noch mit einer Sensitivitätseinstellung. Sonst passierts nämlich, dass man über die Nacht 45 mal via SMS benachrichtigt wird, wenn die Cam aufgrund von Bewegungen im Sichtbereich einen Alarm auslöst. Bezogen auf den Wohnwagen würde ich auf dem Gesamt-Bild nur die Radkralle und die Deichsel markieren, so dass die Cam erst dann einen Alarm auslöst, wenn sich genau da jemand zu schaffen macht oder dran vorbeiläuft. Damit ist zwar nicht die Motte verhindert, aber doch die Taube und die Katze.


    Fazit, ne Billigcam, auf der man keine Gesichter erkennen kann, ist rausgeworfenes Geld. Wenn man die Alarmfunktion nicht nutzen will, sollte sie wenigstens auch (und gerade nachts) eine gute Bildqualität liefern. Und wenn man die Alarmfunktion nutzen will, ich tue das in Abwesenheit von zuhause bei meinen Cams z.B. mit Benachrichtigungen via SMS und Telegram-Messenger an mehrere Personen, dann muss man die Cam so "justieren" können, dass Fehleralarme minimiert werden.


    Für 70 Euro kriegst Du nur billigen Asia-Schrott, an den man auch nur geringe Erwartungen knüpfen kann. Probiers einfach.... und notfalls schickst Du sie zurück. Ich jedenfalls halte diese folgende Cam nicht für teuer..... und ich denke, die wird Deine Erwartungen frustfrei erfüllen:

    INSTAR Sicherheitskamera Überwachungskamera Nachtsicht Bewegungserkennung

    BTW, mir hat mal einer vom Fach gesagt, wenn die Kosten für die Sicherung eines Objektes etwa 10% des Wiederbeschafftungswertes des Objektes ausmachen, ist das eine angemessene, gute und sinnvolle Investition.

    Edited 7 times, last by ThomasL ().

  • Hab heute mal mit meinem Bekannten gesprochen: Er will sich erstmal selbst über Kameras informieren. Also scheint das Projekt für eine unbestimmte Zeit auf Eis zu liegen. Wenn ich es wieder aufnehme, sag ich bescheid.


    Vielen Dank schon mal bis hierhin für die Hilfe. Vor allem dir ThomasL für die ganzen Hinweise und Denkanstöße, vielen Dank.