omx_parser3gp_component.h

Go to the documentation of this file.
00001 
00031 #ifndef _OMX_PARSER_3GP_COMPONENT_H_
00032 #define _OMX_PARSER_3GP_COMPONENT_H_
00033 
00034 #include <OMX_Types.h>
00035 #include <OMX_Component.h>
00036 #include <OMX_Core.h>
00037 #include <OMX_Audio.h>
00038 #include <pthread.h>
00039 #include <omx_base_source.h>
00040 #include <string.h>
00041 
00042 /* Specific include files for FFmpeg library related decoding*/
00043 #include <ffmpeg/avcodec.h>
00044 #include <ffmpeg/avformat.h>
00045 #include <ffmpeg/avio.h>
00046 
00048 #define MAX_NUM_OF_parser3gp_component_INSTANCES 1
00049 
00053 DERIVEDCLASS(omx_parser3gp_component_PrivateType, omx_base_source_PrivateType)
00054 #define omx_parser3gp_component_PrivateType_FIELDS omx_base_source_PrivateType_FIELDS \
00055  \
00056   OMX_TIME_CONFIG_TIMESTAMPTYPE sTimeStamp; \
00057  \
00058   AVFormatContext *avformatcontext; \
00059  \
00060   AVFormatParameters *avformatparameters; \
00061  \
00062   AVInputFormat *avinputformat; \
00063  \
00064   OMX_BUFFERHEADERTYPE* pTmpOutputBuffer; \
00065  \
00066   OMX_STRING sInputFileName; \
00067  \
00068   OMX_U32 video_coding_type; \
00069  \
00070   OMX_U32 audio_coding_type; \
00071  \
00072   tsem_t* avformatSyncSem; \
00073  \
00074   OMX_BOOL avformatReady; \
00075  \
00076   AVPacket pkt;
00077 ENDCLASS(omx_parser3gp_component_PrivateType)
00078 
00079 /* Component private entry points declaration */
00080 OMX_ERRORTYPE omx_parser3gp_component_Constructor(OMX_COMPONENTTYPE *openmaxStandComp,OMX_STRING cComponentName);
00081 OMX_ERRORTYPE omx_parser3gp_component_Destructor(OMX_COMPONENTTYPE *openmaxStandComp);
00082 OMX_ERRORTYPE omx_parser3gp_component_MessageHandler(OMX_COMPONENTTYPE*,internalRequestMessageType*);
00083 OMX_ERRORTYPE omx_parser3gp_component_Init(OMX_COMPONENTTYPE *openmaxStandComp);
00084 OMX_ERRORTYPE omx_parser3gp_component_Deinit(OMX_COMPONENTTYPE *openmaxStandComp);
00085 
00086 void omx_parser3gp_component_BufferMgmtCallback(
00087   OMX_COMPONENTTYPE *openmaxStandComp,
00088   OMX_BUFFERHEADERTYPE* outputbuffer);
00089 
00090 OMX_ERRORTYPE omx_parser3gp_component_GetParameter(
00091   OMX_IN  OMX_HANDLETYPE hComponent,
00092   OMX_IN  OMX_INDEXTYPE nParamIndex,
00093   OMX_INOUT OMX_PTR ComponentParameterStructure);
00094 
00095 OMX_ERRORTYPE omx_parser3gp_component_SetParameter(
00096   OMX_IN  OMX_HANDLETYPE hComponent,
00097   OMX_IN  OMX_INDEXTYPE nParamIndex,
00098   OMX_IN  OMX_PTR ComponentParameterStructure);
00099 
00100 OMX_ERRORTYPE omx_parser3gp_component_SetConfig(
00101   OMX_IN  OMX_HANDLETYPE hComponent,
00102   OMX_IN  OMX_INDEXTYPE nIndex,
00103   OMX_IN  OMX_PTR pComponentConfigStructure);
00104 
00105 OMX_ERRORTYPE omx_parser3gp_component_GetConfig(
00106   OMX_IN  OMX_HANDLETYPE hComponent,
00107   OMX_IN  OMX_INDEXTYPE nIndex,
00108   OMX_IN  OMX_PTR pComponentConfigStructure);
00109 
00110 OMX_ERRORTYPE omx_parser3gp_component_GetExtensionIndex(
00111   OMX_IN  OMX_HANDLETYPE hComponent,
00112   OMX_IN  OMX_STRING cParameterName,
00113   OMX_OUT OMX_INDEXTYPE* pIndexType);
00114 
00115 #endif
00116 

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