diff options
author | ywan171 <yi.a.wang@intel.com> | 2014-12-10 16:45:08 +0800 |
---|---|---|
committer | Patrick Tjin <pattjin@google.com> | 2014-12-12 08:09:32 -0800 |
commit | 77e0e77a812f416a90713150431db498ad7559e5 (patch) | |
tree | c79ff496843f085d575db50a5634c138f8d692b9 | |
parent | 3b7c847ac11fe6d547346fc47b932ae0534425cc (diff) | |
download | android_hardware_intel_common_omx-components-77e0e77a812f416a90713150431db498ad7559e5.tar.gz android_hardware_intel_common_omx-components-77e0e77a812f416a90713150431db498ad7559e5.tar.bz2 android_hardware_intel_common_omx-components-77e0e77a812f416a90713150431db498ad7559e5.zip |
pass buffer width to libDecoderVp9Hybrid
Bug: 18156738
BZ: 227732
Signed-off-by: ywan171 <yi.a.wang@intel.com>
Change-Id: Iaac77a4fca810bbd9adb9e4886fa05530f64d2ac
-rw-r--r-- | videocodec/OMXVideoDecoderVP9Hybrid.cpp | 12 | ||||
-rw-r--r-- | videocodec/OMXVideoDecoderVP9Hybrid.h | 2 |
2 files changed, 9 insertions, 5 deletions
diff --git a/videocodec/OMXVideoDecoderVP9Hybrid.cpp b/videocodec/OMXVideoDecoderVP9Hybrid.cpp index 66b04de..483e484 100644 --- a/videocodec/OMXVideoDecoderVP9Hybrid.cpp +++ b/videocodec/OMXVideoDecoderVP9Hybrid.cpp @@ -69,10 +69,11 @@ OMX_ERRORTYPE OMXVideoDecoderVP9Hybrid::ProcessorInit(void) { uint32_t buff[MAX_GRAPHIC_BUFFER_NUM]; uint32_t i, bufferCount; bool gralloc_mode = (mWorkingMode == GRAPHICBUFFER_MODE); - uint32_t bufferSize, bufferStride, bufferHeight; + uint32_t bufferSize, bufferStride, bufferHeight, bufferWidth; if (!gralloc_mode) { bufferSize = 1920 * 1088 * 1.5; bufferStride = 1920; + bufferWidth = 1920; bufferHeight = 1088; bufferCount = 12; } else { @@ -81,6 +82,7 @@ OMX_ERRORTYPE OMXVideoDecoderVP9Hybrid::ProcessorInit(void) { bufferStride = mGraphicBufferParam.graphicBufferStride; bufferCount = mOMXBufferHeaderTypePtrNum; bufferHeight = mGraphicBufferParam.graphicBufferHeight; + bufferWidth = mGraphicBufferParam.graphicBufferWidth; for (i = 0; i < bufferCount; i++ ) { OMX_BUFFERHEADERTYPE *buf_hdr = mOMXBufferHeaderTypePtrArray[i]; @@ -118,7 +120,7 @@ OMX_ERRORTYPE OMXVideoDecoderVP9Hybrid::ProcessorInit(void) { return OMX_ErrorBadParameter; } - mInitDecoder(mHybridCtx,bufferSize,bufferStride,bufferHeight,bufferCount,gralloc_mode, buff); + mInitDecoder(mHybridCtx,bufferSize,bufferStride,bufferWidth, bufferHeight,bufferCount,gralloc_mode, buff); return OMX_ErrorNone; } @@ -127,16 +129,18 @@ OMX_ERRORTYPE OMXVideoDecoderVP9Hybrid::ProcessorReset(void) uint32_t buff[MAX_GRAPHIC_BUFFER_NUM]; uint32_t i, bufferCount; bool gralloc_mode = (mWorkingMode == GRAPHICBUFFER_MODE); - uint32_t bufferSize, bufferStride, bufferHeight; + uint32_t bufferSize, bufferStride, bufferHeight, bufferWidth; if (!gralloc_mode) { bufferSize = mDecodedImageWidth * mDecodedImageHeight * 1.5; bufferStride = mDecodedImageWidth; + bufferWidth = mDecodedImageWidth; bufferHeight = mDecodedImageHeight; bufferCount = 12; } else { bufferSize = mGraphicBufferParam.graphicBufferStride * mGraphicBufferParam.graphicBufferHeight * 1.5; bufferStride = mGraphicBufferParam.graphicBufferStride; + bufferWidth = mGraphicBufferParam.graphicBufferWidth; bufferCount = mOMXBufferHeaderTypePtrNum; bufferHeight = mGraphicBufferParam.graphicBufferHeight; @@ -145,7 +149,7 @@ OMX_ERRORTYPE OMXVideoDecoderVP9Hybrid::ProcessorReset(void) buff[i] = (uint32_t)(buf_hdr->pBuffer); } } - mInitDecoder(mHybridCtx,bufferSize,bufferStride,bufferHeight,bufferCount,gralloc_mode, buff); + mInitDecoder(mHybridCtx,bufferSize,bufferStride,bufferWidth,bufferHeight,bufferCount,gralloc_mode, buff); return OMX_ErrorNone; } diff --git a/videocodec/OMXVideoDecoderVP9Hybrid.h b/videocodec/OMXVideoDecoderVP9Hybrid.h index 2b11ae6..ad44cc5 100644 --- a/videocodec/OMXVideoDecoderVP9Hybrid.h +++ b/videocodec/OMXVideoDecoderVP9Hybrid.h @@ -68,7 +68,7 @@ private: uint32_t mDecodedImageNewWidth; uint32_t mDecodedImageNewHeight; typedef bool (*OpenFunc)(void ** , void **); - typedef bool (*InitFunc)(void *,uint32_t, uint32_t, uint32_t, uint32_t, bool, uint32_t *); + typedef bool (*InitFunc)(void *,uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, bool, uint32_t *); typedef bool (*CloseFunc)(void *, void *); typedef bool (*SingalRenderDoneFunc)(void *, unsigned int); typedef int (*DecodeFunc)(void *, void *, unsigned char *, unsigned int, bool); |