Package: jukebox
Democratic Jukebox - your democratic music playerEver wanted to listen to music with a larger group of people e.g. in your office? Who decides what to play?
Make your music player democratic and give everyone the chance to promote their favourite song.Jukebox provides a web interface to search your music library and vote for songs to be played.
The more votes a song gets, the sooner you will listen to it.At one point in your life your play queue might get empty. Don’t worry, the jukebox will keep on playing.
The playback system figures out who is online using the web interface or API and plays music to their liking.Required system librarieslibshout3, libshout3-dev and python-dev are required to build the dependecypython-shout.GeneralJukebox is available in english and germanJukebox uses Facebook, Twitter and Github for authentication (seedjango-social-authfor more authentication providers)SetupInstallvirtualenvwrapperviapipif not alreay done:sudo pip install virtualenvwrapperSet up a project for jukebox:mkproject jukeboxInstall the jukebox in your fresh virtual environment:workon jukebox
pip install jukeboxNow it’s time to configure the jukeboxEnter admin credentials and select authentication providersCreate the databaseIndex your musicThat’s alljukebox jukebox_setup
jukebox syncdb
jukebox jukebox_index --path=/path/to/libraryThe django builtin development webserver will be sufficient to serve your office or party. Just start it up:jukebox runserver ip:portNow you’re ready to put music in the queue.PlaybackCurrently there are two methods of playing the music chosen in jukebox.shoutcastStream your music to a shoutcast compatible serverpip install jukebox-shoutSeejukebox_shoutfor details and startup command.mpg123Play your music locally on the machine running the jukebox.pip install jukebox-mpg123Seejukebox_mpg123for details and startup command.Contribute!Feel free to write additional playback modules and I’ll add them to the list above.Live indexingThere is no need to update your index every time a new song is added to your library, just use the live indexer package.pip install jukebox-live-indexerSeejukebox_live_indexerfor details and startup command.APIjukebox_core provides a fully fledged REST API for authenticated users. SeeAPI referenceSearch filtersJukebox supports google-like search filter. Available search fields: title, artist, album, genre, year.title:(love to dance) artist:bobby
artist:(bobby baby) lucky
title:(in ten years) genre:electronicLicenseMIT License. SeeLicenseContribute!You want to contribute to this project? Just fork the repo and do this:mkproject jukebox
git clone git@github.com:[username]/jukebox.git .
git remote add upstream git://github.com/lociii/jukebox.git
pip install -r requirements.txt
cd jukeboxFollow up configuring jukebox like described in Setup. Use ./manage.py instead of the jukebox command.You can now create a branch to make your actual changes and send a pull request. Seethis articlefor how to do this.Release Notes0.1.0Initial release0.1.1Fixed installer bugsAdded personal historyAdded system tests for api0.2.0Language switchSortable listsGoogle-like search operatorsAutoplay tries to play appropriate musicImproved web interface0.2.1fixed issue with autoplay0.3.0Added jukebox_watchAdded list of votersMinor improvements0.3.1Improved exception handlingAdded rss for current songMinor bug fixes0.3.2Update dependenciesFix authentication problemsSwitch from inotify to watchdog0.3.3Fix manifest0.3.4Fix to skip unauthorized sessionsUpdated wsgi handler0.3.5Update mutagen (Thanks guys for removing old packages)Fixed minor bugs (Thanks tosaz)0.3.7Fix buggy pypi package0.4.0Split jukebox in different packagesStrip artist from album data0.4.1Add missing wsgi file