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

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

      I found out that the stream stops as soon as I ask something to Google Assistant (MMM-AssistantMk2 + MMM-Hotword by @Sean ) and it replies.

      Please check the web browser console (ctrl+shift+i) and see if for some reason AssistantMk2 or Hotword are sending a pause/hide command to other modules. You would see something like: MMM-RTSPSTREAM is suspended.... Also, after the stream disappears, check the status of PM2 (pm2 status from ssh/terminal) and see if omx_streamX is still running. That will let me know if the module is telling the stream to stop or if omxplayer is giving up.

      Regarding the border alignment, search this forum and/or the closed issues on GitHub, it’s been answered before. @evroom’s solution looks correct to hide the border, but I can’t remember for sure.

      Mini-rant: OMXPLAYER is the lowest resource player I’ve found to use for playing video streams on a Pi, but frankly, it’s a finicky b***h and has terrible logging to inform you of the problem. 90% of the issues raised with this module are caused by omxplayer itself, which, unfortunately I don’t have any better way to solve than any other user. That’s why I use pm2 to manage the streams so it will at least attempt to restart when it crashes.

      @evroom, regarding the streams not stopping… Last week I found a bug in PM2’s API, calling stop on a process from node doesn’t work. I will work on a workaround until the PM2 devs correct the issue.

      Cr4z33C ? 2 Replies Last reply Reply Quote 0
      • BKeyportB Online
        BKeyport Module Developer
        last edited by

        I can confirm OMX is a major B.

        I had to convert over to FFMPEG to get things to work without crashing the entire system to the point of taking it offline, but not crashing MM other than not updating anymore (Clock and such still work, just it couldn’t get anything off the internet)

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

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

          @shbatm thanks for the reply.

          I can confirm that I’ve got rid of the white frame by following @evroom 's suggestion (thanks mate).

          Back in topic I’ve uploaded here the log 'cause I am not sure whether it is actually reporting a problem with MMM-RTSPStream or not. :thinking_face:

          Looking at it it says MMM-RTSPStream.js:161 MMM-RTSPStream has resumed... after two questions I made to Google Assistant, but I found no mention about RTSP pausing or stopping.

          However I can confirm that omx_stream has indeed stopped from running! :frowning_face_with_open_mouth:

           pm2 status
          ┌─────────────┬────┬──────┬────────┬─────────┬─────┬────────┬──────────┐
          │ Name        │ id │ mode │ status │ ↺       │ cpu │ memory │
          ├─────────────┼────┼──────┼────────┼─────────┼─────┼────────┼──────────┤
          │ mm          │ 0  │ N/A  │ fork   │ online  │ 0   │ 0%     │ 2.5 MB   │
          │ omx_stream1 │ 1  │ N/A  │ fork   │ stopped │ 0   │ 0%     │ 0 B      │
          └─────────────┴────┴──────┴────────┴─────────┴─────┴────────┴──────────┘
          
          1 Reply Last reply Reply Quote 0
          • ? Offline
            A Former User @shbatm
            last edited by

            @shbatm @Cr4z33
            It might be due to collision of stream output from multi-source (omxplayer and my voice output)
            I’m not an expert of *nix system, so I cannot give a suggestion about using mixer(ALSA), but…

            in MMM-AssistantMk configuration, this could be help (not tested by myself. I don’t have RTSP-stream…)

            onIdle: {
              timer: 1000*10, //After 10sec of last query,
              command: "RTSP_ACTIVATE" 
            },
            
            onActivate: {
              timer: 0,
              command: "RTSP_DEACTIVATE" 
            },
            
            command: {
              "RTSP_ACTIVATE": {
                notificationExec: {
                  notification: "RTSP-PLAY",
                  payload: "all"
                }
              },
              "RTSP_DEACTIVATE": {
                notificationExec: {
                  notification: "RTSP-STOP",
                  payload: "all"
                }
              },
            }
            
            Cr4z33C 1 Reply Last reply Reply Quote 0
            • Cr4z33C Offline
              Cr4z33 @Guest
              last edited by Cr4z33

              Thanks to @sean I’ve quickly fixed the RTSP issue by applying what he wrote here.

              So if you are like me using both MMM-RTSPStream and MMM-AssistantMk2, open the config and in the MMM-AssistantMk2 module section replace

              			config: {
              

              with

              			config: {
              				onIdle: {
              				  timer: 1000*10, //After 10sec of last query,
              				  command: "RTSP_ACTIVATE" 
              				},
              				
              				onActivate: {
              				  timer: 0,
              				  command: "RTSP_DEACTIVATE" 
              				},
              				
              				command: {
              				  "RTSP_ACTIVATE": {
              				    notificationExec: {
              				      notification: "RTSP-PLAY",
              				      payload: "all"
              				    }
              				  },
              				  "RTSP_DEACTIVATE": {
              				    notificationExec: {
              				      notification: "RTSP-STOP",
              				      payload: "all"
              				    }
              				  },
              				},
              

              That way the stream will NEVER stop even if enquiring Google Assistant! :grinning_face_with_smiling_eyes:

              Thank you @shbatm for willing to help me too.

              ? 1 Reply Last reply Reply Quote 0
              • ? Offline
                A Former User @Cr4z33
                last edited by

                @cr4z33
                Frankly said, it might not be due to my config modifying suggestion. (Because IT SHOULD PAUSE AND RESUME, but you said NEVER STOP)
                I think it is due to use HDMI as output. I don’t know about it, but it might be able to mix from multi-sources.

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

                  @sean yeah I actually forgot to mention that the RTSP outputs to HDMI while Google Assistant outputs to a RPI Voice HAT speaker. :grimacing_face:

                  ? 1 Reply Last reply Reply Quote 0
                  • ? Offline
                    A Former User @Cr4z33
                    last edited by

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

                    yeah I actually forgot to mention that the RTSP outputs to HDMI while Google Assistant outputs to a RPI Voice HAT speaker.

                    That’s how it works. not by my code. :D

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

                      @sean of course. :winking_face:

                      To everybody else: I removed the white frame and forgot to ask how to move the streaming windows.

                      It is now offset compared to its module position. :confused_face:

                      I guess I need to edit something in

                      .MMM-RTSPStream .canvas {
                        position: absolute;
                        z-index: 1;
                        left: 50%;
                        top: 50%;
                        /*width: 352px;
                        height: 240px;*/
                        -webkit-transform: translate(-50%, -50%);
                        transform: translate(-50%, -50%);
                          width: 100%;
                      height: 100%;
                      }
                      

                      right?

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

                        It is now offset compared to its module position.

                        Play with the moduleOffset and absPosition config options. Search this forum for those and check out the README on GitHub for details of what each one does.

                        Cr4z33C 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 13
                        • 14
                        • 15
                        • 16
                        • 17
                        • 60
                        • 61
                        • 15 / 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