mirror of
https://github.com/mstorsjo/fdk-aac.git
synced 2025-06-05 22:39:13 +02:00
Decoder stability, sanity checks improvements
* AAC-Decoder - Improved PCE handling for saver (re-)configuration and metadata processing. Modified file(s): libAACdec/src/aacdecoder.cpp libAACdec/src/aacdecoder_lib.cpp - Transport layer changes (config found) -> to be evaluated. Modified file(s): libMpegTPDec/include/tpdec_lib.h libMpegTPDec/src/tpdec_latm.h libMpegTPDec/src/version libMpegTPDec/src/tpdec_asc.cpp libMpegTPDec/src/tpdec_lib.cpp libMpegTPDec/src/tpdec_adts.cpp libMpegTPDec/src/tpdec_latm.cpp libSYS/include/FDK_audio.h libSYS/src/genericStds.cpp - Enable concealment state machine to skip states if the corresponding parameter is set to zero. Modified file(s): libAACdec/src/conceal.cpp - Add some more sanity checks to avoid segmentation faults especially when setting dynamic API params. Modified file(s): libAACdec/src/aacdecoder_lib.cpp - Fix to do a fail-safe initialization of IMDCT for all channels even with corrupt streams. Modified file(s): libAACdec/src/aacdecoder.cpp - HCR decoder fix (remove warnings). Modified file(s): libAACdec/src/block.cpp - Fix border calculation in SBR decoder's LPP transposer patch determination. Modified file(s): libSBRdec/src/env_dec.cpp libSBRdec/src/sbrdecoder.cpp libSBRdec/src/lpp_tran.cpp Bug 9428126 Change-Id: Ib415b702b88a7ec8e9a55789d79cafb39296d26b
This commit is contained in:
@@ -186,6 +186,27 @@ int CProgramConfig_IsValid ( const CProgramConfig *pPce );
|
||||
void CProgramConfig_Read ( CProgramConfig *pPce,
|
||||
HANDLE_FDK_BITSTREAM bs,
|
||||
UINT alignAnchor );
|
||||
|
||||
/*!
|
||||
\brief Compare two Program Config Elements.
|
||||
\param pPce1 Pointer to first Program Config Element structure.
|
||||
\param pPce2 Pointer to second Program Config Element structure.
|
||||
\return -1 if PCEs are completely different,
|
||||
0 if PCEs are completely equal,
|
||||
1 if PCEs are different but have the same channel config,
|
||||
2 if PCEs have different channel config but same number of channels.
|
||||
*/
|
||||
int CProgramConfig_Compare ( const CProgramConfig * const pPce1,
|
||||
const CProgramConfig * const pPce2 );
|
||||
|
||||
/*!
|
||||
\brief Get a Program Config Element that matches the predefined MPEG-4 channel configurations 1-14.
|
||||
\param pPce Program Config Element structure.
|
||||
\param channelConfig MPEG-4 channel configuration.
|
||||
\return void
|
||||
*/
|
||||
void CProgramConfig_GetDefault ( CProgramConfig *pPce,
|
||||
const UINT channelConfig );
|
||||
#endif /* TP_PCE_ENABLE */
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user