Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
Thanks for the explanation.
It was already working, but i could not see the stream remotely within a VNC session (the ffmpeg stream was visible).
It works perfect now. No delay, and way sharper.
But…
If i restart the mirror because of changes in the config, i get a blank black screen.
The omxplayer does not stop completely. One instance is still running and is not killable.Additionally it seems that something kills the DNS of the pi. (Could be something else, but i guess it starts by adding your module).
Now the stupid thing. if i restart the service with “dhclient”, the name resolution works again, but i need to restart the mirror, that the scripts are loading.
If i restart the mirror, dns is not working anymore. (etc/resolve.conf is correct)It would really helpful if the omxplayer would shutdown completely if i
pm2 stop mirror.sh
or
pm2 restart mirror.sh
to not get a blank screen.Above all this, i love the module and appreciate your work. Thanks a lot.
WAF is really huge for this great addon ;) -
@barnosch Great! I’m glad its working. You bring up an important point that I should emphasize:
For anyone using the OMXPlayer Version: OMXPlayer outputs directly to the screen via the GPU. The video window will show up on top of anything else and will not appear in any remote desktop, VLC, or remote browser windows. This is by design. Think of it like picture-in-picture on your TV.
About the OMXPlayer not exiting: this is a known issue and is the reason the
wipbranch hasn’t been made themasteryet. I thought I had a fix for it, but it’s inconsistent.A temporary fix is to try adding the following BEFORE the
npm startline in yourmirror.shscript to make sure everything is dead before restarting:pkill omxplayer pkill electron -
@shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
@imdickie If you were on the Master branch it makes sense now why you were getting duplicate views, it was using
ffmpegand looking at only the first port for both cameras. The work-in-progress branch does not use websockets/ports for local playback since OMXPlayer just draws directly on top of the MM’s browser window.For the black screen: I forgot the
wipbranch has an additional node package required. This should take care of your problem:cd ~/MagicMirror/modules/MMM-RTSPStream git checkout wip git pull npm installYou may or may not need to also add a
moduleOffsetconfig option: see the posts above for pictures, if the video doesn’t line up with the border, you can addmoduleOffset: Xto shift the video over (where X is a number of pixels).For more information about the
wipbranch, there is an updated README on the Github page: https://github.com/shbatm/MMM-RTSPStream/tree/wipFor
pm2: it’s definitely not a requirement, but I find it’s nice to have; I included in the note above just in case you were already using it. It will automatically run the MM script for you on startup. See this page if you want more information.To all using the module: Thanks for bearing with me, I haven’t had a lot of time this past month to finish out the hardware-accelerated version (
wip/development branch) but I hope to get it done in the next month or so. I really do appreciate any feedback / issues you have to help me improve this module.thanks for your support. It really helps
-
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.
Weird.Only thing what helps is currently a reboot of the whole pi.
Since it was to complicated to log in on a device to give the reboot command, i set up a
Amazon Dash Button and placed it right next to the mirror.
So my wife can reboot the mirror with just a simpleorder-click. ;)Hopefully the OMX version will become more stable sooner or later.
-
I don’t understand, I downloaded the module, i’ve added this to my config.js file and I only see the square box where it’s supposed to show the feeed but it doesn’t show anything. The box is blank. If I put the same URL(rtsp://192.168.1.2:554/unicast/) in VLC on my magic mirror it works fine.
My MagicMirror is setup using Debian Jessie and I autostart MagicMirror via PM2. The camera I use is the XiaoMi XiaoFang Smart IP Security Home Camera running fang-hacks Please help.{
module: ‘MMM-RTSPStream’,
position: ‘bottom_center’,
config: {
autoStart: true,
rotateStreams: false,
rotateStreamTimeout: 10,
showSnapWhenPaused: false,
moduleWidth: 704,
moduleHeight: 240,
stream1: {
name: ‘salon’,
url: ‘rtsp://192.168.1.2:554/unicast/’,
snapshotUrl: ‘’,
snapshotRefresh: 10, // Seconds
frameRate: “30”,
port: 9999,
width: “320”,
height: “240”,
}, -
@barnosch Having the same issue; only a browser refresh or restart of the MM works. I started to question my camera and thought it was going offline, but looks like it’s related to the current WIP version. :-)
-
@shbatm I try everything to get stream working with omxplayer but I always get a black blank screen. I don’t know what can I try anymore. When I change it back to ffmpeg the stream is working…
-
@Niggich Then why do you insist on using omxplayer then?
-
@xblackdemonx The ffmpeg have a time difference from live to stream about 10 seconds.
-
@Niggich Not for me. I see maybe a 1/2 second delay only.
-
@xblackdemonx how you did this? I try everything… how is your config?
-
@Niggich Nothing special. Maybe reboot your cameras?
module: 'MMM-RTSPStream', position: 'bottom_bar', config: { autoStart: true, rotateStreams: false, rotateStreamTimeout: 10, showSnapWhenPaused: false, moduleWidth: 354, moduleHeight: 240, stream1: { name: 'Salon', url: 'rtsp://192.168.1.2:554/unicast', snapshotUrl: '', snapshotRefresh: 10, // Seconds frameRate: "15", port: 9999, } } }, -
@xblackdemonx ok, almost the same like my config. Just the Framerate is different. I change it like it is in your config and will see.
-
I noticed the following:
When using omxplayer i also had a black screen instead of the camera image.
I removed the sd card and inserted it in a different raspberry.
Then everything was working fine.
The only difference between those 2 is the monitor connected to it.
It was working on a 7 inch monitor and on a 24 inch monitor it didn’t work.
The problem was the resolution.
Now the module is using stream2 and i changed in my Hikvision camera the resolution settings for stream2.
Now my mirror is working fine.
Maybe this is also a solution for you. -
I hope my configuration will help give you guys another possibility. I locked down my camera a bit with a username & password. So my configuration looks as so:
{ module: "MMM-RTSPStream", position: "bottom_left", config: { autostart: true, rotateStreams: false, showSnapWhenPaused: false, moduleWidth: 354, moduleHeight: 242, stream1: { name: 'Front Door', url: 'rtsp://[username]:[password]@10.0.0.25/cam1/mpeg4', port: 8027, shutdownDelay: 0, width: 352, height: 240, frameRate: "30" } } } -
The stream works fine with the omx… finally, after 4 weeks playing…
Another question. Is any way to remove the little white Frame around video picture?
-
@Niggich
What was the trick that made it work finally? -
@Niggich
Change the css file in the module folder like this.MMM-RTSPStream .innerWrapper { position: relative; width: 352px; /* Video width + 2*border + 2*padding */ height: 242px; /* border: 1px solid white; */ /*float: left;*/ display: inline-block; text-align: center; margin: 15px; }the line “border: 1px solid white;” needs to be adujsted or uncommented like in my case
-
@Drooneyef I put the port of my cam behind the IP-adress…
module: 'MMM-RTSPStream', position: 'bottom_center', config: { autoStart: true, rotateStreams: false, showSnapWhenPaused: false, moduleWidth: 704, moduleHeight: 240, moduleOffset: { top: 212, left: 0 }, localPlayer: 'omxplayer', stream1: { name: '', url: 'rtsp://192.168.113.125:554/live/ch1', shutdownDelay: 0, width: 320, height: 240, frameRate: "20", port: 9999, }, stream2: { name: '', url: 'rtsp://192.168.113.103:554/live/ch1', shutdownDelay: 0, width: 320, height: 240, frameRate: "20", port: 10000, }, -
@barnosch thx this works fine for me…
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login