Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
@anthony6608 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
I’m fairly new to this so I am not sure what could be causing it?
I probably should have explained better above what the
sed
command was for. The current version of MagicMirror uses Electron version 2.0.16–this is defined in the package.json file in the MM directory. Thesed
command updates package.json to use Electron version 3.0.13 instead. It’s probably best to remove the node_modules directory first and reinstall (cleaner). I updated the steps above.The problem with updating Electron is there is a reason MM still uses the lower version–it was working–we don’t know what else the new version is going to break. On mine, I had to update Node to v10.15 from v8.15 to get one of my other modules to work.
MMM-GoogleMapsTraffic module
I have a love-hate relationship with this module. I use it, but seems to break my other modules too (KeyBindings, OnScreenMenu)… I’ll look into the cause of this one, but if I had to guess-- The VLC window is just that, another window setting on top of the browser page that is MM. If something causes the browser to get focus (as simple as clicking the black background), the VLC window falls behind it. If you have a keyboard hooked up, try
Alt + Tab
and see if it comes back. I’m already looking for a way to make the VLC windows modal so they stay on top. -
Yep, Ive tried all different settings and I am not sure what is going on but the second I remove the MMM-GoogleMapsTraffic module from config.js the stream shows? Any idea why the two would conflict? I noticed when I remove the module from config.js then I see activity from RTSP stream in the logs when its added I dont see much:
0|MagicMirror | Starting MagicMirror: v2.6.0
0|MagicMirror | Loading config …
0|MagicMirror | Loading module helpers …
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: mmm-nest-status
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: MMM-MyCommute
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: MMM-RTSPStream
0|MagicMirror | No helper found for module: alert.
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: updatenotification
0|MagicMirror | No helper found for module: clock.
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: calendar
0|MagicMirror | No helper found for module: compliments.
0|MagicMirror | No helper found for module: currentweather.
0|MagicMirror | No helper found for module: weatherforecast.
0|MagicMirror | Initializing new module helper …
0|MagicMirror | Module helper loaded: newsfeed
0|MagicMirror | All module helpers loaded.
0|MagicMirror | Starting server on port 8080 …
0|MagicMirror | Server started …
0|MagicMirror | Connecting socket for: mmm-nest-status
0|MagicMirror | Starting node_helper for module [mmm-nest-status]
0|MagicMirror | Connecting socket for: MMM-MyCommute
0|MagicMirror | ====================== Starting node_helper for module [MMM-MyCommute]
0|MagicMirror | Connecting socket for: MMM-RTSPStream
0|MagicMirror | PM2: Stopping all OMXPlayer Streams…
0|MagicMirror | Connecting socket for: updatenotification
0|MagicMirror | Connecting socket for: calendar
0|MagicMirror | Starting node helper for: calendar
0|MagicMirror | Connecting socket for: newsfeed
0|MagicMirror | Starting module: newsfeed
0|MagicMirror | Sockets connected & modules started …
0|MagicMirror | Launching application.
0|MagicMirror | libGL error:
0|MagicMirror | MESA-LOADER: failed to retrieve device information
0|MagicMirror | MESA-LOADER: failed to retrieve device information
0|MagicMirror | MESA-LOADER: failed to retrieve device information
0|MagicMirror | ATTENTION: default value of option force_s3tc_enable overridden by environment.
0|MagicMirror | Create new calendar fetcher for url: http://www.calendarlabs.com/templates/ical/US-Holidays.ics - Interval: 300000
0|MagicMirror | Create new news fetcher for url: http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml - Interval: 300000
0|MagicMirror | Starting stream stream1 using VLC with args --width 352 --height 242 -I dummy --no-video-deco --no-embedded-video --video-title=stream1 rtsp://xxxx;xxxx@192.168.0.6:554/cam/realmonitor?channel=1&subtype=1…
0|MagicMirror | DP2: Config File Saved!
0|MagicMirror | DP2: Running window resizers…
0|MagicMirror | DP2: Running window resizers… -
Ok I spoke too soon 😩
Now the video won’t fit in the box no matter how I adjust it. I noticed that the other commute plugin width is adjusted as well. Is this a case of brackets not being in the right place or something? I’ve been working with this plugin all day 😟
Recap:
When I remove ALL other modules it aligns in the box however it doesnt take up the full box its like showing half of the picture.
-
When I enable the maps module the feed is there but just a black box.
-
When I have commute module loaded it overlaps the module on the screen.
-
When I remove all (non-default) modules it only fills up half of the box so the video is barely noticeable.
-
No matter how much I play with height/width settings, I cannot get it centered (right side always has blank space) and cant get anything sized up correctly.
I appreciate any help you guys can offer!
/* Magic Mirror Config Sample
*- By Michael Teeuw http://michaelteeuw.nl
- MIT Licensed.
- For more information how you can configurate this file
- See https://github.com/MichMich/MagicMirror#configuration
*/
var config = {
address: “localhost”, // Address to listen on, can be:
// - “localhost”, “127.0.0.1”, “::1” to listen on loopback interface
// - another specific IPv4/6 to listen on a specific interface
// - “”, “0.0.0.0”, “::” to listen on any interface
// Default, when address config is left out, is “localhost”
port: 8080,
ipWhitelist: [“127.0.0.1”, “::ffff:127.0.0.1”, “::1”], // Set [] to allow all IP addresses
// or add a specific IPv4 of 192.168.1.5 :
// [“127.0.0.1”, “::ffff:127.0.0.1”, “::1”, “::ffff:192.168.1.5”],
// or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
// [“127.0.0.1”, “::ffff:127.0.0.1”, “::1”, “::ffff:192.168.3.0/28”],language: "en", timeFormat: 12, units: "imperial", modules: [ { module: "MMM-RTSPStream", position: "top_right", header: "LIVE FEED", config: { autoStart: true, rotateStreams: false, rotateStreamTimeout: 20, moduleWidth: 354, moduleHeight: 240, localPlayer: 'vlc', remotePlayer: 'none', showSnapWhenPaused: false, remoteSnaps: false, stream1: { name: 'ENTRANCE', url: 'rtsp://admin:xxxxxxx@192.168.0.6:554/cam/realmonitor?channel=1&subtype=1', autoStart: true, //protocol: "tcp", frameRate: undefined, hdUrl: 'rtsp://admin:xxxx@192.168.0.6:554/cam/realmonitor?channel=1&subtype=0', width: 354, height: 240, } }
},
{ module: "alert", }, { module: "updatenotification", position: "top_bar" }, { module: "clock", position: "top_left" }, { module: "calendar", header: "US Holidays", position: "top_left", config: { calendars: [ { symbol: "calendar-check", url: "webcal://www.calendarlabs.com/templates/ical/US-Holidays.ics" } ] } }, { module: "compliments", position: "lower_third" }, { module: "currentweather", position: "top_right", config: { location: "New York", locationID: "", //ID from http://bulk.openweathermap.org/sample/; unzip the gz file and find your city appid: "YOUR_OPENWEATHER_API_KEY" } }, { module: "weatherforecast", position: "top_right", header: "Weather Forecast", config: { location: "New York", locationID: "5128581", //ID from https://openweathermap.org/city appid: "YOUR_OPENWEATHER_API_KEY" } }, { module: "newsfeed", position: "bottom_bar", config: { feeds: [ { title: "New York Times", url: "http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml" } ], showSourceTitle: true, showPublishDate: true } }, ]
};
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== “undefined”) {module.exports = config;}:::
-
-
@shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
I’m fairly new to this so I am not sure what could be causing it?
Thanks for the response. As of right now im still having a few issues which I posted in my reply below. Ive been using GoogleMapsTraffic and had no issues before however I only got RTSP working today so I don’t know. The overlay isn’t the only issue… Do you have any idea why my STREAM stops loading when I readd GoogleMapsTraffic back to the config?
Also, I have removed all other modules and just trying to get RTSP sorted. Now that all modules are removed I am able to get a good stream BUT no matter what I do I have a black space on the right side so it doesn’t look clean at all.
When I remove ALL other modules it aligns in the box however it doesnt take up the full box its like showing half of the picture.
-
When I enable the maps module the feed is there but just a black box.
-
When I have commute module loaded it overlaps the module on the screen.
-
No matter how much I play with height/width settings, I cannot get it centered (right side always has black space) and cant get anything sized up correctly.
Thanks again
-
-
**Update: fixed this error by running:
‘sudo chown pi:pi /home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2’Now it seems to run all the way through:
pi@raspberrypi:~/MagicMirror/modules/MMM-RTSPStream $ npm install
MMM-RTSPStream@2.0.0-dev preinstall /home/pi/MagicMirror/modules/MMM-RTSPStream
./scripts/preinstall.shdevilspie2 wmctrl ffmpeg omxplayer vlc is already installed. Moving on.
MMM-RTSPStream@2.0.0-dev postinstall /home/pi/MagicMirror/modules/MMM-RTSPStream
sudo npm link pm2/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2 -> /usr/lib/node_modules/pm2
removed 1 package in 19.37s**Still having the placement, overlay and no feed issues though.
Another error:
I just went back in to make sure I ran npm install and I get the following (not sure whether or not its critical). I’m taking a break for now. I’ve followed all instructions step by step and still can’t get it to display correctly :( Still having the 3 issues stated in my previous post as well. Appreciate it if someone can chime in on this.
pi@raspberrypi:~/MagicMirror/modules/MMM-RTSPStream $ npm install
MMM-RTSPStream@2.0.0-dev preinstall /home/pi/MagicMirror/modules/MMM-RTSPStream
./scripts/preinstall.shdevilspie2 wmctrl ffmpeg omxplayer vlc is already installed. Moving on.
npm WARN checkPermissions Missing write access to /home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2
npm ERR! path /home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access ‘/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2’
npm ERR! { Error: EACCES: permission denied, access ‘/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2’
npm ERR! stack: ‘Error: EACCES: permission denied, access ‘/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2’’,
npm ERR! errno: -13,
npm ERR! code: ‘EACCES’,
npm ERR! syscall: ‘access’,
npm ERR! path: ‘/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2’ }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.npm ERR! A complete log of this run can be found in:
npm ERR! /home/pi/.npm/_logs/2019-01-04T01_56_31_604Z-debug.log
pi@raspberrypi:~/MagicMirror/modules/MMM-RTSPStream $ -
This post is deleted! -
@anthony6608 The last error was my fault… it’s an issue with linking the PM2 module. I put a
sudo
where I didn’t need one, that’s been updated on Github.I’m sorry it’s been frustrating–trust me, I (and I’m sure several other’s on here) know the feeling. I was going to say that I thought it was the module getting moved around by the other modules when they load that was causing the issues, but not if it’s happening with only this module loaded. It should be resizing itself to fit. I sent you a chat with an e-mail address–if you can, send me a short video or picture of what you’re seeing and I’ll see if I can diagnose.
Also–for the forums, when pasting logs, configs, or any other chunk of code, use three back-ticks (`) on their own line at the start and finish to make it pretty (you can add “shell” or “javascript” for syntax highlighting.
```javascript Your code here ``` -
-
@shbatm thanks for the reply, and no worries about the permission issue. I’m no longer getting the error so I hope I fixed it the correct way.
I actually just opened an issue if you could take a look. I added some pictures there as well with a breakdown of everything I’ve noticed just to help make things easier and for anyone looking in the future to find it all in once place. Let me know if you’re able to view the pictures? For some reason they are not loading when I reload the page. Also thanks for the tip, I’ll be sure to use the back-ticks in the future!
-
@shbatm I am trying to get this module working with MMM-AssistantMk2 from @Sean so that I can switch TV channel streams (Dreambox) by voice command.
The issue is that instead of switching from a stream to another ALL of them start playing at the same time! :man_facepalming_medium_skin_tone: :rolling_on_the_floor_laughing:So far I’ve tried setting in the MMM-RTSPStream module both
rotateStreams: false
androtateStreams: true
, but it still happens.
I’ve also tried settingautoStart: false
, but as soon as I give the voice command the nightmare starts on! :face_with_tears_of_joy:This is my MMM-RTSPStream config:
module: "MMM-RTSPStream", position: "bottom_right", disabled: false, config: { autoStart: false, rotateStreams: false, rotateStreamTimeout: 10, moduleWidth: 440, moduleHeight: 247, moduleOffset: { left: -330, top: -180 }, localPlayer: 'omxplayer', remotePlayer: 'none', showSnapWhenPaused: false, remoteSnaps: false, stream1: { name: 'Sky TG24', url: 'http://***/1:0:1:5:7918:217C:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream2: { name: 'RAI 3 TGR Puglia', url: 'http://***/1:0:1:D4B:8800:13E:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream3: { name: 'RAI 3 HD', url: 'http://***/1:0:1:2191:5:13E:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream4: { name: 'Deejay TV HD', url: 'http://***/1:0:1:29:7918:217C:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream5: { name: 'Radio Deejay', url: 'http://***/1:0:2:9:204:1D:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream6: { name: 'Radio Capital', url: 'http://***/1:0:2:A:204:1D:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 }, stream7: { name: 'Radio 105', url: 'http://***/1:0:2:1FA7:32A:110:EEEE0000:0:0:0:', protocol: "tcp", frameRate: 'undefined', width: 440, height: 247 } } },
And this is the section of MMM-AssistantMk2 where I set the voice commands.
They match both your instructions and @Sean 's ones:transcriptionHook: { "CHANNEL_1": { pattern: "Sky TG24", command: "CHANGE_CHANNEL_1" }, "CHANNEL_2": { pattern: "Puglia", command: "CHANGE_CHANNEL_2" }, "CHANNEL_3": { pattern: "Rai3", command: "CHANGE_CHANNEL_3" }, "CHANNEL_4": { pattern: "Deejay TV", command: "CHANGE_CHANNEL_4" }, "CHANNEL_5": { pattern: "Radio Deejay", command: "CHANGE_CHANNEL_5" }, "CHANNEL_6": { pattern: "Radio Capital", command: "CHANGE_CHANNEL_6" }, "CHANNEL_7": { pattern: "Radio cento cinque", command: "CHANGE_CHANNEL_7" }, "PROFILE1": { pattern: "Famiglia", command: "CHANGE_PROFILE_1" }, "PROFILE2": { pattern: "Mio", command: "CHANGE_PROFILE_2" } }, command: { "CHANGE_CHANNEL_1": { notificationExec: { notification: "RTSP-PLAY", payload: "stream1" } }, "CHANGE_CHANNEL_2": { notificationExec: { notification: "RTSP-PLAY", payload: "stream2" } }, "CHANGE_CHANNEL_3": { notificationExec: { notification: "RTSP-PLAY", payload: "stream3" } }, "CHANGE_CHANNEL_4": { notificationExec: { notification: "RTSP-PLAY", payload: "stream4" } }, "CHANGE_CHANNEL_5": { notificationExec: { notification: "RTSP-PLAY", payload: "stream5" } }, "CHANGE_CHANNEL_6": { notificationExec: { notification: "RTSP-PLAY", payload: "stream6" } }, "CHANGE_CHANNEL_7": { notificationExec: { notification: "RTSP-PLAY", payload: "stream7" } },
-
the two streams work great again now, after pulling the older version.
Great. Thank you very much.
Also your new VLC based module sounds great.
But i guess, you maybe should create a whole new module for it?