summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andreas Huber <andih@google.com> 2011-06-21 08:36:51 -0700
committer Android (Google) Code Review <android-gerrit@google.com> 2011-06-21 08:36:51 -0700
commite2b801e5a437d75151d70a90e73f5f110d8732dd (patch)
tree7fe8b0d255afafa463652d94d6c911736b5a9ab9
parent827de09e89fe8a54915242f46dd3ae6dd90218e4 (diff)
parentdabf22181d912de9f32b51b023ac4c0ee6ec7a17 (diff)
Merge "Restore legacy soft-aac decoder behaviour. Substitute silence on decode error."
-rw-r--r--media/libstagefright/codecs/aacdec/SoftAAC.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/media/libstagefright/codecs/aacdec/SoftAAC.cpp b/media/libstagefright/codecs/aacdec/SoftAAC.cpp
index 7ce6128883b9..bbd6dbb239fa 100644
--- a/media/libstagefright/codecs/aacdec/SoftAAC.cpp
+++ b/media/libstagefright/codecs/aacdec/SoftAAC.cpp
@@ -367,7 +367,15 @@ void SoftAAC::onQueueFilled(OMX_U32 portIndex) {
inHeader->nFilledLen -= mConfig->inputBufferUsedLength;
inHeader->nOffset += mConfig->inputBufferUsedLength;
} else {
+ LOGW("AAC decoder returned error %d, substituting silence",
+ decoderErr);
+
memset(outHeader->pBuffer + outHeader->nOffset, 0, numOutBytes);
+
+ // Discard input buffer.
+ inHeader->nFilledLen = 0;
+
+ // fall through
}
if (mUpsamplingFactor == 2) {