Apple TV: Hacks and Mods
That title might be slightly misleading if you think “mods” are hardware changes. None of the changes I discuss in this article have to do with modifying the hardware of the Apple TV. But many of the changes to the software go beyond simple hacks. They change the behavior of the device. So, I went with “Hacks and Mods.” You can gripe in the comment section all you want.
Okay.
The Stage
Allow me to briefly expound on my network and devices. My Internet connection is from Comcast cable with advertised speeds of 5Mbps/1.5Mbps. Lately, I have seen much faster speeds at fairly regular intervals, something I am not complaining about. Perhaps one hidden feature of the Apple TV is a handshake with the ISP that gets a hot connection for all those savvy HD downloads. Or not.
From the cable modem, I run into a Linksys WRT54G wireless router. The firmware is stock Linksys, last updated sometime last year, so likely up-to-date (haven’t checked though.) I use DHCP to dynamically assign local IP addresses to all devices except my main PC which takes the static local IP address of 10.10.10.100. If you see instances of a local IP addresses in any of the tutorials or articles linked here, be aware that you will need to modify that to reflect your own local network setup. Using hostnames for devices on the network seems to work without any problem on the Apple TV, even when connecting to a Windows PC using the local hostname. At least, it has been no trouble for me.
My main machine on the network is fairly modern, home-built PC running Windows XP Professional SP2. We have another PC and an old iBook G3 on the network as well, but all the hacks and mods done to the Apple TV were successfully achieved with the main PC. There are a couple of hacks that require frameworks and plugins from a machine running OS X 10.4. For those, I consulted friends who delivered the necessary files. I also had an install disc for OS X 10.4 that came with my wife’s iBook. I used that disc on one occasion. The hacks that require files directly from an OS X install disc or machine have to do with installing Flash, Quicktime and other rich media plugins in CouchSurfer, a WebKit-based web browser for Apple TV. We’ll get into specifics on that in a moment, but if you are not really interested in having Flash in a browser (you can still have the browser!) then you really don’t have to worry about having access to OS X as mentioned above.
Source
None of the hacks or mods that I used on my Apple TV were discovered or created by me. There is a fantastic community of folks who work really hard to make this magic happen. Up front, I’d like to give full credit to the folks in the Apple TV community who have made these things possible. Hat tip.
The majority of my information came from ATV4Windows and the ATV4Windows wiki, a site based on hacking the Apple TV using a Windows machine as the main rig. Much of the information compiled there has come from other popular Apple TV resources, like iClarified, AwkwardTV and others. As of yesterday, ATV4Windows has moved to a subscriber model. I wish the developer there lots of luck making money off of Apple TV hacks, but I prefer free information so I’ll try to disclose as much as I possibly can right here. However, I do plan on linking you up with many of the same tutorials I followed. I won’t reinvent the wheel. Unless that wheel now costs $15. If you do have a Mac that you’ll be manipulating your Apple TV with, no worries. There is a ton of information and iClarified currently seems to be one of the better resources. AwkwardTV is similarly geared toward Mac enthusiasts.
Enough yammering. Let’s do this.
The “Patchstick”
The patchstick is simple really, it’s a disk image that fits on any 1-4GB USB flash drive. When connected to the USB port on the Apple TV, the patchstick will install a few basic applications to help get you rolling with hacks and mods. The main thing you’ll need is SSH support. That’s the primary goal you should have at the onset. Get SSH up and connect to your Apple TV from another machine on the network. If you get there, the sky is the limit.
I used the Patchstick that is freely available from ATV4Windows. Since the author has chosen to hold the new version ransom, the older version of the Patchstick will have to do. Honestly, you only need SSH anyway. As of a few weeks ago, the tutorial he gives on the Patchstick page was accurate. I followed his steps verbatim. The new Patchstick he has made does install a lot of nice software, but at this point, it seems to be stuff you can do on your own (and for free). More than anything, I like the idea of having a more controlled install. Get what you want and only that. For another option, you can use this tutorial.
So I hope you have been able to get SSH installed on your Apple TV. Once you have that, connect to it using PuTTY (Win) or Terminal (OSX). Use the IP address of the Apple TV or the hostname, AppleTV.local. The username and password are both frontrow. You’ll have that memorized in no time. Trust me.
Once you’ve connected, you are ready to start hacking it up. What I did is not necessarily what you might do. Please browse the documentation at AwkwardTV and the other fine resources for Apple TV hacks. It’s only by knowing what is available to you that you can really make a decision about what you would like to achieve with your Apple TV. My goals once seemed radical, but as I studied I realized they could be rather easily accomplished:
- Have root control over Apple TV.
- Copy files to the Apple TV outside of iTunes “syncing”.
- Play media files encoded with alternative codecs, like DivX and Xvid.
- Play media files that use different file formats, like Quicktime, MPEG-4, AVI and WMV.
- Stream files directly from my PC to the Apple TV.
- Browse the web with a Flash-enabled browser (on the “bonus” list).
SSH
With SSH access to Apple TV, you have all the the root you can handle. All your base are belong to us. Again, this is a rather fundamental step in the process. For me, I was really quite excited just to get here. It was even more fun to connect to the Apple TV using WinSCP and browse the root files and folders. The main access point for the Apple TV seems to be in the frontrow directory:
/mnt/Scratch/Users/frontrow
You’ll become comfortable with the structure of the files and folders in the Apple TV fairly quickly. You’ll find it is mostly simple, although there are a couple of tricky folders with the same names under different paths. Just check the paths carefully when performing any modifications. Don’t just haphazardly hunt for folders to dump stuff in. You might dump something in the wrong place, which could lead to some frustration and troubleshooting.
ATV Files
This application allows you to add folders and files to the /frontrow directory and have direct access to these files from the Apple TV main menu. ATV Files will also play media files using the native Apple TV player, provided the proper codecs are installed. For that, we look at Perian.
Perian
Perian is really quite wonderful. I’ve used it on OS X since day one. It really is a Swiss Army knife for playing media in Quicktime on OS X. It works just as well on Apple TV. With Perian installed on Apple TV, you can really open up the device to become a more true “media center”.
CouchSurfer
If it’s sounds like a web browser, it probably is. And that’s exactly what CouchSurfer sounds like. Formerly known as SafariHD, CouchSurfer is a WebKit-based browser that will allow you to load and view web pages right on your television through Apple TV. The experience is nifty, but not really amazing. You’ll find yourself wanting a keyboard and mouse. Interacting with websites with the Apple remote and scrolling around the silly alphanumeric table quickly becomes rather mundane. There is a workaround that will apparently bring support for simple peripherals to the Apple TV, but I’ve yet to give it a shot.
I did manage to get the Flash plugin working with CouchSurfer. It was a pain to get there, because of the need for some proprietary Apple frameworks from the very specific OS X version 10.4. But I did finally accomplish it. It’s not exactly the experience I expected. I loaded up the fun hulu.com to try it out. Two problems emerged: 10 frames-per-second (at my visual estimation) and no full screen. I’m not sure if either of those problems will be repaired in later releases of CouchSurfer, or if there is just some weird bug with Flash in this environment, but it seems hardly worth my time to try and enjoy the tiny frame that most streams appear in or the sluggish frame rate.
It’s still cool! It just might not be quite the experience you thought you’d have.
Shared Network Drives
This one is amazing. Using the tutorial at ATV4Windows, I managed to get some of my media in shared folders accessible by the Apple TV! This means I can stream files right across the network from the original folders in which they reside without having to copy them to the Apple TV! I bet you can sense my excitement over this, and truly it is a notable accomplishment for several reasons.
- You do not have to worry about the remaining space on the Apple TV’s native hard drive. Let’s face it, even 160GB can be used fairly quickly when it comes to media. I probably have half of that in photographs alone! And my music database isn’t far behind that. That’s not even counting the heaviest of all files, video.
- You can maintain your current file and folder organization structure without concern for re-adapting it the Apple TV or having iTunes import and “manage” it all. Essentially, it all works right where it already resides.
The one problem with streaming from shared files across a network, particularly mine, is the latency that can often occur with slower networks. I’m on wireless-G here which both the Apple TV and my main PC use (my PC being wireless is a long story for another day.) So without having a hard cable in the house, other than from the modem to router, my network speeds are fairly slow compared to a nice 10/100/1000 wired network.
Streaming media to the Apple TV doesn’t always deliver smooth playback. I will experiment with some options (including getting everything hardwired—which for me means a visit from a cable technician to fix a few coax outlets) but until then, I have opted to copy over media with higher total bitrates directly to the Apple TV. They stream from that disk flawlessly!
That said, the option of playing back media on the Apple TV directly from a shared file or folder over a network connection is absolutely terrific.
In Conclusion
Like I said at the beginning of this now-lengthy article, I chose the hacks and mods that would give me the most value and that achieved the goals I set out to accomplish with my Apple TV. I just wanted to get a “media center” experience out of the device and I believe I have. I realize there are quite a few details missing from this article. I do have step-by-step instructions on each hack. If you have the slightest difficulty in tracking down a solid tutorial on any of the hacks I’ve outlined, please let me know. I can publish details about each. Obviously, this article’s length is well beyond the typical blog entry here and so I wanted to abbreviate it somewhat. It’s most important that you realize how potent the Apple TV really is under the hood. Yes, it takes a little time and energy to pull the greatness out of it, but once you do you will really be amazed at what you can accomplish with this tiny box!
Good luck with yours.
Technorati Tags: apple, tv, hacks, mods, modifications, software, SSH, WinSCP, Windows, OS X, Mac, media, Perian, codecs, CouchSurfer, WebKit, ATV Files



