Giter VIP home page Giter VIP logo

node-music-player's Introduction

Node Music Player

An open source web-based music player

alt tag

How does it work?

Run it on your computer or server containing your music library and then access it through <ip of computer>:2000, for example if you run it on your local computer you would use localhost:2000.

Installation Instructions

Dependencies

node, git

You will also need a package taglib installed. On Ubuntu and derivatives this is libtag1-dev, on Arch Linux taglib. On OSX you will need homebrew, the xcode developer tools, and then run brew install taglib to install taglib (more info here). Windows support is not guaranteed and is up to someone else to submit any pull requests for windows support.

Install with the following commands:

git clone [email protected]:benkaiser/node-music-player.git
cd node-music-player/
npm install

Edit the config.js file and set music_dir to be the folder you want to be scanned for your music.

Then run the server with:

node app.js

Go to localhost:2000 in your browser (or known ip of server if it is on a different machine). From there click the Scan Library tab at the top of the page. From there select Start Scan and let it do it's magic. Once your library is scanned you should be able to access it from the Music tab up the top.

Features Implemented

  • Play songs and move between tracks
  • View full-resolution cover art
  • Full playlist support
  • Multiple selection
  • Repeat, repeat one and shuffle
  • Search functionality

Planned features

  • Cross-device syncing over network (between computers and android devices)
  • Remote controlling from other devices (i.e. phones, tablets, other computers)
  • Mobile viewing, so one may play and listen their library in an intuitive interface for a mobile phone
  • Favourite artists section

FAQ

Q: Why do you use taglib?

A: We depend on the musicmetadata library for scanning most song attributes including cover photos, however scanning song duration in musicmetadata is really slow. Taglib solves this problem by implementing extremely fast scanning of track audio attributes (i.e song length). If you really wish to install without taglib, just strip out all the taglib code in library_functions.js (the application should function as normal, just without song durations displayed).

node-music-player's People

Contributors

benkaiser avatar mawalu avatar the-eater avatar theopolisme avatar

Stargazers

Andre Rinas avatar Nguyen Trong Thanh avatar Greg Davis avatar Yousef Meska avatar Ethan Burrow Fairweather avatar Yasmin Seidel avatar Nirmal avatar  avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.