aboutsummaryrefslogtreecommitdiffstats
path: root/libAACdec/src/aacdecoder.cpp
diff options
context:
space:
mode:
authorJean-Michel Trivi <jmtrivi@google.com>2013-08-27 16:17:45 -0700
committerJean-Michel Trivi <jmtrivi@google.com>2013-08-27 16:17:45 -0700
commit2ddc922da87bb675b8ab8c305566436e806df0d9 (patch)
tree37bc76089aabffd8f8d71f2fe2c87b2ae1a2dc13 /libAACdec/src/aacdecoder.cpp
parent3a0a695565d1d360f9a82173469c8ef858bc08a0 (diff)
downloadODR-AudioEnc-2ddc922da87bb675b8ab8c305566436e806df0d9.tar.gz
ODR-AudioEnc-2ddc922da87bb675b8ab8c305566436e806df0d9.tar.bz2
ODR-AudioEnc-2ddc922da87bb675b8ab8c305566436e806df0d9.zip
Decode parametric stereo even with invalid channel config
AAC decoder: Allow decoding of Parametric Stereo (AOT 29) bitstreams with invalid channel config 2. Bug 9428126 Change-Id: I1e8b801dfc0e6b1706421342d4985512e83f0dbe
Diffstat (limited to 'libAACdec/src/aacdecoder.cpp')
-rw-r--r--libAACdec/src/aacdecoder.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/libAACdec/src/aacdecoder.cpp b/libAACdec/src/aacdecoder.cpp
index 20c7f60..3d00d34 100644
--- a/libAACdec/src/aacdecoder.cpp
+++ b/libAACdec/src/aacdecoder.cpp
@@ -183,7 +183,7 @@ void CAacDecoder_SyncQmfMode(HANDLE_AACDECODER self)
if ( self->qmfModeCurr == NOT_DEFINED )
{
if ( (IS_LOWDELAY(self->streamInfo.aot) && (self->flags & AC_MPS_PRESENT))
- || ( (self->ascChannels == 1)
+ || ( (self->streamInfo.aacNumChannels == 1)
&& ( (CAN_DO_PS(self->streamInfo.aot) && !(self->flags & AC_MPS_PRESENT))
|| ( IS_USAC(self->streamInfo.aot) && (self->flags & AC_MPS_PRESENT)) ) ) )
{
@@ -196,7 +196,7 @@ void CAacDecoder_SyncQmfMode(HANDLE_AACDECODER self)
/* Set SBR to current QMF mode. Error does not matter. */
sbrDecoder_SetParam(self->hSbrDecoder, SBR_QMF_MODE, (self->qmfModeCurr == MODE_LP));
- self->psPossible = ((CAN_DO_PS(self->streamInfo.aot) && self->aacChannels == 1 && ! (self->flags & AC_MPS_PRESENT))) && self->qmfModeCurr == MODE_HQ ;
+ self->psPossible = ((CAN_DO_PS(self->streamInfo.aot) && self->streamInfo.aacNumChannels == 1 && ! (self->flags & AC_MPS_PRESENT))) && self->qmfModeCurr == MODE_HQ ;
FDK_ASSERT( ! ( (self->flags & AC_MPS_PRESENT) && self->psPossible ) );
}
@@ -1573,7 +1573,7 @@ LINKSPEC_CPP AAC_DECODER_ERROR CAacDecoder_DecodeFrame(
}
/* Update number of output channels */
- self->streamInfo.numChannels = aacChannels;
+ self->streamInfo.aacNumChannels = aacChannels;
#ifdef TP_PCE_ENABLE
if (pceRead == 1 && CProgramConfig_IsValid(pce)) {