MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras

    Scheduled Pinned Locked Moved Utilities
    602 Posts 67 Posters 1.9m Views 68 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BKeyportB Offline
      BKeyport Module Developer @Egnos
      last edited by

      @Egnos that’s the best method, it seems. Only way i can keep my streams from crashing.

      The "E" in "Javascript" stands for "Easy"

      1 Reply Last reply Reply Quote 0
      • S Offline
        sophia787
        last edited by

        Sorry at this time I don’t have any solution.

        https://racketsblog.com/best-tennis-rackets/

        1 Reply Last reply Reply Quote 0
        • P Offline
          Plainbroke 0
          last edited by

          I understand that the developer of this module is not supporting it, but
          I see a lot of people are using it or at least trying to…
          I have it working with 3 Wyze v2 cams, using omxplayer.
          I would like to see if using vlc would possibly fix the lag time loading the cam output… I have a approximately 10 second lag between module start up and the picture actually showing up…
          Problem is when I change the localPlayer: to vlc from omxplayer I get a blank screen screen. I reinstalled vlc player to my rpi but can not figure out how to get it to load vlc. I use carousel and have approx 35 different modules working through it… I tried pm2 start vlc and it did but still did not show a feed.
          I posted my config.js minus keys and passwords of course. Any help is appreciated…

          
          /* Magic Mirror Config Sample
           *
           * By Michael Teeuw http://michaelteeuw.nl
           * MIT Licensed.
           *
           * For more information on how you can configure this file
           * See https://github.com/MichMich/MagicMirror#configuration
           *
           */
          
          var config = {
          	address: "0.0.0.0", // Address to listen on, can be:
          	port: 8080,
          	ipWhitelist: [], // Set [] to allow all IP addresses
          	useHttps: false, // Support HTTPS or not, default "false"
          	language: "en",
          	timeFormat: 12,
          	units: "imperial",
          
          	modules: [
          		{
          			module: "MMM-Carousel",
          			config: {
          				transitionInterval: 53000,
          				ignoreModules: ["MMM-Snow"],
          				mode: "slides",
          				slides: [
          					["MMM-CalendarExt"],
          					["calendar", "clock", "compliments"],
          					["calendarH", "clock", "compliments"],
          //					["calendarN", "clock", "compliments"],
          					["iFrame"],
          					["MMM-ATM", "clock", "compliments"],
          					["MMM-BMI", "clock", "compliments"],
                                                  ["MMM-RTSPStream"],
          					["MMM-Bored", "clock", "compliments"],
          					["MMM-CalvinAndHobbes", "clock", "compliments"],
          					["MMM-CloneWarsQuotes", "clock", "compliments"],
          					["MMM-Cocktails"],
          					["MMM-COVID19", "clock", "compliments"],
          					["MMM-DailyQuote", "clock", "compliments"],
          					["MMM-DarkSkyForecast", "clock", "compliments"],
          					["MMM-Dogs", "clock", "compliments"],
          					["MMM-Evil", "clock", "compliments"],
          					["MMM-Gas", "clock", "compliments"],
          					["MMM-GmailFeed", "clock", "compliments"],
          					["MMM-History", "clock", "compliments"],
                                                  ["MMM-RTSPStream2"],
          					["MMM-icanhazdadjoke", "clock", "compliments"],
          					["MMM-ImagesPhotos", "clock", "compliments"],
          					["MMM-learnlanguage", "clock", "compliments"],
          					["MMM-MotionEye"],
          					["MMM-MyWordOfTheDay", "clock", "compliments"],
          					["MMM-NetworkScanner"],
          					["MMM-Parcel", "clock", "compliments"],
          					["MMM-PoemOfTheDay"],
          					["MMM-quote-of-the-day", "clock", "compliments"],
          					["MMM-RAIN-MAP"],
          					["MMM-rfacts", "clock", "compliments"],
          					["MMM-RTSPStream3"],
          					["MMM-SimpleLogo", "clock", "compliments"],
          					["MMM-SugarValue", "clock", "compliments"],
          					["on-this-day", "clock", "compliments"],
          					["random_quotes", "clock", "compliments"]
          				]
          			}
          		},
          
          		{
          			module: "clock",
          			position: "top_left",
          			classes: "clock-time-only",
          			config: {
          				timeFormat: 12,
          				displaySeconds: false,
          				showPeriodUpper: false,
          				showPeriod: false
          			}
          		},
          
          		{
          			module: "clock",
          			position: "top_center",
          			classes: "clock-date-only",
          			config: {
          				timeFormat: 12,
          				showPeriod: false,
          				dateFormat: "ddd, ll",
          				displaySeconds: false
          			}
          		},
          
          		{
          			module: "clock",
          			position: "top_right",
          			classes: "clock-time-only",
          			config: {
          				timeFormat: 12,
          				displaySeconds: false,
          				showPeriodUpper: false,
          				showPeriod: false
          			}
          		},
          
                          {
                                  module: "calendar",
                                  position: "middle_center",
                                  header: "Birthdays",
                                  config: {
                                          fade: false,
                                          maximumEntries: 9,
                                          timeFormat: "absolute",
                                          urgency: 3,
                                          getRelative: 24,
                                          calendars: [
                                                  {
                                                          symbol: "birthday-cake",
                                                          url: ""
                                                  }
                                          ]
                                  }
                          },
          
                          {
                                  module: "calendarH",
                                  position: "middle_center",
                                  header: "US Holidays",
                                  config: {
                                          maximumEntries: 9,
                                          timeFormat: "absolute",
                                          urgency: 3,
                                          getRelative: 24,
                                          calendars: [
                                                  {
                                                          symbol: "h-square",
                                                          url:""
                                                  }
                                          ]
                                  }
                          },
          
                          {
                                  module: "calendarN",
                                  position: "middle_center",
                                  header: "Nascar",
                                  config: {
                                          maximumEntries: 9,
                                          timeFormat: "absolute",
                                          urgency: 3,
                                          getRelative: 24,
                                          calendars: [
                                                  {
                                                          symbol: "automobile",
                                                          url: ""
                                                  }
                                          ]
                                  }
                          },
          
                          {
                                  module: "compliments",
                                  position: "bottom_bar",
                                  config: {
                                          remoteFile: "compliments.json"
                                  }
                          },
          
          	        {
          	                module: "iFrame",
          	                position: "middle_center",
          	                config: {
                                                  url: "",
          	                                width: "1000px",
          	                                height: "950px"
          	                }
          	        },
          
          		{
          			module: "MMM-ATM",
          			position: "middle_center",
          			config: {
          				multipleChoice: "Yes",
          				useHeader: false,
          				header: "Another Trivia Module!",
          				maxWidth: "1240px"
          			}
          		},
          
          		{
          			module: "MMM-BMI",
          			position: "top_center",
          			config: {
          				name: "Jeffory",
          				imperialUnits: true,
          				weight: "250",
          				height: "73",
          				herName: "Stacey",
          				herWeight: "140",
          				herHeight: "67",
          				useHeader: false,
          				header: "Our Body Mass Index",
          				maxWidth: "1000px"
          			}
          		},
          
          		{
          			module: "MMM-Bored",
          			position: "middle_center",
          			config: {
          				maxWidth: "1310px"
          			}
          		},
          
          		{
          			module: "MMM-CalendarExt",
          			position: "middle_center",
          			config: {
                              maxHeight: "100%",
                              maxWidth: "100%",
          				system: {
          					show: ["month"],
          					locale: "en",
          					showEmptyView: 1,
          					fullDayEventLocalize: 0,
          					redrawInterval: 1 * 60 * 1000,
          					useProfileConfig: 0,
          					startProfile: "Birthdays",
          				},
          				defaultView: {
          					position: "middle_center",
          					positionOrder: 1,
          					overflowRolling: 0,
          					overflowHeight: 300,
          					overflowDuration: 3,
          					onlyStartingTime: 0,
          					timeFormat: "h:mm a",
          					dateFormat: "ddd, M/D",
          					fullDayEventDateFormat: "ddd, M/D",
          					ellipsis: 0,
          					limit: 0,
          				},
          				views: {
          					month: {
          						showWeeks: 0,
          					},
          				},
          				defaultCalendar: {
          					profiles: [],
          					views: ["month", "upcoming"],
          					symbol: "cake-variant@md",
          					styleName: "style5",
          					replaceTitle: [],
          					classPattern: [],
          					classPatternWhere: ["title"],
          					symbolPattern: [],
          					symbolPatternWhere: ["title"],
          					maxEntries: 90,
          					maxDays: 365,
          					interval: 300000,
          				},
          				calendars: [
          					{
          						name: "Holidays",
          						url: "webcal://ical.mac.com/ical/US32Holidays.ics",
          						profile: [""],
          						symbol: "pine-tree@md",
          					},
          					{
          						name: "Birthdays",
          						url: "",
          						profile: [""],
          						symbol: "cake-variant@md",
          					},
          				],
          			},
          		},
          
          		{
          			module: "MMM-CalvinAndHobbes",
          			position: "middle_center",
          			config: {
          			        invertColors: false,
          			        grayScale: false,
          			        updateInterval: 1000 * 60 * 60 * 2, // 2 Hr
                                          maxWidth: "100%",
                                          maxHieght: "100%"
          			}
          		},
          
          		{
          			module: "MMM-CloneWarsQuotes",
          			position: "middle_center",
          			config: {
          			}
                 		},
          
          		{
          			module: "MMM-Cocktails",
          			position: "top_center",
          			config: {
          				maxHeight: "100%",
          				maxWidth: "100%"
          			}
          		},
          
          		{
          			module: "MMM-COVID19",
          			position: "middle_center",
          			config: {
          				header: "",
          				updateInterval: 300000,
          				worldStats: true,
          				delta: true,
          				lastUpdateInfo: true,
          				countries: [  "Mexico", "United Kingdom", "Italy", "Asia", "Africa", "Spain", "USA" ],
          				headerRowClass: "small",
          				rapidapiKey : ""
          			}
          		},
          
          		{
          			module: "MMM-DailyQuote",
          			position: "middle_center",
          			config: {
          				updateInterval: 1*60*60*1000,
          			}
          		},
          
          		{
          			module: "MMM-DarkSkyForecast",
          			position: "top_center",
          			classes: "default everyone",
          			disabled: false,
          			config: {
          				header: "",
          				apikey: "",
          				latitude: "",
          				longitude: "",
          				iconset: "3c",
          				maxHourliesToShow: 1,
          				concise: false,
          				forecastLayout: "table"
          			}
          		},
          
          		{
          			disabled: false,
          			module: "MMM-Dogs",
          			position: "middle_center",
          			config: {
          				updateInterval: 35 * 60 * 1000,
                                          maxHeight: "475px",
                                          maxWidth: "700px"
          			}
          		},
          
                          {
                                  disabled: false,
                                  module: "MMM-Evil",
                                  position: "middle_center",
                                  config: {
                                          updateInterval: 35 * 60 * 1000,
                                          maxHeight: "300px",
                                          maxWidth: "1320px"
                                  }
                          },
          
          		{
          			module: "MMM-Gas",
          			position: "middle_center",
          			config: {
          				zip : "",
          				typeGas: "",
          				sortBy: "price",
          				items: 12,
          				distance: true
          			}
          		},
          
          		{
          			module: "MMM-GmailFeed",
          			position: "middle_center",
          			config: {
          				username: "",
          				password: "",
          				header: false,
          				updateInterval: 60000,
          				maxEmails: 8,
          				maxSubjectLength: 30,
          				maxFromLength: 12,
          				playSound: false
          			}
          		},
          
          		{
          			module: "MMM-History",
          			position: "middle_center",
          			config: {
          				maxWidth: "1320px"
          			}
          		},
          
          		{
          			module: "MMM-icanhazdadjoke",
          			position: "middle_center",
          			config: {
          				maxWidth: "100%"
          			}
          		},
          
          		{
          			module: "MMM-ImagesPhotos",
          			position: "middle_center",
          			config: {
          				opacity: 0.9,
          				animationSpeed: 500,
          				updateInterval: 2000,
          				backgroundColor: "black",
          				width: "500px",
          				height: "500px",
          				fill: false
          			}
          		},
          
          		{
          			module: "MMM-learnlanguage",
          			position: "middle_center",
          			config: {
          				language: "spanish",
          				nextWordInterval: 2160000,
          		                    showpair: "showboth",
          		  	}
          		},
          
          		{
          			module: "MMM-MotionEye",
          			position: "middle_center",
          			config: {
          				url: "",
          				forcedRefreshInterval: 60000,
          				width: "1000px",
          				debug: false
          			}
          		},
          
          		{
          			module: "MMM-MyWordOfTheDay",
          			position: "middle_center",
          			config: {
          				header: "Word Of The Day",
          				apiKey: "",
                                          width: "1320px",
                                          height: "505px"
          			}
          		},
          
          		{
          			module: "MMM-NetworkScanner",
          			position: "top_center",
          			header: "Who's home",
          			config: {
          				devices: [
          					{ macAddress: "", name: "00 Stacey", icon: "female" },
          					{ macAddress: "", name: "00 Jeff", icon: "male" },
          					{ macAddress: "", name: "01 Netgear M1", icon: "server" },
          					{ macAddress: "", name: "03 Ubiquiti", icon: "wifi" },
          					{ macAddress: "", name: "04 Omada EAP225", icon: "wifi" },
          					{ macAddress: "", name: "224 PiHole", icon: "server" },
          					{ macAddress: "", name: "30 WyzeBridge", icon: "wifi" },
          					{ macAddress: "", name: "31 WyzeCam1 Garage", icon: "camera" },
          					{ macAddress: "", name: "32 WyzeCam2", icon: "camera" },
          					{ macAddress: "", name: "33 WyzeCam3South", icon: "camera" },
                              { macAddress: "", name: "34 WyzeCam4", icon: "camera" },
          	                                 ],
          				network: "192.168.1.0/24",
          				showUnknown: false,
          				showOffline: false, // shows devices specified in the 'devices' option even when offline
          				showLastSeen: false, // shows when the device was last seen e.g. "Device Name - last seen 5 minutes ago"
                          		keepAlive: 400, // how long (in seconds) a device should be considered 'alive' since it was last found on the network
          	             		updateInterval: 1500, // how often (in seconds) the module should scan the network
                          		sort: true, // sort the devices in the mirror
                          		colored: false, // show devices colorcoded with color defined in devices [] //
                          		coloredSymbolOnly: false, // show symbol only in color //
          				maxWidth: "100%",
          				maxHieght: "100%"
          			}
          		},
          
          		{
          			module: "MMM-Parcel",
          			position: "middle_center",
          			config: {
          				header: "",
          				maxWidth: "1320px",
          				apiKey: "",
          				autoTranslate : "en",
          				compactness: 2,
          				hideExpired: true, // don't show expired parcels
          				hideDelivered: true
          			}
          		},
          
          		{
          			module: "MMM-PoemOfTheDay",
          			position: "middle_center",
          			config: {
          				textLimit: 1000,
          				lineLimit: 10,
          				detectLanguageApiKey: "",
          				languageSet: ["en"],
          				updateInterval: 60000
          			}
          		},
          
          		{
          			module: "MMM-quote-of-the-day",
          			position: "middle_center",
          			config: {
          				language: "en",
          				updateInterval: "10m"
          			}
          		},
          
          		{
          			module: "MMM-RAIN-MAP",
          			position: "middle_center",
          			config: {
          				animationSpeed: 600,
          				displayClockSymbol: true,
          				displayTime: true,
          				extraDelayLastFrame: 2000,
          				height: "750px",
          				lat: ,
          				lng: ,
          				map: "OSM",
          				markers: [
          					{ lat: , lng: -, color: "red" },
          					{ lat: , lng: -, color: "blue" }
          					],
          					onlyOnRain: false,
          					opacity: 1, //0 to 1 .65 default
          					timeFormat: 12,
          					updateIntervalInSeconds: 300,
          					width: "1240px",
          					zoom: 8,
          					zoomOutEach: 1,
          					zoomOutLevel: 3,
          				}
          		},
          
          		{
          			module: "MMM-rfacts",
          			position: "middle_center",
          			config: {
          				updateInterval: 30 * 60 * 1000,
          				maxHeight: "505px",
          				maxWidth: "1310px"
          			}
          		},
          
          		{
          			module: "MMM-RTSPStream",
          			position: "middle_center",
          			config: {
          				autoStart: true,
          				rotateStreams: true,
          				rotateStreamTimeout: 0,
          				moduleWidth: 1240,
          				moduleHeight: 700,
          				localPlayer: "vlc",
          				remotePlayer: "none",
          				showSnapWhenPaused: false,
          				remoteSnaps: false,
                                          stream1: {
                                          name: "Wyze Drive",
                                          url: "rtsp://xxxxx:xxxxx@192.168.1.31:554/live",
                                          frameRate: "15",
                                          width: 1240,
                                          height: 700,
                                          },
          			}
          		},
          
                          {
                                  module: "MMM-RTSPStream2",
                                  position: "middle_center",
                                  config: {
                                          autoStart: true,
                                          rotateStreams: true,
                                          rotateStreamTimeout: 0,
                                          moduleWidth: 1240,
                                          moduleHeight: 700,
                                          localPlayer: "vlc",
                                          remotePlayer: "none",
                                          showSnapWhenPaused: false,
                                          remoteSnaps: false,
                                          stream1: {
                                          name: "Wyze Drive",
                                          url: "rtsp://xxxxx:xxxxx@192.168.1.32:554/live",
                                          frameRate: "15",
                                          width: 1240,
                                          height: 700,
                                          },
                                  }
                          },
          
          		{
                                  module: "MMM-RTSPStream3",
                                  position: "middle_center",
                                  config: {
                                          autoStart: true,
                                          rotateStreams: true,
                                          rotateStreamTimeout: 0,
                                          moduleWidth: 1240,
                                          moduleHeight: 700,
                                          localPlayer: "vlc",
                                          remotePlayer: "none",
                                          showSnapWhenPaused: false,
                                          remoteSnaps: false,
                                          stream1: {
                                          name: "Wyze Drive",
                                          url: "rtsp://xxxxx:xxxxx@192.168.1.33:554/live",
                                          frameRate: "15",
                                          width: 1240,
                                          height: 700,
                                          },
                                  }
                          },
          
          		{
          			module: "MMM-SimpleLogo",
          			position: "middle_center", // This can be any of the regions.
          			config: {
          				maxHeight: "490px",
          				maxWidth: "1240px",
          				refreshInterval: 10000,
          				text: ""
          			}
          		},
          
          		{
          			module: "MMM-Snow",
          			position: "fullscreen_above",
          			config: {
          				flakeCount: 200,
          				theme: "winter" //"water" //"winter" //"love"
          			}
          		},
          
          		{
          			module: "MMM-SugarValue",
          			position: "top_center",
          			config: {
          				username: "",
          				password: "",
          				units: "mg",
          		                height: "505px",
                          		width: "1320px"
          			}
          		},
          
          		{
          			module: "on-this-day",
          			position: "middle_center",
          			config: {
          				updateInterval: 10 * 1000 * 60
          			}
          		},
          
          		{
          			module: "random_quotes",
          			position: "middle_center",
          			config: {
          			}
          		},
          
          	]
          };
          /*************** DO NOT EDIT THE LINE BELOW ***************/
          if (typeof module !== "undefined") {module.exports = config;}
          
          1 Reply Last reply Reply Quote 0
          • B Offline
            Biebermann
            last edited by

            Hello, is the module still maintained or not?

            1 Reply Last reply Reply Quote 0
            • C Offline
              codac
              last edited by

              I keep getting this error:

              0|mm       | [15.04.2021 15:10.29.116] [ERROR] TypeError: Cannot set property 'omx_stream1' of undefined
              0|mm       |     at Timeout.worker [as _onTimeout] (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_helper.js:367:87)
              0|mm       |     at listOnTimeout (internal/timers.js:549:17)
              0|mm       |     at processTimers (internal/timers.js:492:7)
              
              1 Reply Last reply Reply Quote 0
              • M Offline
                mnyqvist
                last edited by

                Hi

                I just get a white border when my MM starts. I´m using VLC and in the player I can see the stream. Here are the error codes.

                [17.06.2021 08:31.58.706] [LOG] Starting stream stream1 using VLC with args --width 352 --height 242 -I dummy --video-on-top --no-video-deco --no-embedded-video --video-title=stream1 http://admin:password@192.168.1.79/video.cgi…
                [17.06.2021 08:31.58.728] [ERROR] Failed to start subprocess: [object Object].
                [17.06.2021 08:31.58.751] [LOG] DP2: Config File Saved!
                [17.06.2021 08:31.58.752] [INFO] DP2: Running window resizers…
                [17.06.2021 08:31.58.768] [ERROR] DP2: Failed to start.
                [17.06.2021 08:32.05.769] [INFO] DP2: Running window resizers…
                [17.06.2021 08:32.05.779] [ERROR] DP2: Failed to start.
                npm ERR! code ELIFECYCLE
                npm ERR! errno 1
                npm ERR! magicmirror@2.15.0 start: electron js/electron.js
                npm ERR! Exit status 1
                npm ERR!
                npm ERR! Failed at the magicmirror@2.15.0 start script.

                1 Reply Last reply Reply Quote 0
                • 1
                • 2
                • 57
                • 58
                • 59
                • 60
                • 61
                • 61 / 61
                • First post
                  Last post
                Enjoying MagicMirror? Please consider a donation!
                MagicMirror created by Michael Teeuw.
                Forum managed by Sam, technical setup by Karsten.
                This forum is using NodeBB as its core | Contributors
                Contact | Privacy Policy