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 2.1m 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.
    • E Offline
      Egnos @evroom
      last edited by

      Many thanks @evroom, the link works in VLC but still doesn’t work in MM.

      Below what I see on the terminal:

      [10:58:31.986] [LOG]    Starting stream stream1 using: omxplayer --avdict rtsp_transport:tcp --win 786,238,1138,480 --live --video_queue 4 --fps 30 --no-osd rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
      [10:58:32.033] [LOG]    Starting PM2 for omx_stream1
      [10:58:43.404] [LOG]    PM2 started for omx_stream1
      

      Are there any errors in config.js?

      		{
      		   module: "MMM-RTSPStream",
      		   //position: "middle_center",
      		   pages: {Security: "middle_center"},
      		   header: "Test",
      		   config: {
      				autoStart: true,
      				rotateStreams: false,
      				rotateStreamTimeout: 10,
      				moduleWidth: 354,
      				moduleHeight: 240,
      				localPlayer: 'omxplayer',
      				remotePlayer: 'none',
      				showSnapWhenPaused: false,
      				remoteSnaps: false,
      				stream1: {
      					name: 'BigBuckBunny',
      					url: 'rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov',
      					frameRate: 'undefined',
      					width: undefined,
      					height: undefined,
      						},
      					}
      		},
      

      Thanks for your patience!

      My Mirror https://forum.magicmirror.builders/topic/17262/the-raspimirror-was-born/7

      evroomE 1 Reply Last reply Reply Quote 0
      • evroomE Offline
        evroom
        last edited by

        @Egnos said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

        the link works in VLC but still doesn’t work in MM

        Hi,

        What does this say ?

        pm2 logs --lines 100
        

        The part where you should see

        0|MagicMirror  | Starting stream stream1 with args: [
        

        And

        pm2 status
        

        should show

        omx_stream1
        

        And can you try it from the command line ?

        omxplayer --genlog --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 --win "0 0 354 240" rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
        

        MagicMirror version: 2.33.0
        Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
        Raspbian GNU/Linux 12 (bookworm)

        Test environment:
        MagicMirror version: v2.33.0
        Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
        Raspbian GNU/Linux 12 (bookworm)

        E 1 Reply Last reply Reply Quote 0
        • E Offline
          Egnos @evroom
          last edited by Egnos

          Hi @evroom ,

          @evroom said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

          What does this say ?
          pm2 logs --lines 100

          I never posted this …!

          I launched the command on the terminal you recommended but I still don’t see anything, here is the result:

          pi@MagicMirror:~ $ omxplayer --genlog --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 --win "0 0 354 240" rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
          Video codec omx-h264 width 240 height 160 profile 578 fps 30.000000
          Audio codec aac channels 2 samplerate 12000 bitspersample 16
          Subtitle count: 0, state: off, index: 1, delay: 0
          V:PortSettingsChanged: 240x160@30.00 interlace:0 deinterlace:0 anaglyph:0 par:1.00 display:0 layer:0 alpha:255 aspectMode:0
          
          

          And this the log “omxplayer.log”:
          omxplayer.log

          I paste all the info that the MM prints on the terminal:

          > magicmirror@2.10.1 start /home/pi/MagicMirror
          > ./run-start.sh
          
          [19:45:33.744] [LOG]    Starting MagicMirror: v2.10.1
          [19:45:33.792] [LOG]    Loading config ...
          [19:45:33.805] [LOG]    Loading module helpers ...
          [19:45:37.253] [LOG]    Initializing new module helper ...
          [19:45:37.255] [LOG]    Module helper loaded: MMM-RTSPStream
          [19:45:37.256] [LOG]    All module helpers loaded.
          [19:45:37.257] [LOG]    Starting server on port 8080 ... 
          [19:45:37.346] [LOG]    Server started ...
          [19:45:37.348] [LOG]    Connecting socket for: MMM-RTSPStream
          [19:45:37.350] [LOG]    PM2: Stopping all OMXPlayer Streams...
          [19:45:37.352] [LOG]    Sockets connected & modules started ...
          [19:45:38.246] [LOG]    Launching application.
          [19:45:46.329] [LOG]    Starting stream stream1 using: omxplayer --avdict rtsp_transport:tcp --win 786,238,1138,480 --live --video_queue 4 --fps 30 --no-osd rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
          [19:45:46.426] [LOG]    Starting PM2 for omx_stream1
          [19:45:53.630] [LOG]    PM2 started for omx_stream1
          
          

          I don’t understand what’s missing…

          My Mirror https://forum.magicmirror.builders/topic/17262/the-raspimirror-was-born/7

          1 Reply Last reply Reply Quote 0
          • evroomE Offline
            evroom
            last edited by

            @Egnos said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

            I don’t understand what’s missing…

            It does look good.

            In principle, the line from the pm2 log

            [19:45:46.329] [LOG]    Starting stream stream1 using: omxplayer --avdict rtsp_transport:tcp --win 786,238,1138,480 --live --video_queue 4 --fps 30 --no-osd rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
            

            should work as standalone.
            If it does not play standalone, so from the command line, then it will not work in MMM-RTSPStream.

            I would disable the module and make sure nothing is running anymore (no omxplayer stuff).

            module: "MMM-RTSPStream",
            disabled: true,
            
            pm2 restart mm
            pm2 status
            

            Make sure ‘omx_stream1’ is not present.
            Stop it when necessary

            pm2 stop omx_stream1
            pm2 delete omx_stream1
            
            ps -eaf | grep -v grep | grep omxplayer
            

            Kill any omxplayer process (kill -9 ).

            Then run omxplayer from command line:

            omxplayer --avdict rtsp_transport:tcp --win 786,238,1138,480 --live --video_queue 4 --fps 30 --no-osd rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
            

            MagicMirror version: 2.33.0
            Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
            Raspbian GNU/Linux 12 (bookworm)

            Test environment:
            MagicMirror version: v2.33.0
            Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
            Raspbian GNU/Linux 12 (bookworm)

            E 1 Reply Last reply Reply Quote 0
            • evroomE Offline
              evroom @Egnos
              last edited by

              @Egnos said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

              Are there any errors in config.js?

              This is my config that works.
              I think the only real difference is the omxRestart entry.

              {
                module: "MMM-RTSPStream",
                disabled: false,
                position: "bottom_right",
                header: "MMM-RTSPStream Test",
                config: {
                  autoStart: true,
                  omxRestart: 1,
                  rotateStreams: false,
                  moduleWidth: "352px", // Width in px of the module.
                  moduleHeight: "240px", // Height in px of the module.
                  localPlayer: 'omxplayer',
                  remotePlayer: 'none',
                  showSnapWhenPaused: false,
                  remoteSnaps: false,
                  stream1: {
                    name: 'BigBuckBunny',
                    url: 'rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov',
                    frameRate: "25",
                    protocol: "tcp",
                    width: "352px", // The width in px of the stream.
                    height: "240px", // The height in px of the stream.
                  }
                }
              },
              

              MagicMirror version: 2.33.0
              Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              Test environment:
              MagicMirror version: v2.33.0
              Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              E 1 Reply Last reply Reply Quote 0
              • E Offline
                Egnos @evroom
                last edited by

                @evroom many thanks!
                I don’t know why but now I’m viewing the video in MM.
                I haven’t touched anything!

                My Mirror https://forum.magicmirror.builders/topic/17262/the-raspimirror-was-born/7

                1 Reply Last reply Reply Quote 0
                • E Offline
                  Egnos @evroom
                  last edited by

                  @evroom I finally understood what the problem is … that is VNC.
                  I use VNC to connect with the Raspberry PI and for some reason, using the VNC interface, the player is not displayed!
                  If instead I turn on the monitor where the Raspberry PI is physically connected I magically see the streaming … whether I run the command from the terminal or with the MM.

                  Can you explain this behavior?

                  My Mirror https://forum.magicmirror.builders/topic/17262/the-raspimirror-was-born/7

                  1 Reply Last reply Reply Quote 0
                  • evroomE Offline
                    evroom
                    last edited by evroom

                    @Egnos said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

                    Can you explain this behavior?

                    No, I cannot explain this, but I noticed it too.
                    No video over the VNC connection.

                    When I google, I see this recommendation:

                    Open VNC Server>Options>Troubleshooting. Then make sure "enable experimental direct capture mode is checked.

                    You might give it a try.

                    MagicMirror version: 2.33.0
                    Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                    Raspbian GNU/Linux 12 (bookworm)

                    Test environment:
                    MagicMirror version: v2.33.0
                    Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                    Raspbian GNU/Linux 12 (bookworm)

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

                      hello,lil help,what do i have to add in custom.css to align MMM-RTSPStream window with the module below?
                      https://imgur.com/XQZNEvg

                      1 Reply Last reply Reply Quote 0
                      • E Offline
                        Egnos @evroom
                        last edited by Egnos

                        @evroom now, enabling in VNC options “direct capture mode”, also from VNC I see the stream on omxplayer and on MM.

                        Many Thanks! 👍

                        My Mirror https://forum.magicmirror.builders/topic/17262/the-raspimirror-was-born/7

                        1 Reply Last reply Reply Quote 0
                        • I Offline
                          imdickie
                          last edited by imdickie

                          I’m going from a working Raspi3 to a Raspi4 and using the exact same working module configuration I cannot get video on omxplayer using this module.

                          I set up a pristine image and loaded everything one at a time, but this one fails. I pulled out all of the modules to make sure there was nothing in them that was causing the issue.

                          Below is my module config and my logs pulled using pm2 logs mm. There is an error, but I don’t know enough about this to determine the cause. Can anyone review the logs and provide some direction?

                          Thanks.

                           		 {
                          		    module: "MMM-RTSPStream",
                          		    position: "bottom_bar",
                          		    config: {
                          		        autoStart: true,
                          		        rotateStreams: true,
                          		        rotateStreamTimeout: 10,
                          		        moduleWidth: 642,
                          		        moduleHeight: 362,
                          		        localPlayer: 'omxplayer',
                          		        remotePlayer: 'none',
                          		        showSnapWhenPaused: true,
                          		        remoteSnaps: true,
                          		        stream1: {
                          		            name: '',
                          		            url: 'rtsp://xxx:xxx@192.168.1.164:554/Streaming/Channels/102/',
                          		            frameRate: '10',
                          		            snapshotType: 'url',
                          		            snapshotRefresh: 10,
                          		            width: 640,
                          		            height: 360,
                          		            },
                          		        }
                          		}
                          

                          pi@raspberrypi:~ $ pm2 logs mm --lines 100
                          [TAILING] Tailing last 100 lines for [mm] process (change the value with --lines option)
                          /home/pi/.pm2/logs/mm-error.log last 100 lines:
                          0|mm | [2020-04-08 14:17:49.908] [ERROR] TypeError: Cannot convert undefined or null to object
                          0|mm | at Function.keys ()
                          0|mm | at stopProcs (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_helper.js:469:32)
                          0|mm | at /home/pi/MagicMirror/modules/MMM-RTSPStream/node_helper.js:498:17
                          0|mm | at /home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2/lib/API.js:606:19
                          0|mm | at /home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2-axon-rpc/lib/client.js:45:10
                          0|mm | at Parser. (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/pm2-axon/lib/sockets/req.js:67:8)
                          0|mm | at Parser.emit (events.js:200:13)
                          0|mm | at Parser._write (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/amp/lib/stream.js:91:16)
                          0|mm | at doWrite (_stream_writable.js:417:12)
                          0|mm | at writeOrBuffer (_stream_writable.js:401:5)

                          /home/pi/.pm2/logs/mm-out.log last 100 lines:
                          0|mm |
                          0|mm | > magicmirror@2.11.0 start /home/pi/MagicMirror
                          0|mm | > DISPLAY=“${DISPLAY:=:0}” ./node_modules/.bin/electron js/electron.js
                          0|mm |
                          0|mm | [2020-04-08 14:17:48.507] [LOG] Starting MagicMirror: v2.11.0
                          0|mm | [2020-04-08 14:17:48.514] [LOG] Loading config …
                          0|mm | [2020-04-08 14:17:48.519] [LOG] Loading module helpers …
                          0|mm | [2020-04-08 14:17:49.292] [LOG] Initializing new module helper …
                          0|mm | [2020-04-08 14:17:49.293] [LOG] Module helper loaded: MMM-RTSPStream
                          0|mm | [2020-04-08 14:17:49.293] [LOG] All module helpers loaded.
                          0|mm | [2020-04-08 14:17:49.399] [LOG] Starting server on port 8080 …
                          0|mm | [2020-04-08 14:17:49.421] [LOG] Server started …
                          0|mm | [2020-04-08 14:17:49.422] [LOG] Connecting socket for: MMM-RTSPStream
                          0|mm | [2020-04-08 14:17:49.423] [LOG] PM2: Stopping all OMXPlayer Streams…
                          0|mm | [2020-04-08 14:17:49.424] [LOG] Sockets connected & modules started …
                          0|mm | [2020-04-08 14:17:49.531] [LOG] Launching application.
                          0|mm | [2020-04-08 14:17:49.908] [LOG] Whoops! There was an uncaught exception…
                          0|mm | [2020-04-08 14:17:49.916] [LOG] MagicMirror will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
                          0|mm | [2020-04-08 14:17:49.916] [LOG] If you think this really is an issue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/issues
                          0|mm | [2020-04-08 14:17:53.508] [LOG] Starting stream stream1 using: omxplayer --avdict rtsp_transport:tcp --win 282,1501,922,1861 --live --video_queue 4 --fps 30 --no-osd rtsp://xxx:xxx@192.168.1.164:554/Streaming/Channels/102/
                          0|mm | [2020-04-08 14:17:53.527] [LOG] Starting PM2 for omx_stream1
                          0|mm | [2020-04-08 14:17:53.698] [LOG] PM2 started for omx_stream1

                          1 Reply Last reply Reply Quote 0
                          • I Offline
                            imdickie
                            last edited by imdickie

                            Getting closer. Hoping to get some help based on the new info below.

                            I was able to get a video stream, but…

                            It only works in the middle_center position and the video orientation is rotated 90 deg.

                            I tried using the rotateDegree switch, and it does rotate it, but the video frame stays in the portriat oreintation.

                            Video Oreintation

                            I am using the below config file.

                            	modules: [
                            		{
                            			module: "alert",
                            		},
                            		{
                            			module: "updatenotification",
                            			position: "top_bar"
                            		},
                            		{
                            			module: "clock",
                            			position: "top_left"
                            		},
                            		{
                            			module: "calendar",
                            			header: "Family Calendar",
                            			position: "top_left",
                            			config: {
                            				colored: "true",
                            				calendars: [
                            					{
                            						symbol: "calendar-check-o ",
                            						color: "#34a95f",
                            						url: "https://calendar.google.com/calendar/ical/xxx/basic.ics"
                            					},
                            					{
                            						symbol: "calendar-check-o ",
                            						color: "#b1002c",
                            						url: "https://calendar.google.com/calendar/ical/xxx/basic.ics"
                            					},
                            				]
                            			}
                            		},
                            		{
                            		  module: "MMM-DarkSkyForecast",
                            		  header: "Weather",
                            		  position: "top_right",
                            		  classes: "default everyone",
                            		  disabled: false,
                            		  config: {
                            		    apikey: "xxx",
                            		    latitude: "33.481613",
                            		    longitude: "-117.061959",      
                            		    iconset: "5c",
                            		    concise: false,
                                		    forecastLayout: "table",
                            		    units: "us"
                            		    }
                            		},		
                            		{
                            		module: 'MMM-RTSPStream',
                            		position: 'middle_center',
                            		config: {
                            		    autoStart: true,
                            		    moduleWidth: 642,
                            		    moduleHeight: 362,
                            		    localPlayer: 'omxplayer',     
                            		    stream1: {
                            			name: '',
                            			url: 'rtsp://xxx:xxx@192.168.x.xxx:554/Streaming/Channels/102/',
                            			snapshotUrl: '',
                            			snapshotRefresh: 10, // Seconds
                            			frameRate: "30",
                            			width: 640,
                            		        height: 360,
                            			port: 9999,
                            		    }
                            		}
                            	},
                            		{
                            			module: "compliments",
                            			position: "bottom_center"
                            		},
                            		{
                            			module: "newsfeed",
                            			position: "bottom_center",
                            			config: {
                            				feeds: [
                            					{
                            						title: "New York Times",
                            						url: "http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml"
                            					}
                            				],
                            				showSourceTitle: true,
                            				showPublishDate: true
                            			}
                            		},
                            	        {
                            	            module: 'MMM-GoogleMapsTraffic',
                            	            position: 'bottom_center',
                            	            config: {
                            	                key: 'xxx',
                            	                lat: xxx,
                            	                lng: -xxx,
                            	                height: '360px',
                            	                width: '360px',
                            	                styledMapType: "",
                            	                disableDefaultUI: true,
                            	                backgroundColor: 'hsla(0, 0%, 0%, 0)',
                            	            }
                            		},
                            	]
                            
                            };
                            
                            1 Reply Last reply Reply Quote 0
                            • evroomE Offline
                              evroom
                              last edited by

                              @imdickie said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

                              but the video frame stays in the portriat oreintation

                              In

                              /home/pi/MagicMirror/css/custom.css
                              

                              add

                              .MMM-RTSPStream .innerWrapper {
                                border-style: none;
                              }
                              

                              to remove the frame altogether.
                              Or find a way using css to rotate the frame.

                              I tried the positions top_left, top_right, bottom_left and bottom_right.
                              All work.
                              It can be that your other modules are pushing it down.
                              Try to have the module positioned a bit earlier in your config.

                              MagicMirror version: 2.33.0
                              Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                              Raspbian GNU/Linux 12 (bookworm)

                              Test environment:
                              MagicMirror version: v2.33.0
                              Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                              Raspbian GNU/Linux 12 (bookworm)

                              1 Reply Last reply Reply Quote 0
                              • PointPubMediaP Offline
                                PointPubMedia
                                last edited by

                                @shbatm Do you think it could be possible to run this on another plateform, like pine64 with armbian where omxplayer is not available?

                                The npm install part is not working as omxplayer is not available…

                                1 Reply Last reply Reply Quote 0
                                • K Offline
                                  KumarTRD
                                  last edited by

                                  Has anyone had success getting this module to work with Lorex security cameras? The is the only module preventing my magic mirror being “complete”

                                  1 Reply Last reply Reply Quote 0
                                  • BKeyportB Offline
                                    BKeyport Module Developer
                                    last edited by

                                    1st, have you tried the URL string at https://www.ispyconnect.com/man.aspx?n=Lorex ?

                                    2nd, have you verified that the video player you want is able to run the video stream?

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

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

                                      i am using vlc as local player to play my stream locally just fine.When i try to access MM from my pc (chrome) using http://mmip:8080 ,my stream is not starting at all.Using ffmpeg for remote player and i also test my stream using ffplay and it works just fine at my rpi3b.What is wrong ???

                                      BKeyportB 1 Reply Last reply Reply Quote 0
                                      • BKeyportB Offline
                                        BKeyport Module Developer @costascontis
                                        last edited by

                                        @costascontis Try a different local player. In testing of the last version I used, VLC had an invalid command line. I honestly have abandoned the module totally in favor of an external approach for the camera.

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

                                        C 1 Reply Last reply Reply Quote 0
                                        • C Offline
                                          costascontis @BKeyport
                                          last edited by

                                          @BKeyport i dont have any problem with vlc as local player ,my issue is with remote player,ffmpeg.I am trying to see the feed from windows pc with chrome.Every other module is working fine ,the live feed is starting but i only see black,no camera image.

                                          BKeyportB 1 Reply Last reply Reply Quote 0
                                          • BKeyportB Offline
                                            BKeyport Module Developer @costascontis
                                            last edited by

                                            @costascontis oh, sorry, I misunderstood.

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

                                            1 Reply Last reply Reply Quote 0

                                            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
                                            • 1
                                            • 2
                                            • 23
                                            • 24
                                            • 25
                                            • 26
                                            • 27
                                            • 30
                                            • 31
                                            • 25 / 31
                                            • 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