[Mp4-tech] detecting audio profile of a m4a file

rjay tinyatom gmail.com
Thu Oct 19 17:42:31 ESTEDT 2006


Hello all,
I have an M4a parser that was written using 14496-12:2005, 14496-14:2003 and
14496-1:2004 for reference.
One of my objectives is to find the profile of the audio track (Main, Low
complexity, LTP, HE, etc) and make the decision to play only Low Complexity
files since my decoder only supports low complexity profiles.
>From what i understand, this information is available in the
esds->decoderConfigDescriptor. (7.2.6.6.1 from 14496-12:2005)
The spec has a further reference to 14496-3, subclause 6.2.1 if the objectID
value is 0x40 and I get the 5 bits of audioObjectType as specified in table
1.8 and I find the corresponding profile from the audioObjectType from table
1.1 in 14496-3.
Is this the correct way to be identifying the profile?
Using this logic, m4a files that have been generated using Xilisoft audio
convertor are identified correctly by my parser (and by the MPUI tool)
But I have a whole bunch (dozens) of test files, with different profiles,
that all have the value of 5 bits corresponding to Low complexity, even
though i know the profile is not LC. MP4UI also incorrectly identifies these
files as LC.
Looking at the dump of the headers between say an LTP file generated by
Xilisoft audio convertor and one of the incorrectly identified LTP test
files, I noticed that the ftyp atom has the majorbrand value as mp42 for the
xilisoft generated file,  while the incorrectly identified one has the major
brand as isom.
Is there a difference for how the esds atom should be parsed for the 2
ftyps? My understanding was that both are based on 14496-12?
My apologies for the long post.
Thanks in advance,
rjay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/mp4-tech/attachments/20061019/80f73864/attachment.html


More information about the Mp4-tech mailing list