AVI: Not worth your time

Recently I’ve started to receive several complaints from customers. All of them related to AVI editing and saving.
Some are experiencing audio loss after saving, others see their movie become several days long (!!!), others can’t even finish the saving operation, as SimpleMovieX stalls.

My first tests indicate that the problems comes from new version 1.1.3 of Perian codec. With “Good’ol” Perian 1.0 all works more or less as expected.

I’ve put a big amount of effort into AVI editing, and believe me, it’s a hard feature to program. Now I feel like it’s been a waste of time. For me, as a developer, and for those whose are using AVI format.

  • For me, because despite my effort, SimpleMovieX can still fail to edit and save AVI files.
  • For you, because editing AVI files will give you problems. Always. Even if you use other editing tools.
Not worth your time

Let me explain why:

AVI is an obsolete standard, not developed for over 10 years (an eon in the domain of video). Back in that time, it was already considered as technically bad. Needless to say, nobody in the professional video world uses AVI, and for obvious reasons:
It’s not adapted to handle files over 1GB. And if it does it, it’s through a wacky extension that “kind of works”, but sacrifices one of the movie index.

Audio/Video synchronization, which is maybe the single most difficult problem in video field, is solved through a very fragile method. There’s not something like a time base in AVI files. All is referenced to audio, managed with a simple index.
“Serious” video formats, like MOV or MP4, have a time base on which each audio and video “frame” is referenced. This way, sync is guaranteed (well… almost, see footnote).

Not only AVI is obsolete, but it has been tweaked and “extended” in several directions, by many different people. For example, it’s commonly used to store variable bit-rate audio, like mp3, but AVI standard wasn’t meant do that…

You end up finding so many undocumented hacks inside AVI files that building something that works in all cases is close to impossible.

To make things more funny, at least 3 different codecs for AVI / DivX formats are popular among Mac users. Each with its own hacks and limitations.
Not to mention the fact that AVI files are usually coming from illegal sources, encoded with exotic tools.

Bottom line: The AVI standard is dead long ago, and AVI has been drifting for so many years, through so many hacks, that it’s almost a miracle when something AVI works as expected.

SimpleMovieX support for AVI can certainly be improved. And I’ll probably work on it for the next release. But the “Perian 1.1.3″ episode shows that with AVI, nobody is in control.

Therefore, my recommendation to all video users is to avoid AVI format. MP4 and MOV are always better alternatives.
AVI files can be saved in MOV format without loss of quality. SimpleMovieX does this with File > Save As function.

PS: You can find “Good’ol” Perian 1.0 in my web account:
http://idisk.mac.com/getclockworks-Public/
filename: Perian1.0.component.zip
PS2: You can also experience A/V sync problems with “serious” formats like MOV or MP4. It’s usually because audio frames have not exactly the same duration as advertised in the moov atom. When you stop playback and start again, A/V sync problem disappears, but after a while audio starts drifting.