aboutsummaryrefslogtreecommitdiffstats
path: root/libMpegTPDec/src
diff options
context:
space:
mode:
Diffstat (limited to 'libMpegTPDec/src')
-rw-r--r--libMpegTPDec/src/tpdec_asc.cpp10
-rw-r--r--libMpegTPDec/src/version2
2 files changed, 9 insertions, 3 deletions
diff --git a/libMpegTPDec/src/tpdec_asc.cpp b/libMpegTPDec/src/tpdec_asc.cpp
index 679808d..e6278d6 100644
--- a/libMpegTPDec/src/tpdec_asc.cpp
+++ b/libMpegTPDec/src/tpdec_asc.cpp
@@ -267,7 +267,7 @@ void getImplicitAudioChannelTypeAndIndex(
int CProgramConfig_LookupElement(
CProgramConfig *pPce,
- const UINT channelConfig,
+ UINT channelConfig,
const UINT tag,
const UINT channelIdx,
UCHAR chMapping[],
@@ -289,7 +289,13 @@ int CProgramConfig_LookupElement(
*elMapping = pPce->elCounter;
if (elList[pPce->elCounter] != elType) {
/* Not in the list */
- return 0;
+ if ( (channelConfig == 2) && (elType == ID_SCE) )
+ { /* This scenario occurs with HE-AAC v2 streams of buggy encoders.
+ Due to other decoder implementations decoding of these kind of streams is desired. */
+ channelConfig = 1;
+ } else {
+ return 0;
+ }
}
/* Assume all front channels */
getImplicitAudioChannelTypeAndIndex(&chType[channelIdx], &chIndex[channelIdx], channelConfig, channelIdx);
diff --git a/libMpegTPDec/src/version b/libMpegTPDec/src/version
index e7bd1b1..d998903 100644
--- a/libMpegTPDec/src/version
+++ b/libMpegTPDec/src/version
@@ -2,7 +2,7 @@
/* library info */
#define TP_LIB_VL0 2
#define TP_LIB_VL1 3
-#define TP_LIB_VL2 0
+#define TP_LIB_VL2 1
#define TP_LIB_TITLE "MPEG Transport"
#define TP_LIB_BUILD_DATE __DATE__
#define TP_LIB_BUILD_TIME __TIME__