Error From Openmax Component
Board index The team Delete all board cookies All times are UTC
Sets up tunnels between two components. Accesses component's methods. API is probably the same across platforms. Component Individual blocks of functionality, including "sources, sinks, codecs, filters, splitters, mixers, or any other data operator." Types of components: Source: component with single output port Sink: component with single input port Host: run entirely on host processor Component provider defines functionality of given component. Operate on four types of data: audio, video, https://www.raspberrypi.org/forums/viewtopic.php?f=38&t=6852&start=150 image, and other (time data for sync). Provides access to standard set of component functions via component handle. Must have at least one port to conform to official standard. Data communication calls to components are non-blocking. Ports "Data communication to and from a component is conducted through interfaces called ports. Ports represent both http://www.daphne-emu.com/mediawiki/index.php/OpenMAX the connection for components to the data stream and the buffers needed to maintain the connection. Users may send data to components through input ports or receive data through output ports. Similarly, a communication tunnel between two components can be established by connecting the output port of one component to a similarly formatted input port of another component." Ports must support callbacks to the IL client. Communication Non-tunneled communication: buffer exchange between IL client and component. Tunneled communication: direct buffer exchange between two components. Proprietary: we don't want to deal with this nonsense. Profiles Base: does not need to implement tunneling Interop: must implement tunneling States All components start in the "unloaded" state and must be "loaded" via a call to the core. All other state transitions may then be achieved by communicating directly with the component. On error, the component automatically reverts to the "unloaded" state. WAIT FOR RESOURCES: waiting for initialization to finish IDLE
Defines #defineOMX_GetComponentVersion(hComponent,pComponentName,pComponentVersion,pSpecVersion,pComponentUUID) #defineOMX_SendCommand(hComponent,Cmd,nParam,pCmdData) #defineOMX_GetParameter(hComponent,nParamIndex,pComponentParameterStructure) #defineOMX_SetParameter(hComponent,nParamIndex,pComponentParameterStructure) #defineOMX_GetConfig(hComponent,nConfigIndex,pComponentConfigStructure) #defineOMX_SetConfig(hComponent,nConfigIndex,pComponentConfigStructure) #defineOMX_GetExtensionIndex(hComponent,cParameterName,pIndexType) #defineOMX_GetState(hComponent,pState) Enumerations enum OMX_PORTDOMAINTYPE { OMX_PortDomainAudio, OMX_PortDomainVideo, OMX_PortDomainImage, OMX_PortDomainOther, OMX_PortDomainMax = 0x7ffffff } enum OMX_STATETYPE { http://maemo.org/api_refs/5.0/beta/libomxil-bellagio/group__comp.html OMX_StateInvalid, OMX_StateLoaded, OMX_StateIdle, OMX_StateExecuting, OMX_StatePause, OMX_StateWaitForResources, OMX_StateMax = 0X7FFFFFFF } enum OMX_EVENTTYPE { OMX_EventCmdComplete, OMX_EventError, OMX_EventMark, OMX_EventPortSettingsChanged, OMX_EventBufferFlag, OMX_EventResourcesAcquired, OMX_EventComponentResumed, OMX_EventDynamicResourcesAvailable, OMX_EventPortFormatDetected, OMX_EventMax = 0x7FFFFFFF } Detailed Description Functions and structure related to the OMX IL component Define Documentation #define OMX_GetComponentVersion ( hComponent, pComponentName, pComponentVersion, error from pSpecVersion, pComponentUUID ) Value:((OMX_COMPONENTTYPE*)hComponent)->GetComponentVersion( \ hComponent, \ pComponentName, \ pComponentVersion, \ pSpecVersion, \ pComponentUUID) GetComponentVersion will return information about the component. This is a blocking call. This macro will go directly from the application to the component (via a core macro). The component will return error from openmax from this call within 5 msec. Parameters: [in]hComponenthandle of component to execute the command [out]pComponentNamepointer to an empty string of length 128 bytes. The component will write its name into this string. The name will be terminated by a single zero byte. The name of a component will be 127 bytes or less to leave room for the trailing zero byte. An example of a valid component name is "OMX.ABC.ChannelMixer\0". [out]pComponentVersionpointer to an OMX Version structure that the component will fill in. The component will fill in a value that indicates the component version. NOTE: the component version is NOT the same as the OMX Specification version (found in all structures). The component version is defined by the vendor of the component and its value is entirely up to the component vendor. [out]pSp