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 @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
                                      • D Offline
                                        djuscha @shbatm
                                        last edited by

                                        @shbatm

                                        have made yesterday update without develoop only

                                        git pull
                                        npm install
                                        

                                        everything runs :)

                                         Name        │ id │ mode │ status │ ↺      │ cpu │ memory │
                                        ├─────────────┼────┼──────┼────────┼────────┼─────┼────────┼──────────┤
                                        │ mm          │ 0  │ N/A  │ fork   │ online │ 0   │ 0%     │ 2.5 MB   │
                                        │ omx_stream1 │ 1  │ N/A  │ fork   │ online │ 17  │ 0%     │ 2.8 MB   │
                                        │ omx_stream2 │ 2  │ N/A  │ fork   │ online │ 6   │ 0%     │ 2.8 MB   
                                        

                                        Many Thanks .

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

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

                                          after every mm restart

                                          There was a problem with the steams not stopping on a restart, so the module sends a stop command first whenever it starts, do you have autoStart: true in your config?

                                          evroomE 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:

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

                                            OK. I’ll check this later today, the notification RTSP-PLAY should switch and start the stream so that’s an issue.

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