Rtsp stream + motion detect from unique process ffmepg

I have a Sonoff camera that I would like to manage from node-red.

Based on the work of @kevinGodell, I easily displayed the video stream (stream).

Now I would like to implement a motion detection (send by telegram) via the "stdout" output of the ffmpeg but already impossible to display the image.

Do you think it possible to do this with a single ffmepg process? And do you have any ideas how to do this?

yes, probably. ffmpeg can do almost everything video/image related.

based on your screenshot, the pipe2jpeg image is green, which mean that it successfully parsed a jpeg.
the output screenshot shows that the payload is an array instead of buffer. change the buffer output setting to concatenated buffer since the image preview is expecting a complete jpeg image.

thank you very much for your quick response.
indeed with this option no more exceptions but no display even with a "base64" between the output and the display :thinking:
by injecting an example buffer into "image-info" I have
=> "Unknown image format: TypeError: Corrupt JPG, exceeded buffer limits"

Oh, I missed it earlier. You are not piping jpegs to the pipe2jpeg node. You are piping the mp4 video to it. That is not how it works. You have to configure ffmpeg to also output jpegs. Please share the configuration of the ffmpeg node. Or if you can, share the complete flow.

Ok which will explain the size of the buffer
But suddenly I have to create a new ffmepg process to manage the image ?

Here is my flow (which comes from the forum :wink:):
flows.json (20.5 KB)

I changed your flow so that ffmpeg is also piping out jpegs and for the ffmpeg node to have the additional outputs for stderr for logging and pipe:3 for the jpegs:

[{"id":"2f15f30e7d6375cf","type":"ui_mp4frag","z":"fa3972195becffe0","name":"","group":"f4f1a14b.1adf4","order":5,"width":6,"height":4,"readyPoster":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAMAAACtqHJCAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMzgwMTE3NDA3MjA2ODExODIyQUIzREQ3RTA0MDAyNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRkU5MkM4RDJCNTkxMUVCQjJCOTg0MEQ0QThCQ0YyQyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRkU5MkM4QzJCNTkxMUVCQjJCOTg0MEQ0QThCQ0YyQyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjc3RjExNzQwNzIwNjgxMTgyMkFDQTkzQjdGQkY1MzAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDM4MDExNzQwNzIwNjgxMTgyMkFCM0REN0UwNDAwMjQiLz4gPC9yZGY6RGVzY3Jp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","errorPoster":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAMAAACtqHJCAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMzgwMTE3NDA3MjA2ODExODIyQUIzREQ3RTA0MDAyNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRkU5MkM5MTJCNTkxMUVCQjJCOTg0MEQ0QThCQ0YyQyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRkU5MkM5MDJCNTkxMUVCQjJCOTg0MEQ0QThCQ0YyQyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjc3RjExNzQwNzIwNjgxMTgyMkFDQTkzQjdGQkY1MzAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDM4MDExNzQwNzIwNjgxMTgyMkFCM0REN0UwNDAwMjQiLz4gPC9yZGY6RGVzY3Jp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","hlsJsConfig":"{\"liveDurationInfinity\":true,\"liveBackBufferLength\":5,\"maxBufferLength\":10,\"manifestLoadingTimeOut\":1000,\"manifestLoadingMaxRetry\":10,\"manifestLoadingRetryDelay\":500}","autoplay":"true","unload":"true","threshold":"0.1","controls":"true","muted":"true","players":["mp4","socket.io","hls.js","hls"],"x":1050,"y":340,"wires":[[]]},{"id":"a34c078afaaefa7b","type":"ui_button","z":"fa3972195becffe0","name":"","group":"f4f1a14b.1adf4","order":3,"width":1,"height":1,"passthru":true,"label":"Start","tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"{\"command\":\"start\",\"path\":\"/usr/bin/ffmpeg\",\"args\":[\"-rtsp_transport\",\"tcp\",\"-i\",\"RTSPCAM\",\"-an\",\"-c:v\",\"copy\",\"-f\",\"mp4\",\"-movflags\",\"+frag_keyframe+empty_moov+default_base_moof\",\"pipe:1\",\"-f\",\"image2pipe\",\"-c\",\"mjpeg\",\"-vf\",\"fps=fps=1\",\"pipe:3\"]}","payloadType":"str","topic":"","topicType":"str","x":70,"y":360,"wires":[["42b2b9eb4dcfb5e2"]]},{"id":"42b2b9eb4dcfb5e2","type":"function","z":"fa3972195becffe0","name":"payload2action","func":"let camRtsp = flow.get(\"CamRtsp\") || \"empty\";\nif(camRtsp === \"empty\") return null;\nmsg.action = msg.payload.replace('RTSPCAM', camRtsp);\nreturn msg;\n","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":240,"y":380,"wires":[["3c25376d85e16edf"]]},{"id":"3c25376d85e16edf","type":"json","z":"fa3972195becffe0","name":"","property":"action","action":"","pretty":false,"x":410,"y":380,"wires":[["42fa576378de8a47","b33eddc5f34f30a6"]]},{"id":"42fa576378de8a47","type":"ffmpeg","z":"fa3972195becffe0","name":"","outputs":4,"cmdPath":"","cmdArgs":"[]","cmdOutputs":3,"killSignal":"SIGTERM","x":560,"y":380,"wires":[["fdf3bd95eeeef59b","ed2eaed3bfac4eb5"],["fdf3bd95eeeef59b"],["53f6815be1d3e5f8"],["ed2eaed3bfac4eb5"]]},{"id":"b33eddc5f34f30a6","type":"debug","z":"fa3972195becffe0","name":"debug 11","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":560,"y":320,"wires":[]},{"id":"fdf3bd95eeeef59b","type":"mp4frag","z":"fa3972195becffe0","name":"","outputs":2,"basePath":"id","serveHttp":"false","serveIo":"false","hlsPlaylistSize":"10","hlsPlaylistExtra":"5","bufferPool":"","autoStart":"false","preBuffer":"1","timeLimit":"100000","repeated":"false","statusData":"playlist","x":800,"y":340,"wires":[["2f15f30e7d6375cf"],[]]},{"id":"eed1db24ba892682","type":"ui_button","z":"fa3972195becffe0","name":"","group":"f4f1a14b.1adf4","order":2,"width":1,"height":1,"passthru":true,"label":"Stop","tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"{\"command\":\"stop\"}","payloadType":"str","topic":"","topicType":"str","x":70,"y":400,"wires":[["42b2b9eb4dcfb5e2"]]},{"id":"0bb20da4724fc761","type":"comment","z":"fa3972195becffe0","name":"Stream","info":"","x":230,"y":320,"wires":[]},{"id":"ed2eaed3bfac4eb5","type":"link out","z":"fa3972195becffe0","name":"link out 1","mode":"link","links":["b872c290665bb7ea"],"x":755,"y":460,"wires":[]},{"id":"473e5c96ff36a39a","type":"comment","z":"fa3972195becffe0","name":"--> Motion detect","info":"","x":880,"y":460,"wires":[]},{"id":"6ff8ef6231cc11d4","type":"comment","z":"fa3972195becffe0","name":"--> Motion detect","info":"","x":140,"y":520,"wires":[]},{"id":"cdc9257fbef26aac","type":"pipe2jpeg","z":"fa3972195becffe0","name":"","basePath":"id","serveHttp":"true","bufferType":"concat","x":280,"y":580,"wires":[["dbfd170cde805e61"],["91c95e7dfeccebb3","362e0af1034c3664","c03f539f01cf0c3f"]]},{"id":"b872c290665bb7ea","type":"link in","z":"fa3972195becffe0","name":"link in 1","links":["ed2eaed3bfac4eb5"],"x":105,"y":580,"wires":[["cdc9257fbef26aac"]]},{"id":"dbfd170cde805e61","type":"debug","z":"fa3972195becffe0","name":"debug 17","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":480,"y":520,"wires":[]},{"id":"91c95e7dfeccebb3","type":"debug","z":"fa3972195becffe0","name":"debug 18","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":500,"y":620,"wires":[]},{"id":"362e0af1034c3664","type":"debug","z":"fa3972195becffe0","name":"debug 19","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":800,"y":640,"wires":[]},{"id":"c03f539f01cf0c3f","type":"image","z":"fa3972195becffe0","name":"","width":160,"data":"payload","dataType":"msg","thumbnail":false,"active":true,"pass":false,"outputs":0,"x":800,"y":520,"wires":[]},{"id":"53f6815be1d3e5f8","type":"debug","z":"fa3972195becffe0","name":"stderr","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":770,"y":400,"wires":[]},{"id":"f4f1a14b.1adf4","type":"ui_group","name":"Cellier","tab":"9f7f7c23.5626d8","order":2,"disp":true,"width":"6","collapse":true,"className":""},{"id":"9f7f7c23.5626d8","type":"ui_tab","name":"Webcams","icon":"videocam","order":1,"disabled":false,"hidden":false}]

I will give you the friendly warning that creating jpegs from mp4 will require ffmpeg to decode the input and encode the output (transcoding) which could lead to a high cpu load if you try to create very large jpegs W x H or use a high FPS. Depending on what system you are on, there may be hardware acceleration decoders for the mp4 video that can reduce your load. But first, try the updated flow and report back if you can.

I will share with you my flow so you may have an alternative example:

[{"id":"a35ac355eeef7d5e","type":"subflow","name":"pid, status","info":"","category":"","in":[{"x":80,"y":100,"wires":[{"id":"f762eec6.4fbfc"}]}],"out":[{"x":280,"y":100,"wires":[{"id":"f762eec6.4fbfc","port":1}]},{"x":280,"y":160,"wires":[{"id":"f762eec6.4fbfc","port":2}]}],"env":[],"meta":{},"color":"#DDAA99","status":{"x":280,"y":40,"wires":[{"id":"f762eec6.4fbfc","port":0}]}},{"id":"f762eec6.4fbfc","type":"function","z":"a35ac355eeef7d5e","name":"","func":"const { payload = {} } = msg;\n\nconst { status, pid } = payload;\n\nif (pid && status) {\n\n    const color = status === 'spawn' ? 'green' : 'red';\n\n    const text = `pid: ${pid}, status: ${status}`;\n\n    return [ { payload: { fill: color, shape: 'dot', text } }, { payload: pid }, { payload: status } ];\n\n}\n\nreturn;","outputs":3,"noerr":0,"initialize":"","finalize":"","libs":[],"x":175,"y":100,"wires":[[],[],[]],"l":false},{"id":"7abea2a.3635c5c","type":"subflow","name":"auto restart","info":"","category":"","in":[{"x":80,"y":100,"wires":[{"id":"71100764.d230a8"}]}],"out":[{"x":480,"y":160,"wires":[{"id":"f51055b5.29d948","port":0}]}],"env":[{"name":"DELAY","type":"num","value":"5000"}],"meta":{},"color":"#DDAA99","status":{"x":280,"y":40,"wires":[{"id":"71100764.d230a8","port":0}]}},{"id":"f51055b5.29d948","type":"delay","z":"7abea2a.3635c5c","name":"delay","pauseType":"delayv","timeout":"1","timeoutUnits":"milliseconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":375,"y":160,"wires":[[]],"l":false},{"id":"71100764.d230a8","type":"function","z":"7abea2a.3635c5c","name":"","func":"const { payload = {} } = msg;\n\nconst { status, code, signal, killed, pid } = payload;\n\nif (status === 'close' && killed === false) {\n\n    const restart_count = context.get('restart_count') + 1;\n\n    context.set('restart_count', restart_count);\n\n    return [ { payload: { fill: 'green', text: `${restart_count}: ${new Date().toString()}` } }, { action: { command: 'start' } } ];\n\n}\n\nreturn;","outputs":2,"noerr":0,"initialize":"context.set('restart_count', 0);","finalize":"context.set('restart_count', undefined);","libs":[],"x":175,"y":100,"wires":[[],["d15a2631489c4819"]],"l":false},{"id":"d15a2631489c4819","type":"change","z":"7abea2a.3635c5c","name":"","rules":[{"t":"set","p":"delay","pt":"msg","to":"DELAY","tot":"env"}],"action":"","property":"","from":"","to":"","reg":false,"x":275,"y":160,"wires":[["f51055b5.29d948"]],"l":false},{"id":"1a29fa75.ef7866","type":"subflow","name":"progress","info":"","category":"","in":[{"x":80,"y":100,"wires":[{"id":"1370adb2.08e592"}]}],"out":[{"x":280,"y":100,"wires":[{"id":"1370adb2.08e592","port":1}]},{"x":280,"y":160,"wires":[{"id":"1370adb2.08e592","port":2}]}],"env":[],"meta":{},"color":"#DDAA99","status":{"x":280,"y":40,"wires":[{"id":"1370adb2.08e592","port":0}]}},{"id":"1370adb2.08e592","type":"function","z":"1a29fa75.ef7866","name":"","func":"const props = msg.payload.toString().split('\\n').slice(0, -1);\n\n/*if (props[props.length-1] !== 'progress=continue') {\n    node.warn(props);\n}*/\n\nconst progress = {};\n\nprops.forEach(item => {\n\n    const [name, value] = item.split('=');\n\n    if (name && value) {\n\n        progress[name] = value;\n\n    }\n\n});\n\nconst fps = progress['fps'] || '0';\n\nconst bitrate = progress['bitrate'] || '0';\n\nconst kbps = bitrate.replace('kbits/s', '');\n\nconst color = progress['progress'] === 'continue' ? 'green' : 'red';\n\nconst text = `fps: ${fps}, kbps: ${kbps}`;\n\nreturn [ { payload: { fill: color, shape: 'dot', text } }, { payload: fps }, { payload: kbps } ];","outputs":3,"noerr":0,"initialize":"","finalize":"","libs":[],"x":175,"y":100,"wires":[[],[],[]],"l":false},{"id":"32d61e0f.0490b2","type":"subflow","name":"stderr","info":"","category":"","in":[{"x":80,"y":100,"wires":[{"id":"211d46bf.a79c7a"}]}],"out":[],"env":[],"color":"#DDAA99","status":{"x":280,"y":40,"wires":[{"id":"211d46bf.a79c7a","port":0}]}},{"id":"211d46bf.a79c7a","type":"function","z":"32d61e0f.0490b2","name":"","func":"const stderr = msg.payload.toString().split('\\n');\n\nreturn [ { payload: { fill: 'red', text: `${new Date().toString()}` } }, { stderr } ];","outputs":2,"noerr":0,"initialize":"","finalize":"","libs":[],"x":175,"y":100,"wires":[[],["c6e5408.f19c4c"]],"l":false},{"id":"c6e5408.f19c4c","type":"debug","z":"32d61e0f.0490b2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"stderr","targetType":"msg","statusVal":"","statusType":"auto","x":275,"y":160,"wires":[],"l":false},{"id":"23160170.77800e","type":"subflow","name":"top","info":"","category":"","in":[{"x":80,"y":100,"wires":[{"id":"98a41609.d8efc8"}]}],"out":[{"x":480,"y":100,"wires":[{"id":"bc97fbbe.cb9318","port":1}]},{"x":480,"y":160,"wires":[{"id":"bc97fbbe.cb9318","port":2}]}],"env":[],"meta":{},"color":"#DDAA99","status":{"x":480,"y":40,"wires":[{"id":"bc97fbbe.cb9318","port":0}]}},{"id":"e4f2412d.1b609","type":"exec","z":"23160170.77800e","command":"top -b -d 5 -p","addpay":"payload","append":"","useSpawn":"true","timer":"","winHide":false,"oldrc":false,"name":"","x":275,"y":100,"wires":[["bc97fbbe.cb9318"],[],[]],"l":false,"info":"# minimize top's output in batch mode\n\nrun top in interactive mode (dont use -b)\n\nopen column configuration menu (f) and toggle values\n\nquit (q) menu\n\nconfigure display using (l, t, m) to remove extra\n\nsave configuration (shift + w)\n\nquit (q) top\n\nrun top in batch mode (top -b) to see the changes"},{"id":"bc97fbbe.cb9318","type":"function","z":"23160170.77800e","name":"","func":"const { payload } = msg;\n\nif (typeof payload === 'string') {\n\n    const lines = payload.toString().trim().split(/[\\n]+/);\n\n    if (lines.length >= 2) {\n\n        const labels = lines[lines.length - 2].trim().split(/[\\s]+/);\n\n        const values = lines[lines.length - 1].trim().split(/[\\s]+/);\n\n        const data = {};\n\n        for (let i = 0; i < labels.length; ++i) {\n\n            data[labels[i]] = values[i] || '0.0';\n\n        }\n\n        const cpu = data['%CPU'];\n\n        const mem = data['%MEM'];\n\n        const text = `%CPU ${cpu}, %MEM ${mem}`;\n\n        return [ { payload: { fill: 'green', shape: 'dot', text } }, { payload: cpu }, { payload: mem } ];\n\n    }\n\n}\n\nreturn { payload: {} };","outputs":3,"noerr":0,"initialize":"","finalize":"","libs":[],"x":375,"y":100,"wires":[[],[],[]],"l":false},{"id":"98a41609.d8efc8","type":"function","z":"23160170.77800e","name":"","func":"const { payload = {} } = msg;\n\nconst { status, pid } = payload;\n\nconst timeout = context.get('timeout');\n\nclearTimeout(timeout);\n\nif (status === 'spawn') {\n\n    const timeout = setTimeout(() =>  {\n\n        node.send({ payload: pid });\n\n        node.done();\n\n    }, 100);\n\n    context.set('timeout', timeout);\n\n    return;\n\n}\n\nif (status === 'close') {\n\n    return { payload: 'kill', kill: 'SIGTERM' };\n\n}","outputs":1,"noerr":0,"initialize":"// Code added here will be run once\n// whenever the node is deployed.\n\ncontext.set('timeout', undefined);","finalize":"// Code added here will be run when the\n// node is being stopped or re-deployed.\n\nconst timeout = context.get('timeout');\n\nclearTimeout(timeout);\n\ncontext.set('timeout', undefined);","libs":[],"x":175,"y":100,"wires":[["e4f2412d.1b609"]],"l":false},{"id":"cef91974e6aec9b2","type":"ffmpeg","z":"e9e026a8d50f5a31","name":"","outputs":5,"cmdPath":"","cmdArgs":"[\"-hide_banner\",\"-loglevel\",\"+level+fatal\",\"-nostats\",\"-hwaccel\",\"auto\",\"-c:v\",\"h264_v4l2m2m\",\"-stimeout\",\"20000000\",\"-rtsp_transport\",\"tcp\",\"-i\",\"SECRET\",\"-an\",\"-c:v\",\"copy\",\"-f\",\"mp4\",\"-movflags\",\"+frag_keyframe+empty_moov+default_base_moof\",\"-metadata\",\"title=front porch sub\",\"pipe:1\",\"-progress\",\"pipe:3\",\"-f\",\"image2pipe\",\"-c\",\"mjpeg\",\"-vf\",\"fps=fps=1\",\"pipe:4\"]","cmdOutputs":4,"killSignal":"SIGTERM","credentials":{},"x":530,"y":200,"wires":[["f16c156f0e8ec5c4","bb9a2e6c.2db89","79409137.c0d95","d329a272aced2adc","0490bbb215d50fad"],["f16c156f0e8ec5c4"],["e4c47f5e.f0dc2"],["8d29fa98.4602d8"],["0490bbb215d50fad"]],"info":"    \"-vf\",\n    \"fps=fps=1/2\",\n\n        \"-c:v\",\n    \"h264_v4l2m2m\",\n\n    ,scale=400:225\n\n\n\n    ```\n    [\n    \"-use_wallclock_as_timestamps\",\n    \"1\",\n    \"-fflags\",\n    \"+igndts+genpts\",\n    \"-loglevel\",\n    \"+level+warning\",\n    \"-nostats\",\n    \"-hwaccel\",\n    \"auto\",\n    \"-c:v\",\n    \"h264_v4l2m2m\",\n    \"-stimeout\",\n    \"20000000\",\n    \"-rtsp_transport\",\n    \"tcp\",\n    \"-i\",\n    \"SECRET\",\n    \"-reset_timestamps\",\n    \"1\",\n    \"-muxdelay\",\n    \"0.1\",\n    \"-an\",\n    \"-c:v\",\n    \"copy\",\n    \"-f\",\n    \"mp4\",\n    \"-movflags\",\n    \"+frag_keyframe+empty_moov+default_base_moof\",\n    \"-min_frag_duration\",\n    \"500000\",\n    \"-metadata\",\n    \"title=front porch sub\",\n    \"-reset_timestamps\",\n    \"1\",\n    \"-vsync\",\n    \"1\",\n    \"pipe:1\",\n    \"-progress\",\n    \"pipe:3\",\n    \"-f\",\n    \"image2pipe\",\n    \"-c\",\n    \"mjpeg\",\n    \"-vf\",\n    \"fps=fps=1\",\n    \"pipe:4\"\n]\n    ```\n\n    [\n    \"-loglevel\",\n    \"+level+warning\",\n    \"-nostats\",\n    \"-hwaccel\",\n    \"auto\",\n    \"-c:v\",\n    \"h264_v4l2m2m\",\n    \"-stimeout\",\n    \"20000000\",\n    \"-rtsp_transport\",\n    \"tcp\",\n    \"-i\",\n    \"SECRET\",\n    \"-an\",\n    \"-c:v\",\n    \"copy\",\n    \"-f\",\n    \"mp4\",\n    \"-movflags\",\n    \"+frag_every_frame+empty_moov+default_base_moof\",\n    \"-min_frag_duration\",\n    \"500000\",\n    \"-metadata\",\n    \"title=front porch sub\",\n    \"pipe:1\",\n    \"-progress\",\n    \"pipe:3\",\n    \"-f\",\n    \"image2pipe\",\n    \"-c\",\n    \"mjpeg\",\n    \"-vf\",\n    \"fps=fps=1\",\n    \"pipe:4\"\n]"},{"id":"f16c156f0e8ec5c4","type":"mp4frag","z":"e9e026a8d50f5a31","name":"","outputs":2,"basePath":"front_porch_sub","serveHttp":"true","serveIo":"true","hlsPlaylistSize":4,"hlsPlaylistExtra":"1","bufferPool":"1","autoStart":"false","preBuffer":"0","timeLimit":"-1","repeated":"false","statusData":"all","x":870,"y":240,"wires":[["a26397f514f25a8e"],[]]},{"id":"bb9a2e6c.2db89","type":"subflow:23160170.77800e","z":"e9e026a8d50f5a31","name":"","x":810,"y":160,"wires":[["677b5a6a.68b384"],["3bec46dc.4c5eea"]]},{"id":"e4c47f5e.f0dc2","type":"subflow:32d61e0f.0490b2","z":"e9e026a8d50f5a31","name":"","x":810,"y":320,"wires":[]},{"id":"8d29fa98.4602d8","type":"subflow:1a29fa75.ef7866","z":"e9e026a8d50f5a31","name":"","env":[],"x":820,"y":400,"wires":[["859f94c6.1ed7c8"],["e5dbe5ba.2d8618"]]},{"id":"ef080de0.cfe68","type":"inject","z":"e9e026a8d50f5a31","name":"start","props":[{"p":"action","v":"{\"command\":\"start\"}","vt":"json"}],"repeat":"","crontab":"","once":true,"onceDelay":"5","topic":"","payloadType":"str","x":90,"y":100,"wires":[["4e8f1861.d92608","cef91974e6aec9b2"]]},{"id":"79409137.c0d95","type":"subflow:7abea2a.3635c5c","z":"e9e026a8d50f5a31","name":"","env":[],"x":290,"y":100,"wires":[["4e8f1861.d92608","cef91974e6aec9b2"]]},{"id":"b69b4a33.ef4b98","type":"inject","z":"e9e026a8d50f5a31","name":"restart","props":[{"p":"action","v":"{\"command\":\"restart\"}","vt":"json"}],"repeat":"","crontab":"","once":false,"onceDelay":"1","topic":"","payloadType":"str","x":90,"y":160,"wires":[["4e8f1861.d92608","cef91974e6aec9b2"]]},{"id":"275da6fe.763e0a","type":"inject","z":"e9e026a8d50f5a31","name":"stop","props":[{"p":"action","v":"{\"command\":\"stop\"}","vt":"json"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":90,"y":220,"wires":[["cef91974e6aec9b2"]]},{"id":"d329a272aced2adc","type":"subflow:a35ac355eeef7d5e","z":"e9e026a8d50f5a31","name":"","x":830,"y":80,"wires":[["22c956c0.422b5a"],["e3f1fa6c.d05f98"]]},{"id":"0490bbb215d50fad","type":"pipe2jpeg","z":"e9e026a8d50f5a31","name":"","basePath":"front_porch_sub","serveHttp":"true","bufferType":"array","x":880,"y":480,"wires":[["e2b703830e838751"],[]]}]

Also, don't forget to check the included examples. If you are like me, you may not know that the section exists (i found out after using node-red for quite a long time, oops).

2 Likes

With flow, I recover the image well but I no longer have the video:

Indeed I would like to apply the ffmpeg to one per camera to preserve my rpi4 ...

For your last share I'll watch and you'll get back
I want to understand the intricacies before deploying the 4 cameras in my home

Thank you for your availability and see you soon

The status text under the mp4frag node shows that http and io are both turned off. There will be no way to watch the video in the ui-mp4frag node if it is not being served.

It's thoroughness...
The process crashes at 90%
image

I will study your alternative :wink:

Error! it takes a little longer but it works


I'm relieved and I can keep moving forward
A big big thank you to you

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.