AC_FUNC_REALLOC
AC_CHECK_FUNCS([gettimeofday memmove memset munmap])
-AC_DEFINE([SLP_PLATFORM])
+AC_DEFINE([TIZEN_FEATURE_E3250])
AC_DEFINE([USE_IMMEDIATE_DISPLAY])
dnl use dlog ------------------------------------------------------------------
/* V4L2 */
#include <stdbool.h>
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
#include <linux/videodev2.h>
#include <linux/videodev2_exynos_media.h>
#else
int exynos_v4l2_reqbufs(int fd, struct v4l2_requestbuffers *req);
/*! \ingroup exynos_v4l2 */
int exynos_v4l2_querybuf(int fd, struct v4l2_buffer *buf);
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
int exynos_v4l2_expbuf(int fd, int *buf_fd, __u32 mem_offset);
#endif
/*! \ingroup exynos_v4l2 */
int exynos_v4l2_s_ext_ctrl(int fd, struct v4l2_ext_controls *ctrl);
/* V4L2_SUBDEV */
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <v4l2-subdev.h>
#else
#include <linux/v4l2-subdev.h>
int exynos_subdev_enum_mbus_code(int fd, struct v4l2_subdev_mbus_code_enum *mbus_code_enum);
/* MEDIA CONTORLLER */
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <media.h>
#else
#include <linux/media.h>
* 2012.1.11 : Create
*/
#define LOG_TAG "libcsc"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <cutils/log.h>
#endif
#include <stdio.h>
#include <stdlib.h>
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
#include <system/graphics.h>
#else
#include "exynos_format.h"
#include "swconverter.h"
-#ifdef SLP_PLATFORM /* build env */
+#ifdef TIZEN_FEATURE_E3250 /* build env */
#define EXYNOS_OMX
#endif
*/
#define LOG_TAG "libcsc_helper"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <cutils/log.h>
#include <system/graphics.h>
#endif
{
OMX_COLOR_FORMATTYPE omx_format;
switch (hal_format) {
-#ifndef SLP_PLATFORM /* build env */ /* useless */
+#ifndef TIZEN_FEATURE_E3250 /* build env */ /* useless */
case HAL_PIXEL_FORMAT_YCbCr_422_I:
omx_format = OMX_COLOR_FormatYCbYCr;
break;
{
unsigned int hal_format;
switch (omx_format) {
-#ifndef SLP_PLATFORM /* build env */ /* useless */
+#ifndef TIZEN_FEATURE_E3250 /* build env */ /* useless */
case OMX_COLOR_FormatYCbYCr:
hal_format = HAL_PIXEL_FORMAT_YCbCr_422_I;
break;
#include <sys/types.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <media.h>
#else
#include <linux/media.h>
//#define LOG_NDEBUG 0
#define LOG_TAG "libexynosv4l2-mc"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
#else
#include "Exynos_OSAL_Log.h"
//#define LOG_NDEBUG 0
#define LOG_TAG "libexynosv4l2-subdev"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
-#else
+#else
#include "Exynos_OSAL_Log.h"
#endif
//#define LOG_NDEBUG 0
#define LOG_TAG "libexynosv4l2"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
-#else
+#else
#include "Exynos_OSAL_Log.h"
#endif
return ret;
}
-#ifdef SLP_PLATFORM /*dmabuf */
+#ifdef TIZEN_FEATURE_E3250 /*dmabuf */
#ifndef VIDIOC_EXPBUF
struct v4l2_exportbuffer {
#define LOG_NDEBUG 1
#define LOG_TAG "libsrpapi"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
#else
#include "Exynos_OSAL_Log.h"
ret = write(srp_dev, buff, size_byte); /* Write Buffer to RP Driver */
if (ret < 0) {
-#ifdef SLP_PLATFORM
-/* in slp, ret value is different from android. this is caused from glib. android uses bionic libc. */
+#ifdef TIZEN_FEATURE_E3250
+/* ret value is different from android. this is caused from glib. android uses bionic libc. */
ret = -(errno);
#endif
if (ret != SRP_ERROR_IBUF_OVERFLOW)
#include "srp_ioctl.h"
#include "srp_error.h"
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
#define SRP_DEV_NAME "dev/srp"
#else
#define SRP_DEV_NAME "/dev/srp"
SRP_ERROR_IBUF_OVERFLOW = -2000,
SRP_ERROR_IBUF_INFO = -2001,
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
SRP_ERROR_IBUF_BUFFERING = -2002,
#endif
/* #define LOG_NDEBUG 0 */
#define LOG_TAG "ExynosVideoDecoder"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
#else
#include "Exynos_OSAL_Log.h"
pVideoPlane->allocSize = buf.m.planes[j].length;
pVideoPlane->dataSize = 0;
-#ifdef SLP_PLATFORM /* dmabuf */
+#ifdef TIZEN_FEATURE_E3250 /* dmabuf */
#if 0
if (pCtx->bufShareMethod == BUF_SHARE_FD) {
exynos_v4l2_expbuf(pCtx->hDec, &pVideoPlane->fd, buf.m.planes[j].m.mem_offset);
#include "ExynosVideoApi.h"
#include "ExynosVideoEnc.h"
-//#include <mm_ta/mm_ta.h>
-
/* #define LOG_NDEBUG 0 */
#define LOG_TAG "ExynosVideoEncoder"
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
-#else
+#else
#include "Exynos_OSAL_Log.h"
#endif
buf.m.planes[i].m.userptr = (unsigned long)pBuffer[i];
buf.m.planes[i].length = pCtx->pInbuf[index].planes[i].allocSize;
/* V4L2_MEMORY_DMABUF */
-#ifdef SLP_PLATFORM /* #ifdef USE_DMA_BUF */
+#ifdef TIZEN_FEATURE_E3250 /* #ifdef USE_DMA_BUF */
buf.m.planes[i].m.fd = pCtx->pInbuf[buf.index].planes[i].fd;
buf.m.planes[i].length = 0; /* kernel give the length */
#endif
#include <fcntl.h>
#include <sys/mman.h>
#include <sys/ioctl.h>
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <cutils/log.h>
#endif
Exynos_OSAL_Free(message);
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
if (dataBuffer->allocSize <= dataBuffer->dataLen)
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "Input Buffer Full, Check input buffer size! allocSize:%d, dataLen:%d", dataBuffer->allocSize, dataBuffer->dataLen);
#endif
OMX_S32 semValue = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "flushPort idx:%d", portIndex);
#endif
OMX_U32 i = 0, cnt = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "bufferFlush idx:%d", nPortIndex);
#endif
pExynosComponent->bSaveFlagEOS = OMX_FALSE;
pMp3Dec->hSRPMp3Handle.bConfiguredSRP = OMX_FALSE;
pMp3Dec->hSRPMp3Handle.bSRPSendEOS = OMX_FALSE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pMp3Dec->nPendingflags = 0;
#endif
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
#endif
/* Save timestamp and flags of input data */
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
pOutputData->timeStamp = pInputData->timeStamp;
#else
if (pExynosComponent->checkTimeStamp.startTimeStamp == pInputData->timeStamp) {
if (dataLen > 0) {
pOutputData->dataLen = dataLen;
Exynos_OSAL_Memcpy(pOutputData->buffer.singlePlaneBuffer.dataBuffer, dataBuffer, dataLen);
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pOutputData->timeStamp = pMp3Dec->timeStamp;
pMp3Dec->timeStamp += 1000000 * (OMX_TICKS)dataLen / (pMp3Dec->pcmParam.nSamplingRate * pMp3Dec->pcmParam.nChannels * pMp3Dec->pcmParam.nBitPerSample / 8);
pOutputData->nFlags |= pMp3Dec->nPendingflags;
#endif
} else {
pOutputData->dataLen = 0;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pMp3Dec->nPendingflags = pOutputData->nFlags;
#endif
}
if (isSRPStopped == 1) {
pOutputData->nFlags |= OMX_BUFFERFLAG_EOS;
pExynosComponent->getAllDelayBuffer = OMX_FALSE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pOutputData->timeStamp = pInputData->timeStamp; /*For ALP EOS Timestamp*/
#endif
pMp3Dec->hSRPMp3Handle.bSRPSendEOS = OMX_FALSE; /* for repeating one song */
/* SEC SRP Codec specific */
EXYNOS_SRP_MP3_HANDLE hSRPMp3Handle;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_TICKS timeStamp;
OMX_U32 nPendingflags;
#endif
Exynos_OMX_Release_Resource(pOMXComponent);
}
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "destState: %d", destState);
#else
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "destState: %d", destState);
cnt = (nPortIndex == ALL_PORT_INDEX ) ? ALL_PORT_NUM : 1;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "bufferFlushProcess cnt:%d port:%d", cnt, nPortIndex);
#endif
OMX_U32 i = 0, cnt = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "enablePort idx:%d", portIndex);
#endif
cnt = (nPortIndex == ALL_PORT_INDEX) ? ALL_PORT_NUM : 1;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "portEnableProcess cnt:%d port:%d", cnt, nPortIndex);
#endif
EXYNOS_OMX_MESSAGE *message;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "disablePort idx:%d", portIndex);
#endif
cnt = (nPortIndex == ALL_PORT_INDEX ) ? ALL_PORT_NUM : 1;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "portDisableProcess cnt:%d port:%d", cnt, nPortIndex);
#endif
#define EXYNOS_LOG_OFF
#include "Exynos_OSAL_Log.h"
-#ifdef SLP_PLATFORM
-#define MAX_RESOURCE_VIDEO_DEC 8 /* for SLP */
-#define MAX_RESOURCE_VIDEO_ENC 2 /* for SLP */
+#ifdef TIZEN_FEATURE_E3250
+#define MAX_RESOURCE_VIDEO_DEC 8 /* for TIZEN */
+#define MAX_RESOURCE_VIDEO_ENC 2 /* for TIZEN */
#else
#define MAX_RESOURCE_VIDEO_DEC 3 /* for Android */
#define MAX_RESOURCE_VIDEO_ENC 1 /* for Android */
if (width && height)
exynosOutputPort->portDefinition.nBufferSize = (width * height * 3) / 2;
break;
-#ifdef SLP_PLATFORM /* nv12t fd */
+#ifdef TIZEN_FEATURE_E3250 /* nv12t fd */
case OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd:
if (width && height)
exynosOutputPort->portDefinition.nBufferSize = sizeof(MMVideoBuffer);
OMX_BOOL Exynos_Check_BufferProcess_State(EXYNOS_OMX_BASECOMPONENT *pExynosComponent, OMX_U32 nPortIndex)
{
OMX_BOOL ret = OMX_FALSE;
-#ifdef SLP_PLATFORM /* check state */
+#ifdef TIZEN_FEATURE_E3250 /* check state */
if (pExynosComponent->currentState != OMX_StateExecuting)
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "not OMX_StateExecuting");
EXYNOS_OMX_DATABUFFER *outputUseBuffer = &exynosOutputPort->way.port2WayDataBuffer.outputDataBuffer;
OMX_U32 copySize = 0;
DECODE_CODEC_EXTRA_BUFFERINFO *pBufferInfo = NULL;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
MMVideoBuffer *pSlpOutBuf = NULL;
#endif
imageSize = width * height;
colorFormat = pBufferInfo->ColorFormat;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pSlpOutBuf = (MMVideoBuffer *)pOutputBuf;
pSlpOutBuf->width[0] = width;
pSlpOutBuf->width[1] = width;
#ifdef USE_PB
if (exynosOutputPort->bIsPBEnabled == OMX_TRUE) {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_UnlockPB(pOutputBuf, dstOutputData, exynosOutputPort, exynosInputPort);
#else
Exynos_OSAL_UnlockPB(pOutputBuf, dstOutputData);
if (exynosInputPort->bufferProcessType & BUFFER_SHARE) {
Exynos_Shared_BufferToData(inputUseBuffer, srcInputData, ONE_PLANE);
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
if (pVideoDec->bDRMPlayerMode == OMX_TRUE) {
OMX_PTR dataBuffer = NULL;
outputUseBuffer->dataValid = OMX_TRUE;
} else {
#ifdef USE_PB
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (Exynos_Shared_DataToPlatformBuffer(dstOutputData, outputUseBuffer, exynosOutputPort,exynosInputPort) == OMX_ErrorNone) {
#else
if (Exynos_Shared_DataToPlatformBuffer(dstOutputData, outputUseBuffer, exynosOutputPort) == OMX_ErrorNone) {
outputUseBuffer->timeStamp = dstOutputData->timeStamp;
Exynos_OutputBufferReturn(pOMXComponent);
} else {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "output buffer is SCMN_IMGB type.");
copySize = outputUseBuffer->allocSize - outputUseBuffer->dataLen;
ret = Exynos_InputBufferGetQueue(pExynosComponent);
inputUseBuffer = &(exynosInputPort->way.port2WayDataBuffer.inputDataBuffer);
- pVideoDec->exynos_process_codecConfigData(pOMXComponent, inputUseBuffer); /* SLP_PLATFORM */
+ pVideoDec->exynos_process_codecConfigData(pOMXComponent, inputUseBuffer); /* TIZEN_FEATURE_E3250 */
// pVideoDec->exynos_process_codecConfigData(pOMXComponent, pSrcInputData);
bCodecConfigured = OMX_TRUE;
#define INPUT_PORT_SUPPORTFORMAT_NUM_MAX 1
#define OUTPUT_PORT_SUPPORTFORMAT_NUM_MAX 4
-#ifdef SLP_PLATFORM /* exrta dpb number */
+#ifdef TIZEN_FEATURE_E3250 /* exrta dpb number */
#define EXTRA_DPB_NUM 5
#else
#define EXTRA_DPB_NUM 5
OMX_PTR csc_handle;
OMX_U32 csc_set_format;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_BOOL bNeedTimestampReorder;
#endif
temp_bufferHeader->nInputPortIndex = INPUT_PORT_INDEX;
else
temp_bufferHeader->nOutputPortIndex = OUTPUT_PORT_INDEX;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (nPortIndex == OUTPUT_PORT_INDEX) {
MMVideoBuffer * pSlpOutBuf = (MMVideoBuffer *)pBuffer;
OMX_S32 semValue = 0;
int i = 0, maxBufferNum = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "flushPort idx:%d", portIndex);
#endif
OMX_U32 i = 0, cnt = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "bufferFlush idx:%d", nPortIndex);
#endif
Exynos_OSAL_Free(message);
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
if (inputUseBuffer->allocSize <= inputUseBuffer->dataLen)
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "Input Buffer Full, Check input buffer size! allocSize:%d, dataLen:%d", inputUseBuffer->allocSize, inputUseBuffer->dataLen);
#endif
bufferHeader = dataBuffer->bufferHeader;
if (bufferHeader != NULL) {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
bufferHeader->nFilledLen = sizeof(MMVideoBuffer);
#else
bufferHeader->nFilledLen = dataBuffer->remainDataLen;
goto EXIT;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pExynosPort == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "%s : %d: pExynosPort is NULL", __FUNCTION__, __LINE__);
}
portFormat->eColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
portFormat->xFramerate = portDefinition->format.video.xFramerate;
break;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case supportFormat_3:
portFormat->eCompressionFormat = OMX_VIDEO_CodingUnused;
portFormat->eColorFormat = OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd;
}
break;
#ifdef USE_PB
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_IndexParamEnablePlatformSpecificBuffers:
#else
case OMX_IndexParamEnableAndroidBuffers:
break;
#endif
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_IndexParamEnableTimestampReorder:
{
EXYNOS_OMX_VIDEODEC_COMPONENT *pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
}
#ifdef USE_PB
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (Exynos_OSAL_Strcmp(cParameterName, EXYNOS_INDEX_PARAM_ENABLE_PB) == 0)
*pIndexType = (OMX_INDEXTYPE) OMX_IndexParamEnablePlatformSpecificBuffers;
else if (Exynos_OSAL_Strcmp(cParameterName, EXYNOS_INDEX_PARAM_ENABLE_TS_REORDER) == 0)
}
/* this is for Fill This Buffer Done */
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_ERRORTYPE Exynos_Shared_DataToPlatformBuffer(EXYNOS_OMX_DATA *pData, EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_BASEPORT *pExynosPort, EXYNOS_OMX_BASEPORT *pExynosInPort)
#else
OMX_ERRORTYPE Exynos_Shared_DataToPlatformBuffer(EXYNOS_OMX_DATA *pData, EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_BASEPORT *pExynosPort)
pUseBuffer->bufferHeader = pData->bufferHeader;
pUseBuffer->allocSize = pData->allocSize;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pUseBuffer->dataLen = sizeof(MMVideoBuffer);
#else
pUseBuffer->dataLen = pData->dataLen;
}
if (pExynosPort->bIsPBEnabled == OMX_TRUE) {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_UnlockPB(pUseBuffer->bufferHeader->pBuffer, pData, pExynosPort,pExynosInPort);
#else
Exynos_OSAL_UnlockPB(pUseBuffer->bufferHeader->pBuffer, pData);
#ifdef USE_PB
OMX_ERRORTYPE Exynos_Shared_PlatformBufferToData(EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_DATA *pData, EXYNOS_OMX_BASEPORT *pExynosPort, EXYNOS_OMX_PLANE nPlane);
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_ERRORTYPE Exynos_Shared_DataToPlatformBuffer(EXYNOS_OMX_DATA *pData, EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_BASEPORT *pExynosPort,EXYNOS_OMX_BASEPORT *pExynosInPort);
#else
OMX_ERRORTYPE Exynos_Shared_DataToPlatformBuffer(EXYNOS_OMX_DATA *pData, EXYNOS_OMX_DATABUFFER *pUseBuffer, EXYNOS_OMX_BASEPORT *pExynosPort);
if (pVideoDec->bThumbnailMode == OMX_TRUE)
- pDecOps->Set_DisplayDelay(hMFCHandle, 0);
+ pDecOps->Set_DisplayDelay(hMFCHandle, 0);
/* input buffer info */
Exynos_OSAL_Memset(&bufferConf, 0, sizeof(bufferConf));
} else if (pExynosInputPort->bufferProcessType & BUFFER_COPY) {
bufferConf.nSizeImage = DEFAULT_MFC_INPUT_BUFFER_SIZE;
inputBufferNumber = MFC_INPUT_BUFFER_NUM_MAX;
- }
+ }
/* should be done before prepare input buffer */
if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "Failed to set geometry for input buffer");
ret = OMX_ErrorInsufficientResources;
goto EXIT;
- }
+ }
/* setup input buffer */
if (pInbufOps->Setup(hMFCHandle, inputBufferNumber) != VIDEO_ERROR_NONE) {
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "@pVideoDec->pMFCDecInputBuffer[%d]->pVirAddr[%d]: 0x%x", i, plane, pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane]);
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pExynosInputPort == NULL || pExynosOutputPort == NULL || pOMXComponent == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "invalid param: pExynosInputPort= %p pExynosOutputPort= %p pOMXComponent= %p", pExynosInputPort, pExynosOutputPort, pOMXComponent);
}
for (i = 0; i < pExynosInputPort->portDefinition.nBufferCountActual; i++) {
ExynosVideoPlane plane;
if (pVideoDec->bDRMPlayerMode == OMX_TRUE) {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
/* IL Client assigns FD value in pBuffer */
plane.addr = pExynosInputPort->extendBufferHeader[i].OMXBufferHeader->pBuffer;
#else
ret = OMX_ErrorInputDataDecodeYet;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
- pDecOps->Set_ImmediateDisplay(hMFCHandle);
+ /* Set Immediately display for I Frame*/
+ pDecOps->Set_ImmediateDisplay(hMFCHandle);
#endif
EXIT:
OMX_DirOutput, /* This is the port index */
0,
NULL);
- }
+ }
} else if (pExynosOutputPort->bufferProcessType & BUFFER_SHARE) {
+#ifndef TIZEN_FEATURE_E3250
+ /* The input port information has already been updated */
if ((pExynosInputPort->portDefinition.format.video.nFrameWidth != pH264Dec->hMFCH264Handle.codecOutbufConf.nFrameWidth) ||
(pExynosInputPort->portDefinition.format.video.nFrameHeight != pH264Dec->hMFCH264Handle.codecOutbufConf.nFrameHeight) ||
(pExynosOutputPort->portDefinition.nBufferCountActual != pH264Dec->hMFCH264Handle.maxDPBNum)) {
pExynosInputPort->portDefinition.format.video.nFrameHeight = pH264Dec->hMFCH264Handle.codecOutbufConf.nFrameHeight;
pExynosInputPort->portDefinition.format.video.nStride = ((pH264Dec->hMFCH264Handle.codecOutbufConf.nFrameWidth + 15) & (~15));
pExynosInputPort->portDefinition.format.video.nSliceHeight = ((pH264Dec->hMFCH264Handle.codecOutbufConf.nFrameHeight + 15) & (~15));
-
+#endif
if (pVideoDec->bDRCProcessing == OMX_TRUE) {
pVideoDec->nDRCSavedBufferCount = pExynosOutputPort->portDefinition.nBufferCountActual;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosOutputPort->portDefinition.nBufferCountActual = pH264Dec->hMFCH264Handle.maxDPBNum;
pExynosOutputPort->portDefinition.nBufferCountMin = pH264Dec->hMFCH264Handle.maxDPBNum;
#else
OMX_DirOutput, /* This is the port index */
0,
NULL);
+#ifndef TIZEN_FEATURE_E3250
}
+#endif
}
if (((pVideoDec->bDRCProcessing) && (pExynosOutputPort->bufferProcessType & BUFFER_COPY)) ||
case OMX_COLOR_FormatYUV420SemiPlanar:
pExynosOutputPort->portDefinition.nBufferSize = (width * height * 3) / 2;
break;
-#ifdef SLP_PLATFORM /* NV12 fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12 fd */
case OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd:
case OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd:
pExynosOutputPort->portDefinition.nBufferSize = sizeof(MMVideoBuffer);
Exynos_CodecBufferEnQueue(pExynosComponent, INPUT_PORT_INDEX, pVideoDec->pMFCDecInputBuffer[i]);
}
} else {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pOMXComponent == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "%s : %d: invalid parm: pOMXComponent = %p", __FUNCTION__, __LINE__, pOMXComponent);
}
if (pExynosInputPort->bufferProcessType & BUFFER_COPY) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoDec->pMFCDecInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoDec->hSharedMemory, pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane]);
pH264Dec->hMFCH264Handle.indexTimestamp %= MAX_TIMESTAMP;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
+ /* Set Immediately display for I Frame*/
if (pExynosComponent->checkTimeStamp.needCheckStartTimeStamp == OMX_TRUE) {
if ( pExynosComponent->checkTimeStamp.bImmediateDisplay == OMX_FALSE) {
pBufferInfo->imageHeight = bufferGeometry->nFrameHeight;
switch (bufferGeometry->eColorFormat) {
case VIDEO_COLORFORMAT_NV12:
-#ifdef SLP_PLATFORM /* NV12 fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12 fd */
pBufferInfo->ColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
#else
pBufferInfo->ColorFormat = OMX_COLOR_FormatYUV420SemiPlanar;
/* For timestamp correction. if mfc support frametype detect */
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "disp_pic_frame_type: %d", pVideoBuffer->frameType);
//#ifdef NEED_TIMESTAMP_REORDER
- /* SLP_PLATFORM */
+ /* TIZEN_FEATURE_E3250 */
if (pVideoDec->bNeedTimestampReorder == OMX_TRUE) {
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "NEED_TIMESTAMP_REORDER ON");
if ((pVideoBuffer->frameType == VIDEO_FRAME_I)) {
Exynos_OSAL_Strcpy(pExynosPort->portDefinition.format.video.cMIMEType, "raw/video");
pExynosPort->portDefinition.format.video.pNativeRender = 0;
pExynosPort->portDefinition.format.video.bFlagErrorConcealment = OMX_FALSE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->portDefinition.format.video.eColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
#else
pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar;
#endif
pExynosPort->portDefinition.bEnabled = OMX_TRUE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->bufferProcessType = BUFFER_SHARE;
#else
pExynosPort->bufferProcessType = BUFFER_COPY;
pVideoDec->exynos_codec_getCodecInputPrivateData = &GetCodecInputPrivateData;
pVideoDec->exynos_codec_getCodecOutputPrivateData = &GetCodecOutputPrivateData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoDec->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoDec->hSharedMemory == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "OMX_ErrorInsufficientResources, Line:%d", __LINE__);
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoDec->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
$(top_builddir)/openmax/component/common/libExynosOMX_Basecomponent.la \
$(top_builddir)/exynos4/libcodec/video/v4l2/libExynosVideoApi.la \
$(top_builddir)/exynos/libv4l2/libexynosv4l2.la
-
libOMX_Exynos_AVC_Decoder_la_CFLAGS = -I$(top_srcdir)/openmax/include/khronos \
if ((pExynosOutputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
for (i = 0; i < MFC_OUTPUT_BUFFER_NUM_MAX; i++) {
if (pVideoDec->pMFCDecOutputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_OUTPUT_BUFFER_PLANE; plane++) {
if (pVideoDec->pMFCDecOutputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoDec->hSharedMemory, pVideoDec->pMFCDecOutputBuffer[i]->pVirAddr[plane]);
if ((pExynosInputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoDec->pMFCDecInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoDec->hSharedMemory, pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane]);
/* For timestamp correction. if mfc support frametype detect */
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "disp_pic_frame_type: %d", pVideoBuffer->frameType);
//#ifdef NEED_TIMESTAMP_REORDER
- /* SLP_PLATFORM */
+ /* TIZEN_FEATURE_E3250 */
if (pVideoDec->bNeedTimestampReorder == OMX_TRUE) {
if ((pVideoBuffer->frameType == VIDEO_FRAME_I)) {
pDstOutputData->timeStamp = pExynosComponent->timeStamp[indexTimestamp];
pExynosPort->portDefinition.format.video.bFlagErrorConcealment = OMX_FALSE;
pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar;
pExynosPort->portDefinition.bEnabled = OMX_TRUE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->bufferProcessType = BUFFER_SHARE;
#else
pExynosPort->bufferProcessType = BUFFER_COPY | BUFFER_PBSHARE;
pVideoDec->exynos_codec_getCodecInputPrivateData = &GetCodecInputPrivateData;
pVideoDec->exynos_codec_getCodecOutputPrivateData = &GetCodecOutputPrivateData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoDec->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoDec->hSharedMemory == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "OMX_ErrorInsufficientResources, Line:%d", __LINE__);
pOMXComponent = (OMX_COMPONENTTYPE *)hComponent;
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoDec->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
int i, plane;
if (pVideoDec->bThumbnailMode == OMX_TRUE)
- pDecOps->Set_DisplayDelay(hMFCHandle, 0);
+ pDecOps->Set_DisplayDelay(hMFCHandle, 0);
/* input buffer info */
Exynos_OSAL_Memset(&bufferConf, 0, sizeof(bufferConf));
} else if (pExynosInputPort->bufferProcessType & BUFFER_COPY) {
bufferConf.nSizeImage = DEFAULT_MFC_INPUT_BUFFER_SIZE;
inputBufferNumber = MFC_INPUT_BUFFER_NUM_MAX;
- }
+ }
/* should be done before prepare input buffer */
if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "Failed to set geometry for input buffer");
ret = OMX_ErrorInsufficientResources;
goto EXIT;
- }
+ }
/* setup input buffer */
if (pInbufOps->Setup(hMFCHandle, inputBufferNumber) != VIDEO_ERROR_NONE) {
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "@pVideoDec->pMFCDecInputBuffer[%d]->pVirAddr[%d]: 0x%x", i, plane, pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane]);
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pExynosInputPort == NULL || pExynosOutputPort == NULL || pOMXComponent == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "invalid param: pExynosInputPort= %p pExynosOutputPort= %p pOMXComponent= %p", pExynosInputPort, pExynosOutputPort, pOMXComponent);
}
ret = OMX_ErrorInputDataDecodeYet;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
+ /* Set Immediately display for I Frame*/
pDecOps->Set_ImmediateDisplay(hMFCHandle);
#endif
EXIT:
if (pVideoDec->bDRCProcessing == OMX_TRUE) {
pVideoDec->nDRCSavedBufferCount = pExynosOutputPort->portDefinition.nBufferCountActual;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosOutputPort->portDefinition.nBufferCountActual = pMpeg4Dec->hMFCMpeg4Handle.maxDPBNum;
pExynosOutputPort->portDefinition.nBufferCountMin = pMpeg4Dec->hMFCMpeg4Handle.maxDPBNum;
#else
case OMX_COLOR_FormatYUV420SemiPlanar:
pExynosOutputPort->portDefinition.nBufferSize = (width * height * 3) / 2;
break;
-#ifdef SLP_PLATFORM /* NV12 fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12 fd */
case OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd:
case OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd:
pExynosOutputPort->portDefinition.nBufferSize = sizeof(MMVideoBuffer);
Exynos_CodecBufferEnQueue(pExynosComponent, INPUT_PORT_INDEX, pVideoDec->pMFCDecInputBuffer[i]);
}
} else {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pOMXComponent == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "%s : %d: invalid parm: pOMXComponent = %p", __FUNCTION__, __LINE__, pOMXComponent);
}
if (pExynosInputPort->bufferProcessType & BUFFER_COPY) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoDec->pMFCDecInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoDec->hSharedMemory, pVideoDec->pMFCDecInputBuffer[i]->pVirAddr[plane]);
pMpeg4Dec->hMFCMpeg4Handle.indexTimestamp %= MAX_TIMESTAMP;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
+ /* Set Immediately display for I Frame*/
if (pExynosComponent->checkTimeStamp.needCheckStartTimeStamp == OMX_TRUE) {
if ( pExynosComponent->checkTimeStamp.bImmediateDisplay == OMX_FALSE) {
/* Enable Immediately display After seek*/
pBufferInfo->imageHeight = bufferGeometry->nFrameHeight;
switch (bufferGeometry->eColorFormat) {
case VIDEO_COLORFORMAT_NV12:
-#ifdef SLP_PLATFORM /* NV12 fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12 fd */
pBufferInfo->ColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
#else
pBufferInfo->ColorFormat = OMX_COLOR_FormatYUV420SemiPlanar;
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "disp_pic_frame_type: %d", pVideoBuffer->frameType);
//#ifdef NEED_TIMESTAMP_REORDER
if (pMpeg4Dec->hMFCMpeg4Handle.bPackedPB == OMX_TRUE ||
- pVideoDec->bNeedTimestampReorder == OMX_TRUE) { /* SLP_PLATFORM */
+ pVideoDec->bNeedTimestampReorder == OMX_TRUE) { /* TIZEN_FEATURE_E3250 */
if ((pVideoBuffer->frameType == VIDEO_FRAME_I)) {
pDstOutputData->timeStamp = pExynosComponent->timeStamp[indexTimestamp];
pDstOutputData->nFlags = pExynosComponent->nFlags[indexTimestamp];
Exynos_OSAL_Strcpy(pExynosPort->portDefinition.format.video.cMIMEType, "raw/video");
pExynosPort->portDefinition.format.video.pNativeRender = 0;
pExynosPort->portDefinition.format.video.bFlagErrorConcealment = OMX_FALSE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->portDefinition.format.video.eColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
pExynosPort->bufferProcessType = BUFFER_SHARE;
#else
pVideoDec->exynos_codec_getCodecInputPrivateData = &GetCodecInputPrivateData;
pVideoDec->exynos_codec_getCodecOutputPrivateData = &GetCodecOutputPrivateData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoDec->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoDec->hSharedMemory == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "OMX_ErrorInsufficientResources, Line:%d", __LINE__);
pOMXComponent = (OMX_COMPONENTTYPE *)hComponent;
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoDec->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <mm_types.h>
#include "Exynos_OMX_Macros.h"
#include "Exynos_OMX_Basecomponent.h"
OMX_U8 *pInputStream,
OMX_U32 *pStreamSize,
WMV_FORMAT wmvFormat
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
, OMX_U32 width, OMX_U32 height
#endif
)
{
OMX_U8 *pCurrBuf = pInputStream;
OMX_U32 currPos = 0;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
OMX_U32 width, height;
#endif
FunctionIn();
switch (wmvFormat) {
case WMV_FORMAT_WMV3:
if (*pStreamSize >= BITMAPINFOHEADER_SIZE) {
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
BitmapInfoHhr *pBitmapInfoHeader;
pBitmapInfoHeader = (BitmapInfoHhr *)pInputStream;
EXYNOS_OMX_BASEPORT *pExynosOutputPort = &pExynosComponent->pExynosPort[OUTPUT_PORT_INDEX];
EXYNOS_WMVDEC_HANDLE *pWmvDec = (EXYNOS_WMVDEC_HANDLE *)pVideoDec->hCodecHandle;
OMX_PTR hMFCHandle = pWmvDec->hMFCWmvHandle.hMFCHandle;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
EXYNOS_OMX_DATABUFFER *pSrcInputData = (EXYNOS_OMX_DATA *)pConfig;
OMX_U8 *pInputStream = pSrcInputData->bufferHeader->pBuffer;
#endif
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pWmvDec->wmvFormat == WMV_FORMAT_UNKNOWN) {
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "Process_Wmv_CodecConfigData. dataLen = %d", pSrcInputData->dataLen);
if (pSrcInputData->dataLen < 4) {
}
bMetaData = Make_Stream_MetaData(pSrcInputData->buffer.singlePlaneBuffer.dataBuffer, &oneFrameSize, pWmvDec->hMFCWmvHandle.wmvFormat
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
, pExynosComponent->pExynosPort[INPUT_PORT_INDEX].portDefinition.format.video.nFrameWidth
, pExynosComponent->pExynosPort[INPUT_PORT_INDEX].portDefinition.format.video.nFrameHeight
#endif
ret = OMX_ErrorInputDataDecodeYet;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
+ /* Set Immediately display for I Frame*/
pDecOps->Set_ImmediateDisplay(hMFCHandle);
#endif
EXIT:
if (pVideoDec->bDRCProcessing == OMX_TRUE) {
pVideoDec->nDRCSavedBufferCount = pExynosOutputPort->portDefinition.nBufferCountActual;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosOutputPort->portDefinition.nBufferCountActual = pWmvDec->hMFCWmvHandle.maxDPBNum;
pExynosOutputPort->portDefinition.nBufferCountMin = pWmvDec->hMFCWmvHandle.maxDPBNum;
#else
case OMX_COLOR_FormatYUV420SemiPlanar:
pExynosOutputPort->portDefinition.nBufferSize = (width * height * 3) / 2;
break;
-#ifdef SLP_PLATFORM /* NV12T fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12T fd */
case OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd:
- pExynosOutputPort->portDefinition.nBufferSize = sizeof(SCMN_IMGB);
+ pExynosOutputPort->portDefinition.nBufferSize = sizeof(MMVideoBuffer);
break;
#endif
case OMX_SEC_COLOR_FormatNV12Tiled:
pWmvDec->hMFCWmvHandle.indexTimestamp %= MAX_TIMESTAMP;
#ifdef USE_IMMEDIATE_DISPLAY
- /* Set Immediately display for I Frame*/
+ /* Set Immediately display for I Frame*/
if (pExynosComponent->checkTimeStamp.needCheckStartTimeStamp == OMX_TRUE) {
if ( pExynosComponent->checkTimeStamp.bImmediateDisplay == OMX_FALSE) {
/* Enable Immediately display After seek*/
}
}
#endif
-
+
/* queue work for input buffer */
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "oneFrameSize: %d, bufferHeader: 0x%x, dataBuffer: 0x%x", oneFrameSize, pSrcInputData->bufferHeader, pSrcInputData->buffer.singlePlaneBuffer.dataBuffer);
codecReturn = pInbufOps->Enqueue(hMFCHandle, (unsigned char **)&pSrcInputData->buffer.singlePlaneBuffer.dataBuffer,
pBufferInfo->imageHeight = bufferGeometry->nFrameHeight;
switch (bufferGeometry->eColorFormat) {
case VIDEO_COLORFORMAT_NV12:
-#ifdef SLP_PLATFORM /* NV12T fd */
+#ifdef TIZEN_FEATURE_E3250 /* NV12T fd */
pBufferInfo->ColorFormat = OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd;
#else
pBufferInfo->ColorFormat = OMX_COLOR_FormatYUV420SemiPlanar;
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "disp_pic_frame_type: %d", pVideoBuffer->frameType);
//#ifdef NEED_TIMESTAMP_REORDER
- if (pVideoDec->bNeedTimestampReorder == OMX_TRUE) { /* SLP_PLATFORM */
+ if (pVideoDec->bNeedTimestampReorder == OMX_TRUE) { /* TIZEN_FEATURE_E3250 */
if ((pVideoBuffer->frameType == VIDEO_FRAME_I)) {
pDstOutputData->timeStamp = pExynosComponent->timeStamp[indexTimestamp];
pDstOutputData->nFlags = pExynosComponent->nFlags[indexTimestamp];
Exynos_OSAL_Strcpy(pExynosPort->portDefinition.format.video.cMIMEType, "raw/video");
pExynosPort->portDefinition.format.video.pNativeRender = 0;
pExynosPort->portDefinition.format.video.bFlagErrorConcealment = OMX_FALSE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->portDefinition.format.video.eColorFormat = OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd;
#else
pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420Planar;
#endif
pExynosPort->portDefinition.bEnabled = OMX_TRUE;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->bufferProcessType = BUFFER_SHARE;
#else
pExynosPort->bufferProcessType = BUFFER_COPY;
pWmvDec->WmvComponent[i].eFormat = OMX_VIDEO_WMVFormat9;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pWmvDec->wmvFormat = WMV_FORMAT_UNKNOWN;
#endif
pVideoDec->exynos_process_codecConfigData = &Process_Wmv_CodecConfigData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoDec->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoDec->hSharedMemory == NULL) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "OMX_ErrorInsufficientResources, Line:%d", __LINE__);
pOMXComponent = (OMX_COMPONENTTYPE *)hComponent;
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoDec->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
#include "OMX_Video.h"
#include "ExynosVideoApi.h"
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
#define BITMAPINFOHEADER_SIZE 0
#define BITMAPINFOHEADER_ASFBINDING_SIZE 1
#else
OMX_BOOL bDestinationStart;
OMX_HANDLETYPE hSourceStartEvent;
OMX_HANDLETYPE hDestinationStartEvent;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
WMV_FORMAT wmvFormat;
#endif
} EXYNOS_WMVDEC_HANDLE;
-I$(top_srcdir)/exynos4/libcodec/video/v4l2/include \
-I$(top_srcdir)/exynos/include
+libOMX_Exynos_WMV_Decoder_la_LIBADD += $(MM_COMMON_LIB)
+libOMX_Exynos_WMV_Decoder_la_CFLAGS += $(MM_COMMON_CFLAGS)
+
if BOARD_USE_ANB
libOMX_Exynos_WMV_Decoder_la_CFLAGS += -DUSE_ANB
endif
ret = OMX_FALSE;
}
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
if (((exynosInputPort->bStoreMetaData == OMX_TRUE) && (eColorFormat == OMX_COLOR_FormatAndroidOpaque)) ||
(exynosInputPort->bStoreMetaData == OMX_FALSE))
#else
#define MFC_INPUT_BUFFER_PLANE 2
#define MFC_OUTPUT_BUFFER_PLANE 1
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
/* FIXME: for camera slow motion 12 buffer and eos issue, we increase this value */
/* FIXME: for trim small resolution video. dec + enc case */
#define MAX_CAMERA_INPUTBUFFER_NUM 25 /* number of metadata buffer */
pTempBufferHdr->nInputPortIndex = INPUT_PORT_INDEX;
else
pTempBufferHdr->nOutputPortIndex = OUTPUT_PORT_INDEX;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (nPortIndex == OUTPUT_PORT_INDEX && pVideoEnc->bSharedOutputFD == OMX_TRUE)
pExynosPort->extendBufferHeader[i].buf_fd[0] = (int)(pBuffer); /*IL Client provides only FD value*/
int i = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "flushPort idx:%d", nPortIndex);
#endif
OMX_U32 i = 0;
FunctionIn();
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "bufferFlush idx:%d", nPortIndex);
#endif
Exynos_OSAL_Free(pMessage);
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
if (pDataBuffer->allocSize <= pDataBuffer->dataLen)
Exynos_OSAL_Log(EXYNOS_LOG_WARNING, "Input Buffer Full, Check input buffer size! allocSize:%d, dataLen:%d", pDataBuffer->allocSize, pDataBuffer->dataLen);
#endif
pPortFormat->xFramerate = pPortDef->format.video.xFramerate;
break;
case supportFormat_4:
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "can not support this format");
#else
pPortFormat->eCompressionFormat = OMX_VIDEO_CodingUnused;
pH264Param->NumberBFrames = 0; /* 0 ~ 2 */
pH264Param->NumberReferenceFrames = 1;
pH264Param->NumberRefForPframes = 1;
-#ifdef SLP_PLATFORM /* for B2 camera */
+#ifdef TIZEN_FEATURE_E3250 /* for B2 camera */
pH264Param->LoopFilterDisable = 0; /* 1: Loop Filter Disable, 0: Filter Enable */
#else
pH264Param->LoopFilterDisable = 1; /* 1: Loop Filter Disable, 0: Filter Enable */
/*************/
/* Does not require any actions. */
} else {
-#ifndef SLP_PLATFORM /* slp platform can go into here */
+#ifndef TIZEN_FEATURE_E3250 /* slp platform can go into here */
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "Failed to get input buffer info");
ret = OMX_ErrorNotImplemented;
goto EXIT;
Exynos_OSAL_Memcpy(pDstAVCComponent, pSrcAVCComponent, sizeof(OMX_VIDEO_PARAM_AVCTYPE));
}
break;
-
+
case OMX_IndexParamVideoSliceFMO:
{
OMX_VIDEO_PARAM_AVCSLICEFMO *pDstSliceFmo = (OMX_VIDEO_PARAM_AVCSLICEFMO *)pComponentParameterStructure;
}
break;
#endif
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_IndexParamSharedOutputFD:
{
EXYNOS_OMX_VIDEOENC_COMPONENT *pVideoEnc = NULL;
if (Exynos_OSAL_Strcmp(cParameterName, EXYNOS_INDEX_CONFIG_VIDEO_INTRAPERIOD) == 0) {
*pIndexType = OMX_IndexConfigVideoIntraPeriod;
ret = OMX_ErrorNone;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
} else if (Exynos_OSAL_Strcmp(cParameterName, EXYNOS_INDEX_PARAM_ENC_SHARED_OUTPUT_FD) == 0) {
*pIndexType = (OMX_INDEXTYPE) OMX_IndexParamSharedOutputFD;
goto EXIT;
eColorFormat = pExynosInputPort->portDefinition.format.video.eColorFormat;
if (pExynosInputPort->bStoreMetaData == OMX_TRUE) {
-#ifndef SLP_PLATFORM /* we do not use OMX_COLOR_FormatAndroidOpaque */
+#ifndef TIZEN_FEATURE_E3250 /* we do not use OMX_COLOR_FormatAndroidOpaque */
if (eColorFormat == OMX_COLOR_FormatAndroidOpaque) {
pExynosInputPort->bufferProcessType = BUFFER_COPY;
} else {
}
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
if (pVideoEnc->bSharedOutputFD == OMX_TRUE) {
pExynosOutputPort->bufferProcessType = BUFFER_SHARE;
} else {
if (pExynosOutputPort->bufferProcessType & BUFFER_COPY) {
for (i = 0; i < MFC_OUTPUT_BUFFER_NUM_MAX; i++) {
if (pVideoEnc->pMFCEncOutputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
if (pVideoEnc->pMFCEncOutputBuffer[i]->pVirAddr[0] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoEnc->hSharedMemory, pVideoEnc->pMFCEncOutputBuffer[i]->pVirAddr[0]);
#endif
if (pH264Enc->hMFCH264Handle.bShareableBuf == OMX_TRUE) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoEnc->pMFCEncInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoEnc->hSharedMemory, pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane]);
pExynosPort->portDefinition.format.video.eCompressionFormat = OMX_VIDEO_CodingUnused;
Exynos_OSAL_Memset(pExynosPort->portDefinition.format.video.cMIMEType, 0, MAX_OMX_MIMETYPE_SIZE);
Exynos_OSAL_Strcpy(pExynosPort->portDefinition.format.video.cMIMEType, "raw/video");
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->portDefinition.format.video.eColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
#else
pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420SemiPlanar;
pVideoEnc->exynos_codec_getCodecInputPrivateData = &GetCodecInputPrivateData;
pVideoEnc->exynos_codec_getCodecOutputPrivateData = &GetCodecOutputPrivateData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoEnc->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoEnc->hSharedMemory == NULL) {
Exynos_OSAL_Free(pH264Enc);
pOMXComponent = (OMX_COMPONENTTYPE *)hComponent;
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoEnc = (EXYNOS_OMX_VIDEOENC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoEnc->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
switch ((EXYNOS_OMX_COLOR_FORMATTYPE)pExynosInputPort->portDefinition.format.video.eColorFormat) {
case OMX_COLOR_FormatYUV420SemiPlanar:
case OMX_COLOR_FormatYUV420Planar: /* Converted to NV12 in Exynos_Preprocessor_InputData */
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd:
#endif
#ifdef USE_METADATABUFFERTYPE
switch ((EXYNOS_OMX_COLOR_FORMATTYPE)pExynosInputPort->portDefinition.format.video.eColorFormat) {
case OMX_COLOR_FormatYUV420SemiPlanar:
case OMX_COLOR_FormatYUV420Planar: /* Converted to NV12 in Exynos_Preprocessor_InputData */
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd:
#endif
#ifdef USE_METADATABUFFERTYPE
/*************/
/* Does not require any actions. */
} else {
-#ifndef SLP_PLATFORM /* slp platform can go into here */
+#ifndef TIZEN_FEATURE_E3250 /* slp platform can go into here */
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "Failed to get input buffer info");
ret = OMX_ErrorNotImplemented;
goto EXIT;
eColorFormat = pExynosInputPort->portDefinition.format.video.eColorFormat;
if (pExynosInputPort->bStoreMetaData == OMX_TRUE) {
-#ifndef SLP_PLATFORM /* we do not use OMX_COLOR_FormatAndroidOpaque */
+#ifndef TIZEN_FEATURE_E3250 /* we do not use OMX_COLOR_FormatAndroidOpaque */
if (eColorFormat == OMX_COLOR_FormatAndroidOpaque) {
pExynosInputPort->bufferProcessType = BUFFER_COPY;
} else {
if (pMpeg4Enc->hMFCMpeg4Handle.bShareableBuf == OMX_TRUE) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoEnc->pMFCEncInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoEnc->hSharedMemory, pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane]);
if (pExynosInputPort->bufferProcessType & BUFFER_COPY) {
for (i = 0; i < MFC_INPUT_BUFFER_NUM_MAX; i++) {
if (pVideoEnc->pMFCEncInputBuffer[i] != NULL) {
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
for (plane = 0; plane < MFC_INPUT_BUFFER_PLANE; plane++) {
if (pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane] != NULL)
Exynos_OSAL_SharedMemory_Free(pVideoEnc->hSharedMemory, pVideoEnc->pMFCEncInputBuffer[i]->pVirAddr[plane]);
pVideoEnc->configChange = OMX_FALSE;
}
-
+
if ((pSrcInputData->dataLen >= 0) ||
((pSrcInputData->nFlags & OMX_BUFFERFLAG_EOS) == OMX_BUFFERFLAG_EOS)) {
OMX_U32 pMFCYUVDataSize[MFC_INPUT_BUFFER_PLANE] = {NULL, NULL};
pExynosPort->portDefinition.format.video.bFlagErrorConcealment = OMX_FALSE;
Exynos_OSAL_Memset(pExynosPort->portDefinition.format.video.cMIMEType, 0, MAX_OMX_MIMETYPE_SIZE);
Exynos_OSAL_Strcpy(pExynosPort->portDefinition.format.video.cMIMEType, "raw/video");
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
pExynosPort->portDefinition.format.video.eColorFormat = OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd;
#else
pExynosPort->portDefinition.format.video.eColorFormat = OMX_COLOR_FormatYUV420SemiPlanar;
pVideoEnc->exynos_codec_getCodecInputPrivateData = &GetCodecInputPrivateData;
pVideoEnc->exynos_codec_getCodecOutputPrivateData = &GetCodecOutputPrivateData;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
pVideoEnc->hSharedMemory = Exynos_OSAL_SharedMemory_Open();
if (pVideoEnc->hSharedMemory == NULL) {
Exynos_OSAL_Free(pMpeg4Enc);
pOMXComponent = (OMX_COMPONENTTYPE *)hComponent;
pExynosComponent = (EXYNOS_OMX_BASECOMPONENT *)pOMXComponent->pComponentPrivate;
pVideoEnc = (EXYNOS_OMX_VIDEOENC_COMPONENT *)pExynosComponent->hComponentHandle;
-#ifndef SLP_PLATFORM /* do not use ion */
+#ifndef TIZEN_FEATURE_E3250 /* do not use ion */
Exynos_OSAL_SharedMemory_Close(pVideoEnc->hSharedMemory);
#endif
Exynos_OSAL_Free(pExynosComponent->componentName);
extern "C" {
#endif
-#ifdef SLP_PLATFORM /* build env */
+#ifdef TIZEN_FEATURE_E3250 /* build env */
#define Exynos_OMX_Init OMX_Init
#define Exynos_OMX_Deinit OMX_Deinit
#define Exynos_OMX_ComponentNameEnum OMX_ComponentNameEnum
#include "OMX_IVCommon.h"
#define VERSIONMAJOR_NUMBER 1
-#ifndef SLP_PLATFORM /* omx version */
+#ifndef TIZEN_FEATURE_E3250 /* omx version */
#define VERSIONMINOR_NUMBER 0
#else
-#define VERSIONMINOR_NUMBER 1
+#define VERSIONMINOR_NUMBER 1
#endif
#define REVISION_NUMBER 0
#define STEP_NUMBER 0
OMX_IndexVendorS3DMode = 0x7F000003,
#endif
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
#define EXYNOS_INDEX_PARAM_ENABLE_PB "OMX.SEC.index.enablePlatformSpecificBuffers"
OMX_IndexParamEnablePlatformSpecificBuffers = 0x7F000011,
#else
/* prepend SPS/PPS to I/IDR for H.264 Encoder */
#define EXYNOS_INDEX_PARAM_PREPEND_SPSPPS_TO_IDR "OMX.SEC.index.prependSPSPPSToIDRFrames"
OMX_IndexParamPrependSPSPPSToIDR = 0x7F000015,
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
/* avi demux timestamp reorder */
#define EXYNOS_INDEX_PARAM_ENABLE_TS_REORDER "OMX.SEC.index.enableTimestampReorder"
OMX_IndexParamEnableTimestampReorder = 0x7F000016,
} EXYNOS_OMX_TRANS_STATETYPE;
typedef enum _EXYNOS_OMX_COLOR_FORMATTYPE {
-#ifdef SLP_PLATFORM /* dmabuf fd color format */
+#ifdef TIZEN_FEATURE_E3250 /* dmabuf fd color format */
OMX_SEC_COLOR_FormatNV12T_DmaBuf_Fd = 0x7F000001, /* use same value with phyaddr */
OMX_SEC_COLOR_FormatNV12L_DmaBuf_Fd = 0x7F000002,
#else
#define EXYNOS_IMPORT_REF __attribute__((visibility("default")))
#endif
-#ifdef SLP_PLATFORM
-/* for using ST12, set the hw addr at SCMN_IMGB type buffer */
-#define SCMN_IMGB_MAX_PLANE (4) /* max channel count */
-
-/* image buffer definition
- +------------------------------------------+ ---
- | | ^
- | a[], p[] | |
- | +---------------------------+ --- | |
- | | | ^ | |
- | |<---------- w[] ---------->| | | |
- | | | | | |
- | | | |
- | | | h[] | e[]
- | | | |
- | | | | | |
- | | | | | |
- | | | v | |
- | +---------------------------+ --- | |
- | | v
- +------------------------------------------+ ---
-
- |<----------------- s[] ------------------>|
-*/
-
-typedef struct
-{
- int w[SCMN_IMGB_MAX_PLANE]; /* width of each image plane */
- int h[SCMN_IMGB_MAX_PLANE]; /* height of each image plane */
- int s[SCMN_IMGB_MAX_PLANE]; /* stride of each image plane */
- int e[SCMN_IMGB_MAX_PLANE]; /* elevation of each image plane */
- void * a[SCMN_IMGB_MAX_PLANE]; /* user space address of each image plane */
- void * p[SCMN_IMGB_MAX_PLANE]; /* physical address of each image plane, if needs */
- int cs; /* color space type of image */
- int x; /* left postion, if needs */
- int y; /* top position, if needs */
- int __dummy2; /* to align memory */
- int data[16]; /* arbitrary data */
-
- /* dmabuf fd */
- int fd[SCMN_IMGB_MAX_PLANE];
-
- /* flag for buffer share */
- int buf_share_method;
-
- /* Y plane size in case of ST12 */
- int y_size;
- /* UV plane size in case of ST12 */
- int uv_size;
-
- /* Tizen buffer object of each image plane */
- void *bo[SCMN_IMGB_MAX_PLANE];
-
- /* JPEG data */
- void *jpeg_data;
- /* JPEG size */
- int jpeg_size;
-
- /* tzmem buffer */
- int tz_enable;
-} SCMN_IMGB;
-
-
+#ifdef TIZEN_FEATURE_E3250
typedef enum {
MEMORY_PADDR = 0,
MEMORY_DMABUF,
* @history
* 2012.02.20 : Create
*/
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <utils/Log.h>
#else
#ifdef USE_DLOG
#include "Exynos_OSAL_Log.h"
-#ifdef SLP_PLATFORM /* build env */
+#ifdef TIZEN_FEATURE_E3250 /* build env */
static int component_debug_level = -1;
#endif
void _Exynos_OSAL_Log(EXYNOS_LOG_LEVEL logLevel, const char *tag, const char *msg, ...)
{
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
va_list argptr;
va_start(argptr, msg);
extern "C" {
#endif
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
#ifndef EXYNOS_LOG_OFF
#define EXYNOS_LOG
#endif
#ifdef EXYNOS_TRACE_ON
#define EXYNOS_TRACE
#endif
-#endif /* SLP_PLATFORM */
+#endif /* TIZEN_FEATURE_E3250 */
typedef enum _LOG_LEVEL
{
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
EXYNOS_LOG_VERVOSE,
#endif
EXYNOS_LOG_TRACE,
EXYNOS_LOG_ERROR
} EXYNOS_LOG_LEVEL;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
#ifdef EXYNOS_LOG
#define Exynos_OSAL_Log(a, ...) ((void)_Exynos_OSAL_Log(a, EXYNOS_LOG_TAG, __VA_ARGS__))
#define FunctionOut() ((void *)0)
#endif
-#else /* SLP_PLATFORM */
+#else /* TIZEN_FEATURE_E3250 */
#define OMX_DEBUG_LEVEL 2 /* EXYNOS_LOG_INFO */
#define FunctionOut() _Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, EXYNOS_LOG_TAG, EXYNOS_LOG_TAG"] %s Out , Line: %d", __FUNCTION__, __LINE__)
#endif
-#endif /* SLP_PLATFORM */
+#endif /* TIZEN_FEATURE_E3250 */
extern void _Exynos_OSAL_Log(EXYNOS_LOG_LEVEL logLevel, const char *tag, const char *msg, ...);
OMX_PTR Exynos_OSAL_Malloc(OMX_U32 size)
{
mem_cnt++;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "alloc count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "alloc count: %d", mem_cnt);
void Exynos_OSAL_Free(OMX_PTR addr)
{
mem_cnt--;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "free count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "free count: %d", mem_cnt);
FunctionIn();
OMX_ERRORTYPE ret = OMX_ErrorNone;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
#else
GraphicBufferMapper &mapper = GraphicBufferMapper::get();
buffer_handle_t bufferHandle = (buffer_handle_t) handle;
FunctionIn();
OMX_ERRORTYPE ret = OMX_ErrorNone;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
ExynosVideoPlane *vplanes = (ExynosVideoPlane *) planes;
MMVideoBuffer *buffer = (MMVideoBuffer *) pBuffer;
return ret;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_ERRORTYPE Exynos_OSAL_UnlockPB(OMX_IN OMX_PTR pBuffer, EXYNOS_OMX_DATA *pData, EXYNOS_OMX_BASEPORT *pExynosPort,EXYNOS_OMX_BASEPORT *pExynosInPort)
#else
OMX_ERRORTYPE Exynos_OSAL_UnlockPB(OMX_IN OMX_PTR pBuffer, EXYNOS_OMX_DATA *pData)
FunctionIn();
OMX_ERRORTYPE ret = OMX_ErrorNone;
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
MMVideoBuffer *pSlpOutBuf = NULL;
DECODE_CODEC_EXTRA_BUFFERINFO *pBufferInfo = NULL;
}
switch (nIndex) {
-#if 0 /* SLP_PLATFORM */
+#if 0 /* TIZEN_FEATURE_E3250 */
case OMX_IndexParamGetAndroidNativeBuffer:
{
GetAndroidNativeBufferUsageParams *pANBParams = (GetAndroidNativeBufferUsageParams *) ComponentParameterStructure;
pVideoDec = (EXYNOS_OMX_VIDEODEC_COMPONENT *)pExynosComponent->hComponentHandle;
switch (nIndex) {
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
case OMX_IndexParamEnablePlatformSpecificBuffers:
#else
case OMX_IndexParamEnableAndroidBuffers:
goto EXIT;
}
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
/* PB and DPB Buffer Sharing */
if ((portIndex == OUTPUT_PORT_INDEX) &&
((pExynosPort->bufferProcessType & BUFFER_PBSHARE) == BUFFER_PBSHARE)) {
}
break;
-#if 0 /* SLP_PLATFORM */
+#if 0 /* TIZEN_FEATURE_E3250 */
case OMX_IndexParamUseAndroidNativeBuffer:
{
UseAndroidNativeBufferParams *pANBParams = (UseAndroidNativeBufferParams *) ComponentParameterStructure;
OMX_OUT OMX_U32 *pStride,
OMX_OUT OMX_PTR planes);
-#ifdef SLP_PLATFORM
+#ifdef TIZEN_FEATURE_E3250
OMX_ERRORTYPE Exynos_OSAL_UnlockPB(OMX_IN OMX_PTR pBuffer, OMX_IN EXYNOS_OMX_DATA *pData, EXYNOS_OMX_BASEPORT *pExynosPort, EXYNOS_OMX_BASEPORT *pExynosInPort);
#else
OMX_ERRORTYPE Exynos_OSAL_UnlockPB(OMX_IN OMX_PTR pBuffer, OMX_IN EXYNOS_OMX_DATA *pData);
OMX_ERRORTYPE Exynos_OSAL_GetInfoFromMetaData(OMX_IN OMX_BYTE pBuffer,
OMX_OUT OMX_PTR *pOutBuffer);
-#if 0 /* SLP_PLATFORM */
+#if 0 /* TIZEN_FEATURE_E3250 */
OMX_ERRORTYPE Exynos_OSAL_CheckPB(OMX_IN EXYNOS_OMX_DATA *pBuffer,
OMX_OUT OMX_BOOL *bIsPBEnabled);
#endif
#include <string.h>
#include <errno.h>
#include <pthread.h>
-#ifndef SLP_PLATFORM /* build env */
+#ifndef TIZEN_FEATURE_E3250 /* build env */
#include <cutils/log.h>
#include <cutils/atomic.h>
#endif
Exynos_OSAL_MutexUnlock(pHandle->hSMMutex);
mem_cnt++;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "SharedMemory alloc count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "SharedMemory alloc count: %d", mem_cnt);
Exynos_OSAL_Free(pDeleteElement);
mem_cnt--;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "SharedMemory free count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "SharedMemory free count: %d", mem_cnt);
Exynos_OSAL_MutexUnlock(pHandle->hSMMutex);
mem_cnt++;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "SharedMemory alloc count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "SharedMemory alloc count: %d", mem_cnt);
Exynos_OSAL_Free(pDeleteElement);
mem_cnt--;
-#ifndef SLP_PLATFORM
+#ifndef TIZEN_FEATURE_E3250
Exynos_OSAL_Log(EXYNOS_LOG_TRACE, "SharedMemory free count: %d", mem_cnt);
#else
Exynos_OSAL_Log(EXYNOS_LOG_VERVOSE, "SharedMemory free count: %d", mem_cnt);
Name: libomxil-e3250-v4l2
Summary: OpenMAX IL for e3250-v4l2
-Version: 0.1.2
+Version: 0.1.3
License: Apache-2.0
Group: Development/Libraries
Release: 0
Requires:
Libs: -L${libdir} -lsrp
-Cflags: -I${includedir}/srp -DSLP_PLATFORM
+Cflags: -I${includedir}/srp -DTIZEN_FEATURE_E3250