NEWS
Lokal abgelegten Snapshot in VIS anzeigen
-
@glasfaser
das wird was.
Bild wird gespeichert und auch in Vis angezeigt.
Jetz müsste nur noch der Timmer alle 3 sec das Bild aktualisieren.var fs = require('fs'); var timeout1 exec('ffmpeg -loglevel fatal -i rtsp://user:pwd@192.168.178.117:554/live/ch0 -vframes 1 -y -r 1 /tmp/Vorne.jpg'); timeout1 = setTimeout(function () { const picture= fs.readFileSync('/tmp/Vorne.jpg'); writeFile('vis.0','/klingelbild/Vorneneu.jpg', picture, function (error) { }); }, 20000);
Es wird also nur einmal dort gespeichert:
-
Zusatz,
wenn ich das Script stoppe und wieder starte, wird das Bild Aktualisiert - dauert 24 sec.
Sorry für die ganzen Fragen aber da kenne ich mich null mit aus
Danke für deine Geduld und Hilfe.Muss hier vielleicht noch ein wert rein?
timeout1 = setTimeout(function () {
-
@yoda
Nein ... der Timeoutwert ist unten , das heißt es wird das Bild bei Scriptstart geholt und nach 20 sec. in den Ordner gelegt .
Dort kannst du die Zeit runterschrauben !}, 20000);
-
@glasfaser
ah ok.
Dann müsste ich nochmal schauen das ein Intervall dazukommt, das die Bilder von der Kamera alle 3 sec geholt werden. Habe mich da wohl falsch ausgedrückt.
Das Skript soll ja dann dauerhaft laufen, mit Aktuelle Bilder in ...sec Takt. -
@yoda sagte in Lokal abgelegten Snapshot in VIS anzeigen:
Das Skript soll ja dann dauerhaft laufen, mit Aktuelle Bilder in ...sec Takt.
Würde gehen , aber nicht empfehlenswert.
Hier habe ich etwas von deiner Wansview gefunden , mit einem direkten Link in einem Widget ist es besser .
Kannst ja dort mal anfragenIch habe eine Wansview IPCamera welche mir über den den Browser ohne Probleme ein stream / snap .cgi Bild sendet.
-
@glasfaser
Danke für deine Hilfe und Zeit!
Habe ich mir angeschaut nur seine Wansview IP Cam macht ein Bild / stream über einen Browser.
Ich habe auch eine Wansview 1 oder 2 die macht das auch, da ist das alles klein Problem.
Wansview hat hier wohl für jedes Model eigene Befehle / Möglichkeiten, Problem ist die W6.Habe schon Kontakt mit denen aufgenommen, mal sehen ob was kommt..
Ansonst mal mit @Christian-Sandkaulen Vorschlag MotionEye weitermachen, oder Rücksendung. -
@christian-sandkaulen
ich habe nun MotionEye am laufen, bekomme nun auch eine http Adresse für Snapshot oder aus den Video Sream Pfad. Kann also alles per Broser Eingabe öffnen.Bild-Snapshot:
http://xxx.168.178.47:8765/picture/1/current/
Stream:
http://xxx.168.178.47:8081
Frame pro 1sec
http://xxx.168.178.47:8765/picture/1/frame/Nun fehlt mir noch die Steuerung das ich das Video bei einem Alarm über einen Variablen Daten Punkt /Objekt (Shelly+ Bewegungsmelder) Aufzeichnen / starten und später auch wieder beenden kann.
Bisher finde ich dazu noch nichts passendes,
ein Ansatz hier wäre mit externen GPIO:
https://github.com/avanc/motioneye-pir/blob/master/README.md
Ich benötige das aber alt mit Steuerung über einem Datenpunkt / Objekt.Mit dieses Befehlen sollte man die Motion steueren können - aber da tut sich nichts:
http://xxx.168.178.47:8765/1/detection/start
http://xxx.168.178.47:8081/1/Erkennung/Pausehttp://xxx.168.178.47:8081/1/config/set?emulate_motion=1
http://xxx.168.178.47:8081/1/config/set?emulate_motion=0curl http://xxx.168.178.47:8081/1/config/set?emulate_motion=1
curl http://xxx.168.178.47:8081/1/config/set?emulate_motion=0Kann mir hier noch jemand weiterhelfen?
LG -
@yoda ich denke für dieses neue Problem würde sich dann langsam ein eigener thread für anbieten
-
@yoda sagte in Lokal abgelegten Snapshot in VIS anzeigen:
http://xxx.168.178.47:8081/1/Erkennung/Pause
http://xxx.168.178.47:8081/1/config/set?emulate_motion=1
http://xxx.168.178.47:8081/1/config/set?emulate_motion=0
curl http://xxx.168.178.47:8081/1/config/set?emulate_motion=1
curl http://xxx.168.178.47:8081/1/config/set?emulate_motion=0- Läuft iobroker und MOtioneye auf demselben Rechner?
- Alle links mit Port 8081 deuten eigentlich auf den Streaming Link hin, kann mir nicht vorstellen das man da etwas steuern kann.
- Der Port zur KOntrolle ist eigenlich 7999
another possibility could be that the PIR set the camera to active processing the video stream
(http://192.168.1.14:7999/1/detection/start)
and then back to "pause"
(http://192.168.1.14:7999/1/detection/pause)reducing the false positives and the heating of the PI due to the active processing of videos all the time
https://github.com/ccrisan/motioneyeos/issues/842
iceboatLeniceboatLen created this issue 21. März 2017, 20:37 in ccrisan/motioneyeos
open -
@berzi hast recht - ist besser.
@wendy2702 - ich habe die Antworten dort auch vermerkt. Habe hier 2 Raspis im Einsatz.Hier der Neue Forumseintrag:
https://forum.iobroker.net/topic/42953/motioneye-zeitliche-video-aufnahmeDanke für die Hilfe hier!
LG -
Das funktioniert perfect, kann man das Bild auch innerhalb der vis kopieren und umbenennen?
request( { url: "http://192.168.178.xxx:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=hxxx&pwd=roadxxxxx", encoding: null, }, (error, response, body) => { if (!error && body) { writeFile("vis.0", "/klingelbild/VorneTest.jpg", body); } } );
-
@brainbug
Meinst du so :
Das Bild heißt eigentlich Vorne.jpg , wird aber dann in VIS mit Vorneneu.jpg kopiert .
https://forum.iobroker.net/topic/42416/lokal-abgelegten-snapshot-in-vis-anzeigen/17
-
@glasfaser ich glaube nein. Ich speichere den Zeitpunkt wann es an der Tür geklingelt hat. Und das auf die letzten 3 Aktionen. Nun möchte ich das jeweilige Bild dazu anzeigen können. Das aktuelle Bild welches die letzte Aktion darstellt hab ich nun schon in der Vis. Um dann das vorletztes Bild anzuzeigen müsste ich es ja nur vorher kopieren und dann das aktuelle überschreiben.
bild_aktuell
bild_vorletztes
bild_vorvorletztesVon oben nach unten überschreiben die Bilder das andere.
-
@brainbug
Ah .. ok , das wäre dann so
Habe es von hier , funktioniert sehr gut .
https://forum.iobroker.net/topic/25541/gelöst-wie-writefile-in-js-script-nutzen/66
-
@glasfaser danke werde ich probieren!
Funktioniert perfekt und ist schon in der Vis eingebaut! -
Hallo,
ich bin gerade über das selbe Problem gestoßen.
Man kann zwar die Bilder mit writefile ("vis.0"...)
hochladen. Jedoch möchte ich nicht jede Sekunde 5 Bilder auf diesem Weg hochladen, denn die Bilder an sich liegen schon im RAM, worauf ein Link unterhalb vis.0/kameras hinzeigt.Wenn ich jetzt jede Sekunde 5 Bilder mit dem oben beschriebenen Weg hochlade, wird dann ja doch wieder ständig auf die SSD geschrieben. Und genau das möchte ich vermeiden.
Es muss doch eine Möglichkeit geben, dass da dynamische Bilder eingebunden werden können, ohne diese jedes Mal im vis.0 zu registrieren.
Erstellt habe ich den Link mittels
sudo ln -s /dev/shm/ /opt/iobroker/iobroker-data/files/vis.0/kameras
und anschließendem iob fix, damit die Rechte zum iobroker wandern.
Plan B wäre jetzt extra dafür einen weiteren Webserver aufzumachen, welcher nur für die Bilderauslieferung zuständig wäre.
-
@peterfido sagte in Lokal abgelegten Snapshot in VIS anzeigen:
Es muss doch eine Möglichkeit geben, dass da dynamische Bilder eingebunden werden können, ohne diese jedes Mal im vis.0 zu registrieren.
warum?
-
Es gibt da schon mehrere Anfragen zu. Hier im Forum sowie als (leider geschlossenes) issue bei GitHub.
Ich habe jetzt extra einen WebServer für die sich ändernden Bilder aufgesetzt. In 10 Minuten erzeugen die sich ändernden Bilder etwa 1,5 GB an Daten. Daher liegen die nur im RAM. Würde ich die Bilder immer ins VIS.0 hochladen, würde das die Lebensdauer der SSD wohl ordentlich reduzieren.
-
@peterfido sagte in Lokal abgelegten Snapshot in VIS anzeigen:
Es gibt da schon mehrere Anfragen zu. Hier im Forum sowie als (leider geschlossenes) issue bei GitHub.
Links dazu würde weiterhelfen...
-
@peterfido sagte in Lokal abgelegten Snapshot in VIS anzeigen:
Es gibt da schon mehrere Anfragen zu.
ist das so?
Aber warum bist du der Meinung dass es gehen muss?
Die Bilder müssen in der vis Registriert werden.Daher geht's meines Wissens eben nicht anders.