[Live-devel] recorded files atoms errors

Ross Finlayson finlayson at live.com
Tue Nov 16 01:29:59 PST 2004

>I've done some more research why the recorded files won't play/get info on 
>some of the tools I use.
>* all of the test files I made have broken mp4a atoms (MPEG-4 AAC sample 
>description) or ESDescriptors.
>* they all specify an empty IOD which means "empty MPEG-4 presentation" 
>(eg you see nothing).
>* In some files the mp4a.esds.ESDescriptor is broken: SLConfig is included 
>in ESD.decoderConfig when it must be in ESD. And the ESDescriptor size is 
>* In some other file the entire mp4a atom is corrupted (junk data before 
>the esds atom)


Thanks for looking into this.

Can you point me at the document(s) that describe *specifically* what the 
"mp4a", "esds" and "iods" atoms should contain - for MPEG-4 audio 
content?  When I wrote the "QuickTimeFileSink" class (that generates ".mov" 
and ".mp4" format files), I looked at the MPEG-4 Audio, Systems, and File 
Specification documents, but none of these were very clear about what these 
atoms should contain.  So I ended up reverse engineering some existing 
files.  Fortunately, I was able to come up with code that generates files 
that plays correctly[*] on QuickTime Player and RealPlayer 10, but 
apparently (as you found), not on some other players.

So, it would be nice to be able to do this properly.

[*] Except for the MPEG-4 audio track duration problem.  However, this has 
now been fixed, and will be included in the next software release.  Stay 

	Ross Finlayson

More information about the live-devel mailing list