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

    Scheduled Pinned Locked Moved Utilities
    44 Posts 10 Posters 9.7k Views 10 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.
    • evroomE Offline
      evroom @KristjanESPERANTO
      last edited by evroom

      @myfingersarecold Nice! It would be cool if you maybe reconsidered and uploaded it to GitHub 👩‍💻

      In order to encourage and to help you a bit, here a README.md:

      # MMM-MPlayer
      A MagicMirror module that uses MPlayer to display rtsp streams
      
      ## Project Status
      This module is working, but still under development.
      
      ## Installation of mplayer
      ### Verify if mplayer is already installed
      ```shell
      $ which mplayer
      /usr/bin/mplayer
      

      Install mplayer (when not installed yet)

      $ sudo apt install -y mplayer
      

      Installation of the MM module

      1. In your terminal, change to your Magic Mirror module directory cd ~/MagicMirror/modules

      2. Clone this repository git clone https://github.com/myfingersarecold/MMM-MPlayer

      3. Make changes to your config.js file.

      Config Example

      Edit the file ~/MagicMirror/config/config.js to add or modify the module.

      {
      	module: 'MMM-MPlayer',
              disabled: false,
              position: "top_left",
              header: "MPlayer",
      	config: {
      	  useTwoWindows: true,
      	  layout: 'row',
      	  windowSize: { width: 525, height: 295 },
      	  windowPosition: { x: 12, y: 575 },
      	  streamInterval: 30000,
      	  streams: {
      		window1: [
      		  'something_else.mp4',
      		  'something.mp4'
      		],
      		window2: [
      		  'rtsp://foo',
      		  'rtsp://bar',
      		]
      	  }
      	}
      },
      

      Configuration Options

      Option Description Default
      useTwoWindows Use two windows true
      layout Can be ‘row’ or ‘column’ row
      windowSize Window size for both windows { width: 525, height: 295 }
      windowPosition Position of the first window (window1)
      [window2 is either 5px below or to the right of this window, depending on layout]
      { x: 12, y: 575 }
      streamInterval 30000
      streams window1 and / or window2 streams [ mp4 , rtsp ]

      Test environment

      This procedure has been tested on:

      • Raspberry Pi 4 Model B Rev 1.5
      • Debian GNU/Linux 12 (bookworm)
      • Magic Mirror version: 2.30.0

      Contributions

      Code provided by user ‘myfingersarecold’.

      https://forum.magicmirror.builders/user/myfingersarecold

      MagicMirror version: 2.30.0
      Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
      Raspbian GNU/Linux 12 (bookworm)

      Test environment:
      MagicMirror version: v2.30.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 @evroom
        last edited by

        @evroom said in MMM-MPlayer:

        @myfingersarecold

        Here two questions:

        1/ What does streamInterval do ?

        2/ Is it possible to rotate the output ?
        I am using my screen in portrait mode and therefore need my RTSP stream to be rotated by 90 degrees.

        To answer my own questions:

        1/ Cycles the streams defined in window1 and/or window2 after the provided interval (in milliseconds).
        Where applicable, the streams will start from the beginning again (for example for mp4 videos).

        2/ Yes, this is possible using the -vf rotate=[0-3] option and adjusting the windowPosition values.

        MagicMirror version: 2.30.0
        Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
        Raspbian GNU/Linux 12 (bookworm)

        Test environment:
        MagicMirror version: v2.30.0
        Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
        Raspbian GNU/Linux 12 (bookworm)

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

          @myfingersarecold said in MMM-MPlayer:

          I don’t feel like actually uploading it to github, but here is the source code, and an example config.

          I took the liberty to take the provided code, make changes to it and make it available as a public repository:

          https://github.com/evroom/MMM-MPlayer

          My own main purpose for using it, is to setup a new Raspberry Pi (Raspberry Pi 4 Model B), with Debian 12 (bookworm) and the latest MM version (2.30.0).
          Replacing a Pi 3b 32-bit Debian 10 buster setup where OMXPlayer is still working.
          I will be using a single window with a single RTSP stream (for an Axis Network Camera).
          Nothing fancy.

          Best regards,

          E.J.

          MagicMirror version: 2.30.0
          Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
          Raspbian GNU/Linux 12 (bookworm)

          Test environment:
          MagicMirror version: v2.30.0
          Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
          Raspbian GNU/Linux 12 (bookworm)

          KristjanESPERANTOK M 2 Replies Last reply Reply Quote 2
          • KristjanESPERANTOK Offline
            KristjanESPERANTO Module Developer @evroom
            last edited by

            @evroom Nice! 🚀 Please add it to the module list 🙂

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

              @KristjanESPERANTO said in MMM-MPlayer:

              @evroom Nice! 🚀 Please add it to the module list 🙂

              Done.

              MagicMirror version: 2.30.0
              Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              Test environment:
              MagicMirror version: v2.30.0
              Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              1 Reply Last reply Reply Quote 2
              • M Offline
                myfingersarecold @evroom
                last edited by

                @evroom you are 100% correct regarding item #1, the streamInterval is for when multiple streams are defined, it will switch between the available streams.

                regarding #2 on my pi i didnt have to rotate the mplayer orientation, but i adjusted the output of my pi to portrait and everything behaved but ymmv depending on how it’s setup.

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

                  @evroom thanks for that. glad its of use to someone 😊

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

                    @myfingersarecold said in MMM-MPlayer:

                    I couldnt get the EXT-FreeboxTV module to work on my magic mirror

                    Out of curiosity what was the issue with it?

                    I use that module all the time to watch the TV channels of my Enigma2 decoder.

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

                      @myfingersarecold said in MMM-MPlayer:

                      regarding #2 on my pi i didnt have to rotate the mplayer orientation, but i adjusted the output of my pi to portrait and everything behaved but ymmv depending on how it’s setup.

                      Could you please tell me how you do the general rotation to portrait ?

                      I use the custom.css to get it rotated clockwise.
                      As MPlayer is an overlay, like OMXPlayer, it is not affected by this.

                      body {
                      :
                      :
                        transform: rotate(-90deg);
                        transform-origin: top left;
                        width: 100vh;
                        height: 100vw;
                      :
                      :
                       }
                      

                      But of course there are more, potential better, ways of getting it rotated.

                      MagicMirror version: 2.30.0
                      Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                      Raspbian GNU/Linux 12 (bookworm)

                      Test environment:
                      MagicMirror version: v2.30.0
                      Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                      Raspbian GNU/Linux 12 (bookworm)

                      M 1 Reply Last reply Reply Quote 0
                      • M Offline
                        myfingersarecold @evroom
                        last edited by

                        @evroom

                        i didnt use this guide to do it, but this is how i rotated my screen.

                        https://www.makeuseof.com/how-to-rotate-your-raspberry-pi-screen-without-moving-the-display/

                        I am running the latest version of raspbian on my pi3

                        this results in my magicmirror instance loading in portrait mode, and my 16x9 streams loading properly where i want them without having to do any CSS rotation.

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