Hacking the Apple TV
Adding new file formats
Avoiding Unwanted Apple Updates
All the codecs we’ve added here, along with ATVFiles and the other Apple TV plug-ins and utilities we installed last time will be erased when Apple next updates the set-top box’s system software — and you allow it to be downloaded and installed.
It’s easy enough to ignore a message that there’s new system software to download, but the Apple TV OS does nag you about it, so you have to choices: update the OS then go back and re-hack it — once plug-ins have been verified to work with the new version, of course. Alternatively, you can elect to trick the Apple TV so it never spots the arrival of new OS updates.
Ready to unhack your Apple TV?
This can be achieved by tweaking the Apple TV’s domain name look-up system so that Apple’s update server points to the box itself. Fire up a terminal app, log into the Apple TV and enter the following commands:
sudo cp /etc/hosts /etc/hosts.old sudo bash -c 'echo "127.0.0.1 mesu.apple.com" >> /etc/hosts'
News of Apple TV updates will appear on sites like AwkwardTV, so you’ll have plenty of warning about new versions of the OS. Since you backed up the original
hosts file — that’s what the
hosts.old is — it’s easy enough to log in using a terminal app and disable the loopback:
sudo cp /etc/hosts.old /etc/hosts
Now the Apple TV will detect the new update, and tell you it’s ready to download. ®
AppleTV screen grabs
Our thanks go to reader Steve Arch for pointing out to us after the previous installment of Hacking the Apple TV that it’s possible to get screengrabs directly from the set-top box. Steve steered us in the direction of
screencapture a utility that’s part of Mac OS X.
Extracting the code from one of our old Mac OS X 10.4 installation discs — since the Apple TV runs Tiger rather than Leopard — allowed us to copy
screencapture over to the box from where it can be activated through a terminal app after you’ve logged in.
And it works… sort of.
screencapture generates output at the resolution the Apple TV is set to. Ours is tuned to 720 x 576 in order to drive our PAL standard-definition TV, so we got a set of 720 x 576 PNG files as we expected we would.
Not quite right
What we didn’t expect was the right-most third of the screen image to be missing from the grab! Now, this is undoubtedly a by-product of our use of the composite-video output hack we applied last time. Not being C++ kernel coders, we’re not sure how to get around this, but if you have a notion how it can be achieved, send us the details and we’ll tell all next time.