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-Mplayer video issues

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    13 Posts 5 Posters 718 Views 5 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.
    • G Offline
      ge @ge
      last edited by sdetweil

      Here is what I have at the moment. If interested, I can show a side by side video from the camera, and what is showing on MM.

      Config:

      {
        module: 'MMM-MPlayer',
        disabled: false,
        position: "top_center",
        header: "Driveway",
        config: {
          layout: '',
          streamInterval: 30000,
          monitorAspect: '0',
          noAspect: false,
          noBorder: true,
          rotate: -1,
          windowPosition: '',
          windowSize: '',
          windowWidth: '',
          windowWidthNoNewAspect: false,
          windowHeightNoNewAspect: false,
          rtspStreamOverTcp: true,
          rtspStreamOverHttp: true,
          preferIpv4: true,
          ipv4onlyProxy: false,
          videoOutputDriver: 'xv,gl,gl_nosw,vdpau,',
          noSound: true,
          mplayerOption: '',  
          windows: [
            {
              windowSize: { width: 990, height: 557 },
              windowPosition: { x: 471, y: 20 },
              streams: [
                 'rtsp://admin:Camadmin@172.16.0.37:554/cam/realmonitor?channel=1&subtype=0'
                //'http://admin:Camadmin@172.16.0.37/cgi-bin/snapshot.cgi?1' 
                       ]
            }
          ]
        }
      },
      

      Data:

      pi@raspberrypi:~ $ grep version ~/MagicMirror/package.json
              "version": "2.30.0",
      pi@raspberrypi:~ $ cat /proc/device-tree/model; echo
      Raspberry Pi 4 Model B Rev 1.5
      pi@raspberrypi:~ $ lsb_release -a
      No LSB modules are available.
      Distributor ID: Debian
      Description:    Debian GNU/Linux 12 (bookworm)
      Release:        12
      Codename:       bookworm
      pi@raspberrypi:~ $ uname -a
      Linux raspberrypi 6.12.47+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.47-1+rpt1~bookworm (2025-09-16) aarch64 GNU/Linux
      pi@raspberrypi:~ $ free -h -t
                     total        used        free      shared  buff/cache   available
      Mem:           3.7Gi       931Mi       1.9Gi       122Mi       1.1Gi       2.8Gi
      Swap:          199Mi          0B       199Mi
      Total:         3.9Gi       931Mi       2.1Gi
      
      pi@raspberrypi:~ $ ps -eaf | grep mplayer | grep -v grep
      pi          5635    5458 27 19:37 ?        00:01:03 mplayer rtsp://admin:Camadmin@172.16.0.37:554/cam/realmonitor?channel=1&subtype=0 -vf rotate=-1 -monitoraspect 0 -noborder -geometry 471:20 -x 990 -y 557 -rtsp-stream-over-tcp -prefer-ipv4 -vo xv,gl,gl_nosw,vdpau, -nosound
      pi@raspberrypi:~ $ pm2 flush
      [PM2] Flushing /home/pi/.pm2/pm2.log
      [PM2] Flushing:
      [PM2] /home/pi/.pm2/logs/MagicMirror-out.log
      [PM2] /home/pi/.pm2/logs/MagicMirror-error.log
      [PM2] Logs flushed
      pi@raspberrypi:~ $ pm2 restart MagicMirror
      Use --update-env to update environment variables
      [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
      [PM2] [MagicMirror](0) ✓
      ┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
      │ id │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
      ├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
      │ 0  │ MagicMirror    │ default     │ 2.30.0  │ fork    │ 5704     │ 0s     │ 13   │ online    │ 0%       │ 2.9mb    │ pi       │ enabled  │
      └────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
      pi@raspberrypi:~ $ sleep 20
      pi@raspberrypi:~ $ grep 'MMM-MPlayer' ~/.pm2/logs/MagicMirror-*.log
      
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:36.725] [LOG]   Module helper loaded: MMM-MPlayer
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:37.509] [LOG]   Connecting socket for: MMM-MPlayer
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:37.510] [LOG]   Starting MMM-MPlayer module ...
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:40.746] [INFO]  [MMM-MPlayer] (launchMPlayer) - Launch mplayer process for window-0 ...
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:40.762] [INFO]  [MMM-MPlayer] Launched mplayer process for window-0 with PID 5921
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:40.762] [INFO]  [MMM-MPlayer] DISPLAY=:0 mplayer rtsp://admin:Camadmin@172.16.0.37:554/cam/realmonitor?channel=1&subtype=0 -vf rotate=-1 -monitoraspect 0 -noborder -geometry 471:20 -x 990 -y 557 -rtsp-stream-over-tcp -prefer-ipv4 -vo xv,gl,gl_nosw,vdpau, -nosound
      /home/pi/.pm2/logs/MagicMirror-out.log:[2025-10-28 19:41:43.181] [INFO]  [MMM-MPlayer] [window-0] stdout: [lavf] stream 0: video (h264), -vid 0
      pi@raspberrypi:~ $
      
      S evroomE 2 Replies Last reply Reply Quote 0
      • S Offline
        sdetweil @ge
        last edited by

        @ge please always config and log info into code block wrappers

        I will fix the prior post

        Copy the text you wish to share
        Paste the text into the editor, blank line above and below
        Select the text you just pasted
        Hit the </> button on the editor tool bar

        Or triple backtick (us keyboard shifted left of 1 key)
        On line by itself above and below your pasted text

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        R 1 Reply Last reply Reply Quote 0
        • R Offline
          RonR @sdetweil
          last edited by

          @sdetweil Thanks for letting me know something I should have know.
          I will do better in the future.

          1 Reply Last reply Reply Quote 0
          • evroomE Offline
            evroom @ge
            last edited by evroom

            @ge

            I have almost the exact environment and Raspberry Pi.
            I am running MM version 2.33.0, but that should not matter IMHO.

            Btw, have 8Gb, and you ?

            vcgencmd get_config total_mem
            

            Can you open the RTSP URL in VLC and then open Window - Media Information ?
            Then the Codec Details tab and please provide the Codec, Video resolution and Frame rate information.
            I have H.264, 2560x1440, 25.

            And can you try to change the config to this (add 2 lines):

                windows: [
                  {
                    windowSize: { width: 990, height: 557 },
                    windowPosition: { x: 471, y: 20 },
                    rtspStreamOverTcp: true,
                    noSound: true,
                    streams: [
                       'rtsp://admin:Camadmin@172.16.0.37:554/cam/realmonitor?channel=1&subtype=0'
                             ]
                  }
                ]
            

            From looks the RTSP URL you are using a Dahua cam, right ?
            Maybe you can try subtype=1 ??
            Or another channel perhaps.
            I do not know the relation between channels and resolutions.
            Try to find a lesser resolution to see if it makes it better.

            Also good to know how many other applications are streaming, for example Synology Surveillance Station.

            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)

            G 1 Reply Last reply Reply Quote 0
            • G Offline
              ge @evroom
              last edited by

              @evroom

              Here we go. The Pi has only 4gb. I bought 8, but I must have accidentally used it elsewhere. I’ll probably get a Pi 5 with 8gb ordered soon and try that.

              Codec details:
              Codec: H264 - MPEG-4 AVC (part 10) (h264)
              Video resolution: 1920x1080
              Buffer dimensions: 1920x1088
              Frame rate: 10
              Orientation: Top left
              Color primaries: ITU-R BT.709
              Color transfer function: ITU-R BT.709
              Color space: ITU-R BT.709 Range
              Chroma location: Left

              Frame rate is normally at 30. It’s 10 at the moment from when I last changed settings around.

              I added the two lines, no change.

              Cameras are Amcrest. I’ve tested with the other ones I have, different ages/resolutions, same issues. I have one that is not Amcrest, but it’s down at the moment, and I can’t get to it unless the weather gets better.

              Tested lowest resolution and appeared not to work, 352x240 too blurry. Changed to 640x480 not very clear, but still could see the lights on vehicles passing by, delayed, stuttering. May take 10 seconds for the cars to pass though the camera, and if I’m lucky maybe 8 images appear. Sometimes only one or two or none at all.

              Channel/Subchannel let me choose the stream from the camera. Main has the high resolutions, sub has the low. Normally I only use the main, and the sub is disabled.

              On the old pi 3b, it ran along side with a stream going to Zoneminder using OMXplayer. Ive gone to removing it from Zoneminder, but it makes no change.

              With all the changes I’ve attempted from high resolution to low, different frame rates, frame intervals, bit rates it never appears to make a difference. The encode is h.264. It has options for h.264b &h.265. Changing to those other encoding does make matters worse.

              I’d say at this time, if your not running into these problems elsewhere, don’t go too deep on this. I’m probably going to get the Pi5 as it is to have a definite performance boost. I’m also looking at setting up Zoneminder to provide a feed out instead of direct from the camera to see if that makes any difference.
              It will just take me some time to get to doing that.

              S 1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @ge
                last edited by sdetweil

                @ge pi memory is soldered on1/2/4/8. Not user adjustable

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                G 1 Reply Last reply Reply Quote 0
                • G Offline
                  ge @sdetweil
                  last edited by

                  @sdetweil
                  Just an update on this.
                  I did find my pi 4 with 8gb of memory, after I ordered the pi5 with 8gb. Must have take the old pi 4 w 4Gb memory, out of my mirror, and stuck the old one back in again.
                  I now have setup a fresh install of MM on the new pi5 and it is amazingly fast compared to the old 4. Installed MMM-Mplayer, and it works great for a few hours. After about six hours, the camera on MM is about 15 seconds behind. When that happens the video becomes choppy, and at times it stops for a few seconds, some video is lost. It never gets caught back up again until it is restarted. Letting it run longer, the issue continues to get worse. To figure this out, I have the video being timestamped from the camera.
                  So when MM is started up, the clock on the video agrees ( about a second behind) with the clock on MM, which agrees with another computer displaying the stream. After time has passed, everything is still showing the correct/synced time, except for video in MMM-Mplayer.

                  Processor temp 35-40c

                  evroomE 1 Reply Last reply Reply Quote 0
                  • evroomE Offline
                    evroom @ge
                    last edited by

                    @ge

                    A pity it does not work for you.
                    Strange that is only happens after a several hours
                    But mplayer is rather old, perhaps that is the primary issue.

                    Still, I tried it on my Pi 3b with 1Gb RAM and it runs well.
                    It is 3 to 5 seconds lagging.
                    Like the stream on my P4b with 8Gb.
                    It also does not seem very memory hungry.

                    Pi 3b is steaming now for over 2 hours, so I will need to look later again to see if it got messed up.
                    The Pi 4b is streaming for 2 weeks straight now, without issues.

                    To me it looks more like a camera issue, but if you say that other players have no issues …
                    Somehow mplayer does not like your rtsp stream, or it is a combination of factors.

                    I have found that there is a config file, where you can set options.
                    Try out some options (need to restart MagicMirror after every change).
                    For example try nocache first.
                    Then try cache=65536.
                    The option nosound is always good (can be set in the MMM-Mplayer options too, if not already done so).
                    The bandwidth option is just a shot in the dark.

                    $ vi ~/.mplayer/config
                    # Write your default config options here!
                    
                    # No cache
                    nocache=yes
                    
                    # Cache size in kBytes (4MB / 8MB / 16MB / 64MB)
                    # cache=4096
                    # cache=8192
                    # cache=16384
                    # cache=65536
                    
                    # Do not play/encode sound
                    nosound=yes
                    
                    # Bandwidth (10MB / 100MB / 1000MB)
                    # bandwidth=80000000
                    bandwidth=100000000
                    # bandwidth=1000000000
                    

                    What also can be the case, is that the windowSize is not matching your stream resolution.
                    This can cause issues as it needs to recode this portion.
                    Try:

                    windowSize: { width: 960, height: 540 },
                    

                    for a 1920x1080 (16:9) stream.

                    That is all I can think of.
                    Good luck.

                    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)

                    G 1 Reply Last reply Reply Quote 0
                    • G Offline
                      ge @evroom
                      last edited by

                      @evroom
                      Perfect timing. Just sat down think of options to try next. And the first one I was going to try was setting the cache and see what happens. So that is where I will start, and go from there. I’m also going to dig more into the options for Mplayer I can see the command to start mplayer is

                      mplayer rtsp://admin/camadmin@172.16.0.37:554/cam/realmonitor?channel=1&subtype=0 -vf rotate=-1 monitoraspect 0 -noborder -geometry 471:20 -x 990 -y 557 -rtsp-stream-over-tcp -prefer-ipv4 -vo xv,gl,gl_nosw,vdpau, -nosound
                      

                      Does not appear to be a memory issue. Starts at 74m, 24 hours later 80m. CPU averages from 12-25%, with a short jump to 40% for 1-2 seconds every 10 seconds on the Pi5. Much lower usage from the 4…so I expect there may be more going on with the 4. This 5 I setup from scratch, so no carryover from the 4.
                      And maybe it is the camera. It got along with the omxplayer, but maybe there is something Omxplayer that it didn’t care about, and now Mplayer does.

                      Thanks for the thoughts. I’ll continue to update this thread as I come across anything.

                      G 1 Reply Last reply Reply Quote 0
                      • G Offline
                        ge @ge
                        last edited by

                        I’ve tried way to many settings with no change. I have even found an old china made camera no difference. Made this the only running module, let the resolution on the screen match the camera and still after a few hours it’s fallen behind and back to stuttering … no change seems to make any difference.

                        So I’m going back to RSTP-Stream and see if I can get that to work. The video works using vlc , except I can’t get it top_center. It just likes running in the middle-center of the MagicMirror on the Pi5. The Pi4, it would only run on the top_left.

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 1 / 2
                        • 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