OpenMAXBellagio
0.9.3
|
Go to the source code of this file.
Functions | |
OMX_ERRORTYPE | omx_base_filter_Constructor (OMX_COMPONENTTYPE *openmaxStandComp, OMX_STRING cComponentName) |
The base filter contructor for the OpenMAX ST components. More... | |
OMX_ERRORTYPE | omx_base_filter_Destructor (OMX_COMPONENTTYPE *openmaxStandComp) |
the base filter destructor for ST OpenMAX components More... | |
void * | omx_base_filter_BufferMgmtFunction (void *param) |
void* omx_base_filter_BufferMgmtFunction | ( | void * | param) |
This is the central function for component processing. It is executed in a separate thread, is synchronized with semaphores at each port, those are released each time a new buffer is available on the given port.
Definition at line 83 of file omx_base_filter.c.
References omx_base_filter_PrivateType::bellagioThreads, omx_base_filter_PrivateType::bIsEOSReached, omx_base_filter_PrivateType::bMgmtSem, omx_base_filter_PrivateType::bStateSem, omx_base_filter_PrivateType::BufferMgmtCallback, omx_base_filter_PrivateType::callbackData, omx_base_filter_PrivateType::callbacks, DEB_LEV_ERR, DEB_LEV_FULL_SEQ, DEB_LEV_FUNCTION_NAME, DEB_LEV_SIMPLE_SEQ, DEBUG, dequeue(), OMX_CALLBACKTYPE::EventHandler, omx_base_filter_PrivateType::flush_all_condition, omx_base_filter_PrivateType::flush_condition, omx_base_filter_PrivateType::flush_mutex, OMX_MARKTYPE::hMarkTargetComponent, OMX_PARAM_BELLAGIOTHREADS_ID::nThreadBufferMngtID, OMX_BASE_FILTER_INPUTPORT_INDEX, OMX_BASE_FILTER_OUTPUTPORT_INDEX, OMX_BUFFERFLAG_EOS, OMX_BUFFERFLAG_STARTTIME, OMX_EventBufferFlag, OMX_EventMark, OMX_FALSE, OMX_StateExecuting, OMX_StateIdle, OMX_StateInvalid, OMX_StateLoaded, OMX_StatePause, OMX_TransStateLoadedToIdle, OMX_TRUE, omx_base_PortType::pBufferQueue, omx_base_PortType::pBufferSem, OMX_COMPONENTTYPE::pComponentPrivate, omx_base_filter_PrivateType::pMark, OMX_MARKTYPE::pMarkData, PORT_IS_BEING_FLUSHED, omx_base_filter_PrivateType::ports, omx_base_PortType::ReturnBufferFunction, omx_base_filter_PrivateType::state, omx_base_filter_PrivateType::transientState, tsem_down(), tsem_up(), and tsem_wait().
Referenced by omx_base_filter_Constructor().
OMX_ERRORTYPE omx_base_filter_Constructor | ( | OMX_COMPONENTTYPE * | openmaxStandComp, |
OMX_STRING | cComponentName | ||
) |
The base filter contructor for the OpenMAX ST components.
OpenMAX Base Filter component. This component does not perform any multimedia processing. It derives from base component and contains two ports. It can be used as a base class for codec and filter components.
Copyright (C) 2007-2009 STMicroelectronics Copyright (C) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Definition at line 34 of file omx_base_filter.c.
References omx_base_filter_PrivateType::BufferMgmtFunction, DEB_LEV_ERR, DEB_LEV_FUNCTION_NAME, DEBUG, err, omx_base_component_Constructor(), omx_base_filter_BufferMgmtFunction(), OMX_ErrorInsufficientResources, OMX_ErrorNone, and OMX_COMPONENTTYPE::pComponentPrivate.
Referenced by omx_audio_mixer_component_Constructor(), omx_video_scheduler_component_Constructor(), and omx_volume_component_Constructor().
OMX_ERRORTYPE omx_base_filter_Destructor | ( | OMX_COMPONENTTYPE * | openmaxStandComp) |
the base filter destructor for ST OpenMAX components
openmaxStandComp | the ST OpenMAX component to be disposed |
Definition at line 66 of file omx_base_filter.c.
References DEB_LEV_ERR, DEB_LEV_FUNCTION_NAME, DEBUG, err, omx_base_component_Destructor(), and OMX_ErrorNone.
Referenced by omx_audio_mixer_component_Destructor(), omx_video_scheduler_component_Destructor(), and omx_volume_component_Destructor().