Gladys Assistant 4.23: Live-Streaming von Kameras & Berechnungen in Szenen

Hallo zusammen,

Neue Version von Gladys, und das ist eine große Version!!

Die Hauptfunktion ist das Live-Streaming von Kameras auf dem Dashboard, aber das ist noch nicht alles :wink:

Ich lasse euch die Neuheiten in diesem YouTube-Video entdecken:

Oder lest die Zusammenfassung im Blog:

Zögert nicht, wenn ihr Fragen oder Feedback habt.

Hallo @PhilippeMA, ich habe gerade gesehen, dass du vor etwa einer Stunde versucht hast, eine Kamera über Gladys Plus zu streamen, und dabei einen Fehler erhalten hast, weil der Stream zu schwer war!

Zur Info: Aktuell gibt es eine Grenze von 10 MB pro Videochunk.

Aus Neugier, welche Kamera hast du und welche Parameter hast du lokal eingestellt? In welcher Auflösung ist dein Stream?

Wieder ein super Update, auch wenn mir die Konfetti am liebsten sind :smiley:

Kann man auf den Live-Stream einer an den Pi angeschlossenen Webcam zugreifen, auf dem Gladys installiert ist? (/dev/video0)
Bei mir funktioniert es nicht, aber ich weiß nicht, ob man etwas aktivieren muss…

Hallo @pierre-gilles, die Kameras sind tp-link Tapo c210 und c310, die in 1080p laufen; ich finde die Anzahl der IPs nicht, aber es sind mindestens 15 IPs.

Tatsächlich erscheint eine Fehlermeldung bei jedem Start. Wenn man den Stream-Button einmal oder sogar zweimal drückt, wird er schließlich angezeigt.

Ich habe 2 Tapo und hatte keine Probleme mit dem Livestream.

Vielleicht eine Geschichte mit einem zu installierenden RTSP-Server?

Hallo,

Ich weiß nicht, ob das Thema bereits behandelt / diskutiert wurde.
Aber nach dem letzten Update habe ich festgestellt, dass meine Szenen nicht mehr funktionieren. Da ich andere Dinge zu erledigen hatte, habe ich erst jetzt ein bisschen nachgeschaut und festgestellt, dass das Problem bei Zigbee2MQTT lag.

Die Oberfläche ****:8080 war nicht mehr erreichbar. Die Logs zeigten, dass es in einer Schleife steckte. Um das Problem zu beheben, muss man unbedingt den Typ des Dongles in der Konfiguration auswählen (neuer Parameter, um zukünftige Konfigurationen zu erleichtern).
Ist es normal, dass dieser Parameter nicht automatisch für diejenigen übernommen wurde, bei denen er bereits eingestellt und funktionsfähig war? Oder bin ich der Einzige, der dieses Problem hatte?

Schönen Abend und guten Wiedereinstieg morgen! :slight_smile:

Auf einem Sonoff -P gibt es keine Probleme :slight_smile:

Das ist auch mein Liebling :grin:

Normalerweise ja, bist du sicher, dass dieser USB-Port von Gladys aus sichtbar ist?

Ok, interessant, dass es nur 1080p ist, denn du bist der Einzige, der diese Fehler hat. Bist du in « niedriger » Latenz?

Tatsächlich hängt die Größe jedes Chunks davon ab, was der Stream anzeigt. Wenn der Stream sich nicht zu sehr ändert, kann die Größe des Videos abnehmen und von Gladys Plus akzeptiert werden, es ist ein bisschen Glück in deinem Fall.

Ich werde sehen, was ich tun kann, um die Größe des Streams zu begrenzen.

Das ist eine Regression! Nicht normal. Was hast du für einen Dongle? Musstest du eine spezifische Konfiguration vornehmen?

Ich habe es wie in der Dokumentation konfiguriert:


Aber…

Allerdings funktioniert nur ein Stream von den sechs Kameras, aber ich schiebe das auf die schwache Leistung der anderen Raspberry Pi-Hosts (es funktioniert mit dem Raspberry Pi 2, aber nicht mit dem Raspberry Pi Zero oder den Orange Pi Zero).

Kein Problem für mich auch nicht mit Tube’s Schlüssel auf RPI3 64 SSD
Allerdings habe ich festgestellt, dass in Szenen mit „Nur fortsetzen, wenn“ der Wert auf null gesetzt ist, dieser verschwunden ist. Bei einigen Szenen hat das keine Auswirkungen, bei anderen funktioniert es nicht mehr.

Sprichst du über bestehende Szenen? Kannst du mir beschreiben, wie ich den Fehler reproduzieren kann?

Beim Lesen des Frontend-Codes habe ich tatsächlich den Eindruck, dass es Stellen gibt, an denen implizite Umwandlungen auftreten, die Fehler verursachen! Das ist meine Schuld, ich habe bei der Überprüfung dieser Funktion nicht genug aufgepasst.

cc @bertrandda Vorsicht mit impliziten Umwandlungen, ich hatte im Frontend nicht darauf geachtet, aber zum Beispiel in dieser Zeile:

https://github.com/GladysAssistant/Gladys/commit/e7d09ad4416a93aefab164f3b92347cd6a5a2c03#diff-97f141bfc25e8815456114a6d2607c5125093dd0f541468e72a919437cc7028eR21

Auch in dieser Zeile:

https://github.com/GladysAssistant/Gladys/commit/e7d09ad4416a93aefab164f3b92347cd6a5a2c03#diff-97f141bfc25e8815456114a6d2607c5125093dd0f541468e72a919437cc7028eR83

Auch in dieser Zeile:

https://github.com/GladysAssistant/Gladys/commit/e7d09ad4416a93aefab164f3b92347cd6a5a2c03#diff-0b361d4133fdbfb667f8991e771a97473e8533863ce8d5f52456ff958987bd7bR32

Wenn der Wert also 0 ist, ist die Bedingung also falsch und die Benutzeroberfläche verhält sich nicht wie erwartet!

Ok, ich gebe zu, dass ich diese Möglichkeit nie in der Praxis getestet habe. Hast du etwas Erfahrung mit ffmpeg?

Man müsste es direkt auf deinem Pi testen, den Videostrom zu holen und ihn als mp4-Datei zu speichern, um zu sehen, ob es funktioniert oder nicht unterstützt wird…

Beispiel eines Tutorials, um das zu tun:

Wir verwenden ffmpeg auf Gladys-Seite, also wird das eine Idee geben, ob es funktioniert oder überhaupt nicht :slight_smile:

Das wird auf jeden Fall nie funktionieren, Live-Video-Streaming erfordert einen Mindest-CPU, um den Videostrom zu decodieren/encodieren/komprimieren/verschlüsseln, wenn der CPU am Ende ist, kommt es nicht mit ^^ Ich denke auch, dass es eine Frage der « Video-Funktion » ist, die im CPU verfügbar ist

Ja, ich bestätige dir, dass alle Kameras auf „niedrige“ Latenz eingestellt sind.

@PhilippeMA Ich habe gerade Performance-Verbesserungen für Gladys Plus bereitgestellt, die es mir ermöglicht haben, die Größenbegrenzung pro Chunk zu erhöhen (bis wir sehen, wie wir diese Chunks reduzieren können).

Kannst du es nochmal testen und mir sagen, ob es diesmal funktioniert? :slight_smile:

Danke @pierre-gilles. Ich habe es gerade getestet und das Ergebnis ist dasselbe (ich habe den Browser gewechselt Chrome + Firefox, ist gleich).

Gibt es etwas, das ich tun kann, um dir bei der Diagnose zu helfen?

Ja, auf einer bestehenden Szene, insbesondere einer mit einem Sonoff-Druckknopfschalter, um das Licht einzuschalten oder auszuschalten. Zwei identische Szenen, eine mit „Nur fortsetzen, wenn = 0“ und die andere mit „Nur fortsetzen, wenn = 1“.
Die Szene mit der 0, der Null, war verschwunden.
Ich konnte das Licht einschalten, aber nicht ausschalten.
Ich habe die Gelegenheit genutzt, um zur neuen Funktion Lichtumkehr zu migrieren.

Einige Fragen:

  • Funktioniert es lokal? (nicht über Gladys Plus)
  • Auf welcher Hardware läuft Gladys bei dir? Wenn du « htop » in der Kommandozeile ausführst, während du ein Live-Stream startest, was siehst du dann? (CPU/RAM, alles in Ordnung?)
  • Ist dein Netzwerk gut? (Fiber/ADSL?), welcher Ping und welche Geschwindigkeit?
  • Wenn du den Inspektor öffnest (Rechtsklick auf die Seite → Element untersuchen), Tab « Network », dann « Fetch/XHR ». Du leerst die Ansicht und startest einen Kameralive-Stream, was siehst du dann?

Was meinst du mit « war verschwunden »?

Ich habe auch eine Szene, die einen Wert auf 0 testet und die Null verschwindet nach dem Speichern der Szene.
Ich habe das bemerkt, weil meine Szene zum Schließen eines Rollladens nach dem Update nicht mehr funktioniert hat!

Deshalb mache ich in meiner Szene Folgendes

Ich teste, ob die Position des Rollladens größer als 0 ist. Wenn ja, dann schließe ich den Rollladen.

Wenn ich die Szene speichere, gibt es keinen Fehler. Dann gehe ich zurück und wenn ich die Szene erneut öffne, ist die 0 verschwunden.


Und deshalb funktioniert die Szene nicht