omx_alsasink_component.h

Go to the documentation of this file.
00001 
00030 #ifndef _OMX_ALSASINK_COMPONENT_H_
00031 #define _OMX_ALSASINK_COMPONENT_H_
00032 
00033 #include <OMX_Types.h>
00034 #include <OMX_Component.h>
00035 #include <OMX_Core.h>
00036 #include <OMX_Audio.h>
00037 #include <pthread.h>
00038 #include <omx_base_sink.h>
00039 #include <alsa/asoundlib.h>
00040 
00050 DERIVEDCLASS(omx_alsasink_component_PrivateType, omx_base_sink_PrivateType)
00051 #define omx_alsasink_component_PrivateType_FIELDS omx_base_sink_PrivateType_FIELDS \
00052   OMX_AUDIO_PARAM_PCMMODETYPE  sPCMModeParam; \
00053   char                         AudioPCMConfigured;  \
00054   snd_pcm_t*                   playback_handle;  \
00055   OMX_S32                      xScale; \
00056   OMX_TIME_CLOCKSTATE          eState; \
00057   snd_pcm_hw_params_t*         hw_params;
00058 ENDCLASS(omx_alsasink_component_PrivateType)
00059 
00060 /* Component private entry points declaration */
00061 OMX_ERRORTYPE omx_alsasink_component_Constructor(OMX_COMPONENTTYPE *openmaxStandComp,OMX_STRING cComponentName);
00062 OMX_ERRORTYPE omx_alsasink_component_Destructor(OMX_COMPONENTTYPE *openmaxStandComp);
00063 
00064 void omx_alsasink_component_BufferMgmtCallback(
00065   OMX_COMPONENTTYPE *openmaxStandComp,
00066   OMX_BUFFERHEADERTYPE* inputbuffer);
00067 
00068 OMX_ERRORTYPE omx_alsasink_component_port_SendBufferFunction(
00069   omx_base_PortType *openmaxStandPort, 
00070   OMX_BUFFERHEADERTYPE* pBuffer);
00071 
00072 /* to handle the communication at the clock port */
00073 OMX_BOOL omx_alsasink_component_ClockPortHandleFunction(
00074   omx_alsasink_component_PrivateType* omx_alsasink_component_Private,
00075   OMX_BUFFERHEADERTYPE* inputbuffer);
00076 
00077 OMX_ERRORTYPE omx_alsasink_component_GetParameter(
00078   OMX_IN  OMX_HANDLETYPE hComponent,
00079   OMX_IN  OMX_INDEXTYPE nParamIndex,
00080   OMX_INOUT OMX_PTR ComponentParameterStructure);
00081 
00082 OMX_ERRORTYPE omx_alsasink_component_SetParameter(
00083   OMX_IN  OMX_HANDLETYPE hComponent,
00084   OMX_IN  OMX_INDEXTYPE nParamIndex,
00085   OMX_IN  OMX_PTR ComponentParameterStructure);
00086 
00087 #endif

Generated for OpenMAX Bellagio rel. 0.9.0 by  doxygen 1.5.1
SourceForge.net Logo