Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. [HowTo] rtsp mit ffmpeg für vis konvertieren

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    989

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[HowTo] rtsp mit ffmpeg für vis konvertieren

Scheduled Pinned Locked Moved Visualisierung
vistemplate
59 Posts 24 Posters 28.7k Views 14 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B Offline
    B Offline
    balear59
    wrote on last edited by
    #9

    Hallo eastcoast,

    vielen Dank für die Antwort.

    mit "ffmpeg -i "rtsp://192.168.178.yyyy/11/ucast" http://localhost:8090/ipcam1.ffm"; im Script bekomme ich den Server zum laufen.

    Dies ist jetzt die Anzeige mit http://192.168.178.yyyy:8090/status.html

    ffserver Status

    Available Streams

    Path Served

    Conns

    bytes Format Bit rate

    kbit/s Video

    kbit/s

    Codec Audio

    kbit/s

    Codec Feed

    ipcam1.mjpg 0 0 mpjpeg 1024 1024 mjpeg 0 ipcam1.ffm

    ipcam1.jpg 0 0 singlejpeg 200 200 mjpeg 0 ipcam1.ffm

    status.html 2 1944 - - - -

    index.html 0 0 - - - -

    Feed ipcam1.ffm

    Stream type kbit/s codec Parameters

    0 video 1024 mjpeg 480x390, q=1-4, fps=10

    1 video 200 mjpeg 704x576, q=2-31, fps=2

    Connection Status

    Number of connections: 1 / 100

    Bandwidth in use: 0k / 4096k

    File IP Proto State Target bit/s Actual bit/s Bytes transferred

    1 status.html 192.168.178.29 HTTP/1.1 HTTP_WAIT_REQUEST 0 0 0

    Generated at Mon Feb 27 17:36:51 2017

    die 192.168.178.29 entspricht aber weder der Ip Adresse vom Server noch der IP-Cam?

    mit Aufruf von http://192.168.178.yyyy:8090/ipcam1.mjpg lädt Safari und lädt und Lädt ….....

    wo sollte ich jetzt anfangen zu suchen?

    viel Spass noch

    Jens

    1 Reply Last reply
    0
    • E Offline
      E Offline
      eastcoast
      wrote on last edited by
      #10

      @balear59:

      …

      die 192.168.178.29 entspricht aber weder der Ip Adresse vom Server noch der IP-Cam? `
      Ich glaube die 192.168.178.29 ist die Adresse des Rechners womit du die Seite anzeigst.
      @balear59:

      mit Aufruf von http://192.168.178.yyyy:8090/ipcam1.mjpg lädt Safari und lädt und Lädt …..... `
      Ich vermute mal ffmpeg läuft noch nicht (siehe Punkt 5),

      also z.B. einfach mal im ioBroker.admin unter "Objekte" javascript.0-ffmpegCam-run von false auf true setzen.

      1 Reply Last reply
      0
      • B Offline
        B Offline
        balear59
        wrote on last edited by
        #11

        Hallo,

        Du hast recht. Die 29 ip ist der Mac. Der Server läuft auch nicht. Wenn ich über das Terminal auf den raspberry gehe und den Server mit /usr/bin/ffserver starte, bekomme ich keine Erfolgsmedung.

        Bin jetzt leider ein paar Tage außer Haus.

        Melde mich wieder

        Viel Spaß noch

        Jens

        1 Reply Last reply
        0
        • E Offline
          E Offline
          eastcoast
          wrote on last edited by
          #12

          @balear59:

          Der Server läuft auch nicht. Wenn ich über das Terminal auf den raspberry gehe und den Server mit /usr/bin/ffserver starte, bekomme ich keine Erfolgsmedung. `
          Ich denke schon dass der ffserver läuft, sonst würde die status.html nicht angezeigt.

          Also wie schon zuletzt geschrieben, ffmpeg muss auch gestartet werden!

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Marcolotti
            wrote on last edited by
            #13

            Hallo,

            wie sieht das Script aus, wenn ich den FFMPEG Server auf einem anderen Host starte? Der Master(iobroker) läuft noch auf einem Pi2 und ich habe mir gedacht, der Pi3(Slave) hat mehr Bumms und ist nicht so ausgelastet.

            Gruß Marco

            CCU2-CuxD&Cul868MHz, 44xHM Geräte, 20xMAX Fenstersensoren.Acer Revo mit IoBroker, Tablet Captiva 9,7 SFHD. SMA SB2.5,STP7000TL20,SMA Energy Meter, Echo, Harmony, JeeLink868, Arduino 433MHz, MaxtoxCUL868,MilightEasyLED,Hue

            1 Reply Last reply
            0
            • E Offline
              E Offline
              eastcoast
              wrote on last edited by
              #14

              @Marcolotti:

              wie sieht das Script aus, wenn ich den FFMPEG Server auf einem anderen Host starte? `
              Wenn ffserver auf einem anderen Host läuft könntest Du hier

              var ffmpegStartCmd   = "ffmpeg -i \"ip-der-cam-here" http://localhost:8090/ipcam1.ffm";
              
              

              einfach die "localhost:8090" auf die Adresse des ffserver ändern.

              Mehr Ressourcen benötigt jedoch ffmpeg, desshalb würde es eher Sinn machen auch ffmpeg auf dem anderen Host zu betreiben.

              1 Reply Last reply
              0
              • B Offline
                B Offline
                blinderengel
                wrote on last edited by
                #15

                Hi ich hätte da eine Frage, bin neu hier und habe iobroker erst am WE installiert und meine HM umgebung eingebunden.

                jetzt fehlt mir noch meine Cam ich habe eine HiKam Q7 sowie eine A7 könnt ihr mir hier helfen wie ich diese angezeigt bekomme.

                vielen Dank

                Jörg

                1 Reply Last reply
                0
                • G Offline
                  G Offline
                  Gonmyr
                  wrote on last edited by
                  #16

                  Hallo,

                  prima Anleitung. Danke fürs Teilen.

                  Läut super mit der ersten Cam.

                  Verstehe ich das richtig, dass ich dann für mehrere IPCams auch mehrere Scripte brauche oder kann ich die alle in ein Script schmeißen?

                  Grüße

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    mikiline
                    wrote on last edited by
                    #17

                    @Gonmyr:

                    Hallo,

                    prima Anleitung. Danke fürs Teilen.

                    Läut super mit der ersten Cam.

                    Verstehe ich das richtig, dass ich dann für mehrere IPCams auch mehrere Scripte brauche oder kann ich die alle in ein Script schmeißen?

                    Grüße `

                    ich schätze mal das du die Variable hier ändern kannst in z.B auch cam1 und den Pfad anpassen bzw. die ausgabeurl ändern

                    var ffmpegStartCmd   = "ffmpeg -i \"rtsp://user:user@192.168.1.yyy:554/cam/realmonitor?channel=1&subtype=2\" http://localhost:8090/ipcam1.ffm";
                    

                    Kamera 2

                    var ffmpegStartCmdCam2   = "ffmpeg -i \"rtsp://user:user@192.168.1.yyy:554/cam/realmonitor?channel=1&subtype=2\" http://localhost:8090/ipcam2.ffm";
                    

                    Danach dann noch im dem Startabschnitt die Variable mitstarten

                     exec(ffserverStartCmd, function(err, stdout, stderr) {
                            if (err) {
                                console.log("ffserver error: " + stderr);
                            }
                    

                    darin noch einfügen (2. Kamera)

                     exec(ffmpegStartCmdCam2, function(err, stdout, stderr) {
                            if (err) {
                                console.log("ffserver error: " + stderr);
                            }
                    
                    1 Reply Last reply
                    0
                    • G Offline
                      G Offline
                      Gonmyr
                      wrote on last edited by
                      #18

                      Du meinst in Deinem 2. Abschnitt ffmpegStartCmd anstatt ffserverStart oder?

                      Sonst wäre ja der Eintrag doppelt… oder übersehe ich etwas?

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        mikiline
                        wrote on last edited by
                        #19

                        ffserver läuft ja bereits….

                        einfach die variable ersetzen die du oben genommen hast (url zur 2. cam)

                        Und in der Config Datei (etc/ffserver.conf) noch die 2. cam als stream einfügen

                        ! ````
                        ########################################

                        IP camera feed...

                        <feed ipcam1.ffm="">File /tmp/ipcam1.ffm
                        FileMaxSize 1M
                        ACL allow 127.0.0.1</feed>

                        ! ########################################

                        Streams...

                        <stream ipcam1.mjpg="">Feed ipcam1.ffm
                        Format mpjpeg
                        VideoQMin 1
                        VideoQMax 4
                        VideoFrameRate 10
                        VideoSize 480x390
                        VideoBufferSize 1024
                        VideoBitRate 1024
                        NoAudio
                        Strict -1</stream>
                        <stream ipcam1.jpg="">Feed ipcam1.ffm
                        Format jpeg
                        Qscale 2
                        VideoFrameRate 2
                        VideoSize 704x576
                        VideoIntraOnly
                        NoAudio
                        NoDefaults
                        Strict -1</stream>

                        
                        Alles ohne Gewähr…..ich habe das nicht getestet ;)
                        1 Reply Last reply
                        0
                        • G Offline
                          G Offline
                          Gonmyr
                          wrote on last edited by
                          #20

                          Es läuft! :lol:

                          Aber ich musste die ffserver.conf auch noch anpassen.

                          Wenn dort auch alle Streams drin stehen, klappt es prima.

                          Dankeschön für die Unterstützung!

                          Gruß

                          1 Reply Last reply
                          0
                          • lobomauL Offline
                            lobomauL Offline
                            lobomau
                            wrote on last edited by
                            #21

                            Bin grad am Testen. ffserver läuft schon mal.

                            Geht das ganze nur mit rtsp-streams oder auch mit http-streams?

                            Host: NUC8i3 mit Proxmox:

                            • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                            • Slave: Pi4
                            1 Reply Last reply
                            0
                            • D Offline
                              D Offline
                              dtp
                              wrote on last edited by
                              #22

                              Also ich nutze seit Jahren auf meinem Raspi das https://elinux.org/RPi-Cam-Web-Interface. Läuft sehr stabil und bietet extrem viele Einstellmöglichkeiten; so z.B. auch eine integrierte Bewegungserkennung.

                              Streams lassen sich per

                              http://<ip-adresse>/cam_pic_new.php?</ip-adresse>
                              

                              einbinden oder per

                              http://<ip-adresse>:</ip-adresse>
                              

                              direkt im Browser ansehen (Der Port ist nur nötig, wenn man vom Standardwert 80 abweicht). Zudem ist eine sehr einfache Konfiguration über den Web-Server möglich.

                              Gruß,

                              Thorsten

                              ioBroker im Docker-Container auf Synology DiskStation DS718+, HomeMatic IP über CCU3, IKEA Dirigera inkl. Matter, Apple Homekit, Amazon Alexa.

                              1 Reply Last reply
                              0
                              • M Offline
                                M Offline
                                mikiline
                                wrote on last edited by
                                #23

                                @lobomau:

                                Bin grad am Testen. ffserver läuft schon mal.

                                Geht das ganze nur mit rtsp-streams oder auch mit http-streams? `

                                Das ist dann ein MJPEG Stream….also ein HTTP Stream.

                                Ja du kannst auch RTSP Stream von ffSERVER "konvertieren" lassen

                                Einfach zu probieren wenn du im Skript einfach mal einen anderen Stream zu ffServer schickst ;)

                                1 Reply Last reply
                                0
                                • E Offline
                                  E Offline
                                  eastcoast
                                  wrote on last edited by
                                  #24

                                  @lobomau:

                                  Bin grad am Testen. ffserver läuft schon mal.

                                  Geht das ganze nur mit rtsp-streams oder auch mit http-streams? `
                                  Keine Ahnung was du mit "http-stream" meinst, aber prinzipiell kann ffmpeg so ziemlich alles konvertieren,

                                  auf deren Homepage gibt es detailierte Infos.

                                  1 Reply Last reply
                                  0
                                  • lobomauL Offline
                                    lobomauL Offline
                                    lobomau
                                    wrote on last edited by
                                    #25

                                    Ich habe es nun mit einer camera probiert, die ein rtsp-stream macht.

                                    Läuft wohl so halb, wenn man die Werte liest. Nur Bild habe ich nicht und keine zusätzliche CPU-Beanspruchung.

                                    Ich verstehe nicht was die synology (192.168.178.24) damit zu tun hat? Achso… dort läuft synology suvaillance mit der camera. Vielleicht sollte ich dort erstmal ausschalten... probiere ich mal aus... Edit: hat keinen Unterschied gemacht.

                                    Laufen tut ffmpeg auf dem server wo auch ioBroker läuft (192.168.178.18).
                                    1146_ffserver.png
                                    1146_ffserver2.png

                                    Host: NUC8i3 mit Proxmox:

                                    • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                                    • Slave: Pi4
                                    1 Reply Last reply
                                    0
                                    • _ Offline
                                      _ Offline
                                      _techniker_
                                      wrote on last edited by
                                      #26

                                      So sieht das bei mir auch aus.

                                      Gibt es dafür eine Lösung?

                                      1 Reply Last reply
                                      0
                                      • C Offline
                                        C Offline
                                        crossx
                                        wrote on last edited by
                                        #27

                                        @_techniker_:

                                        So sieht das bei mir auch aus.

                                        Gibt es dafür eine Lösung? `

                                        Im ursprünglichen Skript fehlt am Ende in der start-Funktion der Befehl ffmpegStart() um den Stream zu starten. Allerdings auf meinem RPi2 kaum umsetzbar, da zuviel Leistung benötigt wird.

                                        function start() {
                                            ffserverStart();
                                            ffmpegStart();
                                        }
                                        
                                        1 Reply Last reply
                                        0
                                        • ChaotC Offline
                                          ChaotC Offline
                                          Chaot
                                          wrote on last edited by
                                          #28

                                          Bei mir startet das Script nicht.

                                          Ich habe bei der Adresse der Kamera einen Fehler.

                                          Komme aber nicht drauf was:

                                          javascript.0	2018-12-26 23:08:40.399	error	at TCP.onread (net.js:601:20)
                                          javascript.0	2018-12-26 23:08:40.399	error	at Socket.Readable.push (_stream_readable.js:208:10)
                                          javascript.0	2018-12-26 23:08:40.399	error	at readableAddChunk (_stream_readable.js:250:11)
                                          javascript.0	2018-12-26 23:08:40.399	error	at addChunk (_stream_readable.js:263:12)
                                          javascript.0	2018-12-26 23:08:40.399	error	at Socket.emit (events.js:211:7)
                                          javascript.0	2018-12-26 23:08:40.399	error	at emitOne (events.js:116:13)
                                          javascript.0	2018-12-26 23:08:40.399	error	at Socket. <anonymous>(/opt/iobroker/node_modules/redis/index.js:274:27)
                                          javascript.0	2018-12-26 23:08:40.399	error	at JavascriptRedisParser.execute (/opt/iobroker/node_modules/redis-parser/lib/parser.js:574:12)
                                          javascript.0	2018-12-26 23:08:40.398	error	at JavascriptRedisParser.returnReply (/opt/iobroker/node_modules/redis/index.js:192:18)
                                          javascript.0	2018-12-26 23:08:40.398	error	at RedisClient.return_reply (/opt/iobroker/node_modules/redis/index.js:824:9)
                                          javascript.0	2018-12-26 23:08:40.398	error	at normal_reply (/opt/iobroker/node_modules/redis/index.js:726:21)
                                          javascript.0	2018-12-26 23:08:40.398	error	at Command.callback (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:236:17)
                                          javascript.0	2018-12-26 23:08:40.398	error	at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:823:17)
                                          javascript.0	2018-12-26 23:08:40.398	error	at createActiveObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1200:20)
                                          javascript.0	2018-12-26 23:08:40.398	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1146:37)
                                          javascript.0	2018-12-26 23:08:40.398	error	at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:957:28)
                                          javascript.0	2018-12-26 23:08:40.398	error	at Object.createScript (vm.js:80:10)
                                          javascript.0	2018-12-26 23:08:40.397	error	SyntaxError: Unexpected identifier
                                          javascript.0	2018-12-26 23:08:40.397	error	^^^^
                                          javascript.0	2018-12-26 23:08:40.397	error	var ffmpegStartCmd = "ffmpeg -i \"rtsp://192.168.8.90:554/user=XXXXXX_password=XXXXXXXX_channel=1_stream=0.sdp?real_stream" http://localhost:8090/ipcam1.ffm";
                                          javascript.0	2018-12-26 23:08:40.397	error	at script.js.Klingel.Kamera:6
                                          javascript.0	2018-12-26 23:08:40.397	error	script.js.Klingel.Kamera compile failed:</anonymous> 
                                          

                                          Scriptkopf:

                                          // **********************************************************************
                                          // Settings
                                          
                                          var ffserverStartCmd = "/usr/bin/ffserver &";
                                          var ffserverStopCmd  = "killall ffserver";
                                          var ffmpegStartCmd   = "ffmpeg -i \"rtsp://192.168.8.90:554/user=XXXX_password=XXXXXX_channel=1_stream=0.sdp?real_stream" http://localhost:8090/ipcam1.ffm";
                                          var ffmpegStopCmd    = "killall ffmpeg";
                                          
                                          

                                          ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          448

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe