diff options
author | Fraunhofer IIS FDK <audio-fdk@iis.fraunhofer.de> | 2018-05-04 17:41:40 -0700 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2018-05-04 17:41:40 -0700 |
commit | b2ce5c82bd4288b0e55d23f8cbf1d51150d752fc (patch) | |
tree | 8bf6f33f28355cd7dd6c4f5a01c5324a43ec66bc /libAACdec/src/aacdecoder_lib.cpp | |
parent | 2ef3dc81e5bfa012a5b1b7fce573fdd1b73130e8 (diff) | |
parent | 259a3c5bd5eb9be666f40dfb2978502533dd2b82 (diff) | |
download | fdk-aac-b2ce5c82bd4288b0e55d23f8cbf1d51150d752fc.tar.gz fdk-aac-b2ce5c82bd4288b0e55d23f8cbf1d51150d752fc.tar.bz2 fdk-aac-b2ce5c82bd4288b0e55d23f8cbf1d51150d752fc.zip |
FDKv2 additional fixes am: 9ab67882ec
am: 259a3c5bd5
Change-Id: Iac5c03364819ea0ef7a91cccfc0b62af0b19b612
Diffstat (limited to 'libAACdec/src/aacdecoder_lib.cpp')
-rw-r--r-- | libAACdec/src/aacdecoder_lib.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp index b7ea8df..e62d187 100644 --- a/libAACdec/src/aacdecoder_lib.cpp +++ b/libAACdec/src/aacdecoder_lib.cpp @@ -396,7 +396,8 @@ static INT aacDecoder_SscCallback(void *handle, HANDLE_FDK_BITSTREAM hBs, /* MPS found but invalid or not decodable by this instance */ hAacDecoder->mpsEnableCurr = 0; hAacDecoder->mpsApplicable = 0; - if ((coreCodec == AOT_USAC) || IS_LOWDELAY(coreCodec)) { + if ((coreCodec == AOT_USAC) || (coreCodec == AOT_DRM_USAC) || + IS_LOWDELAY(coreCodec)) { errTp = TRANSPORTDEC_PARSE_ERROR; } else { errTp = TRANSPORTDEC_OK; @@ -1654,14 +1655,14 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern, self->streamInfo.frameSize; for (ch = 0; ch < self->streamInfo.numChannels; ch++) { - int mapValue = FDK_chMapDescr_getMapValue( + UCHAR mapValue = FDK_chMapDescr_getMapValue( &self->mapDescr, (UCHAR)ch, self->chMapIndex); - reverseInChannelMap[mapValue] = ch; + if (mapValue < (8)) reverseInChannelMap[mapValue] = ch; } for (ch = 0; ch < (int)numDrcOutChannels; ch++) { - int mapValue = FDK_chMapDescr_getMapValue( + UCHAR mapValue = FDK_chMapDescr_getMapValue( &self->mapDescr, (UCHAR)ch, numDrcOutChannels); - reverseOutChannelMap[mapValue] = ch; + if (mapValue < (8)) reverseOutChannelMap[mapValue] = ch; } /* The output of SBR and MPS is interleaved. Deinterleaving may be |