Thoughts and Ramblings

General things I find of interest.

AC3 Passthrough Compatibility Matrix

Since some parts of AC3 passthrough work, and others do not, I decided to create a bit of a compatibility matrix to summarize it. I’ve added the related bug id’s I’ve reported, which have gone unanswered, in parentheses. The latest version of perian (to be released soon), will choose between using the hack method for passthrough, and Apple’s method. Anywhere labeled “Hack” will never work with Apple’s method, so it is bypassed to avoid their broken code.

Rescuing videos from AVI

As I wrote in a previous entry, people have used avi for things which it was never designed. One of the more notable examples is multi-channel audio bitstreams. In addition, the people who make such files went as far as to do in the completely wrong manner. So, as a result, I looked for a way to rescue data from the avi format so it is actually usable. Basically, use mkvmerge from mkvtoolnix to convert the avi file to an mkv file.

Limited Real AC3 Passthrough

Well, I got to fiddling around with the existing passthrough on the AppleTV. I found where it works, and where it doesn’t. AC3 passthrough does work in .mov files with 48KHz files, of any bit rate. I did this with importing a .ac3 file into .mov, and adding a video track (ATV doesn’t like playing audio only files). I still need to test 44.1KHz, and 32KHz, but they are a bit harder to find.

Where's real AC3 Passthrough on the Mac?

In my previous post, I discussed how to do AC3 passthrough using Perian. Unfortunately, this method is really a hack, and doesn’t work in all situations. There is a better solution though. Apple has enabled AC3 passthrough with Quicktime. They have enabled it on the AppleTV to support playback of their HD movies. The code for passthrough is even in the latest version of Quicktime on the desktop, but the celebration ends there.

The Correct Way to Enable AC3 Passthrough with Quicktime

I have seen a few people post methods about enabling AC3 passthrough, and many of them are overly complicated or in some cases even wrong. This also serves as the first place to describe how to enable DTS passthrough. Since I designed the code that actually does this, I’ll list the steps here: Note: This does not work with all receivers. If these instructions fail for you, most likely your receiver will not work with this.