Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

AACDecoder Error -882

franknatoli
New Contributor I
488 Views

DualThreadedCodec using AACDecoder function GetFrame fails (-882, invalid stream) on first call processing AAC stream embedded in MP4 file.

Does the codec support HE-AAC version 2?

I've debugged the codec and find that the stream is supplying an ID_CPE [channel pair element]. Call to audio-video-codecs\\codec\\common\\src\\aac_dec_stream_elements function dec_cpe_channel_element is successful through first call to dec_individual_channel_stream but second call to dec_individual_channel_stream fails. In the second call, the call to dec_section_data fails. dec_section_data concludes that the pairs of sect_cband sect_len_incr are syntactically invalid.

Will upload the MP4 file that demonstrates the problem later today.

In the second call to dec_section_data, the first sect_cb comes back zero, which is legal but unusual, yes?

If the AAC stream that is being injected into the MP4 file is instead written to an AAC file [with appropriate AAC headers] then various COTS players are happy to play the audio.

But if the AAC stream is injected into the MP4 file, both my application that uses Intel IPP/UMC rejects the audio [but is happy with the video] and Apple QuickTime also rejects the stream. Demo simple_player hangs attempting to play the stream.

My guess is that the level of complexity of the AAC stream [max_sfb is 38] is higher than the Intel IPP/UMC implementation can handle, and its reading of scale factor and/or spectral data for the first channel stream is faulty, thus starting the second channel stream in the wrong place in the bitstream.

I'm using 6.0.0.062.

0 Kudos
3 Replies
franknatoli
New Contributor I
488 Views

Attached is a sample file that demonstrates the -882 error.

Thanks for your time.

0 Kudos
Jie_z_
Beginner
488 Views

May I ask how did you solve your problem? currently I am having the exact same problem as yours.

Thanks!

0 Kudos
Jie_z_
Beginner
488 Views

I am having very similar problem like yours, the only difference is: mine is ID_CCE, and the function that return error is dec_coupling_channel_element. Other than that, all else are the same.

Thanks!

0 Kudos
Reply