RTSP Relay, wenn die Kamera schlappmacht

Hi,

mal etwas aus dem Bereich des Luxusproblems.

Ich habe am Haus 3 Kameras, eine, die am Hauseingang, wird permament von vier Tablets und der Synology verwendet.

Seit einiger Zeit ist mir aufgefallen, das diese Kamera immer häufiger die Grätsche macht, sprich, der Stream bleibt schwarz oder wird erst gar nicht korrekt aufgebaut.

Bei der Kamera, eine Hikvison, kann man ein Diagnoseprotokoll runterladen und wenn man sich dieses wirklich umfangreiche Protokoll genauer anschaut, dann sieht man bspw soetwas

RTSP lib version is: 1.0.2 [11:36:11-May 19 2022]
Preview lib version is: 1.0.0 [11:36:04-May 19 2022]

max preview link:6 max playback link:1
chan_1 preview link ch1:1 ch2:3 ch3:0
       playback link:0
       record status:not record

chain  client_IP      play_type   stream_type  proto_type  date/time
chan1  192.168.146.2  preview     main stream  rtp_rtsp    2024-08-16 20:24:40 
chan1  192.168.146.3  preview     sub stream   rtp_udp     2024-08-17 13:46:00 
chan1  192.168.146.3  preview     sub stream   rtp_udp     2024-08-17 23:35:08 
chan1  192.168.146.3  preview     sub stream   rtp_udp     2024-08-18 09:32:18 

Interessant ist natürlich erstmal der Wert von „max preview link“, das heißt, bei 6 ist schluss. Das Tablet im Büro war zum Zeitpunkt der Abfrage ausgeschaltet. Da ich aber sehr oft, sowohl über IPSView als auch mit der Symcom App teste, kam es immer häufiger zu dem schwarzen stream.

Wie auch immer, was soll ich nun machen? Am besten wäre es, den Stream mit einem potenteren Device abzufragen und dann weiterzuleiten.

Daher habe ich ein wenig gesucht und ein passendes Dockerimage bei Github gefunden.

Dort wird die Kamera in der compose.yml eingetragen und in Symcon die neue URL bekannt gemacht.
Beispiel:

version: "3.7"
services:
  rtsp-relay:
    image: flaviostutz/rtsp-relay
    ports:
      - 8554:8554
    restart: always
    environment:
      - SOURCE_URL=rtsp://user:passwort@ipderkamera:554/Streaming/Channels/102
networks: {}

Symconseitig muss der RTSP Stream wie folgt eingegeben werden

Das ganze läuft ziemlich gut, meine Docker-VM benötigt ca 2% mehr CPU Leistung als vorher, der Versatz ist dabei deutlich unter 1 sek.

Vielleicht hilft das ja hier den einen oder anderen weiter.

Viele Grüße

1 „Gefällt mir“

Hi Kris,
Du musst die Kameras nicht unbedingt von allen Klienten quälen. Du kannst dir auch von der Synology, wenn Du den Surveilance Manager benutzt, einen Stream liefern lassen. Vielleicht ist der potenter.

Ralf

Die neue tile Visu braucht übrigens nur einen Stream, egal wie viele visus man offen hat.
Symcon vervielfältigt den dann.
Alternativ, wenn das Netzwerk es zulässt, können viele Kameras auch direkt Multicast. Dann wird der eine Stream der Kamera durch die Switche verteilt.
Wobei hier der Client bzw. die Anzeige Software dies auch unterstützen muss (Symcon kann es z.b. nicht).
Michael

Sicher das es bei der tile so ist? Das sieht meine hikvision nämlich anders. Beim webfront gab es den rtsp proxy aber bei der tile wird scheinbar durch gereicht.

Oben im Log die ip mit der .3 ist die symbox und fie drei offenen streams sind meine 3 tablets.

Ich habe den eindruck das der stream von der synology deutlich verzörgert ist. Muss ich aber nochmal verifizieren.