Lost audio on divx movies from Apple TV Fooler

I use the very useful Apple TV Fooler script to massage divx videos into .mov files that will sync/stream from iTunes to apple tv. It does this by adding a short empty audio/video stream to the beginning of the movie. This is 0.5 seconds of black video and no sound, encoded as H.264 and AAC respectively. The original divx movie (encoded as xvid/mp3) are still there - right after the first stream which is just there to fool iTunes. When iTunes looks at such a file it appears it only checks the fist stream. That stream is encoded with codecs that apple tv knows about, so iTunes allows it to sync/stream. Because I use atv Flash and have the additional codecs loaded, these TV shows and movies play just fine. I like this approach and it has worked well for me until now.

I updated to apple tv 2.4 and then aTV Flash 3.6.1 and I no longer get audio. These files still sync/stream to the apple tv and the video stream works just fine, but I’m not getting audio any more. Hopefully I just messed up the install and there is an easy fix. Has anyone else run into this problem?

I have the same problem :!:

We just updated to Apple TV 2.4 and the latest ATV Flash 3.6.1 and no longer have audio on avi files processed with “Apple TV Fooler”. (ie MP3 files).

However, only MP3 tracks in divx AVI files are affected. Music MP3 files are not affected.

bummer.

Philip

I tried an experiment to try and further isolate the problem. I took a small mp4 file and transferred it to the apple tv via a normal itunes sync. I played the file and confirmed that I had audio. I then used (a slightly tweaked version of) Apple TV Fooler to add the additional audio/video stream. Now I have a file that has two sets of streams, but they are both H.264/AAC. That is:
[list] Stream Set 1: Audio=AAC,Video=H.264
Stream Set 1: Audio=AAC,Video=H.264
[/list:u]Normally after running a divx file through Apple TV Fooler you have:
[list] Stream Set 1: Audio=AAC,Video=H.264
Stream Set 1: Audio=MP3,Video=xvid
[/list:u]
I tried playing both the original mp4 file and the processed file on the apple tv. As expected, the original mp4 file worked just fine. Audio was intact. However, the processed file had no audio. Therefore it appears that the problem is with files that have two audio streams independent of the type of the second audio stream. It doesn’t matter whether it is mp3 or AAC.

Just another data point.

We tried a lot of stuff, including single audio track only and nothing made a difference. Tried bringing in components from the original restore (the MPEGcomponent and A52component (thinking they might have something to do with MPEG audio).

What works, but is clumsy, is to separately convert the audio mp3 to aac audio and then add that to the video and remove the mp3 audio, saving as self contained. I do this after the Apple TV fooler stage.

These files work great even if there is another AAC track added by Apple TV fooler. I don’t remove that, just the MP3 (which I probably don’t have to remove, but why not make the file smaller.)

Philip

My very clever partner has found the solution - well, one that works for us.

Set the Audio language explicitly to English (don’t know if this will work for other languages, but it’s come about because of multiple language support on the Apple TV in this release).

With the movie (after Apple TV fooler), change the AAC track’s audio to be set to French.

Set the mp3 audio explicitly to English.

He thinks Apple TV fooler can be updated in the Applescript to set the AAC audio in the Nothing movie to be French. (Testing).

Yes, it works. So all you need to do is open the Nothing.mov in the Apple TV Fooler package to have French (or non English language). That’s all that’s needed.

Yay for Greg Clarke!

Philip

Greg (the smart one) has created a little applescript that will take already processed .movs (with Apple TV fooler) and change the AAC track language to French.

Copy and paste this applescript to Script Editor and either just run it or compile it as an application.

Open the movies you want to process in QT player, then run the script. It will change the language to French (on the AAC only, leaving the mp3 or other audio track as English), save the movie and close it, so you know when it’s all done.

Thanks again to Greg Clarke.

Philip

tell application “QuickTime Player”
activate
stop every document
repeat until not (exists document 1)
tell document 1
set the language of track 1 to “French”
save
close
end tell
end repeat
end tell
tell application “Finder”
activate
display dialog “All done!” buttons {“OK”} default button 1 with icon 1
end tell

Awesome work! This seems to be working for me too. Now I just need to work through my existing library updating all of the files.

Thanks.

I did about 400 hours of TV using the applescript in my last post, in about 20 minutes. Basically as quickly as you can open and close movies in QT Player.

Philip

Same problem here. I use VideoDrive to do the same thing as Apple TV Fooler. Can we expect an update from aTV to remedy this?

acd.

thank you so much for this post. had the same problem and was pissed i updated to 2.4. now all is fine and i have used the script to update my files. you guys are great!

I’m currently running Snow Lepard with QuickTime X. This seriously messes things up as the Apple TV Fooler no longer works with QuickTime X. I’ve tried everything else I can think of to manually rename Track 1 from English to French to no avail. Does anybody have any suggestions here?

Do you have a FireWire or USB hard drive to install a clean copy of Leopard onto? Just do a live partition of your external drive (if you have one) and then install whatever 10.5 DVD you have onto it. Or if you happen to have a 16GB (8GB might work too) USB flash drive, you can install 10.5 onto that as well. That will at least give you access to a 10.5 installation to use ATV Fooler. I love Snow Leopard too, but a lot of third party programs seem to have problems with it and you can’t blame them. The other option is to wait for September when 10.6 comes out officially.

I too have no audio on the divx avi using videodrive

Brilliant idea. That would be pretty easy. In the meantime, I actually found a solution that works and it’s actually not THAT difficult. QuickTime movies are composed of atoms. These atoms contain all of the different information about the movie. I’ve found that I can alter these atoms to reflect the correct languages needed to play the movie on the ATv.

  1. You’re going to need a free program called Dumpster (Mac only, that I’m aware). It can be found here: http://developer.apple.com/quicktime/quicktimeintro/tools/

  2. The movies need to be on your local machine instead of a network drive (at least that was my experience, you may find that it will work fine for you on a network drive). I just copied them from my NAS drive where they normally reside, to my local machine, made the changes, and then copied them back.

  3. Open the movie in Dumpster and you’ll see a long tree of data. You’re looking for a string called: ‘mdhd’ - Media Handler Header.

    If for some reason you don’t see it, click on the ‘mdia’ - Media string and it should expose it.
    Note: You may see several of these ‘mdhd’ strings. We’re specifically looking for the first one.

  4. Click on that ‘mdhd’ string and it will expose some more info. This is what we’re looking for:

  5. Now look for the 2nd ‘mdhd’ string and click on it to expose it’s parameters. The first string is the 1st language track that we want to switch to anything other than English (I’m using 10766 which is the code for Japanese), and the second is our English track. We want to specify thi as English, which is 21956. For some reason it shows as English on the Apple TV, but leaving it as 0 wasn’t working for me. I found that explicitly defining it as 21956 worked.


    One important thing that I found, was that after you edited the second string, before you save the file, click in another field to move the cursor. Now, you can save and close the file. If necessary, copy the movie back to it’s original location, and you should be set.

While it may seem a bit complicated, it actually goes pretty quickly. Disclaimer: Editing a movie’s atom could potentially destroy it so, to be safe, only work on a copy of the movie. But this has worked fine for me with no problems yet whatsoever.

Hi there

I cant seem to get the audio working…

I add the nothing.mov to my avi files changing the AAC audio to french and the MP3 to english and the save as a self contained mov file. Adding to iTunes is no problem. Then on my ATV I goto my movies where it is located and play, the video works find however, no audio!! I have installed perian, flip4mac etc… is there anything else that I should be doing??

I have ATV v3.0.1

Can someone please please help? It’s driving me crazy!!

Thanks :slight_smile:

Ah figured it out, when changing the lanuage of the first audio track (aac) u must also make sure that ur APT is set to English as the default is default and it doesn’t work. In settings, audio, language make sure English is selected! :slight_smile: