omxparsertest.h

Go to the documentation of this file.
00001 
00039 #ifndef __OMXPARSERTEST_H__
00040 #define __OMXPARSERTEST_H__
00041 
00042 #include <stdio.h>
00043 #include <stdlib.h>
00044 #include <fcntl.h>
00045 #include <string.h>
00046 #include <pthread.h>
00047 #include <ctype.h>
00048 
00049 #include <OMX_Core.h>
00050 #include <OMX_Component.h>
00051 #include <OMX_Types.h>
00052 #include <OMX_Video.h>
00053 #include <OMX_Audio.h>
00054 
00055 #include <tsemaphore.h>
00056 #include <user_debug_levels.h>
00057 
00058 typedef struct appPrivateType{
00059   tsem_t* parser3gpEventSem;
00060   tsem_t* videoDecoderEventSem;
00061   tsem_t* colorconvEventSem;
00062   tsem_t* fbdevSinkEventSem;
00063   tsem_t* audioDecoderEventSem;
00064   tsem_t* audioSinkEventSem;
00065   tsem_t* volumeEventSem;
00066   tsem_t* eofSem;
00067   OMX_HANDLETYPE videodechandle;
00068   OMX_HANDLETYPE colorconv_handle;
00069   OMX_HANDLETYPE videosinkhandle;
00070   OMX_HANDLETYPE audiodechandle;
00071   OMX_HANDLETYPE audiosinkhandle;
00072   OMX_HANDLETYPE volumehandle;
00073   OMX_HANDLETYPE parser3gphandle;
00074 }appPrivateType;
00075 
00076 #define BUFFER_IN_SIZE 4096    
00077 #define BUFFER_OUT_SIZE   640*480*3 // 1382400    //921600 -- the output buffer size is chosen to support upto VGA picture: 640*480*3 
00078 
00080 #define VERSIONMAJOR    1
00081 #define VERSIONMINOR    1
00082 #define VERSIONREVISION 0
00083 #define VERSIONSTEP     0
00084 
00085 /* Callback prototypes for video decoder*/
00086 OMX_ERRORTYPE videodecEventHandler(
00087   OMX_OUT OMX_HANDLETYPE hComponent,
00088   OMX_OUT OMX_PTR pAppData,
00089   OMX_OUT OMX_EVENTTYPE eEvent,
00090   OMX_OUT OMX_U32 Data1,
00091   OMX_OUT OMX_U32 Data2,
00092   OMX_OUT OMX_PTR pEventData);
00093 
00094 OMX_ERRORTYPE videodecEmptyBufferDone(
00095   OMX_OUT OMX_HANDLETYPE hComponent,
00096   OMX_OUT OMX_PTR pAppData,
00097   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00098 
00099 OMX_ERRORTYPE videodecFillBufferDone(
00100   OMX_OUT OMX_HANDLETYPE hComponent,
00101   OMX_OUT OMX_PTR pAppData,
00102   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00103 
00105 OMX_ERRORTYPE colorconvEventHandler(
00106   OMX_OUT OMX_HANDLETYPE hComponent,
00107   OMX_OUT OMX_PTR pAppData,
00108   OMX_OUT OMX_EVENTTYPE eEvent,
00109   OMX_OUT OMX_U32 Data1,
00110   OMX_OUT OMX_U32 Data2,
00111   OMX_OUT OMX_PTR pEventData);
00112 
00113 OMX_ERRORTYPE colorconvEmptyBufferDone(
00114   OMX_OUT OMX_HANDLETYPE hComponent,
00115   OMX_OUT OMX_PTR pAppData,
00116   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00117 
00118 OMX_ERRORTYPE colorconvFillBufferDone(
00119   OMX_OUT OMX_HANDLETYPE hComponent,
00120   OMX_OUT OMX_PTR pAppData,
00121   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00122 
00124 OMX_ERRORTYPE fb_sinkEventHandler(
00125   OMX_OUT OMX_HANDLETYPE hComponent,
00126   OMX_OUT OMX_PTR pAppData,
00127   OMX_OUT OMX_EVENTTYPE eEvent,
00128   OMX_OUT OMX_U32 Data1,
00129   OMX_OUT OMX_U32 Data2,
00130   OMX_OUT OMX_PTR pEventData);
00131 
00132 OMX_ERRORTYPE fb_sinkEmptyBufferDone(
00133   OMX_OUT OMX_HANDLETYPE hComponent,
00134   OMX_OUT OMX_PTR pAppData,
00135   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00136   
00138 OMX_ERRORTYPE parser3gpEventHandler(
00139   OMX_OUT OMX_HANDLETYPE hComponent,
00140   OMX_OUT OMX_PTR pAppData,
00141   OMX_OUT OMX_EVENTTYPE eEvent,
00142   OMX_OUT OMX_U32 Data1,
00143   OMX_OUT OMX_U32 Data2,
00144   OMX_OUT OMX_PTR pEventData);
00145   
00146 OMX_ERRORTYPE parser3gpFillBufferDone(
00147   OMX_OUT OMX_HANDLETYPE hComponent,
00148   OMX_OUT OMX_PTR pAppData,
00149   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00150 
00152 OMX_ERRORTYPE audiodecEventHandler(
00153   OMX_OUT OMX_HANDLETYPE hComponent,
00154   OMX_OUT OMX_PTR pAppData,
00155   OMX_OUT OMX_EVENTTYPE eEvent,
00156   OMX_OUT OMX_U32 Data1,
00157   OMX_OUT OMX_U32 Data2,
00158   OMX_OUT OMX_PTR pEventData);
00159 
00160 OMX_ERRORTYPE audiodecEmptyBufferDone(
00161   OMX_OUT OMX_HANDLETYPE hComponent,
00162   OMX_OUT OMX_PTR pAppData,
00163   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00164 
00165 OMX_ERRORTYPE audiodecFillBufferDone(
00166   OMX_OUT OMX_HANDLETYPE hComponent,
00167   OMX_OUT OMX_PTR pAppData,
00168   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00169 
00171 OMX_ERRORTYPE volumeEventHandler(
00172   OMX_OUT OMX_HANDLETYPE hComponent,
00173   OMX_OUT OMX_PTR pAppData,
00174   OMX_OUT OMX_EVENTTYPE eEvent,
00175   OMX_OUT OMX_U32 Data1,
00176   OMX_OUT OMX_U32 Data2,
00177   OMX_OUT OMX_PTR pEventData);
00178 
00179 OMX_ERRORTYPE volumeEmptyBufferDone(
00180   OMX_OUT OMX_HANDLETYPE hComponent,
00181   OMX_OUT OMX_PTR pAppData,
00182   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00183 
00184 OMX_ERRORTYPE volumeFillBufferDone(
00185   OMX_OUT OMX_HANDLETYPE hComponent,
00186   OMX_OUT OMX_PTR pAppData,
00187   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00188 
00190 OMX_ERRORTYPE audiosinkEventHandler(
00191   OMX_OUT OMX_HANDLETYPE hComponent,
00192   OMX_OUT OMX_PTR pAppData,
00193   OMX_OUT OMX_EVENTTYPE eEvent,
00194   OMX_OUT OMX_U32 Data1,
00195   OMX_OUT OMX_U32 Data2,
00196   OMX_OUT OMX_PTR pEventData);
00197 
00198 OMX_ERRORTYPE audiosinkEmptyBufferDone(
00199   OMX_OUT OMX_HANDLETYPE hComponent,
00200   OMX_OUT OMX_PTR pAppData,
00201   OMX_OUT OMX_BUFFERHEADERTYPE* pBuffer);
00202 
00204 void display_help();
00205 
00209 int setPortParameters();
00210 
00211 #endif
00212 

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