Mehrere rtsp Streams in einem View

Hallo Zusammen,

ich habe 6 Kameras rund ums Haus, die ich schon seit Jahren richtig in meine Views einbinden möchte.

Aktuell nutze ich dafür mjpeg sowie rtsp stream.

Mit mjpeg habe ich technisch keine Probleme, das Signal läuft auf allen Tablets ob Android oder Windows flüssig und ich kann auch alle Streams parallel ansehen.
Leider ist die Qualität bei mjpeg sehr dürftig, in Form eines Popups um zu sehen was los ist reicht das, aber als dauerhafte Anzeige an einem fest installierten Platz ist mjpeg von der Qualität nicht geeignet.

Ich hatte schon mehrere Anläufe dies mit rtsp zu realisieren, leider stoße ich immer wieder auf div. Probleme.
Wenn ich einen Stream anzeigen lasse, funktioniert dies egal auf welchem Client problemlos.
Sobald ich mehr als einen Stream parallel ansehe, gehen die Probleme los.
Bei meinem Handy (Note9) funktionieren 2 parallele Streams gut, wenn auch etwas verzögert. Allerdings brauch ich dies auf dem Handy am wenigsten.
Die Android Tablets (alle etwas älter) brechen bei 2 gleichzeitigen Streams bereits ab.
Das View am im LAN verkabelten Windows PC, schafft leider auch nicht mehr. Bei dem Versuch 4 parallele Streams zu öffnen, bricht nicht nur das View ab sondern es hängt sich der gesamte IPS Dienst auf dem Raspi4 auf und muss neu gestartet werden.

Ich habe aktuell im Flur 2 17" Touchscreens hängen, auf einem läuft IPSView auf dem anderen die Kameraeinspielung über einen Raspberry.
Mein Ziel ist es die beiden 17" durch einen großen 34" zu ersetzen und alles über ein View zu lösen.
Mit den aktuellen Problemen ist dies nicht möglich. Dachte schon daran IPSView in ein Webfront zu integrieren und mir damit zu behelfen, leider ruckelt das Video im Webfront doch sehr stark was auch nicht schön ist.

Hat jemand von euch eine Idee, habe ich ggf. technisches Problem oder lässt sich so etwas gar nicht realisieren? Habe vereinzeln gelesen das manche den Umweg über VLC gegangen sind, konnte dies aber leider nicht nachbauen.

Für Hilfe wäre ich echt Dankbar.

Besten Gruß
André

Hi,

wie hoch ist denn die Auflösung bei den streams? weil je Kameras mit fullhd oder gar 4k den Anzeigeclient zu befeuern erfordert nunmal Rechenleistung. Die wird die pi4 nicht haben und das Smartphone schonmal gar nicht.

Hier hilft es, bei einer übersichtsanzeige die Auflösung drastisch runterfahren und ggf auch nur mit 2-8FPS anzeigen zu lassen. Bei einer Vergrößerung einer Kamera kann man dann die Auflösung bzw die fps erhöhen.

aber alles abhängig davon ob die Kameras auch streamprofile können.

Danke für den Hinweis,

ich habe alle Streams auf 720p.
Ist natürlich eine Idee den Stream für die Sammelansicht nochmal deutlich runter zu fahren.
Geht nur aktuell nicht solange ich auch die mjpeg Streams brauche.
Meine Kameras können 2 unterschiedliche Streams parallel ausgeben.
Wenn es an der Rechenleistung liegt, warum funktioniert es dann im Webfront?

Schau dir mal rtsptoweb an (github). Damit setze ich das um und es kostet quasi keine Rechenleistung auf dem Pi

Hallo @skeal,

danke Webrtc hatte ich bis dato noch nicht auf dem Schirm.
Erster Test scheint zu funktionieren.

Wie kann man da direkt auf einen einzelnen Stream zugreifen?
Ich will ja nicht eine klassische Website im View einbinden auf der ich dann hin und her schalten muss, sondern die einzelnen Streams an verschiedene stellen im View plazieren.
In der API Doku steht http://127.0.0.1:8083/stream/{STREAM_ID}/channel/{CHANNEL_ID}/webrtc
Leider komme ich darüber nicht auf die einzelnen Streams sondern immer nur einen 404 Error
oder ich verstehe es einfach nicht.
Mit http://127.0.0.1:8083/pages/multiview/full bekomme ich ein Vollbild aller Kameras im Raster
Ich möchte aber das Vollbild einer einzelnen bestimmten Kamera.

Teste parallel 2 weitere Webrtc-server bin bei allen aber genauso nass, bekomme keine direkten Videos ohne eine störende Steuerkonsole, etc.

Danke
André

Das mit dem einzelnen Stream ist auch in den Bugs momentan erwähnt und ich hoffe auf baldige Lösung. Dann ist das die schnellste und sauberste Art… ICh hab auch sehr lange gesucht

Ich suche schon eine Lösung die sich optisch richtig integrieren lösst.
Wenn ich die einzelnen Streams nicht in IPSView integrieren kann bringt mir das leider nur wenig.

Den Ansatz mit Webrtc finde ich vielversprechend, werde allerdings mit anderen Programmen weiterexperimentieren.
Sollte ich erfolgreich sein schreibe ich den Lösungsweg hier rein.

1 „Gefällt mir“

Hast du hier schon etwas erreichen können?

Leider bin ich bisher auch noch nicht weit gekommen.
Aktuell bin ich bei
https://snapcraft.io/rtsp-to-webrtsp

Dieses ist sehr einfach aufgebaut, mit ein wenig html Kenntnissen kann ich die Rahmen so eingrenzen das nur noch ein kleiner schwarzer Rand um das Bild zu sehen ist.
Aber Achtung das Programm wird komplett schreibgeschützt installiert so dass die index.html nicht verändert werden kann, auch ein verändern der Rechte geht nicht. Trick einfach das komplette Verzeichnis einmal kopieren und das original anschließend löschen, die Kopie dann einfach in das Original umbenennen und dann geht es. Man sollte dann nur kein Update des Programms mehr machen.

Wenn man die hässlichen Schaltflächen entfernt kann man leider nicht mehr auswählen welche Kamera man sehen möchte.
Man müsste für jede Kamera die App separat ausführen, dann brächte man in jeder Instanz nur eine Kamera eintragen und es würde gehen, leider sind meine Linux Kenntnisse dazu etwas zu beschränkt.
Ich habe leider keinen plan wie man das gleiche Programm 6x separat installieren kann.
Aktuell müsste ich hinter jeder Kamera einen eignen Raspberry mit dem Programm laufen lassen, dann würde dies problemlos gehen, dies wäre mir aber eine zu große Materialschlacht.

Ich bin weiterhin mit GitHub - deepch/RTSPtoWeb: RTSP Stream to WebBrowser unterwegs.

Dazu habe ich im webfront ordner eine html liegen die dem entspricht:

Das klappt jetzt super, verzögerungsfrei und man hat wirklich nur den Stream, den man einbinden kann als Webview in IPSView. Meine Suche ist beendet :slight_smile:

Das sieht super aus,

hatte mittlerweile das ganze mit dem kleiden Bruder „RTSPtoWebRTC“ experimentiert
https://github.com/deepch/RTSPtoWebRTC

Ist vom selben Entwicklerteam nur etwas schlanker aufgebaut.
Hier habe ich die index.html soweit zusammengeschrumpft das diese ausschließlich das Video anzeigt.
Die verschiedenen Videos können dann problemlos über die html Adresszeile ausgewählt werden.
Somit kann ich alle Videos, in verschiedenen Größen skaliert in einem View anzeigen ohne das dies an der Performance zu spüren ist.

Hatte dies jetzt vor 2 Wochen in den Realbetrieb umgesetzt und es läuft.

Funktioniert allerdings aktuell nur auf dem Windows-System und auf meinem Android Handy.
Ich habe noch einen Reihe von älteren Android Tablets in den einzelnen Zimmern, hier geht es aktuell noch nicht, muss dort mal einen aktuellen Chromebrowser installieren und dann nochmal versuchen.
Wenn das da auch funktioniert dann benötige ich die mjpeg Ausgabe nicht mehr und auch nicht die rtsp streams innerhalb von IPS.

Wenn jemand eine Interesse hat, stelle ich hier gerne die html Datei mit den Modifikationen bereit.

Zur Ergänzung:

Mei neuer 32" ELO Touch, in die Wand eingebaut. (gut gebraucht erstanden :slight_smile: )

Ja das würde mich auch interessieren. Kannst Bitte mal die Datei zeigen ?

OK, werde am Wochenende mal eine kleine Anleitung zusammenzimmern.

Das wäre super, Danke.

An der Schritt-für-Schritt Anleitung wäre ich auch sehr interessiert. Meine Streams machen mir auch immer wieder Probleme (schlieren, langsame Bewegungen etc.)
Viele Grüße
marvus

Ich habe es leider noch nicht geschafft die Schritte zu dokumentieren.
Ich werde an einem der nächsten Wochenenden die Videoüberwachung auf einen neuen Pi umziehen.
Habe an dem jetzigen gut 5 oder 6 verschiedene Videoprogramme drauf und zu viel experimentiert. Dabei werde ich versuchen alle Schritte gut zu beschreiben.

Hallo @akay ,
bist du schon auf den neuen Pi umgezogen und hast gute Neuigkeiten für uns?

Viele Grüße
marvus