Exynos_OMX_Vp8dec.h revision d03573a4a182b0a36eaa16fb7638d98429d1c3fb
1/*
2 *
3 * Copyright 2012 Samsung Electronics S.LSI Co. LTD
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 *      http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18/*
19 * @file       Exynos_OMX_Vp8dec.h
20 * @brief
21 * @author     Satish Kumar Reddy (palli.satish@samsung.com)
22 * @author     SeungBeom Kim (sbcrux.kim@samsung.com)
23 * @version    2.0.0
24 * @history
25 *   2012.02.20 : Create
26 */
27
28#ifndef EXYNOS_OMX_VP8_DEC_COMPONENT
29#define EXYNOS_OMX_VP8_DEC_COMPONENT
30
31#include "Exynos_OMX_Def.h"
32#include "OMX_Component.h"
33#include "OMX_Video.h"
34#include "ExynosVideoApi.h"
35
36
37typedef struct _EXYNOS_MFC_VP8DEC_HANDLE
38{
39    OMX_HANDLETYPE             hMFCHandle;
40    OMX_U32                    indexTimestamp;
41    OMX_U32                    outputIndexTimestamp;
42    OMX_BOOL                   bConfiguredMFCSrc;
43    OMX_BOOL                   bConfiguredMFCDst;
44    OMX_U32                    MAXDPBNum;
45
46    ExynosVideoColorFormatType MFCOutputColorType;
47    ExynosVideoDecOps         *pDecOps;
48    ExynosVideoDecBufferOps   *pInbufOps;
49    ExynosVideoDecBufferOps   *pOutbufOps;
50    ExynosVideoGeometry        codecOutbufConf;
51} EXYNOS_MFC_VP8DEC_HANDLE;
52
53typedef struct _EXYNOS_VP8DEC_HANDLE
54{
55    /* OMX Codec specific */
56    OMX_VIDEO_PARAM_ERRORCORRECTIONTYPE errorCorrectionType[ALL_PORT_NUM];
57
58    /* EXYNOS MFC Codec specific */
59    EXYNOS_MFC_VP8DEC_HANDLE            hMFCVp8Handle;
60
61    OMX_BOOL bSourceStart;
62    OMX_BOOL bDestinationStart;
63    OMX_HANDLETYPE hSourceStartEvent;
64    OMX_HANDLETYPE hDestinationStartEvent;
65} EXYNOS_VP8DEC_HANDLE;
66
67#ifdef __cplusplus
68extern "C" {
69#endif
70
71OSCL_EXPORT_REF OMX_ERRORTYPE Exynos_OMX_ComponentInit(
72    OMX_HANDLETYPE hComponent,
73    OMX_STRING componentName);
74OMX_ERRORTYPE Exynos_OMX_ComponentDeinit(
75    OMX_HANDLETYPE hComponent);
76
77#ifdef __cplusplus
78};
79#endif
80
81#endif
82