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.
    • A Offline
      anthony6608
      last edited by anthony6608

      **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.sh

      devilspie2 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.sh

      devilspie2 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 $

      bheplerB S 2 Replies Last reply Reply Quote 0
      • bheplerB Offline
        bhepler Module Developer @anthony6608
        last edited by

        This post is deleted!
        1 Reply Last reply Reply Quote 0
        • S Offline
          shbatm Module Developer @anthony6608
          last edited by

          @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
             ```                   -
          
          A 1 Reply Last reply Reply Quote 0
          • A Offline
            anthony6608 @shbatm
            last edited by anthony6608

            @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!

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

              @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 and rotateStreams: true, but it still happens.
              I’ve also tried setting autoStart: 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"
              													}
              									},
              
              S 1 Reply Last reply Reply Quote 0
              • B Offline
                barnosch
                last edited by

                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?

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

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

                  Also your new VLC based module sounds great.
                  But i guess, you maybe should create a whole new module for it?

                  The plan right now was to just leave it as another option for the localPlayer. OMXPlayer will still be an option for now as well. I don’t know if I’ll have time to split it out completely, but that would be much cleaner.

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

                    @cr4z33

                    You’ll want the following settings which should give you 1 blank video box that does not show anything until you press play.

                    autoStart: false,
                    rotateStreams: true,
                    rotateStreamTimeout: 0,
                    localPlayer: 'omxplayer',
                    remotePlayer: 'none',
                    showSnapWhenPaused: false,
                    remoteSnaps: false,
                    

                    I’m assuming you’re seeing the same glitch that is plaguing the last OMXPlayer version of this module. I’m working on it today to try and find what I broke. In the meantime, try reverting back and seeing if that fixes the issue. I just tested the following notification on the VLC version and it worked as expected, so it’s got to be something with omxplayer.

                    {
                    notification: "RTSP-PLAY",
                    payload: "stream3"
                    }
                    
                    Cr4z33C 3 Replies Last reply Reply Quote 0
                    • Cr4z33C Offline
                      Cr4z33 @shbatm
                      last edited by Cr4z33

                      @shbatm although I am not a developer I agree with you.
                      Whenever I tried something different from normal module usage involving omxplayer it always ended up with a mess lol! :grinning_face_with_smiling_eyes:

                      Going to try what you are suggesting here.

                      Can’t wait to see the VLC implementation (it just works as intended). :smiling_face_with_heart-eyes:

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

                        @shbatm nope the simultaneous streams have now dropped from 7 to 2, but still not what I want (aka a single stream). :smiling_face_with_open_mouth_cold_sweat:

                        Gonna try the develop branch and see how it is doing right now.

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

                          @cr4z33 Still looking into it, but I just thought of something… it doesn’t look like you’re calling RTSP-STOP on the old stream anywhere when changing channels so right now it’s going to keep starting streams every time–there’s no “1 at a time” method when controlling it from notifications… yet.

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

                            This post is deleted!
                            1 Reply Last reply Reply Quote 0
                            • S Offline
                              shbatm Module Developer @shbatm
                              last edited by

                              @djuscha I’ve reverted the changes that I think broke the master channel. Please try updating your module to the current master branch and test.

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

                                @cr4z33 Added something that might help. Please use the develop branch and update your change channel commands to :

                                {
                                notification: “RTSP-PLAY”,
                                payload: { stream:“stream1”, stopOthers: true }
                                }

                                EDIT: Nevermind, don’t do that. I fixed the glitch on the develop channel that was starting more than one stream when rotateStreams: true was set. Please try that and see if it works now.

                                1 Reply Last reply Reply Quote 0
                                • A Offline
                                  anthony6608 @shbatm
                                  last edited by

                                  @shbatm Hey, I updated issue #33 with the errors I am seeing when you have a chance. Also, should I run this update although I am using the VLCplayer method? Let me know what you think. Thanks again for all your help!

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

                                    I’m unable to get this module to load and run with FFMPeg anymore - as of 3PM 1/4/19 (Pacific Time (Seattle))

                                    Update was applied as of that time.

                                    I don’t know how to retrieve logs.

                                    – Bug filed on github - https://github.com/shbatm/MMM-RTSPStream/issues/34

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

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

                                      @djuscha, @Cr4z33 @barnosch @anthony6608 @bhepler @evroom, and anyone else using this module:

                                      I just pushed a bunch of bug fixes for OMX Player to the develop branch. Please test and let me know if you are still seeing the same issues.

                                      Fixes include:

                                      • App closing now spawns a new process to actually kill the OMX streams, it was getting cut off in the middle of closing everything due to it being an async process and leaving streams open.
                                      • Wait for DOM to be shown before calling to start the streams–this was causing the Fullscreen on Resume problems.
                                      • Only start one stream at a time if we’re in RotateStreams mode
                                      • Can jump to a specific stream in RotateStreams mode using notifications
                                      • Fixed and cleaned up all notifications and control from other modules
                                      • Fixed broken key bindings after MMM-KeyBindings upgrade
                                      • Fixed issue where module was trying to connect to PM2 while it was already connected (e.g. stop stream 1 and start stream 2 back to back).

                                      To switch branches:

                                      cd ~/MagicMirror/modules/MMM-RTSPStream
                                      sudo rm -R node_modules/
                                      git fetch --al
                                      git checkout develop
                                      git pull
                                      npm install
                                      
                                      Cr4z33C D 2 Replies Last reply Reply Quote 0
                                      • evroomE Offline
                                        evroom
                                        last edited by

                                        @shbatm
                                        I installed the new changes according your procedure.
                                        I am using omxplayer for a RTSP stream of a IP cam.
                                        I do not use rotation or any other fancy stuff.
                                        I see the same issue as before: omx_stream1 has status stopped and when I click on the play button it also will not start.
                                        I stopped and started mm 2 times and even did a complete reboot
                                        It only can be started using

                                        $ pm2 start omx_stream1
                                        

                                        Another restart of mm shows that the omx_stream1 is being stopped, but never restarted.
                                        After ever mm restart I will need to perform:

                                        $ pm2 start omx_stream1
                                        
                                        

                                        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
                                        • evroomE Offline
                                          evroom
                                          last edited by evroom

                                          I noticed this in pm2 logs (do not see this after every mm restart):

                                          0|mm  | Connecting socket for: MMM-RTSPStream
                                          0|mm  | PM2: Stopping all OMXPlayer Streams...
                                          0|mm  | Sockets connected & modules started ...
                                          0|mm  | Launching application.
                                          0|mm  | PM2: Checking if omx_stream1 is running...
                                          0|mm  | PM2: Stopping omx_stream1...
                                          PM2      | Stopping app:omx_stream1 id:1
                                          1|omx_stream1  | Video codec omx-h264 width 640 height 360 profile 77 fps 30.000000
                                          1|omx_stream1  | Subtitle count: 0, state: off, index: 1, delay: 0
                                          1|omx_stream1  | V:PortSettingsChanged: 640x360@30.00 interlace:0 deinterlace:0 anaglyph:0 par:1.00 display:0 layer:0 alpha:255 aspectMode:0
                                          1|omx_stream1  | have a nice day ;)
                                          PM2            | App [omx_stream1:1] exited with code [1] via signal [SIGINT]
                                          PM2            | pid=2104 msg=process killed
                                          
                                          

                                          In this case it was tried to start the stream, but it exited.
                                          Starting it by hand makes it work again.

                                          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)

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

                                            @shbatm I ran the develop update.

                                            With omxplayer (and autoStart: false) I see stream labels changing when giving a voice command, but then no stream is starting.

                                            With vlc nothing happens, not a single stream starting by voice command.

                                            S 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
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 11
                                            • 30
                                            • 31
                                            • 9 / 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