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.

    Simple Music Player Module

    Scheduled Pinned Locked Moved Entertainment
    musicaudioplayer
    41 Posts 19 Posters 52.6k Views 21 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.
    • yawnsY Offline
      yawns Moderator
      last edited by

      Are you talking about this one? https://github.com/masters1222/mm-hide-all

      open a terminal:

      cd ~/MagicMirror/modules
      git clone https://github.com/masters1222/mm-hide-all.git
      
      1m21 1 Reply Last reply Reply Quote 1
      • 1m21 Offline
        1m2 @yawns
        last edited by 1m2

        @yawns
        Dude, thanks a Mill!

        So for this music one it would be
        cd to my MagicMirror/modules directory and execute the below as well.
        git clone https://github.com/masters1222/mm-music-player

        Wow, doesn’t get easier than that! LOL
        Thanks for the quick response man!

        *** Did an EDIT correction on the which directory to CD to since @cowboysdude was nice enough to point that out, given that I didn’t pay attention. I didn’t want anyone else to find this later and have the same mistake happen to them because of me. LOL

        cowboysdudeC 1 Reply Last reply Reply Quote 0
        • cowboysdudeC Offline
          cowboysdude Module Developer @1m2
          last edited by

          @1m2 Don’t forget… it’s not the MagicMirror dir it’s the /MagicMirror/modules dir before you do a git clone or you’ll be putting it directly in the MM folder instead of the modules folder ;)

          1m21 1 Reply Last reply Reply Quote 0
          • 1m21 Offline
            1m2 @cowboysdude
            last edited by 1m2

            @cowboysdude
            Funk it… I was already troubleshooting cause I had already did it! LOL!!!
            Now I have to look up how to remove them, I haven’t done linux in 10 years.
            That’s what happens when you get too excited and don’t pay attention. DOH.
            Thanks!

            cowboysdudeC 1 Reply Last reply Reply Quote 0
            • cowboysdudeC Offline
              cowboysdude Module Developer @1m2
              last edited by

              @1m2 said in Simple Music Player Module:

              @cowboysdude
              Funk it… I was already troubleshooting cause I had already did it! LOL!!!
              Now I have to look up how to remove them, I haven’t done linux in 10 years.
              Thanks!

              Just open up a folder and delete it :)

              OR from terminal window:

              sudo rm -rf folderName

              ;)

              1 Reply Last reply Reply Quote 0
              • T Offline
                theusu5k
                last edited by

                i really like this module,it can’t be done a web version,to control the music player from a web page?

                cowboysdudeC 1m21 2 Replies Last reply Reply Quote 0
                • cowboysdudeC Offline
                  cowboysdude Module Developer @theusu5k
                  last edited by

                  @theusu5k That gets a lot more difficult…

                  You have to find an api that allows it…

                  brobergB 1 Reply Last reply Reply Quote 0
                  • brobergB Offline
                    broberg Project Sponsor @cowboysdude
                    last edited by

                    @cowboysdude well, he should be able to send http get to the syslog module and then let the syslog send a notification to the player module.

                    But, well, it’s a long way around 😀

                    1 Reply Last reply Reply Quote 1
                    • 1m21 Offline
                      1m2 @theusu5k
                      last edited by

                      @theusu5k Yeah, Google Music would be a bomb widget on here.

                      1 Reply Last reply Reply Quote 1
                      • lucallmonL Offline
                        lucallmon
                        last edited by

                        Is there a way to link the music directory to a thumb drive instead of having it in the modules folder on the SD card?

                        brobergB 1 Reply Last reply Reply Quote 0
                        • brobergB Offline
                          broberg Project Sponsor @lucallmon
                          last edited by

                          @lucallmon either you change the directory in the players .js file or you link the music folder to the thumbdrive

                          1 Reply Last reply Reply Quote 0
                          • D Offline
                            dbaler
                            last edited by

                            If you have a nas / networked storage and want to use music files from there, how would you do that?

                            brobergB 1 Reply Last reply Reply Quote 0
                            • brobergB Offline
                              broberg Project Sponsor @dbaler
                              last edited by

                              @dbaler My higly noobish answer is Samba, and mount a network folder.

                              D 1 Reply Last reply Reply Quote 0
                              • D Offline
                                dbaler @broberg
                                last edited by

                                @broberg Just change the directory in which JS file?

                                brobergB 1 Reply Last reply Reply Quote 0
                                • brobergB Offline
                                  broberg Project Sponsor @dbaler
                                  last edited by

                                  @dbaler If you are not using the default Music folder you could actually mount your network folder directly in that folder. No need to alter anything in the js files

                                  Here is a easy to follow tutorial on how you mount a smb share in linux :
                                  https://www.howtogeek.com/176471/how-to-share-files-between-windows-and-linux/

                                  1 Reply Last reply Reply Quote 0
                                  • P Offline
                                    Preve @cowboysdude
                                    last edited by

                                    @cowboysdude Is that “show list” already available?

                                    1 Reply Last reply Reply Quote 0
                                    • aro28A Offline
                                      aro28
                                      last edited by aro28

                                      Hi Eof,
                                      Do you know why mm-music-player module is not loading even i added below code to config file? I downloaded and copied mm-music-player folder to MM’s Modules folder. Do i need to do something else?

                                      {
                                      module: ‘mm-music-player’,
                                      position: ‘bottom_left’,
                                      config: {
                                      startingVolume: 20,
                                      fadeDuriation: 2000
                                      }
                                      }

                                      Thank you!

                                      1 Reply Last reply Reply Quote 0
                                      • D Offline
                                        DrCastor
                                        last edited by DrCastor

                                        Hi aro28,

                                        I had the same problem, so I decided to take a look at why this module couldn’t be loaded.

                                        The issues is in the Node_Helper.js given, which is mistaken. The structure is wrong. It looks like a quick adaptation of a ctrl+C/ctrl+V made from index.js, found in the node_helper folder (MM core folders).

                                        I’m actually tweeking it a bit. I’ll give you news when i get it worked nicely.
                                        (In fact, it seems i can now load it, but since my speaker are broke, i cant be sure it reads files… I’ll change them tomorrow)

                                        aro28A 1 Reply Last reply Reply Quote 0
                                        • aro28A Offline
                                          aro28 @DrCastor
                                          last edited by

                                          @DrCastor
                                          Great! Thank you for reply. I hope you will succeed.

                                          1 Reply Last reply Reply Quote 0
                                          • D Offline
                                            DrCastor
                                            last edited by yawns

                                            Ok, found bad speakers, but at least, they allow me to test it. It works :). I’m a real noob, so some useless things may still be there. But at least, it will do the trick

                                            Go to the node_helper.js file, and change it this way:

                                            var Class = require("../../js/class.js");
                                            var express = require("express");
                                            var path = require("path");
                                            
                                            
                                            module.exports = NodeHelper.create({
                                            
                                            	init: function() {
                                            		console.log("Initializing mm-music-player module helper ...");
                                            	},
                                            
                                            	start: function() {
                                            		this.expressApp.get('/music', function (req, res) {
                                            			var fs = require('fs');
                                            			var path = require('path');
                                            
                                            			var files = [];
                                            
                                            			fs.readdir('modules/mm-music-player/music', (err, data) => {
                                            				for(i = 0; i < data.length; i++){
                                            					if(path.extname(data[i]) == ".mp3"){
                                            						files.push(data[i]);
                                            					}
                                            				}
                                            				
                                            				res.send(files);
                                            			});
                                            		});
                                            	},
                                            
                                            
                                            
                                            	/* setExpressApp(app)
                                            	 * Sets the express app object for this module.
                                            	 * This allows you to host files from the created webserver.
                                            	 *
                                            	 * argument app Express app - The Express app object.
                                            	 */
                                            	setExpressApp: function(app) {
                                            		this.expressApp = app;
                                            
                                            		var publicPath = this.path + "/public";
                                            		app.use("/" + this.name, express.static(publicPath));
                                            	},
                                            
                                            });
                                            

                                            If luck is by your side, it will work ;)

                                            aro28A 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
                                            • 3
                                            • 1 / 3
                                            • 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