omxcameratest.h

Go to the documentation of this file.
00001 
00028 #ifndef _OMX_CAMERA_TEST_H_
00029 #define _OMX_CAMERA_TEST_H_
00030 
00031 #include <pthread.h>
00032 
00033 #include "tsemaphore.h"
00034 #include <user_debug_levels.h>
00035 
00036 
00037 
00039 #define VERSIONMAJOR    1
00040 #define VERSIONMINOR    1
00041 #define VERSIONREVISION 0
00042 #define VERSIONSTEP     0
00043 
00044 
00046 #define DEFAULT_FRAME_RATE 15
00047 
00048 #define DEFAULT_FRAME_WIDTH 320
00049 #define DEFAULT_FRAME_HEIGHT 240
00050 
00051 #define DEFAULT_CAMERA_COLOR_FORMAT OMX_COLOR_FormatYUV420PackedPlanar
00052 #define DEFAULT_FBSINK_COLOR_FORMAT OMX_COLOR_Format24bitRGB888
00053 #define DEFAULT_CAPTURE_COLOR_FORMAT DEFAULT_CAMERA_COLOR_FORMAT
00054 
00055 #define MAXBUFNUM_PERPORT 16
00056 
00058 enum 
00059 {
00060     OMX_CAMPORT_INDEX_VF = 0, /* preview/viewfinder */
00061     OMX_CAMPORT_INDEX_CP,       /* captured video */
00062     OMX_CAMPORT_INDEX_CP_T,   /* thumbnail or snapshot for captured video */
00063     OMX_CAMPORT_INDEX_MAX
00064 };
00065 
00066 #define NUM_CAMERAPORTS (OMX_CAMPORT_INDEX_MAX)
00067 
00068 
00070 typedef struct appPrivateType{
00071   tsem_t* cameraSourceEventSem;
00072   tsem_t* colorconvEventSem;
00073   tsem_t* fbsinkEventSem;
00074   OMX_HANDLETYPE camerahandle;
00075   OMX_HANDLETYPE colorconvhandle;
00076   OMX_HANDLETYPE fbsinkhandle;
00077 }appPrivateType;
00078 
00079 
00081 typedef struct OMX_PORTBUFFERCTXT{
00082   OMX_BUFFERHEADERTYPE* pBufHeaderList[MAXBUFNUM_PERPORT];
00083   OMX_U32 nBufferCountActual;
00084 }OMX_PORTBUFFERCTXT;
00085 
00086 
00087 
00088 
00090 OMX_ERRORTYPE camera_sourceEventHandler(
00091   OMX_OUT OMX_HANDLETYPE hComponent,
00092   OMX_OUT OMX_PTR pAppData,
00093   OMX_OUT OMX_EVENTTYPE eEvent,
00094   OMX_OUT OMX_U32 Data1,
00095   OMX_OUT OMX_U32 Data2,
00096   OMX_OUT OMX_PTR pEventData);
00097 
00098 OMX_ERRORTYPE camera_sourceFillBufferDone(
00099   OMX_OUT OMX_HANDLETYPE hComponent,
00100   OMX_OUT OMX_PTR pAppData,
00101   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00102 
00104 OMX_ERRORTYPE colorconvEventHandler(
00105   OMX_OUT OMX_HANDLETYPE hComponent,
00106   OMX_OUT OMX_PTR pAppData,
00107   OMX_OUT OMX_EVENTTYPE eEvent,
00108   OMX_OUT OMX_U32 Data1,
00109   OMX_OUT OMX_U32 Data2,
00110   OMX_OUT OMX_PTR pEventData);
00111 
00112 OMX_ERRORTYPE colorconvEmptyBufferDone(
00113   OMX_OUT OMX_HANDLETYPE hComponent,
00114   OMX_OUT OMX_PTR pAppData,
00115   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00116 
00117 OMX_ERRORTYPE colorconvFillBufferDone(
00118   OMX_OUT OMX_HANDLETYPE hComponent,
00119   OMX_OUT OMX_PTR pAppData,
00120   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00121 
00123 OMX_ERRORTYPE fbsinkEventHandler(
00124   OMX_OUT OMX_HANDLETYPE hComponent,
00125   OMX_OUT OMX_PTR pAppData,
00126   OMX_OUT OMX_EVENTTYPE eEvent,
00127   OMX_OUT OMX_U32 Data1,
00128   OMX_OUT OMX_U32 Data2,
00129   OMX_OUT OMX_PTR pEventData);
00130 
00131 OMX_ERRORTYPE fbsinkEmptyBufferDone(
00132   OMX_OUT OMX_HANDLETYPE hComponent,
00133   OMX_OUT OMX_PTR pAppData,
00134   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00135 
00136 
00138 OMX_ERRORTYPE setHeader(OMX_PTR header, OMX_U32 size);
00139 
00141 OMX_ERRORTYPE setCameraParameters(OMX_BOOL bCameraStillImageMode);
00142 OMX_ERRORTYPE setColorConvParameters();
00143 OMX_ERRORTYPE setFbsinkParameters();
00144 
00145 
00146 #endif

Generated for OpenMAX Bellagio rel. 0.3.5-svn by  doxygen 1.5.1
SourceForge.net Logo