From e970ac4c95e2e1016c72caa5218fc8f1bafe58fe Mon Sep 17 00:00:00 2001
From: Fraunhofer IIS FDK <audio-fdk@iis.fraunhofer.de>
Date: Fri, 8 Mar 2019 16:08:07 +0100
Subject: Fix HE-AAC using MPEG-D DRC with implicit SBR signaling.

Bug: 132641988
Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc
Change-Id: I97c5d3972528092f627153ad3127c7db977a0e5d
---
 libAACdec/src/aacdecoder_lib.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

(limited to 'libAACdec')

diff --git a/libAACdec/src/aacdecoder_lib.cpp b/libAACdec/src/aacdecoder_lib.cpp
index 4046d66..86ec899 100644
--- a/libAACdec/src/aacdecoder_lib.cpp
+++ b/libAACdec/src/aacdecoder_lib.cpp
@@ -1676,6 +1676,13 @@ aacDecoder_DecodeFrame(HANDLE_AACDECODER self, INT_PCM *pTimeData_extern,
             reverseOutChannelMap[ch] = ch;
           }
 
+          /* Update sampleRate and frameSize. This may be necessary in case of
+           * implicit SBR signaling */
+          FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_SAMPLE_RATE,
+                              self->streamInfo.sampleRate);
+          FDK_drcDec_SetParam(self->hUniDrcDecoder, DRC_DEC_FRAME_SIZE,
+                              self->streamInfo.frameSize);
+
           /* If SBR and/or MPS is active, the DRC gains are aligned to the QMF
              domain signal before the QMF synthesis. Therefore the DRC gains
              need to be delayed by the QMF synthesis delay. */
-- 
cgit v1.2.3