summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/codecs
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2015-10-16 21:25:11 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-10-16 21:25:11 +0000
commite5d82cbafcd7bf13bcd23ca6a0066d7444c6332b (patch)
tree9916ce08328bbffa4888dc74fea1a8061c08b21c /media/libstagefright/codecs
parentec62e13719cfbd663fd8b63a110747a2630e582c (diff)
parentb4ec8d0558c78b94ec7bf09018a7bf653cfca525 (diff)
downloadframeworks_av-e5d82cbafcd7bf13bcd23ca6a0066d7444c6332b.zip
frameworks_av-e5d82cbafcd7bf13bcd23ca6a0066d7444c6332b.tar.gz
frameworks_av-e5d82cbafcd7bf13bcd23ca6a0066d7444c6332b.tar.bz2
Merge "SoftAVCDec: Added a check for unsupported resolutions" into mnc-dr-dev
Diffstat (limited to 'media/libstagefright/codecs')
-rw-r--r--media/libstagefright/codecs/avcdec/SoftAVCDec.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/media/libstagefright/codecs/avcdec/SoftAVCDec.cpp b/media/libstagefright/codecs/avcdec/SoftAVCDec.cpp
index 7c5093e..8101f75 100644
--- a/media/libstagefright/codecs/avcdec/SoftAVCDec.cpp
+++ b/media/libstagefright/codecs/avcdec/SoftAVCDec.cpp
@@ -582,6 +582,17 @@ void SoftAVC::onQueueFilled(OMX_U32 portIndex) {
IV_API_CALL_STATUS_T status;
status = ivdec_api_function(mCodecCtx, (void *)&s_dec_ip, (void *)&s_dec_op);
+ bool unsupportedResolution =
+ (IVD_STREAM_WIDTH_HEIGHT_NOT_SUPPORTED == (s_dec_op.u4_error_code & 0xFF));
+
+ /* Check for unsupported dimensions */
+ if (unsupportedResolution) {
+ ALOGE("Unsupported resolution : %dx%d", mWidth, mHeight);
+ notify(OMX_EventError, OMX_ErrorUnsupportedSetting, 0, NULL);
+ mSignalledError = true;
+ return;
+ }
+
bool resChanged = (IVD_RES_CHANGED == (s_dec_op.u4_error_code & 0xFF));
GETTIME(&mTimeEnd, NULL);