FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: aloz77 am 04 Februar 2016, 17:10:44

Titel: Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 04 Februar 2016, 17:10:44
Ich habe einige (übrigens sehr gute!) Überwachungskameras Hikvision DS-2CD2032-I im Einsatz. Jetzt habe ich mir die Aufgabe gestellt, die Videos in FTUI auf einem Android-Gerät einzubinden. Ich bin ziemlich weit gekommen, die letzten Schwierigkeiten sind offensichtlich lösbar.

Die Kameras können als Substream wahlweise RTSP/H.264 oder MJPEG ausgeben, was beides in einem Android-Browser nicht unproblematisch ist. Vorweg: MJPEG ist auf Desktop easy als <img> einzubinden. Ich habe es jedoch auf Android (egal ob in Webview oder Chrome) auch mit Hilfe von diversen JS-Lösungen nicht zum Laufen gebracht.

Mein erster und komplizierterer Ansatz war RTSP in HLS umzukodieren, um dann in einem HTML5-Video-Tag abspielen zu können. Nach viel Rumprobieren kann ich sagen, das Umkodieren geht einfacher als gedacht. Das erledigt auf Raspi ein einziger FFMPEG-Prozess mit minimaler CPU Auslastung, da das Video schon glücklicherweise H.264 kodiert ist und nur remuxt und in HLS-Scheiben geschnitten werden muss.

mkdir /var/hls
ffmpeg -d -y -i rtsp://[user]:[pass]@[ipcam]:554/Streaming/Channels/2 -c copy -f hls -hls_time 3 -hls_list_size 3 -hls_wrap 10 /var/hls/mystream.m3u8 &


Man braucht jetzt noch einen Web-Server, mit dem man auf die Dateien im Verzeichnis /var/hls zugreifen kann. Ich habe nginx konfiguriert, es geht so ähnlich wahrscheinlich auch mit jedem anderen.

location /hls {
           types {
               application/vnd.apple.mpegurl m3u8;
               video/mp2t ts;
           }
           root /var;
           add_header Cache-Control no-cache;
           add_header Access-Control-Allow-Origin *;
       }


Jetzt kann man das Video einfach mit dem video-Tag einbinden:

<video src="http://[webserver]/hls/mystream.m3u8" type="application/x-mpegurl" controls autoplay width="640" height="480"></video>

Folgenden Stand habe ich nun auf Android (Nexus 7, CM12.1):

1. Das Video wird abgespielt mit ein paar Sekunden Verzögerung, was bei HLS normal scheint. Das finde ich auch nicht schlimm.

2. In Crome auf Android spielt das Video, wo es soll. Autoplay geht jedoch nicht.

3. In Fully Kiosk Browser auf Android (http://www.fully-kiosk.com) spielt das Video sowohl embedded als auch fullscreen. Auch Autoplay geht.

4. Das Seiteverhältnis im Video stimmt nicht. Es wird 16:9 aufgenommen, aber 4:3 gestreamt. Mit ffmpeg -aspect 16:9 geht das leider nicht zu korrigieren. Auch mit bekannten HTML-Mitteln ließ sich das Aspect Ratio auf Android nicht ändern. Das ist aber ein (spezifisches?) Problem der Hikvision-Kamera.

5. Es geht theoretisch auch mit dem Full-HD-Stream, nur da kommt bei mir ffmpeg (oder das Netzwerk?) an die Grenzen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: tomster am 04 Februar 2016, 17:58:07
DAS muss ich unbedingt in den nächsten Tagen ausprobieren. Danke schon Mal im Voraus!

Ich hab mir eine PTZ-Überwachungskamera vom Chinesen geholt, die nur RTSP/H.264 rauslässt. Da dafür ja keine native Browserunterstützung existiert, war's bislang Essig mit der Anbindung an's FTUI. Dass eine Traskodierung soo wenig CPU-Last verursacht hätte ich aber nie gedacht und deshalb schon von vorneherein die Finger davon gelassen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: inesa394 am 04 Februar 2016, 21:58:33
Hallo
Ich habe das bisher per vlc eingebunden Xiomi Ants Cam
was nur per firefox geht.
<div class="top-space">
      <embed type='application/x-vlc-plugin' pluginspage='http://www.videolan.org' version='VideoLAN.VLCPlugin.2'width='360' height='320' id='vlc' loop='yes' autoplay='yes'  img src="rtsp://192.168.2.100:554/ch0.h264" height="130%" wight="100%" border="1">
        </img src>
</div>

Was icht sehr performet ist.
Als Webserver nutze ich lighthttp
Weiss jemand wie man es dort per HLS einbindet ?
alias.url += (
"/xiomi" => "/home/xiomi/mystream.m3u8

So funktioniert es nicht :-[
Hatte es schon mal mit Zoneminder versucht aber dort wird
für h.264 Version 1.28 benötigt aber nur 1.26 bereitgestellt
beim Raspberry2.
Eine Möglichkeit Version 1.28 zu installieren habe ich bisher
nicht gefunden.Vielleicht weiß da jemand mehr hier.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: rumors am 04 Februar 2016, 22:18:07
Zitatfür h.264 Version 1.28 benötigt aber nur 1.26 bereitgestellt
beim Raspberry2.
Eine Möglichkeit Version 1.28 zu installieren habe ich bisher
nicht gefunden.Vielleicht weiß da jemand mehr hier

Hast du noch wheezy auf deinem PI2 ?
Kurze suche meinerseits ergab bei Jessie für zoneminder 1.28
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: inesa394 am 06 Februar 2016, 11:11:09
Hallo
Nein bei mir wird nur Version 1.26 bereitgestellt un die kann mit h264 nicht umgehen aber vieleicht
sind auch meine Paketquellen nicht aktuell..
Eine installation aus den Sourcen ist wohl nicht möglich?


Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: l3skon3 am 06 Februar 2016, 16:25:06
Hallo,

bei mir kommt leider schon beim Anlegen des Kodierungsprozesses ein Fehler:

root@raspberrypi:/var/hls# ffmpeg version 0.8.17-6:0.8.17-1+rpi1, Copyright (c) 2000-2014 the Libav developers
  built on Mar 25 2015 00:39:58 with gcc 4.6.3
The ffmpeg program is only provided for script compatibility and will be removed
in a future release. It has been deprecated in the Libav project to allow for
incompatible command line syntax improvements in its replacement called avconv
(see Changelog for details). Please use avconv instead.
Unrecognized option 'd'
Failed to set value '-y' for option 'd'


Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 06 Februar 2016, 20:34:17
Unrecognized option 'd'
Failed to set value '-y' for option 'd'


Lass -d einfach weg. Das sagt dem ffmpeg bei mir lediglich, dass er nicht so viel quatscht.

-d scheint eine nicht dokumentierte Option zu sein. Keine Ahnung, warum dein Build sie nicht kennt.

https://trac.ffmpeg.org/ticket/1698
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 06 Februar 2016, 20:36:50
Um das HTML5-Video-Abspielproblem in Android zuverlässig zu lösen, habe ich eine einfache neue Webview-basierte App geschrieben (Fully Fullscreen Browser (http://forum.fhem.de/index.php/topic,48862.0.html)), die alles macht, was ich will. Sie soll auf Android ab 4.4 laufen. Auch Autoplay bei Videos klappt jetzt dank einem kleinen Trick.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: kvo1 am 07 Februar 2016, 21:54:44
ich lese hier mal mit , auch ne offene Baustelle bei mir !
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: l3skon3 am 08 Februar 2016, 00:35:27
Zitat von: aloz77 am 06 Februar 2016, 20:34:17
Unrecognized option 'd'
Failed to set value '-y' for option 'd'


Lass -d einfach weg. Das sagt dem ffmpeg bei mir lediglich, dass er nicht so viel quatscht.

-d scheint eine nicht dokumentierte Option zu sein. Keine Ahnung, warum dein Build sie nicht kennt.

https://trac.ffmpeg.org/ticket/1698

Anscheinend liegt es das ich per Paketverwaltung installiert habe mit apt-get install ffmpeg.
Nun hab ich es von der ffmpeg.com seite Installiert und bin ein schritt weiter.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: peterk_de am 08 Februar 2016, 22:55:19
Zitat von: aloz77 am 04 Februar 2016, 17:10:44
Vorweg: MJPEG ist auf Desktop easy als <img> einzubinden. Ich habe es jedoch auf Android (egal ob in Webview oder Chrome) auch mit Hilfe von diversen JS-Lösungen nicht zum Laufen gebracht.

Also das lief und läuft bei mir Out-of-the Box auf 2 verschiedenen Tablets mit Chrome (Samsung Galaxy S 8.4 mit Android 5.0 und einem Acer Iconia Tab mit Android 4.x (grad nicht griffbereit) absolut problemlos und stabil ohne Aufhänger etc. Und zwar mit allen 4 Kameras, die ich in einem "Alarm-"-Pagetab auch alle gleichzeitig anzeige ...


    <div data-type="image"
     data-url="http://192.168.x.x/videostream.cgi?loginuse=admin&loginpas=xxxxx"
     data-size="100%"
     data-refresh="7">
    </div>


Nur die Refresh-Rate hab ich n bissel gedämpft (s.o.), aber das langt mir hin. Keine Abbrüche, nix .. also vielleicht notfalls mal mit gedrosselter Framerate probieren? Die Kameras sind 2xPanasonic WV Sc385 (teuer), 1xInstar IN-3010 (billig) 1xWansview NCL616W (billigstens).
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 09 Februar 2016, 21:35:23
Zitat von: peterk_de am 08 Februar 2016, 22:55:19
Also das lief und läuft bei mir Out-of-the Box auf 2 verschiedenen Tablets mit Chrome...

Das ist ein sehr interessanter Punkt. Ich habe hier mal tiefer reingeschaut. Es scheint, dass Android Chrome nicht das Problem mit MJPEG hat, sondern mit der Authentifizierung (basic auth), die in der URL mithängt. Bei meinen Cams geht der MJPEG-Stream AFAIK nur unter dieser URL:

http://[user]:[pass]@[ipcam]/Streaming/Channels/2/preview

Und genau das funktioniert im Chromium nicht. Es wurde anscheinend schon in 2011 aus Sicherheitsgründen abgeschaltet, dass eingebettete Inhalte eine eigene Authentifizierung durchführen können. Erstaunlicherweise funktioniert es im Chrome auf Windows noch. Also MJPEG ist bei diesen Cams nicht wirklich eine Option. (Beim RTSP-Stream lässt sich die Authentifizierung bei der Cam sogar abschalten, beim MJPEG nicht.)

Eine Diskussion zu diesem Thema gibt hier: https://code.google.com/p/chromium/issues/detail?id=308999

Edit: Das einbetten eines MJPEG-Video mit Auth im Chromium geht nicht, aber im eigenen Fenster aufrufen geht sogar gut. Also das ist nicht schick, aber es funktioniert:

<div data-type="pagebutton" data-url="http://user:pass@server/Streaming/channels/2/preview" data-icon="fa-video-camera" class="cell"></div>
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: peterk_de am 09 Februar 2016, 22:10:01
Na das könnte man doch dann aber vielleicht lösen ... probier mal, ob du bei dem Webinterface wenn du dich per HTTP-Auth einloggst nen Cookie mit ner Session-ID verpasst bekommst. Falls ja, könnte  danach (im gleichen Browser für eine Weile) der MJPEG-Stream ohne basic auth abrufbar sein... notfalls könnte man auch nen nginx Proxy dazwischenhängen, der das Basicauth anhängt. Spart ggü remuxen sicher nochmal CPU-Load.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 09 Februar 2016, 22:24:12
Der Cookie-Trick funktioniert übrigens nicht auf der Cam. Sie fordert auf /Streaming/... immer per 401 die Authentifizierung an.

Die CPU-Last des ffmpeg ist echt minimal (<5%). Ich bin zur Zeit voll von H.264 und HTML5-Video überzeugt und werde daher bei MJPEG nicht tiefer explorieren.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 17 Februar 2016, 12:19:40
Habe auch eine Hikvision IPcam.
Ich habe sie bei mir so eingebunden und funktioniert aber am PC nur in Chrome.
Am Tablet mit dem Fully Browser geht es auch in fast Echtzeit.


<li data-row="2" data-col="2" data-sizex="3" data-sizey="3">
        <header>Webcam 1</header>
   <div data-type="image" class="cell" data-url="http://10.0.0.87/Streaming/channels/1/httpPreview?snapShotImageType=JPEG&auth=XXXXXX" data-size="150%" data-refresh="5" >  </div>
</li>


Grüße
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: andre07 am 21 Februar 2016, 21:08:48
Hallo
Habe das hier mit hls auch mal Versucht.
Nur zeigt er mir leider in Chrome nichts an.
Wenn ich den Stream mit VLC öffne geht es.
Benutze als Webserver lighttpd dort habe
ich ein public Verzeichnis erstellt wo der
lighttpd drauf zugreifen kann Zugriff funktioniert
<li data-row="3" data-col="4" data-sizex="4" data-sizey="3">   
     <header class="headerTransparent">Keller</header>
<div class="top-space">
      <video src="http://192.168.2.108/~andre/mystream.m3u8" type="application/x-mpegurl" controls autoplay width="360" height="320"></video>
</div>
</li>

Habe ich irgendwas übersehen liegt es vielleicht an lighttpd das er mir nichts anzeigt.
Mit meiner Camera Xiomi Ants besteht nur Möglichkeit rtsp zu nutzen. Ein einbinden des
VLC plugin geht leider nur mit Firefox :(
Andre
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 22 Februar 2016, 03:15:52
In Chrome auf Windows geht HLS nativ auch nicht, nur mit einigen JS libs klappts. Chrome auf Android kann HLS dagegen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: l3skon3 am 22 Februar 2016, 07:36:25
Hallo,

genau das kann ich auch bestätigen, das es am Windows Browser liegt. Auf meinem Handy und VLC klappt alles wunderbar.

edit:
Hab das ganze noch von außerhalb meines Netzwerk versucht. Leider klappt das gar nicht.

Gruss

Daniel
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Mortas am 08 März 2016, 15:51:00
Hallo

irgendwie komme ich mit dem ffmpeg nicht weiter.

ffmpeg ist installiert und scheint auch zu laufen.
nginx ist auch installiert und konfiguriert so wie im 1 Post.

Wenn ich den befehl in die Konsole eingebe natürlich mit meiner IP und Login daten: ffmpeg -y -i rtsp://[user]:[pass]@[ipcam]:554/Streaming/Channels/2 -c copy -f hls -hls_time 3 -hls_list_size 3 -hls_wrap 10 /var/hls/mystream.m3u8 in die Konsole eingebe macht er auch was und Dateien werden im ordner HLS auch angelegt.

Aber wenn ich den link http://[webserver]/hls/mystream.m3u8 zum beispiel im VLC Player oder im Firefox öffne, kann der link nicht geöffnet werden.

Mache ich was falsch oder wie bekomme ich das Video mit der M3U8 datei angezeigt bzw. gestreamt?

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 09 März 2016, 05:32:44
Du kannst testweise versuchen die Dateien im hls-Ordner runtrzuladen und in VLC abzuspielen. Wenn das auch geht, würde ich die Webserver-Konfiguration doppelchecken.

Geht mit VLC die andere remote m3u8 zu spielen? Ich habpe bei mir auch lange gesucht,  bis ich feststellte, dass die Desktop-Firewall da was blockt bei VLC.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Mortas am 09 März 2016, 09:56:47
Die *.ts dateien haben alle so um die 3MB und es sind 9 Stück aber ich kann die mit VLC nicht abspielen.
Die m3u8 datei kann ich auch nicht abspielen.

Das Spuckt mir der Terminal aus. Siehe foto.


Noch jemand ne idee was falsch läuft?

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 16 März 2016, 11:40:56
Mich irritiert, dass deine Cam anscheinend einen mjpeg-Stream über RTSP liefert. Damit wird AFAIK kein HTML5-Video funktionieren. Es soll h.264 sein. Deswegen verschluckt sich FFMPEG vermutlich auch, da der Datenumfang bei der mjpeg-Kodierung einfach zu groß ist.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: haempy am 11 Juni 2016, 19:55:29
Servus aloz77,

ich habe nach deiner Anleitung den rtsp-Stream meiner Hikvision zu laufen gebracht und kann ihn in FTUI anzeigen lassen.
Als Browser auf meinem Tablet benutze ich den Fully-Browser!

Jetzt hab ich aber noch die Frage, ob das ständige Streamcodieren nicht die Lebensdauer meiner SD-Karte stark verkürzt?

Gruß
Roland
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 25 Juni 2016, 15:42:11
Zitat von: haempy am 11 Juni 2016, 19:55:29
... die Frage, ob das ständige Streamcodieren nicht die Lebensdauer meiner SD-Karte stark verkürzt?

Das kann dir logischerweise nur irgendwann deine SD-Karte sagen  :P Aber eine interessante Frage. Ich habe grade meine HLS-Dateien auf Ramdrive /var/tmp/hls ausgelagert. Funktioniert auch.

mkdir /var/tmp
nano /etc/fstab
# add this line: tmpfs /var/tmp tmpfs nodev,nosuid,size=1M 0 0
mount -a
df
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: haempy am 27 Juni 2016, 22:02:23
Danke für den Tipp! Allerdings war die Zeitverzögerung doch sehr heftig für eine Haustürcam...  Hab jetzt die Lösung via Amad gemacht. Dieses startet mir für 60s eine App auf dem Tablet, welche mir den rtsp stream direkt anzeigen kann. Verzögerung dort sehr gering in Gegensatz zu hls...

Gesendet von meinem HUAWEI VNS-L31 mit Tapatalk

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: uwemicro am 14 August 2016, 18:35:36
Hallo,
bezüglich #11 :

Bei mir (auf Raspi mit 7" Display) funktioniert es mit Chromium wenn man Chromium mit dem Parameter

--allow-cross-origin-auth-prompt

startet. Dann funktioniert die Kamera URL mit Username und Passwort.

Viele Grüße
Uwe
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: roadghost am 25 September 2016, 19:10:02
Hallo,

ich bastel auch gerade an der einbindung eines rtsp-Stream in FTUI.

Wo muss denn der Code eingefügt werden:

location /hls {
           types {
               application/vnd.apple.mpegurl m3u8;
               video/mp2t ts;
           }
           root /var;
           add_header Cache-Control no-cache;
           add_header Access-Control-Allow-Origin *;
       }


Gruß
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 07 Januar 2017, 09:39:45
@roadghost

das ist der Code den du für deinen Webserver benötigst um auf die "Datei *.m3u8 zugreifen zu können.

Bei Apache sollte das etwas anders aussehe und im Verzeichnis /etc/apache2/sites-enabled liegen.

PS: gibt es eventuell schön eine Lösung für dein Zeitversatz? Bei mir klappt der Stream sehr gut jedoch ist der Zeitversatz ziemlich störend.

Mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 12 Januar 2017, 22:04:38
Keiner eine Idee oder ist das bereits gelöst??
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 13 Januar 2017, 08:33:53
Was den Zeitversatz angeht, kannst du versuchen, die ffmpeg-Einstellungen etwas zu tweaken. Vermutlich ist da aber nicht viel zu holen, da auch der Browser den HLS-Sream etwas cachen muss, was zusätzlich ein paar Sekunden verbraucht.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 13 Januar 2017, 11:00:48
Zitat von: mrfloppy am 17 Februar 2016, 12:19:40
Habe auch eine Hikvision IPcam.
Ich habe sie bei mir so eingebunden und funktioniert aber am PC nur in Chrome.
Am Tablet mit dem Fully Browser geht es auch in fast Echtzeit.


<li data-row="2" data-col="2" data-sizex="3" data-sizey="3">
        <header>Webcam 1</header>
   <div data-type="image" class="cell" data-url="http://10.0.0.87/Streaming/channels/1/httpPreview?snapShotImageType=JPEG&auth=XXXXXX" data-size="150%" data-refresh="5" >  </div>
</li>


Grüße

Ich wäre ja auch mit dieser Variante glücklich, jedoch wird bei mir im Fully einfach kein Bild angezeigt? Es erscheint nur das kleine img-logo.
Im Firefox funktioniert es.

Woran könnte das liegen?

mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 13 Januar 2017, 11:12:19
Wie sieht die URL der Cam aus? Funktioniert's mit Chrome auf Android?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 13 Januar 2017, 12:04:05
Bin jetzt leider nicht vor Ort aber der String ist dem ziemlich ähnlich,
einzigige Unterschied ist, dass mein string so beginnt: http://user:pass@xxx.xxx.xxx.xxx//Streaming/channels/1/snapShotImageType=JPEG


mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: aloz77 am 13 Januar 2017, 12:34:08
Das mit user:pass habe ich vermutet. Hier ist eine Erklärung, warum das Video in Fully und Chrome nicht geht:

https://forum.fhem.de/index.php/topic,48735.msg407139.html#msg407139

Es gibt AFAIK keinen Workaround.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 13 Januar 2017, 12:45:15
Ok,
ginge eventuell eine andere Variante der Passwortübermittlung? Muss mal nachsehen ob meine Hikvision das anders auch kann.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: oli82 am 13 Januar 2017, 13:18:53
Nutze zwar kein FTUI, aber habe das einbinden des Streams der Hikvision in SV versucht und aufgegeben.
Durch die Änderung in Android bekomme ich es einfach nicht zum laufen und bin somit auf MJPEG umgestiegen.
Es gibt einen Ansatz des VLC Players in HTML5, aber da fehlt mir die Zeit und das Know-How um das umzusetzen :(

Nebenbei: Leider nutzt Hikvision nicht den RTSP Standard, was das ganze zusätzlich erschwert...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 13 Januar 2017, 19:28:16
Naja ich könnte bei meiner Hikvision den Substream auf MPEG umstellen. Würde das irgendetwas bringen?

Mir ist gerade eine Idee gekommen, die eventuell sogar funktionieren könnte!
Einzige Vorrausetzung sollte sein, Apache mit ModProxy.

Dadurch erledigt man das Problem mit der Passworteingabe und könnte den Stream oder das Jpeg ohne Passwort zur Verfügung stellen!

mal eben testen...

mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 14 Januar 2017, 09:50:00
Die Lösung mit mod_proxy funktioniert tatsächlich!
Wer hätte das gedacht, mein einziges Problem was ich noch habe ist, dass sich das Bild nicht aktualisiert trotz

data-refresh="5"

Gibt es einen anderen Code welcher eine Aktualisierung des Bildes anstößt?

Mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: setstate am 14 Januar 2017, 10:22:28
class="nocache" (ich muss das unbedingt zum Default machen ...)
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Tweak am 14 Januar 2017, 10:54:06
Danke damit klappt es nun!

Hier ein kurzes Howto wie das mit dem mod_proxy läuft.

Vorraussetzung ist ein Rechner/Raspi etc. mit Apache.

mod_proxy installieren

apt-get install libapache2-mod-proxy-html

mod_proxy aktivieren & apache2 neustarten

a2enmod proxy
a2enmod proxy_html
a2enmod proxy_http


Damit die Passwort-Eingabe von Apache erledigt wird, müssen die Passwörter eurer Camera gehashed werden daher:

auf dem device eine Datei mit dem Namen pass.py erstellen und ausführbar machen


nano pass.py

code reinkopieren und benutzer und passwort durch eure daten ersetzen

import base64
hash = base64.b64encode(b'admin:12345')
print(hash)



chmod u+x



python pass.py


die Ausgabe ist nun der Hash, diesen kopieren.

Weiter in der apache Konfiguration.

die datei /etc/apache2/sites-enabled/000-default.conf öffnen und folgendes eintragen unter DocumentRoot


        ProxyRequests Off
        <Proxy *>
                Order deny,allow
              Allow from all
        </Proxy>
        ProxyPass /camera/ http://IP-Adresse-der-Kamera/Streaming/channels/1/  <----- Beispiel meiner Hikvision
        ProxyPassReverse /camera/ http://IP-Adresse-der-Kamera/Streaming/channels/1/ <----- Beispiel meiner Hikvision
        <Location /camera/>
        RequestHeader set Authorization "Basic <euer ermittelter Hash>" ohne <>
        </Location>


danach apache2 neuladen


service apache2 reload


Nun sollte das JPEG ohne Passwort wie folgt erreichbar sein:

http:///IP-Adresse-des-Gerätes-wo-Apache-läuft/camera/picture?snapShotImageType=JPEG

Einbinden ins FTUI wie zuvor erwähnt:

<li data-row="2" data-col="2" data-sizex="3" data-sizey="3">
        <header>Webcam 1</header>
   <div data-type="image" class="cell nocache" data-url="http:///IP-Adresse-des-Gerätes-wo-Apache-läuft/camera/picture?snapShotImageType=JPEG" data-size="150%" data-refresh="5" >  </div>
</li>



mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: bruece-lee am 10 Juni 2017, 10:02:23
Hallo,

ich habe versucht den mod_proxy einzurichten und scheitere gerade mit folgender Fehlermeldung:

AH00526: Syntax error on line 22 of /etc/apache2/sites-enabled/000-default.conf:
Invalid command 'RequestHeader', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.


Hat jemand einen Tipp für mich, was ich tun muss um die Probleme mit dem unbekannten Kommando 'RequestHeader' zu beheben?

Update: Ich konnte die Fehler inzwischen selbst lösen. Zur Info für alle anderen mit ähnlichen Problemen, ich musste noch folgendes machen um alle Fehlermeldungen aufzulösen:


sudo apt-get install libxml2-dev
sudo a2enmod xml2enc

sudo a2enmod headers

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Shadow3561 am 13 Juni 2017, 19:09:52
@ Tweak

du kannst zu deiner Anleitung noch folgendes hinzufügen.

Zitatsudo a2enmod headers

Bei mir kannte Apache2 die Anweisung "Request Headers" in der 000-default.conf nicht.
Danach hat es dann geklappt.

Danke für den Workaround
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Wiesel am 15 September 2017, 23:03:33
Hallo Zusammen,

ich wollte auch mal meine noch nicht perfekte Lösung hierzu beitragen.

Ich habe nach einer gefühlten Ewigkeit es geschafft mir den Kamerastream meiner Hootoo's HT-IP211HDP nativ im Browser anzeigen zu lassen. Der Stream ist zwar ca 30 sek verzögert und läuft an sich minimal langsamer aber für mal kurz von Unterwegs nachzusehen reicht es vollkommen aus.
Zoneminder hatte bei meinem Raspi 2 eine CPU Auslastung von >70% bei gerade mal ~6 FPS. Jetzt sind es 20FPS und ~4% CPU Last mit ffmpeg.

Mein Lösungsansatz:
- Apache 2.4 mit ReverseProxy (SSL)
- nginx mit "nginx-ts-module"
- ffmpeg
- videojs (web video player)


Apache 2.4 mit ReverseProxy (SSL)

SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
# SSLProxyCheckPeerExpire off

ProxyRequests Off

# ProxyPass/ProxyPassReverse leitet HTTP requests auf eine andere URL um
ProxyPass /fhem https://localhost:8083/fhem
ProxyPassReverse /fhem https://localhost:8083/fhem





nginx mit "nginx-ts-module"
https://github.com/arut/nginx-ts-module (https://github.com/arut/nginx-ts-module)

Achtung gefährliches Halbwissen ;D

Das Modul habe ich so konfiguriert, dass die HLS Dateien in /opt/fhem/www abgelegt werden. Ich weiß das ist nicht gut für die SD-Karte aber weiß keine alternative, da die m3u8 Datei vom Server aus erreichbar sein muss.

Auszug /usr/local/nginx/conf/nginx.conf
http {
    server {
        listen 8000;

        location /publish/ {
            # This directive sets unlimited request body size
            client_max_body_size 0;

            ts;
            ts_hls path=/opt/fhem/www/media/hls segment=20s;
            ts_dash path=/opt/fhem/www/media/dash segment=20s;
        }

        location /play/ {

            types {
                application/x-mpegURL m3u8;
                application/dash+xml mpd;       
                video/MP2T ts;
                video/mp4 mp4;
            }
            alias /opt/fhem/www/media/;
        }
    }
}



ffmpeg
Mittels ffmpeg habe ich nun den RTSP Stream in MPEGTS umgewandelt und zum ngninx-ts-modul geschickt.

ffmpeg -i rtsp://XXX.XXX.XXX.XX:554/11 -bsf:v h264_mp4toannexb -c copy -f mpegts http://localhost:8000/publish/ipcam1




videojs
Zum Wiedergeben des HLS Streams habe ich mich für videojs mit videojs-contrib-hls entschieden. Hierzu habe ich folgende html erstellt.

<!doctype html>
<html>

<head>
  <link href="https://vjs.zencdn.net/6.2.7/video-js.css" rel="stylesheet">

  <!-- If you'd like to support IE8 -->
  <script src="https://vjs.zencdn.net/ie8/1.1.2/videojs-ie8.min.js"></script>
</head>

<video id=example-video width=960 height=540 class="video-js vjs-default-skin" controls>
  <source
     src="/fhem/www/media/hls/ipcam1/index.m3u8"
     type="application/x-mpegURL">
</video>
<script src="https://vjs.zencdn.net/6.2.7/video.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/videojs-contrib-hls/5.10.1/videojs-contrib-hls.min.js"></script>
<script>
var player = videojs('example-video');
player.play();
</script>

</html>



Sonstige Einstellungen

Was ich derzeit händisch mache und noch nicht im Skript eingefügt habe ist die Änderung der Ordnerrechte.
Von dem Modul werden die Ordner automatisch als "(0700) rwx------" angelegt. Diese müssen auf "(0755) rwxr-xr-x" abgeändert werden, da sonst videojs die Datei nicht findet.



Alternative
Vorher hatte ich dies mit dem nginx-rtmp-modul gearbeitet.
Nachteil hier:
- Port 1935 muss offen sein, wenn man von außen zugreifen will
- Wiedergabe im Browser nur mit jwplayer (geht nicht vom Android aus)

Vorteil
- war nur 3-4 sekunden verzögert


Vielleicht konnte ich ja dem ein oder anderen helfen :-)


Grüße Wiesel
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: E-J-D am 23 September 2017, 23:04:22
Zitat von: aloz77 am 04 Februar 2016, 17:10:44
Jetzt kann man das Video einfach mit dem video-Tag einbinden:

<video src="http://[webserver]/hls/mystream.m3u8" type="application/x-mpegurl" controls autoplay width="640" height="480"></video>
.
.
.
3. In Fully Kiosk Browser auf Android (http://www.fully-kiosk.com) spielt das Video sowohl embedded als auch fullscreen. Auch Autoplay geht.


Im Prinzip funktioniert meine Konfig. Aber wie bekomme ich das Video in FTUI denn in eine so schöne Kachel reingepflanzt :-) ?? Mein Video überlagert meine FTUI in Fully total. Anscheinend kenne ich mich mit der Widget Konfiguration in FTUI noch nicht so aus. Zumindest ist mir ein Video Widget noch nicht untergekommen. Oder habe ich einen grundsätzlichen Denkfehler?!?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: tomster am 13 August 2018, 11:27:52
Auch auf die Gefahr hin, dass es niemand liest, weil der Thread schon seit Monaten nicht mehr "beschrieben" wird:

Mir ist eine vermeintliche Transcodierungsmöglichkeit unter die Augen gekommen, die vielleicht eine Alternative zu den bisher genannten Varianten sein kann. Also zumindest wenn jemand noch ein unbenutztes Android-Handy rumliegen hat. Mit der App "tinyCam Pro" kann man angeblich den RTSP-Stream einer Kamera über den in der App eingebauten Webserver nach MJPEG transcodieren:
https://support.actiontiles.com/communities/12/topics/3441-tinycam-pro-android-app-web-server-stream-rtsp-and-wyze-cam-to-actiontiles

Wie performant das geht, konnte ich noch nicht ausprobieren, weil ich erstmal meine RTSP-Kamera und mein altes Smartphone wieder rauskramen (=suchen) und anschließen muss.
Vielleicht hat aber jemand anderes die "Zutaten" schon griffbereiter rumliegen... Wahrscheinlich ginge es (Performance & tatsächliche Funktion vorausgesetzt) auch auf dem Tablet, welches FTUI anzeigt...

--edit--

Ich hab's natürlich nicht ausgehalten und mir die App Mal schnell auf meinem Handy (recht aktuelles Nokia 8) installiert. Eine testweise Einbindung einer Überwachungskamera bei uns im Büro hat einwandfrei funktioniert. Das Bild wird wunderbar als MJPEG im Browser angezeigt. Leider kann ich noch keine genauen Angaben zur Performance machen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: tomster am 14 August 2018, 14:00:39
Ach, und bevor ich es vergesse:

Über diesen Weg "umgeht" man auch das Problem mit den inzwischen auf allen Browserplattformen gesperrten http://user:password@server. Der Webserver von tinyCam wird wie eine Axis-Kamera angesprochen und erlaubt somit auch die Angabe der Login-Credentials über Parameter.  Vielleicht funktionieren dadurch auch "alte" Webcams, die zwar MJPEG ausgeben können, aber noch die basic authentication mittels URL encoding voraussetzen. Probieren lohnt sicher...

Ich hab die App inzwischen auf einem Nexus5 am laufen und auch von dort, geht bislang alles ohne Probleme. Mal schauen, ob der USB-Port an der Fritzbox ausreichend dimensioniert ist, um das Smartphone während des Betriebs zu laden. Dann läge das Handy zukünftig neben der Fritte und würde nicht mehr angelangt.

Und nur der Ordnung halber:
Ich bin mit tinyCam weder verwandt, noch verschwägert.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Florian_GT am 14 August 2018, 19:47:43
Ich habe bei mir Zoneminder als zwischenstation laufen, und die Streams, wie auch immer diese von der Kamera denn kommen, was das Format angeht, werden umgewandelt in MJPEG, und diese habe ich dann in Zoneminder eingebunden...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: patator am 19 April 2019, 14:55:18
Hallo zusammen,

ich habe dank dieser Anleitung versucht auf die Passwort geschützten Wansview W2 Kameras zuzugreifen und das Passwort Popup zu umgehen, damit ich über Fully Browser meinen Stream abgreifen kann.
Leider bekomme ich dennoch ein Passwort Popup beim Zugriff. Gibt es hierzu noch ggf. Tips?

Hier mien Auszug:

<VirtualHost *:8888>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ProxyRequests Off
#ProxyPreserveHost On
        <Proxy *>
              Order deny,allow
              Allow from all
        </Proxy>
        <Location /camera/>
        RequestHeader set Authorization "Basic Basic ZmhlbTpmaGVt"
        </Location>
        ProxyPass /camera/ http://192.168.2.26/mjpeg/stream.cgi?chn=1
        ProxyPassReverse /camera/ http://192.168.2.26/mjpeg/stream.cgi?chn=1

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet



Zitat von: Tweak am 14 Januar 2017, 10:54:06
Danke damit klappt es nun!

Hier ein kurzes Howto wie das mit dem mod_proxy läuft.

Vorraussetzung ist ein Rechner/Raspi etc. mit Apache.

mod_proxy installieren

apt-get install libapache2-mod-proxy-html

mod_proxy aktivieren & apache2 neustarten

a2enmod proxy
a2enmod proxy_html
a2enmod proxy_http


Damit die Passwort-Eingabe von Apache erledigt wird, müssen die Passwörter eurer Camera gehashed werden daher:

auf dem device eine Datei mit dem Namen pass.py erstellen und ausführbar machen


nano pass.py

code reinkopieren und benutzer und passwort durch eure daten ersetzen

import base64
hash = base64.b64encode(b'admin:12345')
print(hash)



chmod u+x



python pass.py


die Ausgabe ist nun der Hash, diesen kopieren.

Weiter in der apache Konfiguration.

die datei /etc/apache2/sites-enabled/000-default.conf öffnen und folgendes eintragen unter DocumentRoot


        ProxyRequests Off
        <Proxy *>
                Order deny,allow
              Allow from all
        </Proxy>
        ProxyPass /camera/ http://IP-Adresse-der-Kamera/Streaming/channels/1/  <----- Beispiel meiner Hikvision
        ProxyPassReverse /camera/ http://IP-Adresse-der-Kamera/Streaming/channels/1/ <----- Beispiel meiner Hikvision
        <Location /camera/>
        RequestHeader set Authorization "Basic <euer ermittelter Hash>" ohne <>
        </Location>


danach apache2 neuladen


service apache2 reload


Nun sollte das JPEG ohne Passwort wie folgt erreichbar sein:

http:///IP-Adresse-des-Gerätes-wo-Apache-läuft/camera/picture?snapShotImageType=JPEG

Einbinden ins FTUI wie zuvor erwähnt:

<li data-row="2" data-col="2" data-sizex="3" data-sizey="3">
        <header>Webcam 1</header>
   <div data-type="image" class="cell nocache" data-url="http:///IP-Adresse-des-Gerätes-wo-Apache-läuft/camera/picture?snapShotImageType=JPEG" data-size="150%" data-refresh="5" >  </div>
</li>



mfg
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 19 April 2019, 14:57:40
Zitat von: Florian_GT am 14 August 2018, 19:47:43
Ich habe bei mir Zoneminder als zwischenstation laufen, und die Streams, wie auch immer diese von der Kamera denn kommen, was das Format angeht, werden umgewandelt in MJPEG, und diese habe ich dann in Zoneminder eingebunden...


Und wie schauts es da aus mit der Verzögerung?

LG
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Florian_GT am 19 April 2019, 15:12:38
Zitat von: mrfloppy am 19 April 2019, 14:57:40

Und wie schauts es da aus mit der Verzögerung?

LG

Max. 1-2 Sekunden. Aber im moment ist es Echtzeit. Keine Verzögerung.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: misux am 12 Oktober 2019, 21:38:10
Hallo!!!

Das mit Zoneminder klingt interesant! Leider bin ich ein noob und bräuchte Hilfe falls das jemand hier kann und Muße hat...

Ich habe auf meinem Raspi 3B Fhem laufen. Kann man da Zoneminder installieren? Oder ist das zu Leistungshungrig?

Wie funktioniert das genau?

Wie kann ich damit meine RTSP Streams in FTUI einbinden?

Vielen Dank!
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: misux am 27 Oktober 2019, 20:45:04
Hi!

Ich habe es inzwischen geschafft zomeninder zum laufen zu bringen und meine Cams dort einzubinden...

Aber ich bekomme es ums verrecken nicht hin diese Streams in meinem FTUI einzubinden...

Mein Code sieht so aus:

<div class="vbox">
<div data-type="image"
     data-url="http://192.168.1.77/zm/cgi-bin/nph-zms?scale=50&width=640px&height=480px&mode=jpeg&maxfps=30&monitor=1&connkey=759202&rand=1572204260"
     data-size="100%"
     data-refresh="7"></div>
</div>


Aber bekomme kein Video angezeigt...

Muss ich im Zoneminder irgendwas aktivieren oder einstellen? Habe in der WIKI nichts gefunden..

Kann mir bitte jemand einen Tipp geben?

Vielen Dank!
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 21 Dezember 2019, 22:25:39
Hallo zusammen!

Zur Info an Interessierte, ich habe im Fully Kiosk Browser FTUI am laufen und habe dort die RTSP Streams meiner IPcams in FullHD und Echtzeit zB in einem Popup Widget. (Wenn jemand klingelt, wird das Cam Bild maximiert...)

Dazu benutze ich das sogenannte Janus Gateway von Meetecho https://github.com/meetecho/janus-gateway, welches die RTSP Streams via WebRTC an einen html Videotag in der FTUI leitet.

Ich habe schonmal darüber geschrieben https://forum.fhem.de/index.php/topic,98012.0.html aber damals war das wegen fehlender Codecs in der Chrome Webview nicht möglich. In der aktuellen Chrome 79.0.3945.93 funtioniert das endlich.

Es ist also nicht unmöglich, aber man muss eben Janus dafür aufsetzen zB wie ich, in einem Docker Container https://github.com/AlpenFlizzer/janus-gateway-docker. Dann noch mithilfe von zwei .js Dateien das ganze in die FTUI einbetten und läuft.

Grüsse, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: misux am 15 Januar 2020, 07:28:28
HI!

Das klingt sehr interessant!

Hast du vielleicht die Muße das etwas zu erläutern?

Wo ist das Gateway installiert?  Läuft es vielleicht sogar auf dem gleichen System wie Fhem?

Ich würde nämlich gerne 8 Cams auf dem Tablet laufen lassen, es muss nicht in FullHD sein aber sie sollten alle 8 gleichzeitig auf einer Page sichtbar sein und so verzögerungsfrei wie möglich.

Finde das Thema sehr interessant bin aber leider nicht so bewandert in Linux und vor allem wie man das installiert und die Cams einbindet...

Im Moment nutze ich auf einem Android Mediaplayer TinyCam Pro, dieser stellt mir als MJPEGStream die Cams ins Netzwerk, und ich greife diese Streams im FTUI ab. Das funktioniert auch soweit ganz gut, es stört mich aber das man auf einen zusätzlichen Player nicht verzichten kann und die Qualität ist auch nicht die Beste...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: blasterx am 15 Januar 2020, 15:35:22
Das würde mich auch näher interessieren.

Gruß BlasterX
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Mumpitz am 16 Januar 2020, 06:25:53
Wäre auch sehr interessiert!
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Florian_GT am 25 Januar 2020, 19:03:32
Da ist jetzt auch mein Interesse geweckt. Aktuell gibt es für das DoorPI ja nur eine Möglichkeit per Fritzbox über SIP zu kommunizieren. Eine zwei Wege Kommunikation wäre cool. Bild und Video ;)
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Florian_GT am 25 Januar 2020, 19:04:52
Und langfristig wollte ich ohnehin weg von Zoneminder, weil doch recht Ressourcenhungrig, hin zu den Clients die selber die Bilder bei Bewegung verschicken und oder die Aufzeichnungen irgendwo ablegen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 28 Januar 2020, 10:35:01
Hallo!

Mit so einem Interesse habe ich gar nicht gerechnet...  :D

In meinem original Post habe ich schon einige Links dabei. Ich habe (wie auch viele andere) meine Fhem Umgebung in Docker laufen, und dafür habe ich auf GitHub auch eine Demo veröffentlicht, die verwendet werden kann, um den "Janus-Server" zu betreiben. Grundsätzlich kann Janus aber auch direkt auf einen Rechner installiert werden, dabei müsste man im Prinzip einfach alle Schritte aus dem Dockerfile zu Fuß zB am Raspi oder NUC machen.

Bezogen auf die Einrichtung mittels meinem Docker Container:

In groben Zügen muss man folgende Schritte machen
  1. Den Janus Container starten. (Nun kann man mittels IP-Adresse des Hosts, auf dem Janus läuft bereits auf Port 10080 einen Demo-Stream anschauen - http://<Host-IP>:10080/streamingtest.html)
  2. Die Janus Streaming-Config anpassen, also für jeden Stream die Einstellungen tätigen. (Stream ID vergeben, Stream benennen, die RTSP URL eingeben, RTSP username, RTSP passwort, etc.)
      Nach jeder Änderung muss Janus neu gestartet werden, damit die Änderungen übernommen werden.
  3. Es gibt zwei JavaScript Dateien die man in den FTUI Ordner "js" ablegen muss. janus.js und janusStreamer.js
  4. In der Datei janusStreamer.js muss jetzt noch die korrekte IP des Janus Server eingestellt werden.
  5. In der FTUI index.html noch die nötigen Abhängigkeiten inkludieren: zB

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/6.4.0/adapter.min.js"></script>
<script type="text/javascript" src="janus.js"></script>
<script type="text/javascript" src="janusStreamer.js">//Edit Janus Gateway Server IP in this file at first!</script>

  6. Irgendwo in der FTUI (zB in einem Popup Widget hab ich es) den Stream einbinden: zB

        <script>
openStream("99", "rtspdemo");//zB 99 ist die ID des Streams, welche in der Streaming Config am Janus Server vergeben wurde. "rtspdemo" ist die ID des video-Tags, wo das Video spielen soll.
</script>

<video id="rtspdemo" width="400" height="auto" autoplay muted>
<!--Works in Chrome and Firefox for Windows and in Chrome for Android-->
</video>


Klingt nach viel, ist es aber nicht unbedingt.  ;D

In meinem GitHub repo https://github.com/AlpenFlizzer/janus-gateway-docker findet man alle Dateien die benötigt werden. Nutzt man Docker, so ist das ganze zur Hälfte schon Plug'n'Play.

Zitat von: Florian_GT am 25 Januar 2020, 19:03:32
Da ist jetzt auch mein Interesse geweckt. Aktuell gibt es für das DoorPI ja nur eine Möglichkeit per Fritzbox über SIP zu kommunizieren. Eine zwei Wege Kommunikation wäre cool. Bild und Video ;)
Das Janus Gateway ist eigentlich auch primär als (Video)Konferezn-Call System mittels WebRTC gedacht. Das RTSP Streaming ist nur ein "Abfallprodukt" der Entwickler. Eine Video-Gegensprechanlage innerhalb der FTUI könnte man damit also wahrscheinlich realisieren - da bin ich aber dann raus. :D

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Stonemuc am 28 Januar 2020, 11:37:13
Nachdem ich mein FTUI jetzt fertig habe, werde ich das auch mal in Angriff nehemen. Meine aktuelle Iframe Lösung mit Zoneminder ist auch jicht das Gelbe vom Ei, da ja immer die komplette Page abgebildet wird und nicht nur das Bild.
Dabei kann ich FHEM direkt auch mal in einen Docker Container auf meinem OMV Server ziehen....dann spare ich mir den Raspi bzw. kann ihn anderweitig verwenden.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Gerrit am 28 Januar 2020, 18:50:16
Moin,

nachdem meine uralte China-Foscam gestorben war, bei der man noch direkt den MJPEG-Stream abgreifen konnte, musste etwas neues her. Die neue, billige Ezviz-Cam liefert nur rtsp. Lösung für mich war dann die Installation von motioneye https://github.com/ccrisan/motioneye/wiki (https://github.com/ccrisan/motioneye/wiki) auf meinem NUC, auf dem auch FHEM läuft. Funktioniert wunderbar und den umgewandelten Stream konnte ich dann wieder in FTUI/FULLY auf dem Tablet einbinden. Das ganze gibt es auch als komplettes Image (motioneyeos) für den Raspberry.

Gruß Gerrit

Gesendet von meinem ONEPLUS A6013 mit Tapatalk

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 05 Februar 2020, 18:02:32
Zitat von: SB am 28 Januar 2020, 10:35:01
Hallo!

Mit so einem Interesse habe ich gar nicht gerechnet...  :D

In meinem original Post habe ich schon einige Links dabei. Ich habe (wie auch viele andere) meine Fhem Umgebung in Docker laufen, und dafür habe ich auf GitHub auch eine Demo veröffentlicht, die verwendet werden kann, um den "Janus-Server" zu betreiben. Grundsätzlich kann Janus aber auch direkt auf einen Rechner installiert werden, dabei müsste man im Prinzip einfach alle Schritte aus dem Dockerfile zu Fuß zB am Raspi oder NUC machen.

Bezogen auf die Einrichtung mittels meinem Docker Container:

In groben Zügen muss man folgende Schritte machen
  1. Den Janus Container starten. (Nun kann man mittels IP-Adresse des Hosts, auf dem Janus läuft bereits auf Port 10080 einen Demo-Stream anschauen - http://<Host-IP>:10080/streamingtest.html)
  2. Die Janus Streaming-Config anpassen, also für jeden Stream die Einstellungen tätigen. (Stream ID vergeben, Stream benennen, die RTSP URL eingeben, RTSP username, RTSP passwort, etc.)
      Nach jeder Änderung muss Janus neu gestartet werden, damit die Änderungen übernommen werden.
  3. Es gibt zwei JavaScript Dateien die man in den FTUI Ordner "js" ablegen muss. janus.js und janusStreamer.js
  4. In der Datei janusStreamer.js muss jetzt noch die korrekte IP des Janus Server eingestellt werden.
  5. In der FTUI index.html noch die nötigen Abhängigkeiten inkludieren: zB

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/6.4.0/adapter.min.js"></script>
<script type="text/javascript" src="janus.js"></script>
<script type="text/javascript" src="janusStreamer.js">//Edit Janus Gateway Server IP in this file at first!</script>

  6. Irgendwo in der FTUI (zB in einem Popup Widget hab ich es) den Stream einbinden: zB

        <script>
openStream("99", "rtspdemo");//zB 99 ist die ID des Streams, welche in der Streaming Config am Janus Server vergeben wurde. "rtspdemo" ist die ID des video-Tags, wo das Video spielen soll.
</script>

<video id="rtspdemo" width="400" height="auto" autoplay muted>
<!--Works in Chrome and Firefox for Windows and in Chrome for Android-->
</video>


Klingt nach viel, ist es aber nicht unbedingt.  ;D

In meinem GitHub repo https://github.com/AlpenFlizzer/janus-gateway-docker findet man alle Dateien die benötigt werden. Nutzt man Docker, so ist das ganze zur Hälfte schon Plug'n'Play.
Das Janus Gateway ist eigentlich auch primär als (Video)Konferezn-Call System mittels WebRTC gedacht. Das RTSP Streaming ist nur ein "Abfallprodukt" der Entwickler. Eine Video-Gegensprechanlage innerhalb der FTUI könnte man damit also wahrscheinlich realisieren - da bin ich aber dann raus. :D

Grüße, Sascha

Hallo Sascha,

ich habe es probiert meine beiden Cams mit deinen Janus Docker zum laufen zu bekommen, leider ohne Erfolg.
Hast du evtl. den ein oder anderen Tipp fü mich.

Der Docker läuft soweit die streamtest seite kann ich aufrufen. Dort sehe ich auch meine angelegten rtsp-Streams.
Wenn ich nun einen davon Starte passiert leider nichts.
Hier mal die Stream Config
rtsp-CamHaustuer: {
type = "rtsp"
id = 90
description = "CamHaustuer"
audio = false
video = true
url = "rtsp://192.168.xx.xx:8081/live/ch0"
rtsp_user = "xxxx"
    rtsp_pwd = "xxxxx"
videofmtp = "profile-level-id=42E01F;packetization-mode=1"
}
rtsp-CamTerrasse: {
type = "rtsp"
id = 91
description = "CamTerrasse"
audio = false
video = true
url = "rtsp://user:pass@192.168.xx.xx:8081/live/ch0"
videofmtp = "profile-level-id=42e01f;packetization-mode=1"


Bei der zweiten CamTerrase habe ich die URL mal so eigetragen wie es unter Zoneminder lief.

Im Janus Log steht folgendes

  Starting Meetecho Janus (WebRTC Server) v0.9.0
---------------------------------------------------
Checking command line arguments...
Debug/log level is 4
Debug/log timestamps are disabled
Debug/log colors are enabled
Adding 'vmnet' to the ICE ignore list...
Using 192.168.xx.xx as local IP...
[WARN] Token based authentication disabled
itializing recorder code
Initializing ICE stuff (Full mode, ICE-TCP candidates disabled, half-trickle, IPv6 support disabled)
TURN REST API backend: (disabled)
[WARN] Janus is deployed on a private address (192.168.0.10) but you didn't specify any STUN server! Expect trouble if this is supposed to work over the internet and not just in a LAN...
Crypto: OpenSSL pre-1.1.0
[WARN] The libsrtp installation does not support AES-GCM profiles
[WARN] No cert/key specified, autogenerating some...
Fingerprint of our certificate:
[WARN] Event handlers support disabled
Plugins folder: /opt/janus/lib/janus/plugins
[WARN] Plugin 'libjanus_audiobridge.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_echotest.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_nosip.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_recordplay.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_sip.so' has been disabled, skipping...
Loading plugin 'libjanus_streaming.so'...
Sessions watchdog started
Joining Janus requests handler thread
JANUS Streaming plugin initialized!
[WARN] Plugin 'libjanus_textroom.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_videocall.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_videoroom.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_voicemail.so' has been disabled, skipping...
Transport plugins folder: /opt/janus/lib/janus/transports
Loading transport plugin 'libjanus_http.so'...
HTTP webserver started (port 8088, /janus path listener)...
[WARN] HTTPS webserver disabled
Admin/monitor HTTP webserver started (port 7088, /admin path listener)...
[WARN] Admin/monitor HTTPS webserver disabled
JANUS REST (HTTP/HTTPS) transport plugin initialized!
[WARN] Transport plugin 'libjanus_pfunix.so' has been disabled, skipping...
Loading transport plugin 'libjanus_websockets.so'...
[WARN] libwebsockets has been built without IPv6 support, will bind to IPv4 only
libwebsockets logging: 0
WebSockets server started (port 8188)...
[WARN] Secure WebSockets server disabled
Admin WebSockets server started (port 7188)...
[WARN] Secure Admin WebSockets server disabled
JANUS WebSockets transport plugin initialized!
[WARN] libnice version outdated: 0.1.13 installed, at least 0.1.15 recommended
WebSockets thread started
[rtsp-CamTerrasse] New video stream! (ssrc=149996275, index 0)
[rtsp-CamHaustuer] New video stream! (ssrc=94148464, index 0)
Creating new session: 8666580308003567; 0x7fc53c0010c0
Creating new handle in session 8666580308003567: 6846312543500239; 0x7fc53c0010c0 0x7fc53c001620
[6846312543500239] Creating ICE agent (ICE Full mode, controlling)
[6846312543500239] The DTLS handshake has been completed
[janus.plugin.streaming-0x7fc53c001340] WebRTC media is now available
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[WARN] [rtsp-CamTerrasse] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamTerrasse] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=935727369, index 0)
[rtsp-CamTerrasse] New video stream! (ssrc=2050315095, index 0)
[WARN] [rtsp-CamTerrasse] 5s passed with no media, trying to reconnect the RTSP stream
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamTerrasse] Reconnected to the RTSP server, streaming again


Vielen Dank für deine Mühe

VG Alex
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 05 Februar 2020, 19:02:56
Zitat von: majestro84 am 05 Februar 2020, 18:02:32
...
ich habe es probiert meine beiden Cams mit deinen Janus Docker zum laufen zu bekommen, leider ohne Erfolg.
Hast du evtl. den ein oder anderen Tipp fü mich.

Hallo Alex, nach der Installation, hast du da mal die Streams getestet die ich zum Testen in der Streaming Config habe? (Highway und Bunny) Haben die gespielt? -> Wenn nicht, liegt es vermutlich am Browser, momentan läufts unter Windows komischerweise nur im Edge. (Unter Android: Edge, Chrome und Fully - habe ich getestet)

Zitat von: majestro84 am 05 Februar 2020, 18:02:32
Der Docker läuft soweit die streamtest seite kann ich aufrufen. Dort sehe ich auch meine angelegten rtsp-Streams.
Wenn ich nun einen davon Starte passiert leider nichts.
Hier mal die Stream Config
rtsp-CamHaustuer: {
type = "rtsp"
id = 90
description = "CamHaustuer"
audio = false
video = true
url = "rtsp://192.168.xx.xx:8081/live/ch0"
rtsp_user = "xxxx"
    rtsp_pwd = "xxxxx"
videofmtp = "profile-level-id=42E01F;packetization-mode=1"
}
rtsp-CamTerrasse: {
type = "rtsp"
id = 91
description = "CamTerrasse"
audio = false
video = true
url = "rtsp://user:pass@192.168.xx.xx:8081/live/ch0"
videofmtp = "profile-level-id=42e01f;packetization-mode=1"


Bei der zweiten CamTerrase habe ich die URL mal so eigetragen wie es unter Zoneminder lief.

Variante 2 funktioniert jedenfalls nicht, user und pass müssen in den vorgesehenen Variablen übergeben werden (wie in Variante 1 bei dir.)
Im VLC Player für Windows kann man recht gut prüfen, ob die URLs funktionieren. Du könntest mal nachschauen, ob mit den URLs im VLC ein Video kommt. (da kannst du user und pass sogar weglassen, da kommt falls nötig ein Login Fenster) Im VLC "Strg+N" drücken (von den 4 Reitern in dem Fenster "Netzwerk" auswählen) und dort mal deine URLs testen.

Ich habe die Erfahrung gemacht, dass eine falsche Einstellung für einen Stream in der Streaming Config irgendwie die anderen mitreißen kann. Ich würde mich also herantasten, erst mal einen zum Laufen bringen und dann den zweiten dazu.

Viel Glück noch!

Grüße S
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 06 Februar 2020, 00:00:51
Hallo Sascha

Im Vlc läuft der Stream auf anhiebt natürlich mit Benutzer und Passwort eingabe.
Dein Test Stream läuft leider auch nicht. Aber der Stream geht auch nicht im VLC.
Das mit dem Tipp am PC das nur Edge geht ist schon mal Super ich hätte nur mit Firefox geguckt.

Habe jetzt die Config erst einmal auf ! Stream reduziert. Ich bekomme jetzt folgede Meldungen im LOG

[rtsp-CamHaustuer] New video stream! (ssrc=1952157332, index 0)
Creating new session: 5182987307203176; 0x7f8df80010c0
Creating new handle in session 5182987307203176: 5253337636888115; 0x7f8df80010c0 0x7f8df8001620
[5253337636888115] Creating ICE agent (ICE Full mode, controlling)
[WARN] [5253337636888115] ICE failed for component 1 in stream 1, but let's give it some time... (trickle received, answer received, alert not set)
[5253337636888115] The DTLS handshake has been completed
[janus.plugin.streaming-0x7f8df8001340] WebRTC media is now available
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=1960758513, index 0)
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=1475811090, index 0)
[janus.plugin.streaming-0x7f8df8001340] No WebRTC media anymore
[5253337636888115] WebRTC resources freed; 0x7f8df8001620 0x7f8df80010c0
[5253337636888115] Creating ICE agent (ICE Full mode, controlling)
[WARN] [5253337636888115] ICE failed for component 1 in stream 1, but let's give it some time... (trickle pending, answer received, alert not set)
[ERR] [dtls.c:janus_dtls_retry:1029] [5253337636888115] DTLS taking too much time for component 1 in stream 1...
[janus.plugin.streaming-0x7f8df8001340] No WebRTC media anymore


ICE und DTLS scheinen hier noch ein Problem zu sein. Liegt es vielleicht an einer älteren libnice Version?
Nutzt du das Dockerfile noch so wie im Git?

VG Alex
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 06 Februar 2020, 12:26:02
Habe heute noch einige Versuche gemacht mit aktueller libnice und auch den Docker Uptodate gebracht (Ubuntu 18.04 usw)
Leider ohne erfolgt.
Die ICE Errors sind nun weg aber der Stream läuft einfach nicht.
Fall Dir noch was einfällt schieß einfach drauf los.

---------------------------------------------------
  Starting Meetecho Janus (WebRTC Server) v0.9.0
---------------------------------------------------
Checking command line arguments...
Debug/log level is 4
Debug/log timestamps are disabled
Debug/log colors are enabled
Adding 'vmnet' to the ICE ignore list...
Using 192.168.xx.xxx as local IP...
[WARN] Token based authentication disabled
itializing recorder code
Initializing ICE stuff (Full mode, ICE-TCP candidates disabled, half-trickle, IPv6 support disabled)
TURN REST API backend: (disabled)
[WARN] Janus is deployed on a private address (192.168.0.10) but you didn't specify any STUN server! Expect trouble if this is supposed to work over the internet and not just in a LAN...
Crypto: OpenSSL >= 1.1.0
[WARN] No cert/key specified, autogenerating some...
Fingerprint of our certificate: A4:56:C1:06:77:7E:AD:03:3D:B2:53:5C:BE:E6:47:C3:A8:17:32:92:72:32:D5:06:EE:C6:A6:E9:B1:F1:55:71
[WARN] Event handlers support disabled
Plugins folder: /opt/janus/lib/janus/plugins
[WARN] Plugin 'libjanus_audiobridge.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_echotest.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_nosip.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_recordplay.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_sip.so' has been disabled, skipping...
Loading plugin 'libjanus_streaming.so'...
Joining Janus requests handler thread
Sessions watchdog started
JANUS Streaming plugin initialized!
[WARN] Plugin 'libjanus_textroom.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_videocall.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_videoroom.so' has been disabled, skipping...
[WARN] Plugin 'libjanus_voicemail.so' has been disabled, skipping...
Transport plugins folder: /opt/janus/lib/janus/transports
Loading transport plugin 'libjanus_http.so'...
HTTP webserver started (port 8088, /janus path listener)...
[WARN] HTTPS webserver disabled
Admin/monitor HTTP webserver started (port 7088, /admin path listener)...
[WARN] Admin/monitor HTTPS webserver disabled
JANUS REST (HTTP/HTTPS) transport plugin initialized!
[WARN] Transport plugin 'libjanus_pfunix.so' has been disabled, skipping...
Loading transport plugin 'libjanus_websockets.so'...
[WARN] libwebsockets has been built without IPv6 support, will bind to IPv4 only
libwebsockets logging: 0
WebSockets server started (port 8188)...
[WARN] Secure WebSockets server disabled
Admin WebSockets server started (port 7188)...
[WARN] Secure Admin WebSockets server disabled
JANUS WebSockets transport plugin initialized!
WebSockets thread started
[rtsp-CamHaustuer] New video stream! (ssrc=1011994142, index 0)
Creating new session: 2687497555481130; 0x7f75f4001320
Creating new handle in session 2687497555481130: 3060060135836127; 0x7f75f4001320 0x7f75f40018e0
[3060060135836127] Creating ICE agent (ICE Full mode, controlling)
[3060060135836127] The DTLS handshake has been completed
[janus.plugin.streaming-0x7f75f40015e0] WebRTC media is now available
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=1237561953, index 0)
[ERR] [ice.c:janus_ice_outgoing_stats_handle:3889] [3060060135836127] Got 1 SRTP/SRTCP errors in the last few seconds (last error: srtp_err_status_replay_fail)
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=228645649, index 0)
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=571133442, index 0)
[janus.plugin.streaming-0x7f75f40015e0] No WebRTC media anymore
[3060060135836127] WebRTC resources freed; 0x7f75f40018e0 0x7f75f4001320
Destroying session 2687497555481130; 0x7f75f4001320
Detaching handle from JANUS Streaming plugin; 0x7f75f40018e0 0x7f75f40015e0 0x7f75f40018e0 0x7f75f4002b00
[3060060135836127] Handle and related resources freed; 0x7f75f40018e0 0x7f75f4001320
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=1011620062, index 0)
[WARN] [rtsp-CamHaustuer] 5s passed with no media, trying to reconnect the RTSP stream
[rtsp-CamHaustuer] Reconnected to the RTSP server, streaming again
[rtsp-CamHaustuer] New video stream! (ssrc=1704636547, index 0)


Muss in den .js Dateien noch was angepasst werden ausser die Ip?
Port oder so?
Evtl Die Apache Einstellungen?
Muss das Docker Netzwerk als Host sein?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 06 Februar 2020, 16:16:59
Also der Janus aus dem Repo funktioniert!!!

VM in proxmos installiert, docker installiert, repo geclont, docker-compose durchgeführt und gewartet.
Danach im Edge die Seite aufgerufen und das Bunny Video wird einwandfrei abgespielt.

Zur info noch wenn es wer auf einem Tablet versucht.
Es geht eigentlich nur auf Tablets mit einer eigenen GPU wie zb GPU Mali-T628 MP6.

LG Thomas
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 06 Februar 2020, 17:20:02
OK danke für die Info das Bunny Video läuft bei mir auch nicht im VLC
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Stonemuc am 06 Februar 2020, 22:01:43
Welches Docker Image hast du genau genommen? Ich finde diverse janus-gateway images, aber das was du verwendet hast, finde ich auf meinem OMV nicht...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 06 Februar 2020, 22:19:14
Hallo

Ich habe den Docker noch einmal neu gestartet.
Das heißt vom Git ausgecheckt https://github.com/AlpenFlizzer/janus-gateway-docker  (https://github.com/AlpenFlizzer/janus-gateway-docker)
in der docker-compose.yml # entfernt um die Demo mit dem Hasen zu bekommen.
Docker erstellt und gestartet.
Danach folgende Fehler im Log und kein Video zu sehen.

Sessions watchdog started
[ERR] [plugins/janus_streaming.c:janus_streaming_rtsp_connect_to_server:5601] Couldn't send DESCRIBE request: Timeout was reached
[ERR] [plugins/janus_streaming.c:janus_streaming_init:1905] Error creating 'rtsp' stream 'rtsp-test'...
JANUS Streaming plugin initialized!


Also eigentlich alles so wie du es auch gemacht hast Thomas.
Wie gesagt der Stream vom Hasen läuft bei mir auch nicht mit VLC

VG Alex
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 07 Februar 2020, 07:51:07
Zitat
in der docker-compose.yml # entfernt um die Demo mit dem Hasen zu bekommen.

habe ich nicht gemacht, sondern so genommen alles wie aus dem Repo.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 07 Februar 2020, 13:55:14
Ich bekomme den Bunny Stream so oder so einfach nicht zum laufen immer der gleiche Fehler. Und im VLC läuft er auch nicht.
Und wenn der nicht läuft brauche ich glaube ich mit der Kamera erst gar nicht weiter machen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 11 Februar 2020, 12:57:42
Das Problem bei meiner Kamera ist das sie den RTSP-Stream über TCP sendet und nicht über UDP.
Wenn ich es richtig recheriert habe kann Janus nur UDP.

VG Alex
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 14 Februar 2020, 13:29:20
Dieses Detail kannte ich noch gar nicht. Da hatte ich vermutlich "Glück" beim Kamera Kauf.

Inzwischen betreibe ich ohnehin einen extra NVR mit PoE verkabelten Cams. Die Kamerabilder bekomme ich auf einen 13 Zoll Monitor über den HDMI Anschluss des NVR.
"Integrieren" kann man das zwar nicht so 100% aber man kann mit den Alarmeingängen "umschalten", welches Bild gezeigt wird (zB Eventbasiert) oder mittels FTUI Buttons die Bilder durchzappen wie beim Fernsehschauen... :-D

Der Lösung kommt MotionEyeOS zB für den Raspi am nächsten. Siehe auch:
Zitat von: Gerrit am 28 Januar 2020, 18:50:16
Moin,

nachdem meine uralte China-Foscam gestorben war, bei der man noch direkt den MJPEG-Stream abgreifen konnte, musste etwas neues her. Die neue, billige Ezviz-Cam liefert nur rtsp. Lösung für mich war dann die Installation von motioneye https://github.com/ccrisan/motioneye/wiki (https://github.com/ccrisan/motioneye/wiki) auf meinem NUC, auf dem auch FHEM läuft. Funktioniert wunderbar und den umgewandelten Stream konnte ich dann wieder in FTUI/FULLY auf dem Tablet einbinden. Das ganze gibt es auch als komplettes Image (motioneyeos) für den Raspberry.

Gruß Gerrit

Gesendet von meinem ONEPLUS A6013 mit Tapatalk

Gruß, Sascha

PS: Mit dem NVR erlebe ich endlich mal echtes Plug'n'Play ^^
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: majestro84 am 14 Februar 2020, 14:46:29
OK danke für deine Antwort.
Motioneye habe ich auch schon ausprobiert allerdings muss ich sagen das Zoneminder für mich besser erscheint. Problem bei der Lösung mit motioneye und Zoneminder ist halt die doch schon hohe Leistungsanforderungen der Software bei drei bis vier Kameras. VG Alex
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Thomas41587 am 02 April 2020, 19:48:45
Zitat von: SB am 28 Januar 2020, 10:35:01
In groben Zügen muss man folgende Schritte machen
  1. Den Janus Container starten. (Nun kann man mittels IP-Adresse des Hosts, auf dem Janus läuft bereits auf Port 10080 einen Demo-Stream anschauen - http://<Host-IP>:10080/streamingtest.html)

Wo muss man ansetzen, wenn Punkt 1 schon scheitert? ich habe von Github den Code genutzt um mittels Dockerfile den Container zu erstellen. Nach dem Starten kann ich die html Seite auch aufrufen. Aber ein Klick auf "Start" liefert mir nur einen PopUp mit "Probably a network error, is the server down?: [object Object]"
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: jbraeu am 09 April 2020, 16:20:11
Vorweg mein CAM ist total sch... aber funzt einwandfrei mit folgender FTUI config:
<div style="position:absolute; left:00px; top:750px">
<iframe width="358" height="245" src="http://192.168.178.2/goform/stream?cmd=get&channel=0"></iframe>
</div>


Der Spaß dabei ist die richtige URL zu finden..
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 20 Mai 2020, 12:35:29
Ich suche zurzeit eine Kamera die ich im Fully Browser als Livestream anzeigen lassen kann.
Folgende Kamera kann RTSP, eine Reolink Lumus.

https://www.amazon.de/Reolink-%C3%9Cberwachungskamera-2-Wege-Audio-Bewegungserkennung-SD-Kartenslot/dp/B085NNCWKT/ref=sr_1_16_sspa?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=ip+kamera+audio+outdoor&qid=1589911853&s=ce-de&sr=1-16-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEyVVc0MjlJQzlMWUxLJmVuY3J5cHRlZElkPUEwODM4NTYxSTdXWDNERUhES1ROJmVuY3J5cHRlZEFkSWQ9QTEwNDMxMDQxTzEwMkxRUDRMUE5JJndpZGdldE5hbWU9c3BfbXRmJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ==

Hat jemand auch eine Reolink Kamera bei dem der Livestream funktioniert?
So wie lese kann der Fully das ja?
Muss man noch den Klimzug mit dem web-server wie am Anfang beschrieben, machen?

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: juemuc am 20 Mai 2020, 21:04:41
Hallo,

ich habe eine Reolink C1 pro. Funktioniert bestens. Allerdings nutze ich diese im Zusammenspiel mit einer Synology Diskstation mit "DS CAM".

Viele Grüße
Jürgen
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 20 Mai 2020, 21:24:00
Hmm, ja ich hab kein Synology. Aber auf der Seite von Reolink sind die Zieladressen der Streams aufgelistet und auch erklärt wie man den in den VLC Player anzeigen lassen kann. Für FHEM gibt es ja auch den VLC als server. Da mach ich mir Hoffnung.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 01 Juni 2020, 21:54:54
nur zur Info und vielleicht alternativen Lösungsansatz: nachdem ich viel rumgebastelt habe um RTSP zum Laufen zu bringen hab ich es aufgegeben und nutze jetzt wieder MotionEye. Läuft auf dem selben RPI und wandelt das RTSP in einen normalen MPEG-Stream um der dann überall angezeigt werden kann
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 01 Juni 2020, 22:12:25
Zitat von: StephanFHEM am 01 Juni 2020, 21:54:54
nur zur Info und vielleicht alternativen Lösungsansatz: nachdem ich viel rumgebastelt habe um RTSP zum Laufen zu bringen hab ich es aufgegeben und nutze jetzt wieder MotionEye. Läuft auf dem selben RPI und wandelt das RTSP in einen normalen MPEG-Stream um der dann überall angezeigt werden kann

auch auf FTUI fully?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 01 Juni 2020, 22:24:25
jap klar. Das nutze ich auch damit

Hier meine Darstellung einer Cam mit kleinem Live-Bild und PopUp zur großen Ansicht (ich habe hier imagecover und etwas komische Einstellungen gewählt damit ich nur einen für mich interessanten Bildbereich davon in größer Darstellung sehen kann und der Rest abgeschnitten wird. Normal data-height auf 100 und data-width auf auto stellen und anstatt imagecover einfach image verwenden):


<header class="bg-darkblue">Kamera</header>
<div data-type="popup" data-height="95%" data-width="90%" data-draggable="false" style="overflow:hidden" class="centered">
<div data-type="imagecover" data-url="http://IP:PORT" data-height="calc(90vh)" data-width="100%" data-opacity="1" style="margin-top:-200px" class="nocache"></div>
<div class="dialog">
                <header class="bg-darkblue">Kamera</header>
<div class="card items-center centered">
<div data-type="image"
data-url="http://IP:PORT/"
data-size="100%" data-opacity="1" class="nocache">
</div>
</div>
            </div>
</div>
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 01 Juni 2020, 22:31:16
Ich interesiere mich für die Reolink lumus. Die kann anscheinend rtsp. Aber auf deren Seite kann die Kamera nicht z. B. Mit dem vlc player angezeigt werden. Deine Antwort macht mir jetzt wieder Hoffnung
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: micky0867 am 28 Juli 2020, 17:51:12
Ich habe eine alte Medion Kamera, die per "http://<ip>/videostream.cgi" ein Image zur Verfügung stellt, das sich selbst aktualisiert.
Es wird auch einfach per <img src=... /> in eine Webseite eingebunden.

Der Trick besteht darin, dass man eine mehr oder minder schnelle Abfolge von Snapshots von der Kamera bekommt, die der Browser an der immer gleichen Stelle immer wieder überschreibt.

Der Stream sieht als HTTP/HTML-Code so aus:

HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: multipart/x-mixed-replace;boundary=ipcamera
Server: mcdhttpd/1.2
Connection: close

--ipcamera
Content-Type: image/jpeg
Content-Length: <Bildgrösse in Bytes>
<Binärdaten von Bild 1>

--ipcamera
Content-Type: image/jpeg
Content-Length: <Bildgrösse in Bytes>
<Binärdaten von Bild 2>

--ipcamera
Content-Type: image/jpeg
Content-Length: <Bildgrösse in Bytes>
<Binärdaten von Bild ...>

etc.


Zwar sind meine aktuelle Webcams viel schöner, schneller, besser, bunter und teurer als die alten, aber leider können sie einen Livestream eben auch nur als rtsp/rtmp ausgeben.

Deshalb habe ich mir meinen Apache-Webserver genommen und dort ein CGI-Script erstellt, das das obige Verhalten nachstellt.
Funktioniert ziemlich gut!

Script:

#! /bin/bash

exec 2>/dev/null

export WIDTH=640
export HEIGHT=480

for one in $(echo "$QUERY_STRING" | sed 's/&/ /g')
do
  k=$(echo "$one" | cut -f1 -d=)
  v=$(echo "$one" | cut -f2 -d=)
  export $k=$v
done

echo "$SERVER_PROTOCOL 200 OK"
echo "Cache-Control: no-cache"
echo "Content-Type: multipart/x-mixed-replace;boundary=ipcamera"
echo "Server: $SERVER_SOFTWARE"
echo "Connection: close"
echo ""
while [ true ]
do
  LEN=$(wget -O /tmp/cam.jpg "http://<webcam-ip>/cgi-bin/api.cgi?cmd=Snap&width=$WIDTH&height=$HEIGHT&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456" 2>&1 | grep "Length" | cut -f2 -d' ')
  echo "--ipcamera"
  echo "Content-Type: image/jpeg"
  echo "Content-Length: $LEN"
  echo ""
  cat /tmp/cam.jpg
done


Das Script habe ich im cgi Verzeichnis von Apache unter dem Namen nph-videostream gespeichert.
Dabei ist das nph- wichtig, es zeigt Apache an, dass es ein Non-Parsed-Header Script ist, bei dem der HTTP-Header vom Script selbst und nicht von Apache generiert wird.
Die URL, die von wget geholt wird, muss natürlich auf die jeweilige Snapshot-URL der eigenen Cam angepasst werden.
Im obigen Fall kann die Größe des Snapshots beim Aufruf bestimmt werden, so dass ich z.B. ein Mini-Image in fhem anzeigen lassen kann und beim Klick auf das Bild ein neues Fenster mit der einer höheren Auflösung aufgeht.
<a href=http://192.168.178.1/cgi-bin/nph-videostream?WIDTH=1024&HEIGHT=768 target=_blank><img width=640 height=480 border=1 src=http://192.168.178.1/cgi-bin/nph-videostream></a>



Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: misux am 05 August 2020, 11:16:36
HI!

Diese Idee hatte ich auch schon, aber ich frage mich wie lange das die SD Karte mitmacht... Deshalb habe ich auf einem zweiten Raspi MotionEye drauf der mit einen mjepeg stream ins Netz stellt welchen man problemlos in FTUI einbinden kann als Livestream...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: NilsB am 05 August 2020, 11:27:16
Moin!

Also ich habe hier wahrgenommen, dass MJPEG Streams wesentlich weniger Ärger in FTUI machen.
Bin gerade auf einer Suche nach einer Cam für die Außenwand neben der Haustür, welche bei Klingeln als Popup Widget angezeigt werden soll...

Die Unifi G3s sind ja dann auch nur mit MotionEye Umweg zu betreiben, da sie lediglich RTSP ausliefern können.
Hat jemand eine Empfehlung für eine Outdoor Kamera mit POE Versorgung, welche nativ MJPEG ausliefert?

Danke und viele Grüße
Nils
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Ulm32b am 08 August 2020, 13:41:19
Ich glaube, das schon ein paar Mal im Forum geschrieben zu haben: Kauft euch eine Instar-Kamera. Deren mjpeg kann man ohne Umwege in FTUI einbinden. Die neueren Modelle haben einen robusten PIR-Sensor, und per MQTT können sie auch Nachrichten (Alarm) versenden. Damit ist es ziemlich einfach, das Bild der Haustür dann einzublenden, wenn der Sensor anschlägt.

Eine bei mir im geschützten Außenbereich angebrachte IN-8003 läuft seit über einem Jahr problemlos. Zwar war die erste Kamera nach ca. 2 Monaten defekt (Bildstörung, Kamera wurde heiß), wurde aber von Instar einwandfrei ersetzt.

Ich stehe mit Instar nur als zahlender Kunde in Beziehung und halte mich ansonsten für jemanden, der keine Zeit und Lust hat, an vermeintlichen Schnäppchen zu verzweifeln. Tut euch den Gefallen und kauft gleich die passende Hardware. Über die Preise kann man eigentlich nicht meckern.

Beachten sollte man lediglich, die Kameras in FTUI nicht einfach nur ein- und auszublenden, sondern den url-Link zu kappen, um den Netzwerktraffic zu begrenzen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 09 August 2020, 08:01:29
Hallo,
ich hab eine Reolink 410 Kamera.
Den RTSP Stream mit entsprechender Adresse kan ich im VLC mir anschauen.
Anscheinend kann man ja auch den RTSP Stream auch in Fully anzeigen lassen.
Wie muss den meine DEF ausschauen? Und brauch ich die Plus (gekaufte) Version damit ich den RTSP Stream anzeigen lassen kann?
Ich hab ein Android 7 Tablet

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 10 August 2020, 22:30:37
Hi,
wie bekomme ich den meinen RTSP Stream ohne auf einen Link zu klicken in eine Kachel rein?

Aktuell habe ich folgende Def
<div class="large" style="color:white;">CAMERA</div>
<a href="rtsp://user:pw@ip:554//h264Preview_01_main">RTSP Stream</a>


Damit bekomme ich den stream wenn ich auf den link "RTSP Stream" klicke. Das wird aber in Vollbild angezeigt.
Ich würde gerne ohne auf einen link zu klicken das bild in einer kachel anzeigen.

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 16 August 2020, 02:14:54
Jemand ne idee?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: misux am 30 September 2020, 12:16:06
Zitat von: neyzen am 16 August 2020, 02:14:54
Jemand ne idee?

??? Ähm... also wen ich deine Frage richtig verstanden habe... Du möchtestden RTSP Stream im FTUI darstellen? Das geht nicht... Jedenfalls nicht so einfach , darum gibt es ja diesen Thread hier..
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Thomas41587 am 30 September 2020, 12:59:15
Also ich habe ebenfalls sehr lange mit den RTSP Streams in der Tablet UI rum gemacht, bis ich jetzt (endlich!) die Lösung gefunden habe: Motieneye! Läuft bei mir in einem docker-container und konvertiert fleißig die Streams meiner beiden Reolink-Cams in das MJPG format, sodass ich das ganze in der Tablet UI darstellen kan.
Einstellungen in MotionEye sind selbsterklären, auch wenn die UI etwas gewöhnungsbedürftig ist. Das ganze läuft bei mir seit ~6 Wochen ohne Probleme.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 30 September 2020, 13:48:23
Aber MJPG sind doch Bilddateien. Also aktualisierst du jede Sekunde die Bilder in der FTUI?
Den so mach ich es auch aktuell, aber ohne irgendeine zusätzliches Tool. Bei Reolink kann man über einen link die Bilder direkt abrufen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Thomas41587 am 30 September 2020, 14:08:20
MJPEG ist ein stream aus Bildern. Hier muss man nichts manuell aktualisieren. Der zugehörige Sourcecode sieht so aus:
<div data-type="image"
data-url="http://192.168.1.2:8022/"
data-size="100%" data-opacity="1" class="nocache">
</div>
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 30 September 2020, 14:17:16
Aha...
Die URL ist dann der Link den du von Motioneye bekommst, der dein rtsp auf mjpg umwandelt?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Thomas41587 am 30 September 2020, 14:21:45
Ja genau. Hier auch mal beispielhaft die config aus Motioneye als Anhang. Wäre vor einigen Monaten froh gewesen, diesen einfachen Weg zu kennen.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 30 September 2020, 14:26:31
Ich hab noch auf meinem Tablet die App Tinycam pro. Da kann man das auch als websever laufen lassen. Sollte Analog zu deinem Weg auch funktionieren. Aber irgendwie hatte ich noch keine Zeit mich mit dem Weg zu beschäftigen. Das schau ich mir mal an.
Und noch ne Frage. Ist der Stream dann flüssig, oder hakt der mal?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Thomas41587 am 30 September 2020, 15:47:45
Der Stream ist bei mir so flüssig, wie er eingestellt ist. Die eine cam wird mit 2 Bildern/s die andere mit 5 Bildern/s konvertiert. Selbstverständlich kann man auch mit 20 oder 30 Bildern/s arbeiten, aber das verursacht mir zuviel System- und Netzwerklast. Die 5 Bilder reichen problemlos um Besucher zu erkennen und für den Garten sind 2 Bilder ebenfalls mehr als ausreichend...
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 02 Oktober 2020, 23:07:10
Ich hab es jetzt mit tinycam pro ebenfalls zum laufen gebracht. Analog zu deiner Vorgehensweise. Vielen Dank für den Tip.
Der stream ist auf jeden fall flüssiger als mit der Bildaktualisierung jede Sekunde.
Wie ist es den mit dem volllaufen des Speichers, wenn der Stream die ganze Seit läuft. Der Cache Speicher wird vermutlich nach einer Zeit Volllaufen oder?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: neyzen am 03 Oktober 2020, 12:53:09
Ich hab jetzt heute Morgen gesehen, dass das Bild immer wieder Stockt oder es gar kein Stream anzeigt. Ein Tablet Neustart hilft hier nicht.  :-\
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 27 Dezember 2020, 14:31:37
Hallo zusammen!

Da dieses Thema ja echt einigen schwer unter den Fingernägeln zu brennen scheint, möchte ich meinen aktuellen Ansatz mit euch teilen. Mich würde außerdem interessieren, ob andere dieses Setup auch umgesetzt bekommen... Abgesehen davon, will ich gesagt haben, dass ich keine der anderen vorgeschlagenen Lösungen besser oder schlechter finde! :-) Vorteile dieser Lösung sind unter Anderem Echtzeit, und die Auflösung, welche die Cam unterstützt. (zB Full-HD)

Ich nutze jetzt https://github.com/mpromonet/webrtc-streamer, einen kleinen Server der RTSP Quellen via WebRTC an diverse Browser zuspielt. Frühere Versuche mit dem Janus Mediagateway, welches eigentlich die selbe Aufgabe erledigen soll waren da weniger erfolgreich.

In folgendem Repo habe ich eine relativ fertige und einfache Variante für unsere Zwecke zusammengestellt: https://github.com/AlpenFlizzer/webrtc-streamer-docker-compose. Getestet habe ich wie beschrieben auf einem Raspi 3B und in einer Ubuntu VM auf meinem Proxmox-Server (Intel NUC Pentium Silver J5005).

Mittels "git clone" wird das Repo geclont. Dann muss lediglich in der Datei config.json im Verzeichnis /webrtc-streamer der/die RTSP Urls eingetragen werden und mit "docker-compose up -d" (eventuell ist ein sudo davor nötig - anderes Thema) der Container gestartet werden. Einzige Voraussetzung ist also git, docker und docker-compose (zB sudo apt install -y git docker docker-compose)

Danach kann man die Streams im Browser zB fully, Chrome, Firefox, etc. unter http://<ip-webrtc-streamer-server>:8000 ansehen. Standardmäßig ist ein Demo Stream dabei...

Die Datei demo.html kann als Vorlage für die Integration in FTUI verwendet werden.

Wichtige Infos: wenn die FTUI per https angesurft wird, muss auch der webrtc-streamer https gesichert sein - Mixed Content ist nicht erlaubt in Fhem. Passwortgesicherte RTSP Urls einfach mit rtsp://user:passwd@<rtsp-ip>/bla/bla in die config.json eintragen.

Vielleicht hilfts ja wem.

LG Sascha





Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: curt am 19 Januar 2021, 06:08:56
Zitat von: Thomas41587 am 30 September 2020, 14:08:20
MJPEG ist ein stream aus Bildern. Hier muss man nichts manuell aktualisieren. Der zugehörige Sourcecode sieht so aus:
<div data-type="image"
data-url="http://192.168.1.2:8022/"
data-size="100%" data-opacity="1" class="nocache">
</div>


Ich will mal zwischendurch danke sagen: Dein Codebeispiel hat mir sehr geholfen.

(Ich habe auf mehreren RPi Zero mit Kamera MotionEyeOS laufen. Die Bewegungserkennung wird von dort zu einem Reading in FHEM. Dieses wiederum wird in FTUI bei erkannter Bewegung als Schaltfläche angezeigt. Wenn ich nun darauf klicke, bekomme ich ein popup - mit dem Stream, dank Deines Codebeispiels.)
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 20 Januar 2021, 16:37:05
Hallo Sascha,
ich wollte den Stream auf einer https:\\.... Seite darstellen.
Leider finde ich keine Infos wie man den webrtc-streamer https gesichert aufruft...
Hat da jemand einen Link/Tip?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 21 Januar 2021, 09:28:20
Servus,

ich habe https in meinem Repo jetzt eingepflegt. Versuchs nochmal.

Man kann mittels "command" Option in der docker-compose.yml die start-flags vom webrtc-streamer anpassen - unter anderem https Port und den Pfad zu dem Zertifikat/Key.

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 21 Januar 2021, 17:26:56
Hallo Sascha,
danke für deine schnelle Antwort.
Ich habe nochmals die Schritte durchgeführt ( "git clone" das Repo geclont) und die config.json angepasst.
Dann wie in der Datei
/root/webrtc-streamer-docker-compose/webrtc-streamer/ssl/Readme.md
beschrieben die Zertifikate erzeugt. Nach "docker-compose up -d" sehe ich den Stream weder auf
http://192.xxx.xxx.xxx:8000
noch auf
https://192.xxx.xxx.xxx:9000

Da ich zwischendurch die Formatierung der docker-compose.yml verhauen habe, habe ich die Datei auf der Seite http://www.yamllint.com/ gecheckt.
Nach dem ich das wieder gerichtet habe, habe ich folgende Ausgabe erhalten, auf jeden Fall fehlerfrei....


---
services:
  webrtc-streamer:
    command:
      - "-a"
      - "-C"
      - config.json
      - "-H"
      - "8000,9000s"
      - "-c"
      - /app/ssl/server.pem
    container_name: webrtc-streamer
    image: "mpromonet/webrtc-streamer:latest"
    network_mode: host
    restart: always
    volumes:
      - "./webrtc-streamer/config.json:/app/config.json"
      - "./webrtc-streamer/ssl/:/app/ssl/"
version: "3"


Ich habe die Dateien aus dem Verzeichnis "/root/webrtc-streamer-docker-compose/webrtc-streamer/ssl/" in das Verzeichnis "/app/ssl/" kopiert.

Unter Chrome bekomme ich (egal ob http und https Zugriff) die Mitteilung:
Zitat
Die Website ist nicht erreichbar

192.xxx.xxx.xxx hat die Verbindung abgelehnt.
Benutze ich die "alte" docker-compose.yml kann ich den Stream mit http... wieder anschauen.
Edit:
Es reicht aus , wenn ich die Zeile
    command: [ "-a", "-C", "config.json", "-H", "8000,9000s", "-c", "/app/ssl/server.pem"]
gegen
    command: [ "-a", "-C", "config.json"]
tausche. Dann funktioniert der http zugriff wieder

Hast du noch einen Tipp für mich?
Güße
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 22 Januar 2021, 10:17:34
Der Entwickler hat vor ein paar Tagen ein Image veröffentlicht, das mit SSL Probleme hatte. Das Problem hat er gestern oder vorgestern mit einem neuen Image behoben, aber ich vermute du hast noch das alte...

Mein Vorschlag wäre, du löschst das bestehende Image vom webrtc-streamer und den Container auch. Dann clonst du das Repo, erzeugst im Ordner webrtc-streamer/ssl gemäß der Anleitung die Zertifikate und den Key und startest dann den Container mit docker-compose.

Wichtig ist dabei, dass du bevor du eventuelle Änderungen für deine Produktivumgebung erst einpflegst, wenn du das Zeug mal laufen hast. Diesbezüglich rate ich also im ersten Schritt davon ab, die docker-compose.yml zu ändern, oder nur um ein Beispiel zu nennen, Key und Zertifikat anders zu erzeugen. Das kann man im nachhinein alles immernoch machen. :-)

Ich würde jetzt:
1. docker stop webrtc-streamer
2. docker rmi -f mpromonet/webrtc-streamer:latest (am besten du nutzt autocomplete mit der TAB Taste, wenn du mehrmals TAB drückst zeigt er dir alle Möglichkeiten)
3. docker rm -f webrtc-streamer
4. das Repo löschen. (rm -r)
5. das Repo neu clonen und dann wie oben beschrieben

Wie du geschrieben hast, kann man mit "command: [bla, bla, bla]" die Konfiguration des webrtc-streamer ändern.
command: [ "-a", "-C", "config.json"] entspricht der Standardkonfiguration, die im original Image vorgegeben ist.
mit command: [ "-a", "-C", "config.json", "-H", "8000,9000s", "-c", "/app/ssl/server.pem"] kann man diese originale Konfiguration im Nachhinein überschreiben.

Versuch mal dein Glück. Es sollte eigentlich recht straight forward sein.

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 22 Januar 2021, 11:35:59
Hallo Sascha,
mach ich nach dem Einkauf sofort  ;)... und vielen Dank für deine schnelle Antworten und deine Unterstützung :D :D
Gestern hatte ich dein Repro geklont, soll ich heute nochmals dein Repro nehmen?



https://github.com/AlpenFlizzer/webrtc-streamer-docker-compose

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 22 Januar 2021, 15:37:35
Theoretisch musst du nicht, aber ich kann Probleme natürlich besser einordnen, wenn wir auf dem selben Stand sind. Wenn bei dir alles unverändert ist, außer zB die SSL Zerts und Keys brauchst du nicht neu clonen.

In diesem Sinne, würde in deinem Fall auch eventuell ein "docker pull mpromonet/webrtc-streamer:latest" reichen im das neueste Image zu ziehen.

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 22 Januar 2021, 17:29:00
Hallo Sascha,
habe jetzt alles noch mal neu installiert ... geht nur wie oben beschrieben mit der Zeile:


command: [ "-a", "-C", "config.json"]
Mit der Zeile


command: [ "-a", "-C", "config.json", "-H", "8000,9000s", "-c", "/app/ssl/server.pem"]
komme ich nicht einmal über den http Link (....:8000) an den Stream. Das sollte doch immer gehen, oder?


Ich habe auf meiner Bannane Armbian Buster installiert, update und upgrade gemacht.

Hier die Infos zum Docker:

docker version                     
Client: Docker Engine - Community
Version:           20.10.2
API version:       1.41
Go version:        go1.13.15
Git commit:        2291f61
Built:             Mon Dec 28 16:19:01 2020
OS/Arch:           linux/arm
Context:           default
Experimental:      true

Server: Docker Engine - Community
Engine:
  Version:          20.10.2
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       8891c58
  Built:            Mon Dec 28 16:16:42 2020
  OS/Arch:          linux/arm
  Experimental:     false
containerd:
  Version:          1.4.3
  GitCommit:        269548fa27e0089a8b8278fc4fc781d7f65a939b
runc:
  Version:          1.0.0-rc92
  GitCommit:        ff819c7e9184c13b7c2607fe6c30ae19403a7aff
docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0



docker-compose version 1.21.0, build unknown
docker-py version: 3.4.1
CPython version: 3.7.3
OpenSSL version: OpenSSL 1.1.1i  8 Dec 2020


Wenn du noch mehr Infos benötigst einfach bescheid geben

Grüße
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 23 Januar 2021, 10:40:37
Poste bitte mal die Ausgabe von "docker logs webrtc-streamer"

EDIT:

Bin dem Problem nochmals nachgegangen. Habe auch den Entwickler auf Github kontaktiert. Er hat alles aufs neueste Ubuntu gezogen und deshalb gab es noch paar Probleme mit Abhängigkeiten.
Jedenfalls hat er heute das Problem gelöst. Ich hab die neuesten Images auf einem Raspi 2 und einem Raspi 3 getestet und https hat funktioniert. Da der Banana Pi Pro den selben Prozessor und dementsprechend den selben Befehlssatz hat wie der Pi2 gehe ich davon aus, dass das Zeug bei dir geht wenn du nochmal ein "docker pull mpromonet/webrtc-streamer:latest" machst. Dann mal neu starten und schauen ob es geht.

Sollten alle Stricke reißen, habe ich Key und Zert für den Demobetrieb direkt in mein Repo hinzugefügt. Damit kann man jetzt einfach clonen, starten und sollte schon gehen.

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 24 Januar 2021, 18:05:06
Hallo Sascha,
Danke an dich und dem Entwickler, jetzt kann ich die Seite in Firefos aufrufen :)
Da ich inzwischen alles nochmals gelöscht hatte, habe ich dein Repro nochmals komplett übernommen.

Allerdings wird der rtsp Stream meiner Reolink RLC-520
xxx.xxx.xxx.xxx:558/h264Preview_01_sub nicht angezeigt.

Der Stream meiner hiCam S5 wird ordentlich dargestellt.
xxx.xxx.xxx.xxx:554/onvif2

Im VLC Player kann ich beide Kamera Streams ansehen...
Im docker logs webrtc-streamer bekomme ich die folgende Meldung:
: RTSPVideoCapturer:onError url:rtsp://User:password@192.168.xxx.xxx:558/h264Preview_01_sub error:401 Unauthorized
Created new TCP socket 11 for connection
Failed to DESCRIBE: 401 Unauthorized

Wie gesagt, gebe ich den selben Link im VLC Player ein geht das problemlos. Copy and Paste... ???
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 24 Januar 2021, 19:58:30
Freut mich dass es jetzt klappt...

Die Fehlermeldung ist eindeutig. Der Login klappt nicht... Mich wundert deine URL, eventuell mal mit einer anderen versuchen? zB rtsp://admin:password@ip_address:554//h264Preview_01_main von https://support.reolink.com/hc/en-us/articles/360007010473-How-to-Live-View-Reolink-Cameras-via-VLC-Media-Player

Testweise könntest du mal das Passwort entfernen oder einen User anlegen, der keinen Login braucht, um zu schauen, auf welcher Seite das Problem auftritt. Ich habe Hikvision Kameras auf einem Hikvision NVR und Streame die Streams vom NVR. Das klappt einwandfrei.

VLC Player ist ein Hund, der frisst buchstäblich alles - schwer da mitzukommen... Jedenfalls immer bedenken, dass h265 im Web-Rtc Standard noch nicht spezifiziert ist, also wenn dann h264 streamen.

Grüße, Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 25 Januar 2021, 11:33:52
Bezüglich deiner Reolink.
Ich habe eine RLC-422 und in der ersten Version des WebRtc integriert gehabt.
Habe noch keine Zeit gefunden den neuen zu clonen und mich damit zu spielen.
Aber das sollte keinen Unterschied machen

Denke auch das es da mit dem Login Probleme gibt.

Ich rufe meine mit diesem Link auf : rtsp://user:pass@x.x.x.x:554//h264Preview_01_main

LG Thomas
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 25 Januar 2021, 13:50:25
Hallo Sascha, Hallo Thomas,
meine URL war schon richtig,

rtsp://user:pass@x.x.x.x:558//h264Preview_01_sub

allerdings hatte ich den User "FHEM-Kamera-RLC520-1" genannt... - im User ist hier keine gute Idee :-[
Ich mach das immer so mit Sonderzeichen im Namen und Passwort, hier ging das schief   :-\.
Beim Passwort habe ich "*" bzw "#" bzw "_" und "-" getestet, geht. Im Passwort funktioniert auch der Bindestrich.

Edit:
Das mit dem Sonderzeichen im Namen ist doch kein Problem, nach dem ich ein wenig mit den Einstellungen "gespielt" hatte, scheint es an der Länge des Usernamen zu liegen..

Edit2:
Ich habe nun folgende "User" angelegt:

        "Eingang"   : {"video": "rtsp://123456789:WebCAM@192.xxx.xxx.xxx:558/h264Preview_01_sub"},
        "Eingang10"   : {"video": "rtsp://1234567890:WebCAM@192.xxx.xxx.xxx:558/h264Preview_01_sub"},
        "Eingang11"   : {"video": "rtsp://12345678901:WebCAM@192.xxx.xxx.xxx:558/h264Preview_01_sub"},
        "Eingang12"   : {"video": "rtsp://123456789012:WebCAM@192.xxx.xxx.xxx:558/h264Preview_01_sub"},

Eingang und Eingang10 werden angezeigt -> Der Username darf maximal 10 Zeichen lang sein...  8)

Edit 3:
Jetzt geb ich es auf
Geht nicht:
   "Eingang"   : {"video": "rtsp://FHEM-RLC:#TestPassw1234#@192.... bla blah
Geht auch nicht:
   "Eingang"   : {"video": "rtsp://FHEM-RLC:#TestPassw#@192.... bla blah
Geht auch nicht:
   "Eingang"   : {"video": "rtsp://FHEM-RLC:TestPassw@192.... bla blah

Das geht aber:

   "Eingang"   : {"video": "rtsp://FHEMRLC:TestPassw@192.... bla blah

Jetzt mach ich einen ganz einfachen USER mit einem ganz einfachem Passwort...

LG
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 25 Januar 2021, 16:00:48
Na wenigstens funktioniert es jetzt.

Wieso verwendest du den SubStream?
Ist da ein Qualitätsunterschied zu merken ob Sub oder Main?

LG Thomas
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 25 Januar 2021, 16:40:35
Zitat von: Funsailor am 25 Januar 2021, 13:50:25
Jetzt mach ich einen ganz einfachen USER mit einem ganz einfachem Passwort...

Nur weil ein Passwort (oder Username) keine Sonderzeichen enthält, ist es noch nicht unsicher... Dazu vllt ein witziger Cartoon, falls du ihn nicht eh kennst...
https://xkcd.com/936/

Du kannst ja noch auf deine Methode herausfinden, wie lange ein Passwort sein darf und dann könntest du dir User und Passwort nach dem xkcd Schema anlegen. (in den jeweiligen maximalen Längen) :-)

Freut mich, dass es jetzt läuft.

LG Sascha
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 03 Februar 2021, 18:42:03
Hallo Sascha,
ich habe jetzt festgestellt, das der "Snapshoot" mit



get Kameraxyz image

nicht mehr geht wenn der "webrtc-streamer" läuft...

Die Kamera habe ich in FHEM mit



define IPCam_RLC520_1 IPCAM 192.168.xxx.yyy

definiert, der path lautet



cgi-bin/api.cgi?cmd=Snap&width=2560&height=1920&channel=0&rs=12345&user=xyz&password=uvw

Im Bewegungsmelder habe ich ein Notify mit

...:motion { ... "get IPCam_RLC520_1 image"...

definiert. Das Bild wird nur bei gestopptem webrtc-streamer geschossen....

Nebenbei zum Passwort:
Wenn man irgendwo ein Passwort eingibt, springt die "Sicherheitsanzeige" sehr oft erst von "Sicher" auf "sehr Sicher" wenn man Sonderzeichen benutzt.

LG Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: mrfloppy am 05 Februar 2021, 16:27:12
@Funsailor
Hast du noch immer das Problem mit dem Snapshot??

Habe es mal kurz nachgestellt

Ich habe eine Reolink 422.
WebRtc läuft bei mir und Cam ist in Fhem auch eingebunden im IPCAM-Modul.

IPCAM-Modul: path
cgi-bin/api.cgi?cmd=Snap&channel=0&rs=XXX&user=XXX&password=XXX

Config.json im WebRTC: "video":"rtsp://XXX:XXX@x.x.x.x:554//h264Preview_01_main"

WebRtc läuft, Zugriff über die Html Seite, VLC parallel und dann Snapshot funktioniert ohne Probleme.

LG Thomas


Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 05 Februar 2021, 22:51:27
Hallo Thomas,
danke für deine Hinweise.
Ja, geht immer noch nicht parallel, ich überprüfe die Einstellungen wenn ich mein Smartvisu Problem erledigt habe Oder nebenbei. Bin im Moment aber zu müde,

Gruß
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 08 Februar 2021, 10:14:40
Zitat von: AlpenFlizzer am 25 Januar 2021, 16:40:35
Nur weil ein Passwort (oder Username) keine Sonderzeichen enthält, ist es noch nicht unsicher... Dazu vllt ein witziger Cartoon, falls du ihn nicht eh kennst...
https://xkcd.com/936/

Du kannst ja noch auf deine Methode herausfinden, wie lange ein Passwort sein darf und dann könntest du dir User und Passwort nach dem xkcd Schema anlegen. (in den jeweiligen maximalen Längen) :-)

Freut mich, dass es jetzt läuft.

LG Sascha
Hallo Sascha,
das Sonderzeichen und Co ein Passwort sicherer machen ist für mich eigentlich noch gültig:
ZitatWir empfehlen, dass man starke Passwörter verwendet, die sehr lang sind, sowie Buchstaben, Zahlen und Sonderzeichen enthalten. Zusätzlich muss man für jedes Konto ein individuelles Passwort verwenden. Außerdem ist es eine gute Idee, eine Multi-Faktor Authentifizierung zu nutzen, um den eigenen Schutz noch zu verbessern", sagt Chad Hammond, Sicherheitsexperte bei NordPass.

Ganzer Artikel hier:
https://www.elektroniknet.de/kommunikation/mit-dieser-methode-werden-beliebte-passworter-gehackt.182811.html

Gruß
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: Funsailor am 08 Februar 2021, 14:55:54
Hallo Thomas,
ich nutze den "h264Preview_01_sub" Stream der Kamera im WebRTC, da ist das Bild ohne weitere Einstellungen kleiner.
Um den "Fehler" einzukreisen, habe ich zuerst komplett deine Einstellung genommen und habe  den "h264Preview_01_main" Stream genommen ...

Siehe da, es geht wieder...
Ich war aber der Meinung, das es mit meiner Einstellung auch schon mal lief.

Da ich Zeit hatte, Kommando zurück und wieder den Sub Stream genommen... upps geht auch wieder...

Seltsam, das werde ich mal beobachten.

Gruß
Michael
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 05 März 2021, 16:08:55
Zitat von: AlpenFlizzer am 27 Dezember 2020, 14:31:37
In folgendem Repo habe ich eine relativ fertige und einfache Variante für unsere Zwecke zusammengestellt: https://github.com/AlpenFlizzer/webrtc-streamer-docker-compose. Getestet habe ich wie beschrieben auf einem Raspi 3B und in einer Ubuntu VM auf meinem Proxmox-Server (Intel NUC Pentium Silver J5005).

Mittels "git clone" wird das Repo geclont. Dann muss lediglich in der Datei config.json im Verzeichnis /webrtc-streamer der/die RTSP Urls eingetragen werden und mit "docker-compose up -d" (eventuell ist ein sudo davor nötig - anderes Thema) der Container gestartet werden. Einzige Voraussetzung ist also git, docker und docker-compose (zB sudo apt install -y git docker docker-compose)

Das klingt sehr interessant und ich habe ein/zwei Fragen dazu. Aktuell nutze ich motion mit einer Cam und wollte jetzt eine zweite Cam einbinden. Ich hab aber das Gefühl, dass Motion mit zwei Cams etwas komplexer ist und entsprechend Systemressourcen verbraucht. Alles was ich brauche ist auch nur genau der von dir beschriebene Stream ohne den anderen Kram.

Jetzt meine Fragen:
1. ist es möglich zwei RTSP-streams einzubinden und zB einen über Port 8000 und den anderen über Port 8001 darzustellen?
2. ich kenne mich noch gar nicht mit Docker aus. Und Linux eher auf Anfänger-Level. Ich hab die Pakete mit "sudo apt install -y git docker docker-compose" installiert. Wie genau kann ich jetzt den Container erstellen und das Git clonen?;-)
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 13 März 2021, 14:14:18
Hallo.

Zu Frage 1: Das Ganze funktioniert gänzlich anders. Auf Port 8000 lauft der webrtc-streamer. Deine Webseite (zB FTUI) ruft mittels JavaScript einfach den Stream vom Port 8000 ab, der gewünscht wird. Im Repo gibt es eine Datei demo.html, da ist das ersichtlich.

Zu Frage 2: Eigentlich steht die Antwort sogar im, von dir zitierten Text drin... ;-)


git clone https://github.com/AlpenFlizzer/webrtc-streamer-docker-compose.git
cd webrtc-streamer-docker-compose #in diesem Ordner findest du auch die erwähnte config.json und demo.html
docker-compose up -d #eventuell sudo davor
#abwarten
docker ps #zeigt ob der container läuft
#in einem browser http://<ip-deines-servers>:8000 ansurfen und mal den webrtc-streamer befummeln


Sorry dass ich nicht mehr Support geben kann, da fehlt mir grad etwas die Zeit. :-) Grundsätzlich sollte ein Minimum an git und Docker Know-How vorhanden sein, dann flutscht das - ich habe auch im Code ordentlich kommentiert denke ich.

Gruß S
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 13 März 2021, 14:42:48
Danke für deine Zeit! Das sieht schon eher so aus, dass ich damit etwas anfangen kann. Hab es vorher echt nicht gesehen. Ich probier es mal aus. Wenn ich es jetzt richtig verstanden habe, werden die beiden Streams als beide auf Port 8000 geleitet und ich kann dort beide abgreifen. Ich schau mir mal die Demo an.
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 19 Oktober 2021, 21:49:00
Hallo,

hab versucht es nach der Beschreibung umzusetzen und ich erreiche auch meinen server:8000 und sehe, dass dort Streams auswählbar sind. Leider starten die Streams nicht.

In den Logs erhalte ich folgende Fehlermeldung:
webrtc Peer Connection Manager.cpp:660: Failed to initialize PeerConnection

in einer LiveDemo im Internet geht es... es kann also nicht an meinem Browser liegen. Was kann ich da jetzt machen?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 23 Oktober 2021, 13:15:10
Args.... Ich bekomme es immer noch nicht zum Laufen. Habs über versucht über die Installation vom original webrtc-streamer zu lösen aber nach einer Gefühlten Ewigkeit konnte ich nicht weiter machen weil cmake nicht installiert war... da war dann auch freundlicherweise die HDD komplett voll wegen chronium cache....
Hat nicht dich noch einer den entscheidenen Tipp wieso die Stream nicht starten? Mein Browser ist ok sonst würde die Live-Demo nicht laufen. Die Peer-Verhandlung scheint auch zu gehen....
Was mir noch aufgefallen ist: webrtc in der Live Demo ist eine neuere Version als die aus dem Docker. Kann man das aktualisieren? Vielleicht löst es sich dadurch.
Und ich nutze kein HTTPS und die Demo Streams sind auch PW frei... daran kann es also auch nicht liegen
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: StephanFHEM am 02 November 2021, 21:33:59
neuer Ansatz: mit einem alten Raspi3 und komplett neu aufgesetztem Raspbian läuft es.
Ich kann in FTUI3 aber den Tag <video id="video" muted autoplay></video> nicht einbinden bzw. er zeigt mir nichts an. Muss ich da noch etwas beachten?
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: draddy am 16 März 2022, 20:08:21
hallo zusammen,

stell mich grade glaub bissl blöde an ...

also den leichten teil habe ich geschafft, webrtc-streamer läuft, ich kann über http://<ip>:8000 zugreifen und sehe meine cam.

aber jetzt bin ich zu blöde das ding in FHEM zu bringen ^^

letztlich anzeigen würde ich sie gerne in FHEMAPP - aber das zeigt mit der Adresse nix an wenn ich ihm die adresse übergebe:
http://<ip>:8000/webrtcstreamer.html?video=Hof

thx
Jens

Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: xeenon am 24 Juni 2022, 12:21:45
Hallo Zusammen,


ich habe Kameras verschiedener Hersteller am Laufen. Alle funktionieren für sich relativ gut in FTUI. Allerdings sind die Kameras in ihrer Rechenleistung beschränkt und kommen schnell an die Grenzen wenn ein Stream öfter (bei Reolink reichen 2 Streams, bei Instar ist bei 3 schluss) abgegriffen wird.

Da alle Streams sowieso bei der QVR Pro Surveillance Station (QNAP) zusammen laufen würde ich gerne die Streams über die Station abgreifen. Die hat mehr als genug Leistung. Die Station kann Streams als HTML oder RTSP Stream freigeben. Allerdings haben meine bisherigen Lösungsversuche nicht geklappt.

Scheinbar ist die Lösung aus dem Thread nicht so das wahre, ist aber auch schon etwas älter. Gibt es mittlerweile eine gute Lösung?

Viele Grüße
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 04 Juli 2022, 19:09:48
Ich kann zwar keine generelle Antwort zu sämtlichen vorgeschlagenen Lösungen geben, aber die WebRTC Lösung ist mangels Stabilität und auch Komplexität der Umsetzung bzw. Ressourcen Anforderungen zwar eine Lösung die echte realtime Kamerastreams in HTML erlaubt, aber unterm Strich nicht wirklich eine Empfehlung wert ist. Obwohl ich selbst ordentlich Zeit in diverse Ansätze gebuttert habe... :-D

Wenn dein QNAP den Stream via HTML anbieten kann, sollte der doch mittels <video> tag eingebunden werden können oder? RTSP wird wohl fürchte ich nie von Browsern nativ unterstützt werden...

Gruß S
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: cotecmania am 17 Dezember 2022, 11:35:43
Hallo Alpenflitzer,

jetzt habe ich die 9 Seiten durchgelesen in der Hoffnung nun eine Lösung für das RTSP-Problem zu haben, aber jetzt schreibst Du, dass es nicht empfehlenswert ist aufgrund "Stabilität und Komplexität".
Ich möchte 5 Kameras mit RTSP H264 in Fully einbinden. Läuft das mit webrtc zuverlässig auf dem Raspy 3, auf dem auch FHEM läuft ?

Gruss
Joe
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: AlpenFlizzer am 25 Dezember 2022, 10:11:18
Hallo!

Ich kann das leider nicht konkret beantworten, ich kann dir aber sagen, dass der oben vorgeschlagene WebRTC-Streamer gut und stabil funktioniert, aber auch reichlich Ressourcen braucht. Ich würde es ungetestet einem RPI3 nicht zutrauen 5 (FullHD?) Cams zu streamen, wobei hier noch entscheidend ist, wie oft du die Streams abrufst.

Alles andere wurde bereits gesagt glaube ich. Man muss einen WebRTC-Service laufen lassen, und den Javascript Client in seine Homepage (zB FTUI) einbauen. Beides hat bewiesen, dass es manchmal nicht reibungslos klappt.

Leider, auch zu meinem Ärgernis ist das Thema glaube ich relativ Geschichte bis HTML RTSP spricht (was die meisten Cams sprechen) - also vermutlich nie??

Ich habe einen Hikvision NVR und mittels HDMI->Lan Adapter einen 13 Zoll Monitor im Wohnzimmer angehängt. Mittels Alarmkontakte, die ich via Fhem steuere kann ich auch 5 verschiedene Cams auf dem Monitor Fullscreen anzeigen

Mittlerweile ist das Setup meine Empfehlung...

LG
Titel: Antw:Überwachungskamera (RTSP-Stream) in FTUI anzeigen
Beitrag von: sinus61 am 26 Dezember 2022, 17:16:04
Oder als Alternative zu einem echten NVR irgendwo ein Android Gerät mit der App IP Cam viewer laufen lassen. Die hat einen eingebauten Webserver, dort kann man für alle Kameras dann einen Live-View, das letzte Jpg oder Mjpeg Stream abgreifen. Das geht auch wenn die Kamera eigentlich nur einen RTSP Stream liefert.
Das kann jetzt auf einem alten Smartphone oder Tablet laufen, praktischerweise vielleicht besser auf einem TV Stick oder einer TV Box. Zum Anzeigen muss das keine besondere Leistung haben, vielleicht etwas mehr wenn man auch den Record Mode oder Motion Detection nutzt.