Build an Inexpensive Mini-Media Box
Digital media and computers are as much a part of the 21st century entertainment landscape as celluloid and film projectors were in the 20th. While today's tower PCs can act as media-playback boxes, they leave a lot to be desired when it comes to portability and aesthetics. New developments in miniaturization have put the full power of a modern PC on a motherboard just 40 percent the size of a conventional ATX board. This means system builders can devise highly capable media-playback machines in small boxes, using quiet, low-power components. No longer do you need big, hulking machines and water-cooled CPUs to serve up the hottest entertainment.
Ingredients
Here's everything you'll need to build a low-cost mini-media box:
- Case: I recommend the Travla C158-120, a slimline case that provides enough room for a hard drive and a slimline optical drive, and that supports motherboards using the mini-ITX compact form factor. A DC-to-DC power supply means the case consumes minimal power and runs quietly. With included extension brackets, the case can be made rack-mountable, but for this application, the box is better off tucked into a stereo component stack or TV cabinet.
- Motherboard: I recommend VIA Technologies' EPIA SP-13000 motherboard. VIA's Mini-ITX motherboards—sometimes called "mainboards" in marketing-speak—measure about five inches on each side, just long enough to provide a full ATX I/O riser. They also include accelerated MPEG decoding hardware, making them perfect for this project. The integrated x86-compatible VIA C3 processor runs at 1.3 GHz, sufficient for even MPEG4 encoded video. The motherboard also sports integrated TV output, another key benefit.
- Hard drive: My recommendation is Seagate's Momentus 5400.3 160-GB, 2.5-inch IDE hard drive. Although the Travla case accepts a 3.5-inch IDE drive, the tight spaces and our need to consume low power and keep things quiet make this laptop drive an ideal choice. It uses perpendicular recording, meaning the drive stacks data more densely than notebook-sized drives could in the past, resulting in an impressive 160-GB capacity.
- Memory: Any 512-MB DDR module will do. The VIA C3 processor on our motherboard does not benefit greatly from high-speed memory, so even a DDR266 module is sufficient. Don't waste your customer's money on a 1-GB DDR400 module here; they simply won't see the benefit.
- Optical drive: I like Sony's Slim Combo Optical Drive Model CRX835E. The Travla case supports only a slimline, laptop-class optical drive, so this Sony combo model is a great way to get both DVD and CD writing in one drive.
- Remote controller: ATI's Remote Wonder gets my vote. There are a number of infrared and RF remote controls on the PC market these days, but ATI's products are among the most prevalent and well-supported. What's more, if your customers want to conceal the media player in a central location and pipe video to one or more televisions, the RF transmitter in the remote and the USB receiver don't need line-of-sight to communicate, the way most IR-based remote controls do. The Remote Wonder is also the best-supported remote for our video playback software.
- Media software: GeeXboX Media Player software is based on Linux and the MPlayer video software. It's a stand-alone bootable CD that provides a full embedded OS for media playback. It works with the EPIA motherboard with minimal configuration, and it is a perfect hassle-free solution for a media box.
- Any PC: You will need a Windows (or Linux) PC to prepare the GeeXboX software, burn it to CD, and pre-format the media hard drive.
- A keyboard: Any keyboard will do. You will need it to verify BIOS settings after the hardware build is complete. Of course, you'll need to unplug the keyboard from the prep PC and plug it into the media box at the appropriate time of the build.
- Notebook-to-desktop IDE converters: While both the optical and hard drives are intended for notebook use, our motherboard has standard desktop IDE interfaces. Inexpensive modules (about $8 each) will convert the connectors on the optical and hard drive to accept a standard 40-pin IDE connector and Molex power.
- Mounting brackets: Get some 2.5-inch to 3.5-inch IDE mounting brackets. These are metal rails that let you mount the 2.5-inch notebook drive in a bay intended for a 3.5-inch disk. I recommend this one from Census PC.
- CD-R drive: You'll use this to deliver the GeeXboX system software. You can even use a mini-CD-R, as the entire code takes up only 7 MB.
- Screwdriver: A typical Philips-head screwdriver is the only tool you will need for this Recipe.
Eleven Steps to Building a Compact Media Player
To assemble your mini-media box, carefully follow these steps:
- To prepare the system software and media drive, go to the GeeXboX download page and download the file called "GeeXboX 0.98.7 ISO Generator (i386 (PC) Target)." Extract geexbox-generator-0.98.7.i386.tar.gz to a new directory, and name it geexbox-generator-0.98.7.i386.
- Open the new directory geexbox-generator-0.98.7.i386. If the box is to be hooked up to a TV instead of a VGA monitor, you must make two small edits by hand before running the generator program. Using a text editor—Notepad will do in a pinch—open the file geexbox-generator-0.98.7.i386\iso\GEEXBOX\etc\tvout. If the mini-media box will be used in North America or Japan, change the TVOUT_STANDARD field from pal to ntsc.
- If this media box will be connected to a standard format television, save the tvout file, and quit your text editor. If, on the other hand, the media box will be connected to a TV natively formatted for wide-screen, change the field TVOUT_ASPECT from 4:3 to 16:9. If you're unsure, do not change this field. Once the edits are completed, save this file.
- Run generator.exe from the geexbox-generator-0.98.7.i386 directory. A window will pop up to offer graphical configuration options, beginning with the Interface tab, as shown below:
- This view controls the language and graphics displays. Change the default Theme to movies. If you wish to install a special font for subtitles or menu display, click the appropriate Change button, and select a path to any valid TrueType (.ttf) font.
- You may skip over the Audio tab. The Remote Control tab will be used only if you're deploying a remote control other than the specified ATI brand. In this tab, you may select from a list of experimental drivers for other remote-control and receiver brands.
- In the Network tab, change Physical Interface to Ethernet. If the box will be connected to a LAN with a DHCP server, leave the Configuration drop-down set to Automatic. If the box needs an individual IP address, change Configuration to Manual. Then supply the IP address, subnet, gateway and DNS server as specified by your customer.
- The Services tab determines both how the media box can use network resources and how the box can be updated. The easiest way to update the GeeXboX is to turn its FTP server on by clicking the appropriate box. This makes the GeeXboX available for anonymous FTP on the LAN. But this is not an especially safe configuration, because any other computer on your client's LAN could get access to the box. As a result, you may want to isolate the machine from the network, except when it's in update mode. Another option: Remove the drive and attach it to another machine to reload it.
- Turn off UPnP Shares unless you know for certain that the customer wants to use Universal Plug-and-Play on their network.
- The Username and Password fields are used to attempt to access other Windows shares that will be visible on the LAN. Choose a valid username to access any Windows workgroup shares that the GeeXboX machine will be able to see. When you're done, the screen should resemble the one shown here:
- The Packages tab lets you install additional code for specialized hardware (not used on the EPIA motherboard, so unnecessary for us) and select codecs for QuickTime, RealPlayer, and Windows Media playback. Because GeeXboX comes only with codecs provided as free source, leaving out these packages is the safest course of action from a legal standpoint. In other words, select and install them at your own risk!
- I'm not an intellectual property attorney, but the fact that the Geexbox people aren't comfortable integrating the codecs into the base install tells us that there probably are some restrictions on use. Probably enough, in fact, that you shouldn't assume you can go ahead and put them on a box and sell them to customers.
- Click the Compile button to commit to the generator's settings. Within a few seconds, a new file will be created in the generator directory, geexbox-0.98.7-custom-en.i386.iso. This is the CD image you will boot on the machine.
- Load the CD-burning software of your choice to load in the image created in the previous step. Then burn it to a blank CD-R. Label the disc, and set it aside.
Preparing the Hardware
Building the media box will be a comfortable process for any experienced system builder—the parts are just smaller!
- Start by installing the 2.5-inch-to-3.5-inch converter brackets on the side of the Seagate Momentus drive. Then plug the 2.5-inch-to-3.5-inch IDE converter into the Momentus drive. This will let you prepare the hard drive on an existing computer.
- Attach the hard drive to any PC running Linux or Windows. Format the drive; you may use FAT32, NTFS, or Linux ext3 filesystems, since all can be read by GeeXboX. Do not apply any special password or access privilege requirement to the drive when you format it.
- Copy as many video, MP3, and JPEG files as you wish to the drive. You may create as many levels of directories as you see fit.
- Power down the PC. Then disconnect the newly loaded hard drive. Unpack the Travla C158 case. Remove the thumbscrew securing the top of the case, and lift off the cover.
- Three screws attached to the inside rail of the C158 secure the side-facing optical drive tray. (That tray must also be removed). This gives you a clear path to the motherboard mounting position. Inspect the two wire bundles leading to the side USB ports and audio in/out to be sure the connector blocks have not worked loose of the pins in transit.
- Unpack the VIA EPIA motherboard, and install it. Four screws secure the board to the case.
- Install the front panel button and light leads located between the integrated motherboard speaker and the mounting hole. You should find leads for HD activity, power LED, and the power switch.
- Install the side-panel USB lead on one of the USB jumper connections near the center of the board.
- Install the DDR module in the single provided memory slot.
- Plug the ribbon cable included with the motherboard into IDE1. (The 40-pin header is the socket closest to the DDR module).
- It's time to install the hard drive. First, ensure that the drive is in Master mode. Then remove the single screw securing the hard drive bay to the bottom of the case, and slide the tray free of the chassis. Next, slide the drive, with mounting rails and IDE converter still attached, into the hard drive tray. Secure the drive to the tray using two of the screws included with the case. Ensure that the interface end of the drive points to the front of the machine; this will make it easier to reach with the IDE cable. Re-secure the tray by replacing the screw.
- Connect the middle lead of IDE cable and an accessory power lead to the IDE converter board, already attached to the hard drive in step 1 above.
- Before installing the optical drive tray, remove the two screws securing the optical bay cover plate, and remove the plate. You can discard the plate.
- Now it's time to install the optical drive. First, ensure that the drive is set to Slave mode by setting its jumper or slider. Then slide the drive into the tray (still removed from the C158 case) and secure the drive with its four included screws. Attach the laptop-to-desktop IDE converter to the back of the drive. Replace the tray on the chassis using the three screws you previously removed. Finally, attach the IDE cable to the optical drive. Depending on the length of the IDE converter you obtain, this step may require a separate ATA/100 cable connected to the IDE2 controller on the motherboard. If you do this, set the optical drive's jumper to Master instead. Nothing else will be affected.
- Replace the cover on the machine, and reattach the thumbscrew. Attach the external DC power brick, keyboard, and USB RF receiver provided with the ATI Remote Wonder. Attach a VGA monitor for testing purposes.
- Power up the system. While the machine is powering up, hit DEL to enter the BIOS. Most default settings should be appropriate, but it is always a good idea to perform a quick check. In Advanced BIOS Settings: Ensure that the CD-ROM setting has priority over the Hard Drive setting in the boot order listing. In Advanced Chipset: Change Display Device to CRT+TV to ensure that the video output is delivered both on VGA and TV video. Verify that TV Type is set to NTSC. For TV Connector, select CVBS or S-Video, depending on whether the media box will be connected to a television using a composite or S-Video cable. For TV Layout, select Comp + S-Video. Finally, exit the BIOS and save your changes. You should now be able to see the machine's video output to a TV as well as to a VGA monitor or panel.
- Insert the GeeXboX CD; it will automatically boot. The menu may be browsed with either a keyboard or the ATI Remote Wonder controller. To open a file for playback, select Open and choose from the provided choices of either DVD 1—the optical drive may be used to load media once the system has booted—or DISK 1. Then browse to the file. Enjoy the show!
- To add more data to the hard drive, connect to the machine while it is running using another PC and any standard FTP client. To obtain the IP address of the GeeXboX, select the Options/Info menu choice; the IP address will be shown on the screen. Leave the username and password field blank when you connect. Browse to /mnt to find the hard-disk file system, and upload the new data. You can see an example view below:
With modern digital video compression, this mini-media box can store and play back more than 400 hours of video. That's enough to watch different programming all day, every day, for two and a half weeks without sleep!
With this compact, slick build, no one will even know it's a computer doing all the work. Most important, you won't miss out on a business opportunity the next time a customer is looking for a compact, innovative, and leading-edge way to manage their ever-growing volumes of digital media.
JASON COMPTON is a regular contributor to TechBuilder and a technology writer who has covered topics ranging from 8-bit entertainment to supercomputing for more than a decade.