CSC_ERRORCODE cscRet = CSC_ErrorNone;
CSC_METHOD csc_method = CSC_METHOD_SW;
- unsigned int cacheable = 1;
+ unsigned int srcCacheable = 1, dstCacheable = 1;
pBufferInfo = (DECODE_CODEC_EXTRA_BUFFERINFO *)dstOutputData->extInfo;
pYUVBuf[1] = (unsigned char *)pOutputBuf + imageSize;
pYUVBuf[2] = (unsigned char *)pOutputBuf + imageSize + imageSize / 4;
-#ifdef USE_DMA_BUF
csc_get_method(pVideoDec->csc_handle, &csc_method);
+ if (csc_method == CSC_METHOD_HW)
+ srcCacheable = 0;
+
+#ifdef USE_DMA_BUF
if (csc_method == CSC_METHOD_HW) {
pSrcBuf[0] = dstOutputData->buffer.multiPlaneBuffer.fd[0];
pSrcBuf[1] = dstOutputData->buffer.multiPlaneBuffer.fd[1];
width, /* crop_width */
height, /* crop_height */
omx_2_hal_pixel_format(colorFormat), /* color_format */
- cacheable); /* cacheable */
+ srcCacheable); /* cacheable */
csc_set_dst_format(
pVideoDec->csc_handle, /* handle */
width, /* width */
width, /* crop_width */
height, /* crop_height */
omx_2_hal_pixel_format(exynosOutputPort->portDefinition.format.video.eColorFormat), /* color_format */
- cacheable); /* cacheable */
+ dstCacheable); /* cacheable */
pVideoDec->csc_set_format = OMX_TRUE;
}
csc_set_src_buffer(
LOCAL_CFLAGS += -DUSE_S3D_SUPPORT
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Vdec libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
if (pVideoDec->bDRMPlayerMode == OMX_TRUE) {
pVideoDec->csc_handle = csc_init(CSC_METHOD_HW);
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Vdec libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoDec->csc_handle = csc_init(csc_method);
if (pVideoDec->csc_handle == NULL) {
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Vdec libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoDec->csc_handle = csc_init(csc_method);
if (pVideoDec->csc_handle == NULL) {
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Vdec libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoDec->csc_handle = csc_init(csc_method);
if (pVideoDec->csc_handle == NULL) {
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Vdec libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoDec->csc_handle = csc_init(csc_method);
if (pVideoDec->csc_handle == NULL) {
unsigned int csc_src_color_format = omx_2_hal_pixel_format((unsigned int)OMX_COLOR_FormatYUV420SemiPlanar);
unsigned int csc_dst_color_format = omx_2_hal_pixel_format((unsigned int)OMX_COLOR_FormatYUV420SemiPlanar);
CSC_METHOD csc_method = CSC_METHOD_SW;
- unsigned int cacheable = 1;
+ unsigned int srcCacheable = 1, dstCacheable = 1;
unsigned char *pSrcBuf[3] = {NULL, };
unsigned char *pDstBuf[3] = {NULL, };
pDstBuf[1] = srcInputData->buffer.multiPlaneBuffer.dataBuffer[1];
pDstBuf[2] = srcInputData->buffer.multiPlaneBuffer.dataBuffer[2];
+ csc_get_method(pVideoEnc->csc_handle, &csc_method);
+ if (csc_method == CSC_METHOD_HW)
+ dstCacheable = 0;
+
#ifdef USE_METADATABUFFERTYPE
OMX_PTR ppBuf[MAX_BUFFER_PLANE];
#endif
#ifdef USE_DMA_BUF
- csc_get_method(pVideoEnc->csc_handle, &csc_method);
if (csc_method == CSC_METHOD_HW)
pSrcBuf[0] = (unsigned char *)planes[0].fd;
else
#endif
{
#ifdef USE_DMA_BUF
- csc_get_method(pVideoEnc->csc_handle, &csc_method);
if (csc_method == CSC_METHOD_HW) {
pSrcBuf[0] = Exynos_OSAL_SharedMemory_VirtToION(pVideoEnc->hSharedMemory, checkInputStream);
pSrcBuf[1] = NULL;
nFrameWidth, /* crop_width */
nFrameHeight, /* crop_height */
csc_src_color_format, /* color_format */
- cacheable); /* cacheable */
+ srcCacheable); /* cacheable */
csc_set_dst_format(
pVideoEnc->csc_handle, /* handle */
nFrameWidth, /* width */
nFrameWidth, /* crop_width */
nFrameHeight, /* crop_height */
csc_dst_color_format, /* color_format */
- cacheable); /* cacheable */
+ dstCacheable); /* cacheable */
csc_set_src_buffer(
pVideoEnc->csc_handle, /* handle */
pSrcBuf,
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Venc libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoEnc->csc_handle = csc_init(csc_method);
if (pVideoEnc->csc_handle == NULL) {
LOCAL_CFLAGS += -DUSE_DMA_BUF
endif
+ifeq ($(BOARD_USE_CSC_HW), true)
+LOCAL_CFLAGS += -DUSE_CSC_HW
+endif
+
LOCAL_ARM_MODE := arm
LOCAL_STATIC_LIBRARIES := libExynosOMX_Venc libExynosOMX_OSAL libExynosOMX_Basecomponent \
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#if 0//defined(USE_CSC_GSCALER)
- csc_method = CSC_METHOD_HW; //in case of Use ION buffer.
+#ifdef USE_CSC_HW
+ csc_method = CSC_METHOD_HW;
#endif
pVideoEnc->csc_handle = csc_init(csc_method);
if (pVideoEnc->csc_handle == NULL) {