From a3a4102dfe71edc1017369a80eecbfe97437cc8c Mon Sep 17 00:00:00 2001 From: SeungBeom Kim Date: Wed, 27 Aug 2014 13:33:40 +0900 Subject: [PATCH] exynos_omx: multi_thread: Support for resubmit CSDs after flush. Modify OMX code for seeking. Support for resubmit CSDs after seeking and flush. Bug: 17294121 Change-Id: I407569f529fa6ffd82b3be5deb1dcc82cd505c2b Signed-off-by: SeungBeom Kim --- .../openmax/exynos_omx/component/video/dec/Exynos_OMX_Vdec.c | 3 ++- .../openmax/exynos_omx/component/video/enc/Exynos_OMX_Venc.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/exynos_omx/openmax/exynos_omx/component/video/dec/Exynos_OMX_Vdec.c b/exynos_omx/openmax/exynos_omx/component/video/dec/Exynos_OMX_Vdec.c index 8d0e6d5..d16d811 100644 --- a/exynos_omx/openmax/exynos_omx/component/video/dec/Exynos_OMX_Vdec.c +++ b/exynos_omx/openmax/exynos_omx/component/video/dec/Exynos_OMX_Vdec.c @@ -555,7 +555,8 @@ OMX_BOOL Exynos_Preprocessor_InputData(OMX_COMPONENTTYPE *pOMXComponent, EXYNOS_ pExynosComponent->bBehaviorEOS = OMX_TRUE; } - if (pExynosComponent->checkTimeStamp.needSetStartTimeStamp == OMX_TRUE) { + if ((pExynosComponent->checkTimeStamp.needSetStartTimeStamp == OMX_TRUE) && + (srcInputData->nFlags & OMX_BUFFERFLAG_CODECCONFIG) != OMX_BUFFERFLAG_CODECCONFIG) { pExynosComponent->checkTimeStamp.needCheckStartTimeStamp = OMX_TRUE; pExynosComponent->checkTimeStamp.startTimeStamp = srcInputData->timeStamp; pExynosComponent->checkTimeStamp.nStartFlags = srcInputData->nFlags; diff --git a/exynos_omx/openmax/exynos_omx/component/video/enc/Exynos_OMX_Venc.c b/exynos_omx/openmax/exynos_omx/component/video/enc/Exynos_OMX_Venc.c index c7dc24a..e271ff4 100644 --- a/exynos_omx/openmax/exynos_omx/component/video/enc/Exynos_OMX_Venc.c +++ b/exynos_omx/openmax/exynos_omx/component/video/enc/Exynos_OMX_Venc.c @@ -565,7 +565,8 @@ OMX_BOOL Exynos_Preprocessor_InputData(OMX_COMPONENTTYPE *pOMXComponent, EXYNOS_ pExynosComponent->bBehaviorEOS = OMX_TRUE; } - if (pExynosComponent->checkTimeStamp.needSetStartTimeStamp == OMX_TRUE) { + if ((pExynosComponent->checkTimeStamp.needSetStartTimeStamp == OMX_TRUE) && + (srcInputData->nFlags & OMX_BUFFERFLAG_CODECCONFIG) != OMX_BUFFERFLAG_CODECCONFIG) { pExynosComponent->checkTimeStamp.needCheckStartTimeStamp = OMX_TRUE; pExynosComponent->checkTimeStamp.startTimeStamp = srcInputData->timeStamp; pExynosComponent->checkTimeStamp.nStartFlags = srcInputData->nFlags; -- 2.20.1