RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Themen, die in keine andere Kategorie passen

Moderator: Co-Administratoren

cmjay
Beiträge: 2373
Registriert: 19.09.2012, 10:53
System: CCU
Wohnort: Jottweedee
Hat sich bedankt: 250 Mal
Danksagung erhalten: 348 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von cmjay » 01.08.2020, 09:55

nachdem meine ESP32-Cams immer häufiger die WLAN-Verbindung verlieren
Ich weiss nicht, wie dein WLAN-Netzwerk / Konfiguration aussieht, aber bei mir konnte ich einen eindeutigen Zusammenhang zwischen Verbindungsabbrüchen der ESP32-Cams und Kanalwechseln des WLAN feststellen. Mit der Einstellung "Automatische Kanalwahl" in der FB hatte ich ebenfalls häufig die Situation, dass die ESP32-Cams nach ein paar Tagen / Stunden die Verbindung verloren haben und ich sie neu starten musste (Spannungsversorgung trennen). Scheinbar mögen die Dinger keine Kanalwechsel. Seit ich in der FB und allen Access Points einen festen Funkkanal eingestellt habe, hatte ich keinen einzigen Verbindungsabbruch mehr (seit mindestens 2 Monaten). Die Teile laufen stabil durch.

P.S.: Bei mir läuft der "Original" Webcam Server Sketch aus der Beispiel-Bibliothek.

P.P.S.: Was mir noch einfällt: Es gibt in den neuesten MotionEyeOS Firmware Versionen einen Bug in Bezug auf die kontinuierliche Aufnahmefunktion (Abbrüche). Die 20190911 scheint die letzte in dieser Hinsicht fehlerfreie Version zu sein.
https://github.com/ccrisan/motioneyeos/issues/2378
Es kann leider nicht ganz ausgeschlossen werden, dass ich mich irre.
HmIP muss leider draussen bleiben. in Ausnahmefällen erlaubt
ACHTUNG! Per Portweiterleitung aus dem Internet erreichbare CCU-WebUI ist unsicher! AUCH MIT PASSWORTSCHUTZ! Daher: Portweiterleitung deaktivieren!

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 02.08.2020, 13:05

Das könnte durchaus ein Grund für die Verbindungsabbrüche sein, da ich den automatischen Kanalwechsel aktiviert habe. Aber wie gesagt, ich würde die Kamera auch gerne iVm der Syonology Surveillance Station nutzen wollen, was mit der ESP32-Cam nur per RTSP-Stream möglich ist. Aber der läuft leider alles andere als rund.

Ich denke, ich werde mir mal eine HiKam S6 HD holen. Die scheint mir ganz passabel für's Geld zu sein, arbeitet jedoch mit ONVIF.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 04.08.2020, 17:06

So, heute kam die S6 an. Muss schon sagen, eine wirklich gute Kamera für's Geld. Hab über Check24 60,- € bezahlt.

Hier mal ein Bild der Kamera ohne den Ständer, aus dem man sie recht einfach herausklippsen kann.
2020-08-04 16-48-40.jpg
Recht angetan bin ich von der WLAN-Reichweite, der automatisch aktivierbaren Nachtsichtfunktion per IR-LEDs, der Gegensprechfähigkeit per integriertem Mikro und Lautsprecher und der für den Preis durchaus ansprechenden Bildqualität in Verbindung mit dem leichten Fisheye-Objektiv. Viele Dinge, wie die Status-LED oder die IR-LEDs lassen sich auch dauerhaft über die App HiKam Pro deaktivieren.

Die Kamera ließ sich auch, wie erhofft, sehr einfach per ONVIF in die Surveillance Station integrieren.

Zwar ist das Kameramodul mit insgesamt 58,5 mm Durchmesser und 32 mm Höhe nicht unbedingt klein, aber der IR-Dom misst nur 41,5 mm x 20 mm und lässt sich folglich ohne Ständer ganz gut verstecken.

Also ich kaufe mir nun noch ein zweite S6, zumal HiKam einem bei einer Rückmeldung auch noch 10,- € schenkt. 8)
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 18.08.2020, 17:37

Kleiner Tipp.

Aktuell gibt's die S6 bei Amazon für 39,90 € dank 10,- € Rabattgutschein. Zudem gibt's die S6L, die keine Cloud- und Alexa-Unterstützung bietet, aber dadurch ggf. sogar sicherer sein könnte, für 29,90 €. Ich finde, das ist für diese wirklich gute Kamera ein toller Preis.

Eine S6 sitzt bei mir übrigens in der Garage.

Hier ein Bild im Dunkeln mit aktivierten IR-Dioden.
2020-08-18 17-38-26.png
Und noch mal bei eingeschaltetem Licht.
2020-08-18 17-42-13.png
Gruß,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 01.12.2020, 11:22

Hi,

ich versuche, mir von meiner RTSP-Kamera aus dem MJPEG-Stream über meine Synology Surveillance Station mit folgendem Link ein JPG-Bild unter "/tmp/Garage.jpg" auf meiner CCU3 zu erzeugen:

Code: Alles auswählen

string pictUrl =  "http://192.168.0.10:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

string picture = "/tmp/Garage.jpg";

dom.GetObject(ID_DATAPOINTS).Get("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q  --auth-no-challenge -O '"#picture#"' '"#pictUrl#"'");
Das funktioniert auch soweit. Sprich, es wird ein JPG erzeugt. Mein Problem ist jedoch, dass es sich dabei nicht um einen Snaphot handelt, sondern eben doch um einen regelmäßig aufgefrischten Stream, den ich mir dann so nicht per Push-Nachricht schicken lassen kann.

Hat evtl. jemand eine Idee, wie ich direkt ein JPG von der RTSP-Kamera (gerne auch über die Surveillance Station) erzeugen kann? Es scheint irgendwie zu funktionieren, zumal ich entsprechende PHP-Skripte im Netz gefunden habe. Aber leider kann ich damit keinen Snapshot erzeugen.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von alchy » 05.12.2020, 21:26

*IMHO* kriegst du da was du anforderst:

?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg

einen Stream im mjpeg Format.

Zu meinen damaligen SynologyZeiten gab es noch den Snaphot Zugriff via:

webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId=

gibts das nicht mehr?

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 06.12.2020, 13:43

alchy hat geschrieben:
05.12.2020, 21:26
gibts das nicht mehr?
Scheint so. Damit bekomme ich leider immer eine "code-105"-Meldung. Sprich, Zugriff nicht erlaubt.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 10.12.2020, 08:26

So, im Synology-Forum habe ich jetzt noch folgenden Tipp bekommen.
Laut API muss der Syntax so aussehen.
Wobei die ID angepasst werden muss und profile type ist 0=high, 1= balanced, 2= low

Code: Alles auswählen

http://192.168.x.x:5000/webapi/entry.cgi?version=9&id=2&api="SYNO.SurveillanceStation.Camera"&method="GetSnapshot"&profileType=1
Die Frage ist aber, wie findet die Authentifizierung statt? Normal sollte diese zuerst aufgerufen werden. Danach wird ein Session cookie gespeichert, gefolgt von der eigentlichen Snapshot URL.

Code: Alles auswählen

http://192.168.x.x:5000/webapi/auth.cgi&api=SYNO.API.Auth&method=Login&version=1&account=USER&passwd=PASSWORT&session=Surveillancestation
Hatte leider noch keine Gelegenheit, es auszuprobieren.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von alchy » 10.12.2020, 12:24

Sag ich doch. :wink:
Und das mit den Cookies kannst du dir wie gehabt kopieren aus meinen Synology Scripten.
Wenn ich da oder irgendwo anders nicht sogar irgendwo ein Beispiel gepostet habe für SnapShots.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: RTSP- oder MJPEG-fähige Mini-WLAN-Kamera

Beitrag von dtp » 22.12.2020, 12:45

So, ich hab's endlich hinbekommen. 8)

Hier mal das Skript, mit dem ich mir von der Synology Surveillance Station den Snapshot hole und im tmp-Verzeichnis der CCU unter "Bildname.jpg" speichere.

Code: Alles auswählen

! Snapshot von RTSP-Kamera holen
! Version 1.0, Autor: dtp

! +++++ Pfad und Name eines auf der CCU zu speichernden Bildes +++++
string pictPathCCU = "/tmp/Bildname.jpg";

! +++++ Zugriffsdaten Synology DiskStation +++++
string ipDiskStation = "xxx.xxx.xxx.xxx:5000"; ! IP:PORT der DiskStation
string account = "admin"; ! Admin-Name auf der DiskStation
string password = "xxxxxxxx"; ! Admin-Passwort
string cameraId = "xx&StmKey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";

! +++++ Deklaration weiterer Variablen +++++
string cookieUrl; string pictUrl;

! +++++ Snaphshot holen +++++
cookieUrl = "http://"#ipDiskStation#"/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=3&account="#account#"&passwd="#password;
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q --keep-session-cookies --save-cookies cookies.txt -O- '"#cookieUrl#"'");
dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

pictUrl = "http://"#ipDiskStation#"/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId="#cameraId;   
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q --load-cookies cookies.txt -O '"#pictPathCCU#"' '"#pictUrl#"'");
dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

WriteLine("Bild geholt");
Die Daten der Kamera bekommt ihr über die Surveillance Station. Dazu geht ihr zunächst in die Einstellungen für eure RTSP-Kamera und stellt die Kamera kurzeitig auf "MJPEG" um. Der Stream wird dann in der Regel unterbrochen, aber das ist erst mal nicht weiter tragisch, da ihr am Ende wieder alles auf "H.264" zurückstellt.
2020-12-22 12-33-35.png
Nun klickt ihr mit der rechten Maustaste auf die betreffende Kamera und dann auf "Stream-Pfad freigeben". Dort seht ihr dann die Daten eurer Kamera, die ihr in das obige Skript eintragt. Neben der IP-Adresse der DiskStation (1) findet ihr hinter "cameraID=" die wesentlichen ID-Daten der Kamera (2).
2020-12-22 12-34-31.png
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Antworten

Zurück zu „OffTopic“