[Mp4-tech] [Audio] CCE buffers
Alex Converse
alexc improvsys.com
Mon Apr 7 17:35:47 EDT 2008
Dear Experts:
I'm having trouble understanding part of the AAC CCE procedures. From 14496-3 section 4.6.8.3.3:
""
spectrum_l(idx, domain) Pointer to the spectral data associated with the left channel of the
channel_pair_element() with index idx. Depending on the value of
"domain", the spectral coefficients before (0) or after (1) TNS decoding are
pointed to.
""
""
decode_coupling_channel()
{
- decode spectral coefficients of embedded single_channel_element
into buffer "cc_spectrum[]".
...
couple_channel( cc_spectrum,
spectrum_l( cc_target_tag_select[c], cc_domain ),
list_index++ ) );
...
}
couple_channel( source_spectrum[], dest_spectrum[], gain_list_index )
{
...
dest_spectrum[g][b][sfb][i] +=
cc_gain[idx][g][sfb] * source_spectrum[g][b][sfb][i];
...
}
""
Now besides obvious the extraneous parenthesis on couple_channel(), the
procedure seems to reading the output buffer, modifying it and witting
over the input buffer!!! Am I missing something here or did the buffers
get swapped in error in the spec?
Thanks,
Alex Converse
More information about the Mp4-tech
mailing list