[Mp4-tech] [Audio] AAC CCE dpcm_gain_element sign bit extraction
order
Alex Converse
alexc improvsys.com
Sat May 17 03:22:33 EDT 2008
Dear Experts,
ISO/IEC 14496-3:2005(E) states that in the case when gain_element_sign
is set then the cc_sign is extracted and removed from each
dpcm_gain_element before the dpcm_gain_elements are summed (Section
4.6.8.3.3 in the couple_channel() sample function) . However the
reference decoder (ISO/IEC 14496-5:2001/Amd.10:2007
<http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_14496-5_2001_Software_Reference/> cc_hufffac()
function in mp4mcDec/src/coupling.c) sums the dpcm_gain_elements then
strips the cc_sign bit.
These operations don't appear to be commutable. For example (taken from
al_07_44, block 167 starting at dpcm_gain_element[1][0][20]) take this
sequence of dpcm_gain_elements: {21, -10, 17, ...}. According to the way
the specification seems to be written, these should be decoded to
cc_sign = {-1, 1, -1, ...} and gain_element = {10, 5, 13}. According to
the reference decoder, these should be cc_sign = {-1, -1, 1, ...} and
gain_element = {10, 5, 14}.
Which behavior is correct? Or did I misinterpret something?
Regards,
Alex Converse
More information about the Mp4-tech
mailing list