Tuesday, January 23, 2007

Turning an old powerbook G4 into a media center

I decided to take on a little project. I just replaced by powerbook G4 with a macbook and I wanted to find another good use for the old laptop. After looking around the web, I found a number of good uses for it, including a classic arcade console, an HD recording device, as well as something to tide me over until Apple TV is available.

Before I could start setting up any of these specific functions, I had to make some initial preparations. I knew that I wanted to run the laptop closed, using only a usb game controller for input (since the G4 does not work with the Apple Remote). I also wanted to send the output to my HDTV and Home Theater unit (HTIB).

For this, I purchased:
1. Logitech Gamepad
2. Apple Mini-DVI to video adapter (some models use a mini-vga, so check with the folks at the Apple store).
3. An S-Video cable
4. A stereo mini-plug (headphone jack) to stereo RCA cable (red and white connectors)
5. USB Overdrive: a driver for usb controllers
6. DisplayConfigX: which enables more resolution choices when sending the video signal to an external source.
7. MediaCentral: which is a multi-function media interface (like Front Row) for the MacOSX

I also downloaded:
1. iRecord: an HD signal recorder that works with HD cable boxes with active firewire ports.
2. XBox 360 Controller Drivers: to allow me to use my Xbox 360 wired controller for gaming, freeing the logitech gamepad to act as a mouse.

I started by reformatting the hard drive and installing a clean and stripped down version of MacOSX (removing other languages, no development tools, etc.) I also made sure that I fully patched the system. Then, I installed iPhoto from the iLife collection to allow me to more easily view photo slide shows (I have not used this set up to look at files yet, however, although it should work.)

Then I installed Perian, which is a collection of Quicktime Components that makes QT more useful with a wider variety of media formats. I also installed VLC for the formats that just won't play in QT. Finally, to allow MediaCentral to stream various types of internet video, I installed RealPlayer, Flip4Mac's WMV components, and flash player.

I then installed the USB overdrive drivers and configured the Logitech gamepad to work as a mouse. I know that there are remotes that are available for Macs without Apple Remote capabilities, but I wanted to keep costs low. I had the gamepad lying around. Although you can configure the software to use the gamepad as a mouse everywhere except in your games, I found that you then could not quit games or use menus to set preferences, etc. So, I decided to install the 360 controller drivers as well, for use only in games. That way I always have a "mouse".

For video, I installed ConfigDisplayX to allow me to get 780p on the TV. It looks pretty good, but admittedly not great. Text is unclear, but media and games look just fine. If you are picky about these things, you can purchase special equipment or wait for Apple TV. I also connected the audio cable to the HTIB at this point.

How do I stop the Mac from going to sleep. First, I turn off the screen by dimming it all the way, using only the TV as a monitor. I don't want to add to the heat problems that may occur from running the machine closed. Second, I closed the lid with the gamepad disconnected from the laptop. Once the laptop is asleep, connect the gamepad and start to move the pointer. The laptop should wake up and you are ready to go.

Finally, I configured mediacentral and irecord (you will need to connect your mac to the cable box using firewire). Finally, I installed emulators for all of the old 8-bit machines sitting in my closet. Instead of pulling them out to play the classics, I just start an emulator on the mac. I'll leave it to you to find those applications, which is easy enough to accomplish. Now I have something to tide me over until I can get AppleTV... unless something better comes along.

Oh, and why am I not using my Xbox 360 as a media server? I am, actually, via Connect360. However, currently it only streams WMV+WMA encoded files, and I wanted a wider variety to be available to me.