summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLajos Molnar <lajos@google.com>2015-01-30 17:44:31 -0800
committerLajos Molnar <lajos@google.com>2015-01-30 17:46:22 -0800
commite76d5aaad85cf7fdcd303dd8864906eb4c8b58aa (patch)
treebe0eaeb47d07cec49b7ed09b1c68cc096d921afc
parent25ffbfe5e8b51f392fafc1bffb16b6633a8ba3df (diff)
downloadexynos5-e76d5aaad85cf7fdcd303dd8864906eb4c8b58aa.tar.gz
exynos: vdec: support disabling metadata and native buffer modes
Bug: 19179288 Change-Id: I57495379be6170fec6e07ea9a1f67ed81aeeadf2
-rw-r--r--exynos_omx/openmax/exynos_omx/osal/Exynos_OSAL_Android.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/exynos_omx/openmax/exynos_omx/osal/Exynos_OSAL_Android.cpp b/exynos_omx/openmax/exynos_omx/osal/Exynos_OSAL_Android.cpp
index 997b926..b91365b 100644
--- a/exynos_omx/openmax/exynos_omx/osal/Exynos_OSAL_Android.cpp
+++ b/exynos_omx/openmax/exynos_omx/osal/Exynos_OSAL_Android.cpp
@@ -696,6 +696,12 @@ OMX_ERRORTYPE Exynos_OSAL_SetANBParameter(
pExynosPort->bufferProcessType = BUFFER_SHARE;
pExynosPort->portDefinition.format.video.eColorFormat = (OMX_COLOR_FORMATTYPE)OMX_SEC_COLOR_FormatNV12Tiled;
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "OMX_IndexParamEnableAndroidBuffers & bufferProcessType change to BUFFER_SHARE");
+ } else if ((portIndex == OUTPUT_PORT_INDEX) &&
+ (pExynosPort->bStoreMetaData == OMX_FALSE && pExynosPort->bIsANBEnabled == OMX_FALSE) &&
+ pExynosPort->bufferProcessType == BUFFER_SHARE) {
+ pExynosPort->bufferProcessType = (EXYNOS_OMX_BUFFERPROCESS_TYPE)(BUFFER_COPY | BUFFER_ANBSHARE);
+ pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar;
+ Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "No OMX_IndexParamEnableAndroidBuffers => reset bufferProcessType");
}
}
break;
@@ -789,6 +795,12 @@ OMX_ERRORTYPE Exynos_OSAL_SetANBParameter(
pExynosPort->bufferProcessType = BUFFER_SHARE;
pExynosPort->portDefinition.format.video.eColorFormat = (OMX_COLOR_FORMATTYPE)OMX_SEC_COLOR_FormatNV12Tiled;
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "OMX_IndexParamStoreMetaDataBuffer & bufferProcessType change to BUFFER_SHARE");
+ } else if ((portIndex == OUTPUT_PORT_INDEX) &&
+ (pExynosPort->bStoreMetaData == OMX_FALSE && pExynosPort->bIsANBEnabled == OMX_FALSE) &&
+ pExynosPort->bufferProcessType == BUFFER_SHARE) {
+ pExynosPort->bufferProcessType = (EXYNOS_OMX_BUFFERPROCESS_TYPE)(BUFFER_COPY | BUFFER_ANBSHARE);
+ pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar;
+ Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "No OMX_IndexParamStoreMetaDataBuffer => reset bufferProcessType");
}
}