OSDN Git Service

original
[gb-231r1-is01/Gingerbread_2.3.3_r1_IS01.git] / hardware / ti / omap3 / omx / video / src / openmax_il / prepost_processor / tests / VPPTest.h
1
2 /*
3  *  Copyright 2001-2008 Texas Instruments - http://www.ti.com/
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 *             Texas Instruments OMAP (TM) Platform Software
19 *  (c) Copyright Texas Instruments, Incorporated.  All Rights Reserved.
20 *
21 *  Use of this software is controlled by the terms and conditions found
22 *  in the license agreement under which this software has been supplied.
23 * ============================================================================ */
24
25 /**
26 * @file OMX_PostProcTest.h
27 *
28 * Header file for PostProcessor OMX Component Test application.
29 *
30 * @path  $(CSLPATH)\post_proc\tests\OMX_PostProcTest.h
31 *
32 * @rev  0.1
33 */
34
35 /* =================================================================================  
36 *! Revision History 
37 *! ===================================
38 *! 
39 *!
40 *! 02-Dec-2005 mf: Revisions appear in reverse chronological order; 
41 *! that is, newest first.  The date format is dd-Mon-yyyy.  
42 * ================================================================================= */
43
44 #ifndef VPP_TEST_H
45 #define VPP_TEST_H
46
47 /****************************************************************
48 *  INCLUDE FILES
49 ****************************************************************/
50 #include <OMX_Core.h>       
51 #include <OMX_Video.h>  
52 #include <OMX_Types.h>  
53
54 #define MAX_FRAME_WIDTH      640 
55 #define MAX_FRAME_HEIGHT     480
56 #define MAX_422_YUV_BUF_SIZE (MAX_FRAME_WIDTH * MAX_FRAME_HEIGHT * 2)
57 #define MAX_420_YUV_BUF_SIZE (MAX_FRAME_WIDTH * MAX_FRAME_HEIGHT * 1.5)
58 #define MAX_RGB_565_BUF_SIZE (MAX_FRAME_WIDTH * MAX_FRAME_HEIGHT * 2)
59
60 #define QQCIF_FRAME_WIDTH       88 
61 #define QQCIF_FRAME_HEIGHT      72
62 #define QQCIF_422_YUV_BUF_SIZE  (QQCIF_FRAME_WIDTH * QQCIF_FRAME_HEIGHT * 2) 
63 #define QQCIF_420_YUV_BUF_SIZE  (QQCIF_FRAME_WIDTH * QQCIF_FRAME_HEIGHT * 1.5) 
64 #define QQCIF_RGB_565_BUF_SIZE  (QQCIF_FRAME_WIDTH * QQCIF_FRAME_HEIGHT * 2) 
65
66 #define QCIF_FRAME_WIDTH       176 
67 #define QCIF_FRAME_HEIGHT      144
68 #define QCIF_422_YUV_BUF_SIZE  (QCIF_FRAME_WIDTH * QCIF_FRAME_HEIGHT * 2) 
69 #define QCIF_420_YUV_BUF_SIZE  (QCIF_FRAME_WIDTH * QCIF_FRAME_HEIGHT * 1.5)
70 #define QCIF_RGB_565_BUF_SIZE  (QCIF_FRAME_WIDTH * QCIF_FRAME_HEIGHT * 2)  
71
72 #define QQVGA_FRAME_WIDTH       160
73 #define QQVGA_FRAME_HEIGHT      120
74 #define QQVGA_422_YUV_BUF_SIZE  (QQVGA_FRAME_WIDTH * QQVGA_FRAME_HEIGHT * 2)
75 #define QQVGA_420_YUV_BUF_SIZE  (QQVGA_FRAME_WIDTH * QQVGA_FRAME_HEIGHT * 1.5)
76 #define QQVGA_RGB_565_BUF_SIZE  (QQVGA_FRAME_WIDTH * QQVGA_FRAME_HEIGHT * 2)
77
78 #define QVGA_FRAME_WIDTH       320 
79 #define QVGA_FRAME_HEIGHT      240
80 #define QVGA_422_YUV_BUF_SIZE  (QVGA_FRAME_WIDTH * QVGA_FRAME_HEIGHT * 2) 
81 #define QVGA_420_YUV_BUF_SIZE  (QVGA_FRAME_WIDTH * QVGA_FRAME_HEIGHT * 1.5) 
82 #define QVGA_RGB_565_BUF_SIZE  (QVGA_FRAME_WIDTH * QVGA_FRAME_HEIGHT * 2) 
83
84 #define VGA_FRAME_WIDTH       640 
85 #define VGA_FRAME_HEIGHT      480
86 #define VGA_422_YUV_BUF_SIZE  (VGA_FRAME_WIDTH * VGA_FRAME_HEIGHT * 2) 
87 #define VGA_420_YUV_BUF_SIZE  (VGA_FRAME_WIDTH * VGA_FRAME_HEIGHT * 1.5)
88 #define VGA_RGB_565_BUF_SIZE  (VGA_FRAME_WIDTH * VGA_FRAME_HEIGHT * 2)  
89
90 #define CIF_FRAME_WIDTH       352 
91 #define CIF_FRAME_HEIGHT      288
92 #define CIF_422_YUV_BUF_SIZE  (CIF_FRAME_WIDTH * CIF_FRAME_HEIGHT * 2) 
93 #define CIF_420_YUV_BUF_SIZE  (CIF_FRAME_WIDTH * CIF_FRAME_HEIGHT * 1.5) 
94 #define CIF_RGB_565_BUF_SIZE  (CIF_FRAME_WIDTH * CIF_FRAME_HEIGHT * 2) 
95
96 #define MAX_POSTPROC_BUFFERS 4
97 #define MAX_MPEG4D_OUT_BUFFERS 1
98 #define MAX_VPP_BUFFERS 4
99
100 #define DSP_MMU_FAULT_HANDLING
101
102 #define OMX_CONF_INIT_STRUCT(_s_, _name_)  \
103 { \
104     memset((_s_), 0x0, sizeof(_name_));  \
105     (_s_)->nSize = sizeof(_name_);    \
106     (_s_)->nVersion.s.nVersionMajor = 1;  \
107     (_s_)->nVersion.s.nVersionMinor = 0;  \
108     (_s_)->nVersion.s.nRevision = 0;    \
109     (_s_)->nVersion.s.nStep = 0; \
110 }
111
112 #if 1
113     #define PRINTF(str,args...) printf("\n"str"\n",##args)
114 #else
115     #define PRINTF(str,args...)
116 #endif
117
118 #define EXIT_IF_ERROR(_eError,_string)          \
119 {                                               \
120     if(_eError != OMX_ErrorNone) {              \
121          printf(_string); \
122         goto EXIT;              \
123         }                          \
124 }
125
126 #define CHK_COND(_predicate,_eError,_eCode,_string) \
127 { \
128     if(_predicate) { \
129                 _eError = _eCode; \
130                 printf(_string); \
131                 goto EXIT; \
132         } \
133 }
134
135 #define MALLOC(_ptr,_castType,_type,_eError) \
136 {                       \
137   _ptr = (_castType *)malloc(sizeof(_type)); \
138     if(!_ptr) { \
139         _eError = OMX_ErrorInsufficientResources; \
140         goto EXIT; \
141     } \
142 }
143
144 #define MEMSET(_ps,_c,_n,_eError) \
145 {                                   \
146   if(memset(_ps,_c,_n) != _ps) {           \
147         _eError = OMX_ErrorInsufficientResources; \
148         goto EXIT; \
149   }    \
150 }
151
152 typedef struct _COMPONENT_PORTINDEX_DEF {
153         int input_port;
154         int overlay_port;
155         int output_port;
156         int yuvoutput_port;
157         int rgboutput_port;
158 } COMPONENT_PORTINDEX_DEF;
159
160 #endif /* OMX_POSTPROC_TEST_H */