Rolling Your Own Jukebox System?
Nurgled asks: "I've been tasked with implementing a client-server jukebox-like system using normal bits of PC equipment. The general idea is to have a central server with all of the music available and then one or more clients which have a kiosk-type interface for browsing the available music and enqueueing it on the central server, all connected to a normal ethernet network. It's important that none of the kiosks should be able to perform any operation other than enqueue new tracks, but it would also be handy if there was a separate administrative console where tracks can be skipped, which would then be available to the venue owners. The kiosks don't have very fancy hardware and most don't have touch-screens, so ideally it should support both mouse and keyboard-based operation. Is there any software already out there that can do this, or am I going to have to write my own? I'd prefer an integrated solution, but I also wouldn't mind separate client and server software as long as I can tweak both to make them work together. Any ideas?"
Sounds like you need Streamsicle.
Its open source, runs on Win32 or Linux, and is still being devoloped.
http://streamsicle.com/
I have to say that an Xbox paired with XBOX Media Center works best as a Jukebox. Even better yet, you can set the dashboard to XBMC, and lock it down so that all they can do is listen to music or even watch Music Videos (or Divx). It supports almost all formats under the sun, except DRMd ones like iTMS AAC, but it even supports normally encrypted AAC. You can use a joystick as the controller, or the infrared remote.
Not only that, in newer versions you can even get weather forecasts, and listen to Internet radio. Xbox Media Center truly does rock. Keep all of your music/media on a central server and just mount it with SMB.
"When the president does it, that means it's not illegal." - Richard M. Nixon
Support for Rio, ExStreamer, SliMP3, MVP and WinAmp.
Multi Unit MVP support.
Built-in customisable web interface.
Support for MP3, WMA, WAV, FLAC and OGG.
Support for synchronising multiple Rios
Shoutcast support (including support for DabBar/Wavefinder MP2 streams)
Text-to-speech announcements (via xPL messages)
On-screen messages (via xPL messages) e.g. for caller ID etc.
Generates Pronto/Pronto Pro csf files (for quick album/artist/playlist selection)
Generates Voice Recognition files (for use with xPLRioNetTTS and xPL_Voice)
Uses any ODBC-compliant database (ships with a Microsoft Access database)
Can be fully controlled and monitored using xPL messages
Installs as a Windows service using Microsoft .NET technologies
And has an XML based web client Worth checking out!
This question was asked before.
Here was my answer then.
-==-
... for the following:
And I found this as the fourth link.
There's so little difference between politics and jihad lately...
I've already done this. Grind is a web based jukebox that supports playback of a wide range of media formats (mp3, ogg, wav, and flac to name a few). It has a small install footprint (no database overkill, just Apache, Perl, and some mediaplayers). It supports playback of internet streams as well.
It is beta software because more metainformation in media files needs to be supported, along with perfecting its automatic installation proceedure. That said, I use it almost daily with no problems at all.
The main feature that sets Grind apart from other jukebox software is that it supports intellegent autoqueuing. Grind monitors what songs, artists, and albums you frequently listen to, and which songs you frequently skip. The user can then set Grind basically in autopilot (autodj?) mode and it will automatically play songs from your favorite and similar artists. There may be another open source project that does that, but I've yet to find one.
I use Zina, which is an OpenSource clone of Andromeda. Then, I use an old tablet PC and a web browser in kiosk mode.
Dear Slashdot,
...
My employer has asked me to do a job that I don't know how to do and I need your help. Please do my job for me and research then recommend a solution.
Thankyou,
Jaseone
Maybe this is the missing step in all the various sets of steps to profit:
3: Ask slashdot
4: Profit
In the drops - An Aussie's musings on all things cycling
Just use SlimServer and be done with it. Read about it here, but to repeat the main features:
It's intended to be the interface software for the same company's Squeezebox network audio player, which explains why they're willing to give it away under the GPL -- they make their money of the hardware. That also explains some of the unusual design decisions that went into SlimServer, namely, that unlike some other network streaming setups (Apache::MP3, iTunes DAAP streaming, etc) which let each client listen to their own selections, the SlimServer architecture allows multiple clients to have a say over the one stream that's being used centrally. For a management interface to a central home audio system, or for the system described in this article, that design decision is a perfect fit.
Really, give it a try. I tried setting it up on a LAN for coworkers to listen to mp3s on their headphones, and while everyone liked the interface a lot, it was annoying that everyone listened to the same thing. But if you want to provide a way for everyone to set what is being played on a central system, this is exactly the way to do it.
DO NOT LEAVE IT IS NOT REAL
Jukebox Project
This was originally my senior independent work in the Comp Sci department at Princeton, advisor Brian Kernighan.
I am looking to open source the project when I get around to it. I built it on OS X 10.2, using PHP, AppleScript and iTunes.
Contact me at anthony@opensource-strategies.com for information and pricing.
Anthony Papillion
Advanced Data Concepts, Inc.
"Quality Custom Software and IT Services"
Feel free to rate this Offtopic...
A couple of folks have made suggestions that answer the original post. I'm more curious about what the communication protocols for the jukeboxes that were used in diners in the 50s. Each remote station (table/booth) could add a song to the queue of the master jukebox. They'd have to transmit the song ID to the master. Was this done serial? Parallel? What was the encoding used? And how did the master jukebox implement a FIFO queue?
Curious, and fairly ignorant of pre-solid-state electronics.
This sig intentionally left justified.
If you check out the forums as http://www.arcadecontrols.com/ they have a section dedicated speficically to jukeboxes. This includes both hardware and software. If they haven't built/found something, then I'm not sure how feasible it is.
This a software list I've started on a new website I'm building. http://buildajukebox.com/content/view/8/26/
/. effect.
. 0.html
You might find something to help you there. Hopefully there'll be no
There also a forum at http://forum.arcadecontrols.com/index.php/board,5
http://www.mserv.org/ and http://dougiamas.com/mserv/
Check out MPD.
I have it running at home and I can control it through a web browser from wherever I happen to be. Permissions can be set by user, and playlist control is incredibly easy.
I searched for this same thing for a while for myself and tried a number of systems, and have stuck with MPD because it just works, always.
Got a site/story worth sharing? Leave a mark
here. Everyone can vote, admins can skip songs, and it's a web interface, so the client will run on anything.
We use tunez at our LAN's so anyone can pick a song to play.
09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
Do you want the music to play at each kiosk through an HTTP stream or play at the central server by queueing up songs through the kiosks? Plenty of web based jukeboxes out there that work either way. Some good suggestions in the other replies and don't forget to check Freshmeat and Sourceforge too.
I use XMMS Control. XMMS runs on a pc connected to the Amp that plays music through out the office. Control is done from any Web Browser. Office music battles are great
You may be interested in Bossogg, as it appears to have a lot of the functions that you're after.
Playing digital content in a public arena is, apparently, different than playing CD's out of a jukebox system. Well, legally it is. You might be stepping into a giant rat-trap here if you put this in a public/commercial place.
If you hook up a mechanism to take money to purchase credits to play music, like a real jukebox, you're stepping into another legal realm with a bunch of nifty patents out there.
More details would be nice. If part #2 comes into play then you're pretty much reinventing the wheel. There are already players out there in that market with 100,000+ songs available on their systems.
FWIW: I work on real digital jukeboxes for a living.
I've used NetJuke in the past. It can either stream over a network or be used to control a player on the server.
I prefer a void in conversation to a vacuous one.
Use an Xbox, and XBMC. For audio, it supports all the usuallys. It has a webserver built in for song changing. Easy to hook up to a stereo. Can be used with Samba and tons of other Network streaming/filesystems. Plus it's cheap.
At home I use Globecom Jukebox: http://gjukebox.sourceforge.net/
I started looking for a jukebox solution about 3 years ago. I've got ~15000 tunes online and of all the ones I looked at, this one seemed to be the most scaleable.
It is written in PERL, and uses a MySQL database backend. It has a themeable Web based frontend driven by Apache and PHP. You can use any browser to search for songs and manage the playlist. I went with one of the very simple themes (not the default) and then customized it to my own liking. It will import songs from an existing directory and make them searchable by album, artist, song title, all taken from the ID3 tags. It normalizes the volume level on import too. It is works with MP3, OGG Vorbis and other formats. It supports multiple users (with separate accounts if you want). It supports voting for songs. In random play mode, songs with more votes get played more often than those with fewer or negative votes.