Skip to content

babney/sinatra-mpc

Repository files navigation

This is an attempt to create an mpd client using Sinatra, jQuery, and html5 <audio> elements. Things are kind of buggy at the moment but if you don't do crazy stuff it should work in general.

What works:
-view the current playlist
-play/pause
-next
-previous
-change to a track in the current playlist
-clear the playlist
-add a track or folder to the playlist

What doesn't work:
Chrome's HTML5 <audio> handler seems to choke on Ogg frames that contain a Vorbis header

Requirements:
-Sinatra
-jQuery
-Bundler
-the mpc gem, (requires ruby-tree), specifically my fork of it for now which fixes a small bug and adds a 'playing?' method
-an MPD server, set up to stream through icecast or the builtin streamer. Icecast seems to work better with Firefox, I think it may have something to do with MIME types but I haven't investigated it yet.

TODO:
-fix song-end bug
-polling or pushing track progress and allowing the user to change the track position (jQuery-ui slider?)
-general drying up of the code, adding config files that aren't so hacky, etc.
-support for mp3 streams
-graceful fallback to jorbis or other player for older browsers


This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

About

an MPD client using Sinatra and jQuery

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published