Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.5k

[Frage BLOCKLY ] Klingel Bild per Telegram versenden / Snapshot von Cam per Telegram versenden

Geplant Angeheftet Gesperrt Verschoben Blockly
157 Beiträge 36 Kommentatoren 46.8k Aufrufe 31 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • B Offline
    B Offline
    Beezy
    schrieb am zuletzt editiert von
    #6

    Hallo, ich habe das Skript aus dem zweiten Post abgewandelt für meinen Klingeltaster. Das funktioniert auch.

    Allerdings ist eine Sache komisch. Ich bekomme 4 Bilder gesendet. eins sofort, das zweite 4 Sekunden später, das dritte wie geplant 10 Sekunden später und das vierte 14 Sekunden später. Also im Prinzip so wie es soll aber nochmal um 4 Sekunden verzögert. Hat jemand eine Idee woran das liegen könnte? Vielleicht an der Statusmeldung des Klingeltasters von der CCU2?

    Eine Frage hätte ich noch. Da ich mich programmieren nicht auskenne. Ich würde gern wenn es klingelt zusätzlich diesen Datenpunkt auslösen:

    hm-rpc.0.BidCoS-RF.1.PRESS_SHORT

    und 3 Sekunden später diesen auf null setzen:

    hm-rpc.0.MEQ1828303.3.LEVEL

    Dadurch blinkt mein Wohnzimmerlicht für drei Sekunden wenn es klingelt. Da man manchmal beim Film schauen die Klingel nicht hört.

    1 Antwort Letzte Antwort
    0
    • wendy2702W Offline
      wendy2702W Offline
      wendy2702
      schrieb am zuletzt editiert von
      #7

      @Uhula:

      Blockly nutze ich nicht, aber bei mir läuft ein ähnliches Script:

      Ein Bewegungsmelder überwacht den Bereich der Eingangstür. Detektiert er eine Bewegung, wird ein Bild von der Überwachungskamera (die natürlich auch den gleichen Bereich abdeckt) geholt, gespeichert und via Telegram versendet. Das ganze noch einmal 10 Sek später. Es werden die letzten 8 Bilder gespeichert, das jüngste hat den Index 0, das vorletzte 1 usw. Damit kann man diese letzten Bilder auch sehr gut im vis darstellen (Dateiname ist eben immer gleich).

      Wenn man keinen Bewegungsmelder hat, kann man natürlich auch das Klingelevent als Auslöser nehmen … (in der Hoffnung, das Einbrecher klingeln ;-) )

      Vielleicht könnt ihr Teile aus dem Script gebrauchen.

      ! // ------------------------------------------------------------------------- // Dieses Script überwaht den Zustand eines Bewegungsmelders und speichert bei // Aktivierung ein Bild einer Überwachnungskamera in einem Vereichnis und sendet // dieses via Telegram.0-Adapter. Nach 10 Sek wird ein weiteres Bild erstellt und // gesendet. // Die Speicherung der Bilder erfolgt als "Stack", d.h. das aktuellste Bild bekommt // immer den Suffix "0" und es werden n Bilder mit den Suffixen 1..n-1 vorgehalten // Uhula 2017.11 // ------------------------------------------------------------------------- ! // ------------------------------------------------------------------------- // Konfiguration // ------------------------------------------------------------------------- // Objekt-ID des Bewegungsmelders const oidLichtBewmelderTuer = "hm-rpc.1.JEQ0000000.1.MOTION"; // URL zur Kamera umn ein Image (jpg) zu erhalten const cam_url = "http://username:password@000.000.000.000/cgi-bin/viewer/video.jpg?streamid=1"; // Pfadangabe für die Speicherung der Bilder, der Pfad muss existieren const dest_path = '/opt/iobroker/iobroker-data/files/_temp/'; // Anzahl der Bilder, die vorgehalten werden sollen const imageCountMax = 8; // Prefix für die Bildnamen const imageNamePre = "eingangstuer_"; ! // ------------------------------------------------------------------------- // Scriptteil // ------------------------------------------------------------------------- var request = require('request'); var fs = require('fs'); ! // Bild an telegram schicken function sendImage (path) { try { var stats = fs.statSync(path); var msg = formatDate(stats.birthtime,"DD.MM.YYYY hh:mm:ss") + " " + path.substring(path.lastIndexOf('/')+1); sendTo('telegram.0', { text: path, caption: msg, disable_notification: true }); } catch(err) { if (err.code != "ENOENT") log(err); } } ! // löscht eine Datei synchron (wartet auf das Ergebnis) function fsUnlinkSync(path) { try { var stats = fs.statSync(path); try { fs.unlinkSync(path); } catch(err) { if (err.code != "ENOENT") log(err); } } catch(err) { if (err.code != "ENOENT") log(err); } } ! // benennt eine Datei synchron um (wartet auf das Ergebnis) function fsRenameSync(oldPath, newPath) { try { var stats = fs.statSync(oldPath); try { fs.renameSync(oldPath, newPath); } catch(err) { if (err.code != "ENOENT") log(err); } } catch(err) { if (err.code != "ENOENT") log(err); } } ! // Bild speichern und senden function saveImage() { // Bild imageCountMax-1 löschen fsUnlinkSync( dest_path + imageNamePre + (imageCountMax-1) + ".jpg" ); // Bilder 0..imageCountMax-2 umbenennen for (var i=imageCountMax-2; i >= 0; i-- ) { fsRenameSync(dest_path + imageNamePre + i + ".jpg", dest_path + imageNamePre + (i+1) + ".jpg"); } // Bild 0 löschen var fname = imageNamePre + "0.jpg"; fsUnlinkSync( fname ); // Bild holen und speichern request.get({url: cam_url, encoding: 'binary'}, function (err, response, body) { fs.writeFile(dest_path + fname, body, 'binary', function(err) { if (err) { log('Fehler beim Bild speichern: ' + err, 'warn'); } else { // dem Filesystem 2 Sek Zeit zum Speichern lassen setTimeout(function() { sendImage(dest_path + fname); }, 2000); } }); }); } ! // sofort ein Bild senden und nach 10 Sek erneut function onEvent() { saveImage(); setTimeout(function() { saveImage(); }, 10 * 1000); } ! // Ereignisroutine on({id: oidLichtBewmelderTuer, val: true}, function (obj) { onEvent( obj ); }); ! // manuelle Ausführung (Test) onEvent(); `

      Hi,

      kann mir jemand sagen wie ich das Script ändern muss um z.B. 4 Bilder im Abstand von 3 Sekunden zu erhalten?

      Danke und Gruß

      Bitte keine Fragen per PN, die gehören ins Forum!

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      1 Antwort Letzte Antwort
      0
      • ? Offline
        ? Offline
        Ein ehemaliger Benutzer
        schrieb am zuletzt editiert von
        #8

        Ich kann dir gerne ein Blockly hier schreiben was ich im Forum gefunden hatte? So konnte ich selber per Timeout soviele Bilder senden wie ich wollte.

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          SigiMOE
          schrieb am zuletzt editiert von
          #9

          mach mal bitte, ich hätte Interesse

          1 Antwort Letzte Antwort
          0
          • L Online
            L Online
            Linedancer
            schrieb am zuletzt editiert von
            #10

            Hi,

            ich kann dir zwar nicht beim scripten helfen, aber beim Blockly.

            Wenn du in dem von dir geposteten Blockly statt auf "Änderung" auf "Aktualisieren" triggerst, dann kommt die Telegamm message auch an.

            –

            Ciao, Gerhard

            1 Antwort Letzte Antwort
            0
            • wendy2702W Offline
              wendy2702W Offline
              wendy2702
              schrieb am zuletzt editiert von
              #11

              @Brainbug:

              Ich kann dir gerne ein Blockly hier schreiben was ich im Forum gefunden hatte? So konnte ich selber per Timeout soviele Bilder senden wie ich wollte. `

              Ich habe auch Interesse.

              Bitte keine Fragen per PN, die gehören ins Forum!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              1 Antwort Letzte Antwort
              0
              • ? Offline
                ? Offline
                Ein ehemaliger Benutzer
                schrieb am zuletzt editiert von Negalein
                #12

                Zuerst habe ich per SSH einen Ordner angelegt:

                mkdir /opt/iobroker/ipcam
                

                Man muss dir URL der Kamera für das Bild heraus finden. Hier findet man einige Angaben https://www.ispyconnect.com/sources.aspx

                Wenn man die URL hat testet man diese im Browser ob dort das Bild aufgerufen wird. In meinen Fall sieht die URL so aus:

                http://benutzer:passwort@192.168.0.55/Streaming/channels/1/picture
                

                Hat man das Bild geöffnet und es hat funktioniert zurück perr SSH zum iobroker PC und gibt ein:

                wget --output-document /opt/iobroker/ipcam/alarm.jpg 'http://benutzer:passwort@192.168.0.55/Streaming/channels/1/picture' 
                

                Das Bild wird im Ordner gespeichert mit dem Namen alarm.jpg und dieses kann man per Telegram versenden.

                In den Einstellungen der javascript Instanz habe ich bei Erlaube das Kommando "exec" den Hacken gesetzt.

                Ich hoffe ich habe es richtig erklärt und man kann es auch verstehen. Bin nicht so der Profi im skripten..

                Blockly im Spoiler als Beispiel:

                 <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="jj8??y8i*v{!Fb0^jZ!*" x="-438" y="-262"><mutation items="1"></mutation>
                    <field name="CONDITION">ne</field>
                
                    <value name="OID0"><shadow type="field_oid" id="XEKh|+XF~3OC@EHY5{8{"><field name="oid">mihome.0.devices.sensor_motion_aq2_158d0001e514d4.state</field></shadow></value> 
                    <statement name="STATEMENT"><block type="controls_if" id="xXlCTj)t?n*Gg:j44f#Y"><value name="IF0"><block type="logic_compare" id="pMPW|b)g/=L3!yP`vsW6"><field name="OP">EQ</field>
                            <value name="A"><block type="get_value" id="5c7%aB|)K}(rNJ)#Jzd1"><field name="ATTR">val</field>
                                <field name="OID">mihome.0.devices.sensor_motion_aq2_158d0001e514d4.state</field></block></value> 
                            <value name="B"><block type="logic_boolean" id="Lhj]yTw*W`/`leEqri.g"><field name="BOOL">TRUE</field></block></value></block></value> 
                        <statement name="DO0"><block type="comment" id="eogMqz*f:xk9TWEY/!4#"><field name="COMMENT">Speichert das erste Bild bei Erkennung einer Bewegung</field>
                            <next><block type="exec" id="BEjD=u,#e-;T;d-e9D;r"><mutation with_statement="false"></mutation>
                                <field name="WITH_STATEMENT">FALSE</field>
                
                                <value name="COMMAND"><shadow type="text" id="p+g^=?Sl15wP.0/4C~~B"><field name="TEXT">wget --output-document /opt/iobroker/ipcam/alarm.jpg 'http://benutzer:passwort@192.168.0.55/Streaming/channels/1/picture'</field></shadow></value> 
                                <next><block type="comment" id="qm0bnl/,Dq4PjA`4!8ao"><field name="COMMENT">Es wird 2500ms gewartet um dieses speichern auszuführen</field>
                                    <next><block type="timeouts_settimeout" id="e=c#~E)j;S+#onaowS77"><field name="NAME">timeout</field>
                                        <field name="DELAY">2500</field>
                                        <field name="UNIT">ms</field>
                                        <statement name="STATEMENT"><block type="comment" id="cLfsL/.hZGyA%n?O!-:5"><field name="COMMENT">Und hier wird es versendet</field>
                                            <next><block type="telegram" id="FbkrL,IGK%]5xBi#Yj,="><field name="INSTANCE">.0</field>
                
                                                <value name="MESSAGE"><shadow type="text" id="wXLWD;.*8||`3_5J8(UB"><field name="TEXT">/opt/iobroker/ipcam/alarm.jpg</field></shadow></value></block></next></block></statement> 
                                        <next><block type="comment" id="Fu=MNqw/7gDC_n{i|=UN"><field name="COMMENT">Nach dem ersten Bild wird nach 4000ms das nächste Bild gespeichert</field>
                                            <next><block type="timeouts_settimeout" id="f55+L@!5F9d*i7)8.z}-"><field name="NAME">timeout2</field>
                                                <field name="DELAY">4000</field>
                                                <field name="UNIT">ms</field>
                                                <statement name="STATEMENT"><block type="exec" id="d~FCu]aLbH_s[eN3oB3H"><mutation with_statement="false"></mutation>
                                                    <field name="WITH_STATEMENT">FALSE</field>
                
                                                    <value name="COMMAND"><shadow type="text" id="q^pJl9(1bxjm4FLFJFlT"><field name="TEXT">wget --output-document /opt/iobroker/ipcam/alarm.jpg 'http://benutzer:passwort@192.168.0.55/Streaming/channels/1/picture'</field></shadow></value> 
                                                    <next><block type="comment" id="KW^QIsb%Axd:Sp^9@vZ%"><field name="COMMENT">Es wird 2500ms gewartet um dieses speichern auszuführen</field>
                                                        <next><block type="timeouts_settimeout" id="kqLD0XWHPVb*R%96uP;%"><field name="NAME">timeout3</field>
                                                            <field name="DELAY">2500</field>
                                                            <field name="UNIT">ms</field>
                                                            <statement name="STATEMENT"><block type="comment" id="Vo3{l~+:~RYcTronq]q*"><field name="COMMENT">Und hier wird es versendet</field>
                                                                <next><block type="telegram" id="3p`vo?Dq*N;FLI4BR{`q"><field name="INSTANCE">.0</field>
                
                                                                    <value name="MESSAGE"><shadow type="text" id="GsAgr]aq}s-1MR0mg|-W"><field name="TEXT">/opt/iobroker/ipcam/alarm.jpg</field></shadow></value></block></next></block></statement></block></next></block></next></block></statement> 
                                                <next><block type="comment" id="ma^~d4aFY-ahr*7)hhQy"><field name="COMMENT">ab hier so oft wiederholen wie man es möchte</field></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></statement></block></xml> 
                
                E D T 3 Antworten Letzte Antwort
                0
                • S Offline
                  S Offline
                  stephan61
                  schrieb am zuletzt editiert von Negalein
                  #13

                  Hallo wendy

                  folgende Zeile im script ändern

                  // sofort ein Bild senden und nach 10 Sek erneut
                  function onEvent() {
                  saveImage();
                  setTimeout(function() { saveImage(); }, 10 * 1000);
                  }
                  // sofort ein Bild senden und nach 3 Sek erneut
                  function onEvent() {
                  saveImage();
                  setTimeout(function() { saveImage(); }, 3 * 1000);
                  setTimeout(function() { saveImage(); }, 6 * 1000);
                  setTimeout(function() { saveImage(); }, 9 * 1000);
                  }
                  

                  Gruß Stephan

                  1 Antwort Letzte Antwort
                  0
                  • wendy2702W Offline
                    wendy2702W Offline
                    wendy2702
                    schrieb am zuletzt editiert von Negalein
                    #14

                    @stephan61:

                    Hallo wendy

                    folgende Zeile im script ändern

                    // sofort ein Bild senden und nach 10 Sek erneut
                    function onEvent() {
                    saveImage();
                    setTimeout(function() { saveImage(); }, 10 * 1000);
                    }
                    // sofort ein Bild senden und nach 3 Sek erneut
                    function onEvent() {
                    saveImage();
                    setTimeout(function() { saveImage(); }, 3 * 1000);
                    setTimeout(function() { saveImage(); }, 6 * 1000);
                    setTimeout(function() { saveImage(); }, 9 * 1000);
                    }
                    

                    Danke und Sorry für die Späte Antwort. Bin zur Zeit anderweitig sehr eingebunden.

                    Habe es geändert und werde testen.

                    Mirko

                    Bitte keine Fragen per PN, die gehören ins Forum!

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    1 Antwort Letzte Antwort
                    0
                    • Alex1808A Offline
                      Alex1808A Offline
                      Alex1808
                      schrieb am zuletzt editiert von Negalein
                      #15

                      Ich versende stamt Bild eine kleine mp4 Datei die als Gif bei Telegram ankommt.

                      einfach ffmpeg installieren und Befehl mit Blockly schicken.

                      513_screenshot_at_juli_04_11-29-16.png

                      Befehl URL:

                      ffmpeg -y -i rtsp://kamera_ip:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=360:force_original_aspect_ratio=decrease -r 15 /opt/iobroker/out2.mp4
                      

                      (Muss zu eigene Kameras angepasst werden)

                      chucky666C 1 Antwort Letzte Antwort
                      0
                      • wendy2702W Offline
                        wendy2702W Offline
                        wendy2702
                        schrieb am zuletzt editiert von
                        #16

                        Coole Idee.

                        Kann ich das Exec kommando irgendwie vorab auf funktion testen um zu sehen ob die Parameter passen?

                        EDIT: OK andere Frage. Testen kann ich das ja auf der Commandline aber wie bekomme ich raus mit welchen Einstellungen meine Camera funktioniert?

                        Sieht aktuell so aus:

                        root@openmediavault ~ > ffmpeg -y -i rtsp:xxx:xxx@192.168.178.210:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=360:force_original_aspect_ratio=decrease -r 15 /opt/iobroker/out2.mp4
                        ffmpeg version 3.2.10-1~deb9u1~bpo8+1 Copyright (c) 2000-2018 the FFmpeg developers
                          built with gcc 4.9.2 (Debian 4.9.2-10)
                          configuration: --prefix=/usr --extra-version='1~deb9u1~bpo8+1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --disable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
                          libavutil      55\. 34.101 / 55\. 34.101
                          libavcodec     57\. 64.101 / 57\. 64.101
                          libavformat    57\. 56.101 / 57\. 56.101
                          libavdevice    57\.  1.100 / 57\.  1.100
                          libavfilter     6\. 65.100 /  6\. 65.100
                          libavresample   3\.  1\.  0 /  3\.  1\.  0
                          libswscale      4\.  2.100 /  4\.  2.100
                          libswresample   2\.  3.100 /  2\.  3.100
                          libpostproc    54\.  1.100 / 54\.  1.100
                        [rtsp @ 0x557a333e4a00] max delay reached. need to consume packet
                        [rtsp @ 0x557a333e4a00] RTP: missed 115 packets
                        [h264 @ 0x557a333e7d00] error while decoding MB 23 35, bytestream -5
                        [h264 @ 0x557a333e7d00] concealing 10106 DC, 10106 AC, 10106 MV errors in I frame
                        Input #0, rtsp, from 'rtsp:xxx:xxx@192.168.178.210:554/12':
                          Metadata:
                            title           : Media Presentation
                          Duration: N/A, start: 0.300000, bitrate: N/A
                            Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 2688x1520 [SAR 1:1 DAR 168:95], 20 fps, 20 tbr, 90k tbn, 40 tbc
                        [swscaler @ 0x557a33411cc0] deprecated pixel format used, make sure you did set range correctly
                        [libx264 @ 0x557a33428360] width not divisible by 2 (637x360)
                        Stream mapping:
                          Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
                        Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
                        root@openmediavault ~ >
                        
                        

                        Bitte keine Fragen per PN, die gehören ins Forum!

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        1 Antwort Letzte Antwort
                        0
                        • Alex1808A Offline
                          Alex1808A Offline
                          Alex1808
                          schrieb am zuletzt editiert von
                          #17

                          @wendy2702:

                          EDIT: OK andere Frage. Testen kann ich das ja auf der Commandline aber wie bekomme ich raus mit welchen Einstellungen meine Camera funktioniert? `

                          Das kannst Du gut im VLC Player sehen unter media info, da brauchst du Seitenverhältnise und FPS, wobei FPS kannst beliebig ändern.

                          1 Antwort Letzte Antwort
                          0
                          • Alex1808A Offline
                            Alex1808A Offline
                            Alex1808
                            schrieb am zuletzt editiert von
                            #18

                            @wendy2702:

                            eht aktuell so aus:

                            ! root@openmediavault ~ > ffmpeg -y -i rtsp:xxx:xxx@192.168.178.210:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=640:h=360:force_original_aspect_ratio=decrease -r 15 /opt/iobroker/out2.mp4 ffmpeg version 3.2.10-1~deb9u1~bpo8+1 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --prefix=/usr --extra-version='1~deb9u1~bpo8+1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --disable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55\. 34.101 / 55\. 34.101 libavcodec 57\. 64.101 / 57\. 64.101 libavformat 57\. 56.101 / 57\. 56.101 libavdevice 57\. 1.100 / 57\. 1.100 libavfilter 6\. 65.100 / 6\. 65.100 libavresample 3\. 1\. 0 / 3\. 1\. 0 libswscale 4\. 2.100 / 4\. 2.100 libswresample 2\. 3.100 / 2\. 3.100 libpostproc 54\. 1.100 / 54\. 1.100 [rtsp @ 0x557a333e4a00] max delay reached. need to consume packet [rtsp @ 0x557a333e4a00] RTP: missed 115 packets [h264 @ 0x557a333e7d00] error while decoding MB 23 35, bytestream -5 [h264 @ 0x557a333e7d00] concealing 10106 DC, 10106 AC, 10106 MV errors in I frame Input #0, rtsp, from 'rtsp:xxx:xxx@192.168.178.210:554/12': Metadata: title : Media Presentation Duration: N/A, start: 0.300000, bitrate: N/A Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 2688x1520 [SAR 1:1 DAR 168:95], 20 fps, 20 tbr, 90k tbn, 40 tbc [swscaler @ 0x557a33411cc0] deprecated pixel format used, make sure you did set range correctly [libx264 @ 0x557a33428360] width not divisible by 2 (637x360) Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264)) Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height root@openmediavault ~ > ! `

                            Also da past scale=w=640:h=360 schon definitiv nicht

                            1 Antwort Letzte Antwort
                            0
                            • Alex1808A Offline
                              Alex1808A Offline
                              Alex1808
                              schrieb am zuletzt editiert von
                              #19

                              Übrigens, für Doorbird (v2) ist funktionierende URL

                              ffmpeg -y -i rtsp://login0001:password@doorbird_ip:554/mpeg/media.amp -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=1280:h=738:force_original_aspect_ratio=decrease -r 10 /opt/iobroker/out1.mp4
                              
                              1 Antwort Letzte Antwort
                              0
                              • wendy2702W Offline
                                wendy2702W Offline
                                wendy2702
                                schrieb am zuletzt editiert von Negalein
                                #20

                                So, Scale mal angepasst:

                                root@openmediavault ~ > ffmpeg -y -i rtsp:xxx:xxx_18@192.168.178.210:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=2688:h=1538:force_original_aspect_ratio=decrease -r 15 /opt/iobroker/out2.mp4
                                ffmpeg version 3.2.10-1~deb9u1~bpo8+1 Copyright (c) 2000-2018 the FFmpeg developers
                                  built with gcc 4.9.2 (Debian 4.9.2-10)
                                  configuration: --prefix=/usr --extra-version='1~deb9u1~bpo8+1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --disable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
                                  libavutil      55\. 34.101 / 55\. 34.101
                                  libavcodec     57\. 64.101 / 57\. 64.101
                                  libavformat    57\. 56.101 / 57\. 56.101
                                  libavdevice    57\.  1.100 / 57\.  1.100
                                  libavfilter     6\. 65.100 /  6\. 65.100
                                  libavresample   3\.  1\.  0 /  3\.  1\.  0
                                  libswscale      4\.  2.100 /  4\.  2.100
                                  libswresample   2\.  3.100 /  2\.  3.100
                                  libpostproc    54\.  1.100 / 54\.  1.100
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 113 packets
                                [h264 @ 0x5585cee28d00] left block unavailable for requested intra mode
                                [h264 @ 0x5585cee28d00] error while decoding MB 0 33, bytestream 17500
                                [h264 @ 0x5585cee28d00] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame
                                Input #0, rtsp, from 'rtsp:xxx:xxx_18@192.168.178.210:554/12':
                                  Metadata:
                                    title           : Media Presentation
                                  Duration: N/A, start: 0.300000, bitrate: N/A
                                    Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 2688x1520 [SAR 1:1 DAR 168:95], 20 fps, 20 tbr, 90k tbn, 40 tbc
                                [swscaler @ 0x5585cef82520] deprecated pixel format used, make sure you did set range correctly
                                [libx264 @ 0x5585ceee9f60] using SAR=1/1
                                [libx264 @ 0x5585ceee9f60] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 LZCNT
                                [libx264 @ 0x5585ceee9f60] profile High, level 5.0
                                [libx264 @ 0x5585ceee9f60] 264 - core 142 r2431 a5831aa - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=15 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
                                Output #0, mp4, to '/opt/iobroker/out2.mp4':
                                  Metadata:
                                    title           : Media Presentation
                                    encoder         : Lavf57.56.101
                                    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2688x1520 [SAR 1:1 DAR 168:95], q=-1--1, 15 fps, 15360 tbn, 15 tbc
                                    Metadata:
                                      encoder         : Lavc57.64.101 libx264
                                    Side data:
                                      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
                                Stream mapping:
                                  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
                                Press [q] to stop, [?] for help
                                [h264 @ 0x5585ceeda300] left block unavailable for requested intra mode
                                [h264 @ 0x5585ceeda300] error while decoding MB 0 33, bytestream 17500
                                [h264 @ 0x5585ceeda300] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packete=N/A dup=0 drop=8 speed=   0x
                                [rtsp @ 0x5585cee25a00] RTP: missed 110 packets
                                [h264 @ 0x5585ceee1860] error while decoding MB 67 65, bytestream -5
                                [h264 @ 0x5585ceee1860] concealing 5022 DC, 5022 AC, 5022 MV errors in P frame
                                Past duration 0.749992 too large      0kB time=00:00:00.00 bitrate=N/A dup=4 drop=11 speed=   0x
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 22 packets
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 1 packets
                                [h264 @ 0x5585ceeda300] left block unavailable for requested intra4x4 mode -1
                                [h264 @ 0x5585ceeda300] error while decoding MB 0 33, bytestream 146621
                                [h264 @ 0x5585ceeda300] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 5 packets
                                [h264 @ 0x5585ceeda300] error while decoding MB 15 66, bytestream -11
                                [h264 @ 0x5585ceeda300] concealing 4906 DC, 4906 AC, 4906 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packete=N/A dup=4 drop=15 speed=   0x
                                [rtsp @ 0x5585cee25a00] RTP: missed 62 packets
                                [h264 @ 0x5585cefa1980] error while decoding MB 29 46, bytestream -5
                                [h264 @ 0x5585cefa1980] concealing 8252 DC, 8252 AC, 8252 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=81708307.7kbits/s dup=4 drop=16 speed=2.22e-05x
                                [rtsp @ 0x5585cee25a00] RTP: missed 25 packets
                                [h264 @ 0x5585ceeda300] error while decoding MB 87 7, bytestream -5
                                [h264 @ 0x5585ceeda300] concealing 14746 DC, 14746 AC, 14746 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=19895.5kbits/s dup=5 drop=17 speed=0.0947x
                                [rtsp @ 0x5585cee25a00] RTP: missed 39 packets
                                [h264 @ 0x5585cefa1980] error while decoding MB 32 7, bytestream -5
                                [h264 @ 0x5585cefa1980] concealing 14801 DC, 14801 AC, 14801 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=9909.6kbits/s dup=6 drop=17 speed=0.19x
                                [rtsp @ 0x5585cee25a00] RTP: missed 447 packets
                                [h264 @ 0x5585ceeda300] error while decoding MB 98 64, bytestream -5
                                [h264 @ 0x5585ceeda300] concealing 5159 DC, 5159 AC, 5159 MV errors in P frame
                                Past duration 0.749992 too large
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 32 packets
                                [h264 @ 0x5585ceee1860] error while decoding MB 86 84, bytestream -9
                                [h264 @ 0x5585ceee1860] concealing 1811 DC, 1811 AC, 1811 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 71 packets
                                [h264 @ 0x5585cefa1980] error while decoding MB 126 88, bytestream -5
                                [h264 @ 0x5585cefa1980] concealing 1099 DC, 1099 AC, 1099 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 15 packets
                                [h264 @ 0x5585ceeda300] error while decoding MB 116 89, bytestream -5046.2kbits/s dup=6 drop=17 speed=0.209x
                                [h264 @ 0x5585ceeda300] concealing 941 DC, 941 AC, 941 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 45 packets
                                [h264 @ 0x5585cefa1980] error while decoding MB 84 57, bytestream -7
                                [h264 @ 0x5585cefa1980] concealing 6349 DC, 6349 AC, 6349 MV errors in P frame
                                frame=   66 fps=7.0 q=-1.0 Lsize=    2409kB time=00:00:04.20 bitrate=4699.1kbits/s dup=6 drop=17 speed=0.448x
                                video:2408kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.069726%
                                [libx264 @ 0x5585ceee9f60] frame I:1     Avg QP:19.26  size:429876
                                [libx264 @ 0x5585ceee9f60] frame P:17    Avg QP:21.33  size: 90299
                                [libx264 @ 0x5585ceee9f60] frame B:48    Avg QP:25.75  size: 10411
                                [libx264 @ 0x5585ceee9f60] consecutive B-frames:  1.5%  3.0%  4.5% 90.9%
                                [libx264 @ 0x5585ceee9f60] mb I  I16..4: 10.0% 38.4% 51.6%
                                [libx264 @ 0x5585ceee9f60] mb P  I16..4:  0.2%  0.5%  0.3%  P16..4: 32.3%  9.9% 15.5%  0.0%  0.0%    skip:41.3%
                                [libx264 @ 0x5585ceee9f60] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8: 30.7%  2.7%  0.9%  direct: 1.2%  skip:64.5%  L0:45.6% L1:52.4% BI: 2.0%
                                [libx264 @ 0x5585ceee9f60] 8x8 transform intra:39.8% inter:31.6%
                                [libx264 @ 0x5585ceee9f60] coded y,uvDC,uvAC intra: 72.1% 32.3% 8.3% inter: 9.9% 1.7% 0.0%
                                [libx264 @ 0x5585ceee9f60] i16 v,h,dc,p: 13% 49% 25% 14%
                                [libx264 @ 0x5585ceee9f60] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 64% 10% 11%  2%  2%  2%  2%  2%  3%
                                [libx264 @ 0x5585ceee9f60] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 31% 20% 15%  5%  4%  7%  4%  8%  5%
                                [libx264 @ 0x5585ceee9f60] i8c dc,h,v,p: 65% 13% 20%  3%
                                [libx264 @ 0x5585ceee9f60] Weighted P-Frames: Y:0.0% UV:0.0%
                                [libx264 @ 0x5585ceee9f60] ref P L0: 72.3%  4.5% 19.6%  3.6%
                                [libx264 @ 0x5585ceee9f60] ref B L0: 90.0%  7.7%  2.3%
                                [libx264 @ 0x5585ceee9f60] ref B L1: 93.4%  6.6%
                                [libx264 @ 0x5585ceee9f60] kb/s:4481.23
                                root@openmediavault ~ >
                                

                                Allerdings immer noch einige ERROR und andere suspekte Einträge im log:

                                error while decoding MB 126 88, bytestream -5
                                [h264 @ 0x5585cefa1980] concealing 1099 DC, 1099 AC, 1099 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 15 packets
                                [h264 @ 0x5585ceeda300] error while decoding MB 116 89, bytestream -5046.2kbits/s dup=6 drop=17 speed=0.209x
                                [h264 @ 0x5585ceeda300] concealing 941 DC, 941 AC, 941 MV errors in P frame
                                [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                [rtsp @ 0x5585cee25a00] RTP: missed 45 packets
                                [h264 @ 0x5585cefa1980] error while decoding MB 84 57, bytestream -7
                                

                                Bitte keine Fragen per PN, die gehören ins Forum!

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                1 Antwort Letzte Antwort
                                0
                                • Alex1808A Offline
                                  Alex1808A Offline
                                  Alex1808
                                  schrieb am zuletzt editiert von
                                  #21

                                  @wendy2702:

                                  So, Scale mal angepasst:

                                  ! root@openmediavault ~ > ffmpeg -y -i rtsp:xxx:xxx_18@192.168.178.210:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=2688:h=1538:force_original_aspect_ratio=decrease -r 15 /opt/iobroker/out2.mp4 ffmpeg version 3.2.10-1~deb9u1~bpo8+1 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --prefix=/usr --extra-version='1~deb9u1~bpo8+1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --disable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared libavutil 55\. 34.101 / 55\. 34.101 libavcodec 57\. 64.101 / 57\. 64.101 libavformat 57\. 56.101 / 57\. 56.101 libavdevice 57\. 1.100 / 57\. 1.100 libavfilter 6\. 65.100 / 6\. 65.100 libavresample 3\. 1\. 0 / 3\. 1\. 0 libswscale 4\. 2.100 / 4\. 2.100 libswresample 2\. 3.100 / 2\. 3.100 libpostproc 54\. 1.100 / 54\. 1.100 [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 113 packets [h264 @ 0x5585cee28d00] left block unavailable for requested intra mode [h264 @ 0x5585cee28d00] error while decoding MB 0 33, bytestream 17500 [h264 @ 0x5585cee28d00] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame Input #0, rtsp, from 'rtsp:xxx:xxx_18@192.168.178.210:554/12': Metadata: title : Media Presentation Duration: N/A, start: 0.300000, bitrate: N/A Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 2688x1520 [SAR 1:1 DAR 168:95], 20 fps, 20 tbr, 90k tbn, 40 tbc [swscaler @ 0x5585cef82520] deprecated pixel format used, make sure you did set range correctly [libx264 @ 0x5585ceee9f60] using SAR=1/1 [libx264 @ 0x5585ceee9f60] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 LZCNT [libx264 @ 0x5585ceee9f60] profile High, level 5.0 [libx264 @ 0x5585ceee9f60] 264 - core 142 r2431 a5831aa - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=15 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00 Output #0, mp4, to '/opt/iobroker/out2.mp4': Metadata: title : Media Presentation encoder : Lavf57.56.101 Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2688x1520 [SAR 1:1 DAR 168:95], q=-1--1, 15 fps, 15360 tbn, 15 tbc Metadata: encoder : Lavc57.64.101 libx264 Side data: cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264)) Press [q] to stop, [?] for help [h264 @ 0x5585ceeda300] left block unavailable for requested intra mode [h264 @ 0x5585ceeda300] error while decoding MB 0 33, bytestream 17500 [h264 @ 0x5585ceeda300] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packete=N/A dup=0 drop=8 speed= 0x [rtsp @ 0x5585cee25a00] RTP: missed 110 packets [h264 @ 0x5585ceee1860] error while decoding MB 67 65, bytestream -5 [h264 @ 0x5585ceee1860] concealing 5022 DC, 5022 AC, 5022 MV errors in P frame Past duration 0.749992 too large 0kB time=00:00:00.00 bitrate=N/A dup=4 drop=11 speed= 0x [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 22 packets [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 1 packets [h264 @ 0x5585ceeda300] left block unavailable for requested intra4x4 mode -1 [h264 @ 0x5585ceeda300] error while decoding MB 0 33, bytestream 146621 [h264 @ 0x5585ceeda300] concealing 10465 DC, 10465 AC, 10465 MV errors in I frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 5 packets [h264 @ 0x5585ceeda300] error while decoding MB 15 66, bytestream -11 [h264 @ 0x5585ceeda300] concealing 4906 DC, 4906 AC, 4906 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packete=N/A dup=4 drop=15 speed= 0x [rtsp @ 0x5585cee25a00] RTP: missed 62 packets [h264 @ 0x5585cefa1980] error while decoding MB 29 46, bytestream -5 [h264 @ 0x5585cefa1980] concealing 8252 DC, 8252 AC, 8252 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=81708307.7kbits/s dup=4 drop=16 speed=2.22e-05x [rtsp @ 0x5585cee25a00] RTP: missed 25 packets [h264 @ 0x5585ceeda300] error while decoding MB 87 7, bytestream -5 [h264 @ 0x5585ceeda300] concealing 14746 DC, 14746 AC, 14746 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=19895.5kbits/s dup=5 drop=17 speed=0.0947x [rtsp @ 0x5585cee25a00] RTP: missed 39 packets [h264 @ 0x5585cefa1980] error while decoding MB 32 7, bytestream -5 [h264 @ 0x5585cefa1980] concealing 14801 DC, 14801 AC, 14801 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packette=9909.6kbits/s dup=6 drop=17 speed=0.19x [rtsp @ 0x5585cee25a00] RTP: missed 447 packets [h264 @ 0x5585ceeda300] error while decoding MB 98 64, bytestream -5 [h264 @ 0x5585ceeda300] concealing 5159 DC, 5159 AC, 5159 MV errors in P frame Past duration 0.749992 too large [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 32 packets [h264 @ 0x5585ceee1860] error while decoding MB 86 84, bytestream -9 [h264 @ 0x5585ceee1860] concealing 1811 DC, 1811 AC, 1811 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 71 packets [h264 @ 0x5585cefa1980] error while decoding MB 126 88, bytestream -5 [h264 @ 0x5585cefa1980] concealing 1099 DC, 1099 AC, 1099 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 15 packets [h264 @ 0x5585ceeda300] error while decoding MB 116 89, bytestream -5046.2kbits/s dup=6 drop=17 speed=0.209x [h264 @ 0x5585ceeda300] concealing 941 DC, 941 AC, 941 MV errors in P frame [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet [rtsp @ 0x5585cee25a00] RTP: missed 45 packets [h264 @ 0x5585cefa1980] error while decoding MB 84 57, bytestream -7 [h264 @ 0x5585cefa1980] concealing 6349 DC, 6349 AC, 6349 MV errors in P frame frame= 66 fps=7.0 q=-1.0 Lsize= 2409kB time=00:00:04.20 bitrate=4699.1kbits/s dup=6 drop=17 speed=0.448x video:2408kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.069726% [libx264 @ 0x5585ceee9f60] frame I:1 Avg QP:19.26 size:429876 [libx264 @ 0x5585ceee9f60] frame P:17 Avg QP:21.33 size: 90299 [libx264 @ 0x5585ceee9f60] frame B:48 Avg QP:25.75 size: 10411 [libx264 @ 0x5585ceee9f60] consecutive B-frames: 1.5% 3.0% 4.5% 90.9% [libx264 @ 0x5585ceee9f60] mb I I16..4: 10.0% 38.4% 51.6% [libx264 @ 0x5585ceee9f60] mb P I16..4: 0.2% 0.5% 0.3% P16..4: 32.3% 9.9% 15.5% 0.0% 0.0% skip:41.3% [libx264 @ 0x5585ceee9f60] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 30.7% 2.7% 0.9% direct: 1.2% skip:64.5% L0:45.6% L1:52.4% BI: 2.0% [libx264 @ 0x5585ceee9f60] 8x8 transform intra:39.8% inter:31.6% [libx264 @ 0x5585ceee9f60] coded y,uvDC,uvAC intra: 72.1% 32.3% 8.3% inter: 9.9% 1.7% 0.0% [libx264 @ 0x5585ceee9f60] i16 v,h,dc,p: 13% 49% 25% 14% [libx264 @ 0x5585ceee9f60] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 64% 10% 11% 2% 2% 2% 2% 2% 3% [libx264 @ 0x5585ceee9f60] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 31% 20% 15% 5% 4% 7% 4% 8% 5% [libx264 @ 0x5585ceee9f60] i8c dc,h,v,p: 65% 13% 20% 3% [libx264 @ 0x5585ceee9f60] Weighted P-Frames: Y:0.0% UV:0.0% [libx264 @ 0x5585ceee9f60] ref P L0: 72.3% 4.5% 19.6% 3.6% [libx264 @ 0x5585ceee9f60] ref B L0: 90.0% 7.7% 2.3% [libx264 @ 0x5585ceee9f60] ref B L1: 93.4% 6.6% [libx264 @ 0x5585ceee9f60] kb/s:4481.23 root@openmediavault ~ > !

                                  Allerdings immer noch einige ERROR und andere suspekte Einträge im log:

                                   error while decoding MB 126 88, bytestream -5
                                  [h264 @ 0x5585cefa1980] concealing 1099 DC, 1099 AC, 1099 MV errors in P frame
                                  [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                  [rtsp @ 0x5585cee25a00] RTP: missed 15 packets
                                  [h264 @ 0x5585ceeda300] error while decoding MB 116 89, bytestream -5046.2kbits/s dup=6 drop=17 speed=0.209x
                                  [h264 @ 0x5585ceeda300] concealing 941 DC, 941 AC, 941 MV errors in P frame
                                  [rtsp @ 0x5585cee25a00] max delay reached. need to consume packet
                                  [rtsp @ 0x5585cee25a00] RTP: missed 45 packets
                                  [h264 @ 0x5585cefa1980] error while decoding MB 84 57, bytestream -7
                                  
                                  ```` `  
                                  

                                  Das sieht schon besser aus, versuche die out2.mp4 abzuspielen

                                  Errors kannst erstmal ignorieren.

                                  –-

                                  2688x1538 ziemlich riesig. Es gibt normalerweise eine zweite url mit geringerem Auflösung, wird eventuell besser durch kommen.

                                  1 Antwort Letzte Antwort
                                  0
                                  • Alex1808A Offline
                                    Alex1808A Offline
                                    Alex1808
                                    schrieb am zuletzt editiert von
                                    #22

                                    @wendy2702:

                                    EDIT: OK andere Frage. Testen kann ich das ja auf der Commandline aber wie bekomme ich raus mit welchen Einstellungen meine Camera funktioniert? `

                                    Habe gerade gesehen im log deine richtige Auflösung, FPS und das problem mit Scaling.

                                    513_screenshot_at_juli_04_14-00-42.png

                                    Versuche mal so:

                                    ffmpeg -y -i rtsp:xxx:xxx_18@192.168.178.210:554/12 -t 5 -f mp4 -vcodec libx264 -pix_fmt yuv420p -an -vf scale=w=1344:h=760:force_original_aspect_ratio=decrease -r 20 /opt/iobroker/out2.mp4
                                    
                                    1 Antwort Letzte Antwort
                                    0
                                    • wendy2702W Offline
                                      wendy2702W Offline
                                      wendy2702
                                      schrieb am zuletzt editiert von
                                      #23

                                      Hey DANKE!

                                      Das funktioniert schon mal. Jetzt auch mal mit dem Substream probiert das geht nochmal schneller und auf dem Handy Display ist die Qualität auch OK denke ich.

                                      Mirko

                                      Bitte keine Fragen per PN, die gehören ins Forum!

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      1 Antwort Letzte Antwort
                                      0
                                      • Alex1808A Offline
                                        Alex1808A Offline
                                        Alex1808
                                        schrieb am zuletzt editiert von
                                        #24

                                        @wendy2702:

                                        Hey DANKE!

                                        Das funktioniert schon mal. Jetzt auch mal mit dem Substream probiert das geht nochmal schneller und auf dem Handy Display ist die Qualität auch OK denke ich.

                                        Mirko `

                                        Ja, ich denke auch. Habe selbst 640x360 was ca. 120-125kb wiegt und reicht vollkommen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • wendy2702W Offline
                                          wendy2702W Offline
                                          wendy2702
                                          schrieb am zuletzt editiert von Negalein
                                          #25

                                          @stephan61:

                                          Hallo wendy

                                          folgende Zeile im script ändern

                                          // sofort ein Bild senden und nach 10 Sek erneut

                                          function onEvent() {

                                          saveImage();

                                          setTimeout(function() { saveImage(); }, 10 * 1000);

                                          }

                                          // sofort ein Bild senden und nach 3 Sek erneut

                                          function onEvent() {

                                          saveImage();

                                          setTimeout(function() { saveImage(); }, 3 * 1000);

                                          setTimeout(function() { saveImage(); }, 6 * 1000);

                                          setTimeout(function() { saveImage(); }, 9 * 1000);

                                          }

                                          Gruß Stephan `

                                          Habe es mal so eingetragen und prinzipiell läuft es.

                                          Hier mein aktuelles Script:

                                          // -------------------------------------------------------------------------
                                          // Dieses Script überwaht den Zustand eines Bewegungsmelders und speichert bei
                                          // Aktivierung ein Bild einer Überwachnungskamera in einem Vereichnis und sendet
                                          // dieses via Telegram.0-Adapter. Nach 10 Sek wird ein weiteres Bild erstellt und
                                          // gesendet.
                                          // Die Speicherung der Bilder erfolgt als "Stack", d.h. das aktuellste Bild bekommt
                                          // immer den Suffix "0" und es werden n Bilder mit den Suffixen 1..n-1 vorgehalten
                                          // Uhula 2017.11
                                          // -------------------------------------------------------------------------
                                          // -------------------------------------------------------------------------
                                          // Konfiguration
                                          // -------------------------------------------------------------------------
                                                // Objekt-ID des Bewegungsmelders
                                          const oidLichtBewmelderTuer = "hm-rpc.0.PEQ0390697.1.MOTION";
                                                // URL zur Kamera umn ein Image (jpg) zu erhalten
                                          const cam_url = "http://xxx:xxx@192.168.178.210/Streaming/channels/1/picture";
                                                // Pfadangabe für die Speicherung der Bilder, der Pfad muss existieren
                                          const dest_path = '/opt/iobroker/iobroker-data/files/_temp/';
                                                // Anzahl der Bilder, die vorgehalten werden sollen
                                          const imageCountMax = 8;                
                                                // Prefix für die Bildnamen
                                          const imageNamePre = "eingangstuer_"; 
                                          // -------------------------------------------------------------------------
                                          // Scriptteil
                                          // -------------------------------------------------------------------------
                                          var request = require('request');
                                          var fs      = require('fs');
                                          // Bild an telegram schicken 
                                          function sendImage (path) { 
                                              try {
                                                  var stats = fs.statSync(path);
                                                  var msg = formatDate(stats.birthtime,"DD.MM.YYYY hh:mm:ss") + " " + path.substring(path.lastIndexOf('/')+1);
                                                  sendTo('telegram.0', {
                                                      text:                   path,
                                                      caption:                msg, 
                                                      disable_notification:   true,
                                                      user: 'Mirko',
                                                  });
                                                  sendTo('telegram.0', {
                                                      text:                   path,
                                                      caption:                msg, 
                                                      disable_notification:   true,
                                                      user: 'xxxx',
                                                  });
                                              }
                                              catch(err) { if (err.code != "ENOENT") log(err); }     
                                          }
                                          // löscht eine Datei synchron (wartet auf das Ergebnis)
                                          function fsUnlinkSync(path) {
                                              try {
                                                  var stats = fs.statSync(path);
                                                  try { fs.unlinkSync(path); }
                                                  catch(err) { if (err.code != "ENOENT") log(err); }     
                                              }
                                              catch(err) { if (err.code != "ENOENT") log(err); }
                                          }
                                          // benennt eine Datei synchron um (wartet auf das Ergebnis)
                                          function fsRenameSync(oldPath, newPath) {
                                              try {
                                                  var stats = fs.statSync(oldPath);
                                                  try { fs.renameSync(oldPath, newPath); }
                                                  catch(err) { if (err.code != "ENOENT") log(err); }     
                                              }
                                              catch(err) { if (err.code != "ENOENT") log(err); }
                                          }
                                          // Bild speichern und senden
                                          function saveImage() {
                                              // Bild imageCountMax-1 löschen
                                              fsUnlinkSync( dest_path + imageNamePre + (imageCountMax-1) + ".jpg" );
                                              // Bilder 0..imageCountMax-2 umbenennen
                                              for (var i=imageCountMax-4; i >= 0; i-- ) { 
                                                  fsRenameSync(dest_path + imageNamePre + i + ".jpg", dest_path + imageNamePre + (i+1) + ".jpg"); 
                                              }
                                              // Bild 0 löschen
                                              var fname = imageNamePre + "0.jpg";
                                              fsUnlinkSync( fname );
                                              // Bild holen und speichern
                                              request.get({url: cam_url, encoding: 'binary'}, function (err, response, body) {
                                                  fs.writeFile(dest_path + fname, body, 'binary', function(err) {
                                                      if (err) {
                                                          log('Fehler beim Bild speichern: ' + err, 'warn');
                                                      } else {
                                                          // dem Filesystem 2 Sek Zeit zum Speichern lassen
                                                          setTimeout(function() { sendImage(dest_path + fname); }, 4000); 
                                                      }
                                                  }); 
                                              });
                                          }
                                          // sofort ein Bild senden und nach 3 Sek erneut
                                          //function onEvent() {
                                          //    saveImage();
                                          //    setTimeout(function() { saveImage(); }, 10 * 300); 
                                          //}
                                          // sofort ein Bild senden und nach 3 Sek erneut
                                          function onEvent() {
                                          saveImage();
                                          setTimeout(function() { saveImage(); }, 3 * 1000);
                                          setTimeout(function() { saveImage(); }, 6 * 1000);
                                          setTimeout(function() { saveImage(); }, 9 * 1000);
                                          }
                                          // Ereignisroutine
                                          //on({id: oidLichtBewmelderTuer, val: true}, function (obj) {
                                          //    onEvent( obj );
                                          on({id: 'hm-rpc.0.PEQ0390697.1.MOTION', change: "ne"}, function (obj) {
                                            var value = obj.state.val;
                                            var oldValue = obj.oldState.val;
                                            if (getState("hm-rpc.0.PEQ0390697.1.MOTION").val === true && getState("hm-rpc.0.NEQ1110202.1.STATE").val === false)
                                            onEvent( obj );
                                          });
                                          // manuelle Ausführung (Test)
                                          onEvent();
                                          

                                          Ich erhalte 4 Bilder, davon sind die letzten beiden Bilder aber identisch zu erkennen am exact gleichen Zeitstempel den die Camera einblendet.

                                          Jemand dazu noch eine Idee?

                                          Danke und Gruß

                                          Mirko

                                          Bitte keine Fragen per PN, die gehören ins Forum!

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          770

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe