aboutsummaryrefslogtreecommitdiffstats
path: root/libAACdec/src/aacdecoder_lib.cpp
diff options
context:
space:
mode:
authorFraunhofer IIS FDK <audio-fdk@iis.fraunhofer.de>2019-12-19 17:20:20 +0100
committerJean-Michel Trivi <jmtrivi@google.com>2020-01-27 09:21:21 -0800
commit00285819a2099a5bd0b0ebcdaebf8ee88f02546c (patch)
treec93e419b96ba6c1c247cc5f36f420e42c151190c /libAACdec/src/aacdecoder_lib.cpp
parentf04a8a855cf8ddb5996c8e191fd3fa15b3808657 (diff)
downloadfdk-aac-00285819a2099a5bd0b0ebcdaebf8ee88f02546c.tar.gz
fdk-aac-00285819a2099a5bd0b0ebcdaebf8ee88f02546c.tar.bz2
fdk-aac-00285819a2099a5bd0b0ebcdaebf8ee88f02546c.zip
Fix AACDEC_INTR handling for USAC configuration with multiple pre-roll AUs
Bug: 148384920 Test: atest DecoderTestXheAac DecoderTestAacDrc Change-Id: I88cd6da0b18c73f7b521ea58ba8b8f364278b64f
Diffstat (limited to 'libAACdec/src/aacdecoder_lib.cpp')
-rw-r--r--libAACdec/src/aacdecoder_lib.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp
index 86ec899..e90dbef 100644
--- a/libAACdec/src/aacdecoder_lib.cpp
+++ b/libAACdec/src/aacdecoder_lib.cpp
@@ -1269,9 +1269,9 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern,
}
/* Signal bit stream interruption to other modules if required. */
- if (fTpInterruption || (flags & AACDEC_INTR)) {
+ if (fTpInterruption || ((flags & AACDEC_INTR) && (accessUnit == 0))) {
aacDecoder_SignalInterruption(self);
- if (!(flags & AACDEC_INTR)) {
+ if (!((flags & AACDEC_INTR) && (accessUnit == 0))) {
ErrorStatus = AAC_DEC_TRANSPORT_SYNC_ERROR;
goto bail;
}
@@ -1768,7 +1768,7 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern,
if (self->streamInfo.extAot != AOT_AAC_SLS) {
INT pcmLimiterScale = 0;
PCMDMX_ERROR dmxErr = PCMDMX_OK;
- if (flags & (AACDEC_INTR)) {
+ if ((flags & AACDEC_INTR) && (accessUnit == 0)) {
/* delete data from the past (e.g. mixdown coeficients) */
pcmDmx_Reset(self->hPcmUtils, PCMDMX_RESET_BS_DATA);
}