Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
@barnosch said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
added the pkill commands but it does not work. It does not kill the apps.
From time to time, the feed disappears. Have not yet found when and why.
Sometimes it runs 2 days without problems, the other day it only lasts for some hours. -
@shbatm thank you for the fast answer, but this doesn’t fix the problem.
-
@Niggich could you please post your server log (console or PM2’s log file) when it does this? You should have several lines starting with:
Starting stream stream1 with args:
Also, what are you using to show/hide the module? (via MMM-Remote-Control or another module?)
This will help diagnose.
-
@shbatm To show/hide the modules I using MMM-remote-Control.
Here’s the server log.
Starting stream stream1 with args: [ 0|mm | "--avdict", 0|mm | "rtsp_transport:tcp", 0|mm | "--win", 0|mm | "203.390625, 1491.390625, 523.390625, 1731.390625", 0|mm | "--live", 0|mm | "--video_queue", 0|mm | "4", 0|mm | "--fps", 0|mm | "30", 0|mm | "rtsp://192.168.113.125:554/live/ch1" 0|mm | ] 0|mm | Starting stream stream2 with args: [ 0|mm | "--avdict", 0|mm | "rtsp_transport:tcp", 0|mm | "--win", 0|mm | "553.390625, 1491.390625, 873.390625, 1731.390625", 0|mm | "--live", 0|mm | "--video_queue", 0|mm | "4", 0|mm | "--fps", 0|mm | "30", 0|mm | "rtsp://192.168.113.103:554/live/ch1" 0|mm | ]
-
Hello,
@shbatm thanks for the great module!
In order to make my camera work in omxplayer, I need to enter the following command before the RTSP streaming URL in Terminal:
omxplayer --avdict rtsp_transport:tcp
The RTSP stream works fine with the added command in omxplayer. Full working command for reference:
omxplayer --avdict rtsp_transport:tcp rtsp://admin:admin@192.168.0.130:10554/tcp/av0_1
Is there a way to add the command to the config in order for the camera to work?
When looking at node helper.js I see the following reference:
if (this.config[payload.name].protocol !== "udp") { args.unshift("--avdict", "rtsp_transport:tcp");
I’ve tried to switch the protocol in the config to ‘udp’ (as well as ‘tcp’) to no avail. I hope you could point me in the right direction in order to solve this issue.
Full config below for reference:
{ module: 'MMM-RTSPStream', position: 'middle_center', config: { autoStart: true, rotateStreams: false, rotateStreamTimeout: 10, showSnapWhenPaused: false, moduleWidth: 354, moduleHeight: 240, moduleOffset: 0, localPlayer: 'omxplayer', stream1: { name: '360 Cam', url: 'rtsp://admin:admin@192.168.0.130:10554/tcp/av0_1', protocol: 'udp', snapshotUrl: '', snapshotRefresh: 10, // Seconds frameRate: "5", port: 9999, } }
Thanks in advance!
-
@kasperb said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
Is there a way to add the command to the config in order for the camera to work?
Adding
protocol: 'tcp'
should have done the trick. You can also try just removing the protocol line completely since the default protocol is TCP. The default command for omxplayer is:omxplayer --avdict rtsp_transport:tcp --win 'x y w h' --live --video_queue 4 --fps 30 {{url}}
The bit of code you referenced is to not include
--avdict rtsp_transport:tcp
when using a UDP stream.Also, check the console log to see what command was used to start OMXPlayer. It should print the list of arguments.
-
@shbatm Thanks for clarifying. I’ve removed
protocol: 'tcp'
from the config.When executing the default command in Terminal, the video displays properly on my screen.
The MM logs indicate that the stream is started accordingly as well (see below), but unfortunately still nothing is visible on my Mirror.
0|mm | Starting stream stream1 with args: [ 0|mm | "--avdict rtsp_transport:tcp", 0|mm | "--win", 0|mm | "379.5, 841.5, 731.5, 1083.5", 0|mm | "--live", 0|mm | "--video_queue", 0|mm | "4", 0|mm | "--fps", 0|mm | "30", 0|mm | "rtsp://admin:admin@192.168.0.130:10554/tcp/av0_1" 0|mm | ]
-
@kasperb - I have a suspicion – I think this is the same issue @Niggich was having where OMXPlayer doesn’t like non-integer window dimensions.
Please try changing the
moduleOffset: 0,
setting to0.5
and see if the video will work. If it works, you can change the offset back to 0 and try updating the module with the patch I just pushed:cd ~/MagicMirror/modules/MMM-RTSPStream git fetch --all git pull
If you experience issues with the stream stopping after running for a few days, I am still finalizing work on another branch to resolve this:
wip_patch
which runs OMXPlayer throughpm2
so it will automatically restart feed and hopefully be more stable. -
@shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
If you experience issues with the stream stopping after running for a few days, I am still finalizing work on another branch to resolve this: wip_patch which runs OMXPlayer through pm2 so it will automatically restart feed and hopefully be more stable.
Great! Looking forward to it.
-
@shbatm I’ve tried changing the moduleOffset to 0.5, as well as some other experimental values, but unfortunately that didn’t do the trick.
The configuration itself should work, as I had it working with a different RTSP cam previously.