Search code examples
phpjquerymedia-playermp3playlist

Fully featured web media player to handle online media library (focus on music)


The concept is to consolidate my friends' and my MP3 collections, providing backup and remote access to media.

  • I will give them ftp access to upload their libraries.
  • A password protected site with different accounts (this will be handled with PHP).
  • A simple media player - mainly focused on music, videos welcome but not mandatory.
  • A good and fast file browser with indexing capabilities for fast searches.
  • Playlist saving capability. With option to see each other's playlists.
  • Cross platform, to be able to access it from mobile devices etc.

Seeing there are solutions around I thought I could ask for something ready in order to avoid writing it from scratch. I was thinking this should be two different things, a file browser combined with a media player.

Is there some code that will provide both the media player and the file browser already available or should go looking for two different things? I know there are similar questions but I wanted to get an up-to-date answer on this.


Solution

  • Here's a short answer to all of your points:

    • You don't need to give them access via FTP, there are tons of scripts to handle uploading and browsing files on a server, together with permissions. elFinder is a very good script
    • There are a lot of articles on user authentication. PHP has one here, and you can find already made scripts to use or reference, like uLogin and UserPie
    • You could use the jQuery-based jPlayer. It can be used as a media player / media library for videos and audio. Here's an example from their page that includes playlist functionality.
    • You can use elFinder as a file browser, as mentioned above
    • Since they will have a common place where they'll be uploading files, you can just configure jPlayer to switch to each user's folder
    • All of the above are based on web technologies, so they all should work on modern mobile devices. You will need to follow a responsive web design approach.