You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are certain MPEG-H files that cannot be decoded properly with Ittiam decoder, libmpegh constantly spouting IA_MPEGH_DEC_INIT_FATAL_INVALID_MCT_ENTRIES error.
Unfortunately we cannot share the files but here is the description of what happens (and hopefully you can reproduce it locally by disabling parsing MAE data):
the first frame initialises everything properly
next frame causes internal state reset in impegh_3daudio_config_dec() because of missing audio scene description (by invoking memset(mpeghd_state_struct->ia_audio_specific_config, 0, sizeof(ia_audio_specific_config_struct));) ;
afterwards most of the data gets re-initialised but MCT part in USAC core decoder does not (it is done in impeghd_mc_init() which is called only in ia_core_coder_dec_process_frame_zero() and not for e.g. second frame);
so when MCT data in USAC is being decoded, the decoder presumes it has zero channels and refuses to decode non-silent data returning the aforementioned error code;
because of that decoder is fully reset and re-initialised and the cycle repeats.
We can see two possible solutions for this situation: either omit resetting USAC state in that case, zeroing only selected fields of mpeghd_state_struct->ia_audio_specific_config or re-initialise multichannel information as part of the reset procedure.
The text was updated successfully, but these errors were encountered:
There are certain MPEG-H files that cannot be decoded properly with Ittiam decoder,
libmpegh
constantly spoutingIA_MPEGH_DEC_INIT_FATAL_INVALID_MCT_ENTRIES
error.Unfortunately we cannot share the files but here is the description of what happens (and hopefully you can reproduce it locally by disabling parsing MAE data):
impegh_3daudio_config_dec()
because of missing audio scene description (by invokingmemset(mpeghd_state_struct->ia_audio_specific_config, 0, sizeof(ia_audio_specific_config_struct));) ;
impeghd_mc_init()
which is called only inia_core_coder_dec_process_frame_zero()
and not for e.g. second frame);We can see two possible solutions for this situation: either omit resetting USAC state in that case, zeroing only selected fields of
mpeghd_state_struct->ia_audio_specific_config
or re-initialise multichannel information as part of the reset procedure.The text was updated successfully, but these errors were encountered: