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

      @shbatm unfortunately I am not skilled enough for that sorry. :slightly_frowning_face:

      Anyway it came out that VLC was not a good idea when using a Rockchip based SBC.
      Its VPU can be used only if using gst-launch-1.0 like ie.:

      gst-launch-1.0 uridecodebin uri=file:///usr/local/test.mp4  ! rkximagesink
      

      That way 4K streaming/playing looks good too.

      1 Reply Last reply Reply Quote 0
      • Cr4z33C Offline
        Cr4z33 @shbatm
        last edited by

        @shbatm I’ve encountered a new issue.

        While using a profile switching solution when I get to the profile that uses MMM-RTSPStream omxplayer displays the video at full screen! :face_screaming_in_fear:
        The major problem is that no keyboard or mouse control can be used until I switch to a different profile that is not using your module.

        Can you please fix this?

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

          That’s sounding more like the profile switcher’s issue - unless you’ve config’d this player to be full screen.

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

          Cr4z33C 1 Reply Last reply Reply Quote 0
          • Cr4z33C Offline
            Cr4z33 @BKeyport
            last edited by Cr4z33

            @bkeyport nope I didn’t set omxplayer anywhere but in this module. ;)

            Also profile switching is only ‘telling’ modules to show or hide.
            Nothing else.

            It’s done by voice command through MMM-AssistankMk2:

                  "CHANGE_PROFILE_1": {
                    moduleExec: {
                      module:[],
                      exec: (module, params, key) => {
                        var modules = ["YOUR", "MODULES", "TO", "SHOW", "FOR", "PROFILE1"]
                        if (modules.indexOf(module.name) >= 0) {
                          module.show()
                        } else {
                          module.hide()
                        }
                      }
                    }
                  },
                  "CHANGE_PROFILE_2": {
                    moduleExec: {
                      module:[],
                      exec: (module, params, key) => {
                        var modules = ["YOUR", "MODULES", "TO", "SHOW", "FOR", "PROFILE2"]
                        if (modules.indexOf(module.name) >= 0) {
                          module.show()
                        } else {
                          module.hide()
                        }
                      }
                    }
                  },
                },
            
            1 Reply Last reply Reply Quote 0
            • S Offline
              shbatm Module Developer @Cr4z33
              last edited by

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

              Can you please fix this?

              Please post your PM2 logs when this happens so I can try and troubleshoot. (Run pm2 logs in an SSH terminal, or post the excerpt from the files in ~/.pm2/logs/).

              Cr4z33C 2 Replies Last reply Reply Quote 0
              • Cr4z33C Offline
                Cr4z33 @shbatm
                last edited by

                @shbatm here you go. ;)

                1 Reply Last reply Reply Quote 0
                • Cr4z33C Offline
                  Cr4z33 @shbatm
                  last edited by

                  @shbatm you there mate? :hushed_face:

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

                    @cr4z33 Hey, sorry, I’m out of town and don’t have access to test anything related to this module (no easy access to cameras or a RPi) for the next few weeks.

                    There is definitely a glitch in the calls to stop and restart the streams, but I can’t test right now. You can try backing up to a previous version and see if it was the latest updates to cause the problem: try using git checkout f583553

                    I will take a look as soon as I can, and on a side note, there is now official support for VLC w/ Hardware Accelerated Decoding on Raspbian, I am planning to see if it would be better to abandon OMXPlayer in favor of VLC.

                    Cr4z33C 1 Reply Last reply Reply Quote 0
                    • Cr4z33C Offline
                      Cr4z33 @shbatm
                      last edited by Cr4z33

                      @shbatm alright mate thanks for letting me know and sorry if I was insisting, but I thought you didn’t see my previous reply. :smiling_face_with_open_mouth_cold_sweat:

                      Gonna try to revert now.

                      Update
                      I can confirm that reverting back to that version gets rid of the issue. :thumbs_up_medium-light_skin_tone:

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

                        @Cr4z33 No problem, sometimes I need a little prompting…

                        Glad the revert works. I’ll troubleshoot more when I’m back.

                        Cr4z33C 1 Reply Last reply Reply Quote 0
                        • Cr4z33C Offline
                          Cr4z33 @shbatm
                          last edited by

                          @shbatm cheers. :heart:

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

                            I’d support trying VLC over OMXPlayer - OMXPlayer barely works - and crashes so much, I had to switch to FFMpeg(?) – and even that crashes on my Pi 3+

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

                            1 Reply Last reply Reply Quote 0
                            • richland007R Offline
                              richland007
                              last edited by

                              @shbatm @Cr4z33 Hello guys and let me first wish you happy holidays and say thank you to @shbatm for this module.
                              I too am using MMM-RTSPStream to stream my TV tuner to the mirror (the streaming is done from a media server running VLC in my network where the TV tuner is installed). Here is whats happening in my case :

                              Everything is working “fine” per say meaning:

                              If i go on my Rpi that my MM is installed and on the terminal i type

                              omxplayer rtsp://192.168.1.254:8554/vlc
                              

                              I can see my TV programming playing just fine with minimal resources used on the pi …however when i try to watch it on MM after launching it, it does not work it just displays a gray quadrant!!

                              If i go on the MM config.js and i change the url on MMM-RTSPStream module from the above to one of my cameras who have a username and password than MagicMirror displays them as expected and beautifully on the assigned page.

                              So both my MM config of the RTSPStream module and my actual stream work …separately however, but not together!!!

                              Does MMM-RTSPStream has to have a username and password for it to work???

                              What do you think is happening in my case??

                              Any help is always greatly appreciated

                              Denis

                              1 Reply Last reply Reply Quote 0
                              • richland007R Offline
                                richland007
                                last edited by

                                Found it myself what it was causing it …it needed “udp” protocol on MM config.js for MMM_RTSPStream …why, i have no clue but i figured that parameter would be the only one that may make a difference and it worked :)
                                D

                                1 Reply Last reply Reply Quote 0
                                • D Offline
                                  djuscha
                                  last edited by

                                  Hello
                                  I have two same hikvision cameras with the same settings so my config looks like.

                                  {
                                      module: "MMM-RTSPStream",
                                      position: "bottom_bar",
                                      config: {
                                          autoStart: true,
                                          rotateStreams: false,
                                          rotateStreamTimeout: 10,
                                          moduleWidth: 1152,
                                          moduleHeight: 400,
                                          localPlayer: 'omxplayer',
                                          remotePlayer: 'none',
                                          showSnapWhenPaused: false,
                                          remoteSnaps: true,
                                  		moduleOffset:{ top: 32, left: 32 },
                                          stream1: {
                                              name: '1',
                                              url: 'rtsp://******:********@192.***.178.160/Streaming/Channels/102',
                                              frameRate: 'undefined',
                                              snapshotUrl: 'rtsp://******:*******@192.***.178.160/Streaming/Channels/2/picture',
                                              snapshotType: 'url',
                                              snapshotRefresh: 10,
                                              width: 480,
                                              height: 300,
                                              },
                                          stream2: {
                                              name: '2',
                                              url: 'rtsp://****:*******@192.***.178.170/Streaming/Channels/102',
                                              frameRate: 'undefined',
                                              snapshotUrl: 'rtsp://****:*******@192.***.178.170/Streaming/Channels/2/picture',
                                              snapshotType: 'url',
                                              snapshotRefresh: 10,
                                              width: 480,
                                              height: 300,
                                              },
                                         
                                          }
                                  
                                  },
                                  
                                  

                                  The Problem is that one camara is showing a Picture and the second once does not Show any Picture on the screen.
                                  What am I doing wrong?

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

                                    @djuscha If you switch the order, does the opposite one show up? You may need to change the CPU/GPU memory split in your Pi – sudo raspi-config find the “Memory Split” option and increase from 64 to 128.

                                    1 Reply Last reply Reply Quote 1
                                    • D Offline
                                      djuscha
                                      last edited by

                                      When I switch the order I see the picture from the other camera.
                                      with change from the “Memory Split” I see no Change :(

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

                                        @djuscha Try 256, and make sure you restart the Pi after each adjustment.

                                        Also, please check the MM logs and post if you see any errors. You should be seeing two calls to start omxplayer. You can also do pm2 status to make sure both streams are running.

                                        D 1 Reply Last reply Reply Quote 0
                                        • D Offline
                                          djuscha
                                          last edited by yawns

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

                                          pm2 Status 
                                          pi@raspberrypi:~ $ pm2 status
                                          ┌─────────────┬────┬──────┬────────┬─────────┬─────┬────────┬──────────┐
                                          │ Name        │ id │ mode │ status │ ↺       │ cpu │ memory │
                                          ├─────────────┼────┼──────┼────────┼─────────┼─────┼────────┼──────────┤
                                          │ mm          │ 0  │ N/A  │ fork   │ online  │ 0   │ 0%     │ 2.6 MB   │
                                          │ omx_stream1 │ 1  │ N/A  │ fork   │ stopped │ 0   │ 0%     │ 0 B      │
                                          │ omx_stream2 │ 2  │ N/A  │ fork   │ online  │ 0   │ 0%     │ 2.7 MB   │
                                          └─────────────┴────┴──────┴────────┴─────────┴─────┴────────┴─
                                          

                                          /home/pi/.npm/_logs/2018-12-25T13_58_40_969Z-debug.log

                                          0 info it worked if it ends with ok
                                          1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'start' ]
                                          2 info using npm@6.4.1
                                          3 info using node@v10.14.2
                                          4 verbose run-script [ 'prestart', 'start', 'poststart' ]
                                          5 info lifecycle magicmirror@2.5.0~prestart: magicmirror@2.5.0
                                          6 info lifecycle magicmirror@2.5.0~start: magicmirror@2.5.0
                                          7 verbose lifecycle magicmirror@2.5.0~start: unsafe-perm in lifecycle true
                                          8 verbose lifecycle magicmirror@2.5.0~start: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/pi/MagicMirror/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
                                          9 verbose lifecycle magicmirror@2.5.0~start: CWD: /home/pi/MagicMirror
                                          10 silly lifecycle magicmirror@2.5.0~start: Args: [ '-c', 'sh run-start.sh' ]
                                          11 silly lifecycle magicmirror@2.5.0~start: Returned: code: 1  signal: null
                                          12 info lifecycle magicmirror@2.5.0~start: Failed to exec start script
                                          13 verbose stack Error: magicmirror@2.5.0 start: `sh run-start.sh`
                                          13 verbose stack Exit status 1
                                          13 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
                                          13 verbose stack     at EventEmitter.emit (events.js:182:13)
                                          13 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
                                          13 verbose stack     at ChildProcess.emit (events.js:182:13)
                                          13 verbose stack     at maybeClose (internal/child_process.js:962:16)
                                          13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:251:5)
                                          14 verbose pkgid magicmirror@2.5.0
                                          15 verbose cwd /home/pi/MagicMirror
                                          16 verbose Linux 4.14.79-v7+
                                          17 verbose argv "/usr/bin/node" "/usr/bin/npm" "start"
                                          18 verbose node v10.14.2
                                          19 verbose npm  v6.4.1
                                          20 error code ELIFECYCLE
                                          21 error errno 1
                                          22 error magicmirror@2.5.0 start: `sh run-start.sh`
                                          22 error Exit status 1
                                          23 error Failed at the magicmirror@2.5.0 start script.
                                          23 error This is probably not a problem with npm. There is likely additional logging output above.
                                          24 verbose exit [ 1, true ]
                                          
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • A Offline
                                            AxLed Module Developer @evroom
                                            last edited by

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

                                            Next thing I am trying to use MMM-RTSPStream for, is streaming sat-tv from a Dreambox & VU+ receivers.
                                            I am able to stream a channel using:
                                            omxplayer --vol -3000 --win “0 0 480 320” --live http://192.168.178.28:8001/1:0:19:283D:3FB:1:C00000:0:0:0:

                                            @evroom
                                            Maybe my new module is something for you:
                                            MMM-Dreambox

                                            Regards

                                            AxLED

                                            Cr4z33C evroomE 2 Replies 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
                                            • 6
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 30
                                            • 31
                                            • 8 / 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