John Varga's MP3box

Well, the background story is that every so often my company likes to upgrade our computers. We're in a transition period from screwdriver shop Pentium 166's and 200's to Dell Pentium III's. IMO, it seems like overkill since the most complicated stuff we use is Excel and some financial apps....but at least that means free hardware, albeit a couple years old.

Anyway....

My goal was to create an MP3 jukebox that I could use at work with a minimum of fuss and distraction. In my experience, BeOS is the best platform to use if you want a minimum of fuss and distraction. On top of it all, it's low latency handling of media and database-like journaled filesystem suit my projects needs perfectly.

These are some of the specifications I was looking for:

* Since space is a premium, I must be able to tuck the system away into a far corner and forget about it.
* I don't have extra monitors, keyboards and mice lying around. Therefore, the system must be fully functional ___in its capacity as an MP3 player___ w/ o using a keyboard, mouse or monitor.
* Ideally, the MP3 functions should be controlled through the network via a web-based interface or through the serial port with a command line.
* A cool name for the device and a "wow" factor.

I saved some components from going into the scrap heap and this is what I put together:

Pentium 200 MMX proc on an Asus motherboard
128 megs EDO RAM
6 gig Western Digital hard drive
Creative Labs 24x CDROM drive
Creative Labs Sound Blaster 16 (Vibra chipset)
3Com 905b NIC (pci)
ATI 3D Charger (3D Rage II chipset)
A small beige minitower

I installed BeOS 5 onto a 540 meg hard drive I had lying around. I wanted the entire 6 gig hard drive dedicated to MP3 storage. For starters, I ftp'ed my (legal) 2 gig mp3 collection from my regular home computer into the jukebox-to-be. I then installed the following programs, some of which I already use and some of which might suit the purposes of the jukebox:

RipEnc (the best mp3 ripping, encoding & cataloging program available)
MP3 Flashlight (performs mp3 queries based upon attributes)
MP3 AI (needed to run MP3 Flashlight)
CL-Amp (a popular mp3 player for BeOS)
clr (lets one control CL-Amp through the command line)
A-Box (a set of perl scripts that gives you a web-based MP3 playlist control panel)
Robin Hood (a web server for BeOS that can run perl scripts)
PERL 5.x (a precision extracting & reporting language)
Lynx (a BeOS port of the popular text-mode browser)

The jukebox (which I like to call MP31337) is halfway through the work in process stage. At the present, it is tucked away underneath a desk running headless, keyboardless and mouseless. The system is currently controlled through an old black & white lcd Compaq WinCE handheld running a terminal program. Serial login is accomplished by adding "getty serial1 19200" to the UserBootScript. I have several playlists saved on the hard drive. I can play the lists using "clr," which controls cl-amp through the command line. Since my "All.m3u" playlists has roughly a 24 hour run time, I'm not too concerned with taking a second to log in and then typing some more to launch clr. However, if I want this thing to be truer in concept to a jukebox, there is more work to be done.

After I take some time to get Robin Hood and A-Box running properly, MP31337 will be ready for web-based remote control. Although it isn't hard to set up a streaming mp3 server with BeOS, MP31337's output will be limited to the speakers plugged into its sound card....although it would be kind of fun to watch everyone slashdot the intranet just to listen to music. Web-based remote control gives me two control options....over the intranet and using my work computer and IE 5 to run things....or the Compaq handheld running Lynx and no intranet connection...or both. I prefer the handheld+Lynx option because that could work anywhere, even without a LAN.

Although the interface portion is not yet complete, the speed and performance is there...including POST, I can get the login prompt on the handheld in about 15 seconds after powering up. Since MP31337 has 128 megs of RAM, the entire system is very snappy in loading and playing songs (however, I do just as well with 64 megs at home), just as a good juke box should be. Any song queries are done incredibly fast.

Well, that's the state of things with my jukebox project.

Return to MP3Box page