You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
2.5 KiB
99 lines
2.5 KiB
12 years ago
|
/*
|
||
|
*
|
||
|
* Copyright 2010 Samsung Electronics S.LSI Co. LTD
|
||
|
*
|
||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
* you may not use this file except in compliance with the License.
|
||
|
* You may obtain a copy of the License at
|
||
|
*
|
||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
*
|
||
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
* See the License for the specific language governing permissions and
|
||
|
* limitations under the License.
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* @file SEC_OMX_Mpeg4dec.h
|
||
|
* @brief
|
||
|
* @author Yunji Kim (yunji.kim@samsung.com)
|
||
|
* @version 1.0
|
||
|
* @history
|
||
|
* 2010.7.15 : Create
|
||
|
*/
|
||
|
|
||
|
#ifndef SEC_OMX_MPEG4_DEC_COMPONENT
|
||
|
#define SEC_OMX_MPEG4_DEC_COMPONENT
|
||
|
|
||
|
#include "SEC_OMX_Def.h"
|
||
|
#include "OMX_Component.h"
|
||
|
|
||
|
|
||
|
typedef enum _CODEC_TYPE
|
||
|
{
|
||
|
CODEC_TYPE_H263,
|
||
|
CODEC_TYPE_MPEG4
|
||
|
} CODEC_TYPE;
|
||
|
|
||
|
/*
|
||
|
* This structure is the same as BitmapInfoHhr struct in pv_avifile_typedefs.h file
|
||
|
*/
|
||
|
typedef struct _BitmapInfoHhr
|
||
|
{
|
||
|
OMX_U32 BiSize;
|
||
|
OMX_U32 BiWidth;
|
||
|
OMX_U32 BiHeight;
|
||
|
OMX_U16 BiPlanes;
|
||
|
OMX_U16 BiBitCount;
|
||
|
OMX_U32 BiCompression;
|
||
|
OMX_U32 BiSizeImage;
|
||
|
OMX_U32 BiXPelsPerMeter;
|
||
|
OMX_U32 BiYPelsPerMeter;
|
||
|
OMX_U32 BiClrUsed;
|
||
|
OMX_U32 BiClrImportant;
|
||
|
} BitmapInfoHhr;
|
||
|
|
||
|
typedef struct _SEC_MFC_MPEG4_HANDLE
|
||
|
{
|
||
|
OMX_HANDLETYPE hMFCHandle;
|
||
|
OMX_PTR pMFCStreamBuffer;
|
||
|
OMX_PTR pMFCStreamPhyBuffer;
|
||
|
OMX_U32 indexTimestamp;
|
||
|
OMX_BOOL bConfiguredMFC;
|
||
|
OMX_BOOL bThumbnailMode;
|
||
|
CODEC_TYPE codecType;
|
||
|
OMX_S32 returnCodec;
|
||
|
} SEC_MFC_MPEG4_HANDLE;
|
||
|
|
||
|
typedef struct _SEC_MPEG4_HANDLE
|
||
|
{
|
||
|
/* OMX Codec specific */
|
||
|
OMX_VIDEO_PARAM_H263TYPE h263Component[ALL_PORT_NUM];
|
||
|
OMX_VIDEO_PARAM_MPEG4TYPE mpeg4Component[ALL_PORT_NUM];
|
||
|
OMX_VIDEO_PARAM_ERRORCORRECTIONTYPE errorCorrectionType[ALL_PORT_NUM];
|
||
|
|
||
|
/* SEC MFC Codec specific */
|
||
|
SEC_MFC_MPEG4_HANDLE hMFCMpeg4Handle;
|
||
|
|
||
|
/* For Non-Block mode */
|
||
|
SEC_MFC_NBDEC_THREAD NBDecThread;
|
||
|
OMX_BOOL bFirstFrame;
|
||
|
MFC_DEC_INPUT_BUFFER MFCDecInputBuffer[MFC_INPUT_BUFFER_NUM_MAX];
|
||
|
OMX_U32 indexInputBuffer;
|
||
|
} SEC_MPEG4_HANDLE;
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
OSCL_EXPORT_REF OMX_ERRORTYPE SEC_OMX_ComponentInit(OMX_HANDLETYPE hComponent, OMX_STRING componentName);
|
||
|
OMX_ERRORTYPE SEC_OMX_ComponentDeinit(OMX_HANDLETYPE hComponent);
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
};
|
||
|
#endif
|
||
|
|
||
|
#endif
|