aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorywan171 <yi.a.wang@intel.com>2014-12-10 16:45:08 +0800
committerPatrick Tjin <pattjin@google.com>2014-12-12 08:09:32 -0800
commit77e0e77a812f416a90713150431db498ad7559e5 (patch)
treec79ff496843f085d575db50a5634c138f8d692b9
parent3b7c847ac11fe6d547346fc47b932ae0534425cc (diff)
downloadandroid_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.cpp12
-rw-r--r--videocodec/OMXVideoDecoderVP9Hybrid.h2
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);