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.
    • N Offline
      Niggich @shbatm
      last edited by

      @shbatm Hello, I found the time to try this tweak but after I changed everything the Stream doesn’t start.

      1 Reply Last reply Reply Quote 0
      • S Offline
        shbatm Module Developer
        last edited by

        I have some things to try when I get back in town this week. Please make sure you have hideFfmpegOutput: false in your stream config section and post any errors. Were you able to get it back working after reverting the changes?

        N 1 Reply Last reply Reply Quote 0
        • N Offline
          Niggich @shbatm
          last edited by

          @shbatm I change back everything and its working again. I also changed my config file to the setting you said. It’s a bit better now. In the Log I doesn’t have any errors.

          1 Reply Last reply Reply Quote 0
          • S Offline
            shbatm Module Developer
            last edited by shbatm

            @Niggich Just letting you know that I’m testing an alternate method for displaying the video if you want to test it out. It uses omxplayer to overlay the video stream directly onto the display, which uses hardware acceleration. It only works on the local display and is still a work in progress, but there is minimum latency since it’s a direct stream.

            To use, make sure you have omxplayer installed and then switch to the development branch:

            cd ~/MagicMirror/modules/MMM-RTSPStream
            git checkout wip
            

            And update your module config to add: player: 'omx' (outside of the streamX configs).

            Future plans include:

            • Ability to play full screen
            • Show thumbnails on remote screen when playing locally with OMX
            • Show ffmpeg stream on remote screen when playing locally with OMX
            bheplerB 1 Reply Last reply Reply Quote 0
            • bheplerB Offline
              bhepler Module Developer @shbatm
              last edited by

              @shbatm Thanks for the different rendering process. It’s still very choppy for me, but it is noticeably better framerate.

              Both techniques are maxxing my RasPi’s processor at 100% and I’m getting temperature warnings. But I’m just at the beginning of the process. Let’s see if I can’t cut that down a bit.

              1 Reply Last reply Reply Quote 0
              • S Offline
                shbatm Module Developer
                last edited by shbatm

                @bhepler Have you tried the omxplayer method above? This should be using hardware acceleration–on my RPi3 this is using ~10% CPU.

                Note: I have updated the development branch to use omxplayer by default for the local screen. You do not need to change anything in your config, just switch to the branch using:

                cd ~/MagicMirror/modules/MMM-RTSPStream
                git checkout wip
                # Update node modules
                npm run-script update
                

                See the updated README here for more details – once tested I’ll update the main branch:
                https://github.com/shbatm/MMM-RTSPStream/tree/wip

                bheplerB 1 Reply Last reply Reply Quote 0
                • bheplerB Offline
                  bhepler Module Developer @shbatm
                  last edited by

                  @shbatm Whoops. That’s the mistake I made. I switched to the wip branch but didn’t put the omx flag in there.

                  I’ll try it out tonight. Thanks for the update!

                  1 Reply Last reply Reply Quote 0
                  • bheplerB Offline
                    bhepler Module Developer
                    last edited by

                    Success! I tried the omxplayer version of this module and it works like a charm. The video updates about half a second behind, but that’s well within acceptable limits. The RasPi also is running much cooler and isn’t giving me temperature warnings.

                    The only problem I have at this point is that the border around the module doesn’t line up with the video. And all things considered, not a big deal. Great work!
                    0_1499382491512_IMG_20170706_182518.jpg

                    1 Reply Last reply Reply Quote 0
                    • S Offline
                      shbatm Module Developer
                      last edited by shbatm

                      Great! I’m glad it’s working!

                      Still trying to find a more robust way for getting the right location for the overlay that doesn’t get messed up by margins and borders.

                      Starting on line 321 of MMM-RTSPStream.js try changing the +47 at the end of each line. I’d start with making them 0 and see if that helps:

                      box: {
                          top: rect.top + 47,       // Compensate for Margins 
                          right: rect.right + 47,   // Compensate for Margins
                          bottom: rect.bottom + 47, // Compensate for Margins
                          left: rect.left + 47      // Compensate for Margins
                      }
                      

                      ICYW: The 47 comes from a combo of the body margin, padding and borders on my setup.

                      bheplerB 1 Reply Last reply Reply Quote 0
                      • bheplerB Offline
                        bhepler Module Developer @shbatm
                        last edited by bhepler

                        @shbatm Again, thanks for all the hard work. Here are my findings (all taken from the development branch):

                        • The video was displaced from the border only on the PI, but not on Chrome nor Firefox whilst viewing the PI’s interface.
                        • Viewing the interface via Chrome or Firefox did show a video image, but it started up FFMPEG and started to heat the Pi up.
                        • Removing the 47 pixel offset made everything line up perfectly on the mirror itself.
                        • Removing the 47 pixel offset made no difference in border position when viewing the Magic Mirror interface via Chrome or Firefox. Everything lined up perfectly.
                          0_1499739728177_ipcam-test.png
                        bheplerB S 2 Replies Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 60
                        • 61
                        • 1 / 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