Mike's Home Page > Jukebox Home > The Minimal Jukebox > Components of The Minimal Jukebox

Components of The Minimal Jukebox

This page describes the hardware and software components of the minimal jukebox.

Hardware

The hardware components of the jukebox are:

  1. A Windows PC to run the software for storing the music files, servicing the remote control, and playing the music. I recommend using a dedicated PC rather than one you use for any other purpose. It needs:
    • A large hard disk, depending on the number of CDs you want to store. 100 CDs will occupy roughly 30 Gb.
    • A high quality sound card. The sound card that I use is an M-Audio Audiophile 2496 PCI (highly recommended).
    • An Internet connection available during the process of adding CDs to the jukebox. This can be anything from a dial-up modem connection to a high-speed always-on network router.
  2. A Wireless Access Point (WAP). The WAP allows the remote control to communicate with the PC.
  3. An audio amplifier and speakers. They can be located in a different room from the jukebox hardware, anywhere you can run a cable to.
  4. A category 5 patch cable to link the WAP to the PC.
  5. Twin coaxial audio cable to link the PC to the amplifier.
  6. For the remote control, a WiFi-enabled super-PDA with an 800x600 screen and a web browser. Two types that I have used successfully are the Mobinote (also known as the EZ-PC) and the Psion Netbook Pro. For further information about the remote control hardware see page The Minimal Jukebox Remote Control.

Actually the jukebox could be made even more minimal by (1) using a wireless network card instead of a WAP and a patch cable, and/or (2) using the PC's ordinary sound card and speakers. I wouldn't recommend doing that, though.

The diagram below shows how the hardware components listed above fit together:

Diagram showing the hardware components of the minimal jukeboxHardware components of the minimal jukebox

Software

The software can conveniently be divided into that which is used when adding new CDs to the jukebox, and that which is used when selecting and playing music.

  1. Adding new CDs
    • EAC ("Exact Audio Copy") is a program for reliably reading CDs and encoding them as PC audio files.
    • Windows Media Encoder runs under the control of EAC to compress the audio files and embed artist and title information in them.
    • J River Media Center is a jukebox program in its own right, but I use it only to maintain a master database of music.
    • The "Database Converter" (a program written by me) converts the Media Center database into the database format used by the jukebox.
    • ActivePerl is the language package that runs the Database Converter, which is written in the Perl programming language.
    • JPEG Resizer runs under the control of the Database Converter, to convert cover art image files to the size used on the remote control screen.
  2. Selecting and playing music
    • Apache HTTP Server is the popular web server used for thousands of sites world-wide, and is used to send pages to the remote control and receive commands from it.
    • The "CGI programs" (programs written by me) are used in conjunction with the Apache server to format information for display on the remote control and act on the user's commands.
    • ActivePerl (again) is the language package that runs the CGI programs, which are written in the Perl programming language.
    • Winamp, the very popular PC music player, actually plays the music under control of the CGI programs.
    • Windows Media Encoder (again) is used in conjunction with Winamp for decompressing the audio files.
    • httpQ is a plug-in module for external control of Winamp, that allows it to be controlled by the CGI programs.

(I've not listed Microsoft Windows or the various driver programs that are supplied with the hardware.)

The diagram below shows how those software components relate to each other:

Diagram showing the software components of the minimal jukeboxSoftware components of the minimal jukebox