OpenMAX Bellagio 0.9.3
OMX_Component.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2008 The Khronos Group Inc.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining
5 * a copy of this software and associated documentation files (the
6 * "Software"), to deal in the Software without restriction, including
7 * without limitation the rights to use, copy, modify, merge, publish,
8 * distribute, sublicense, and/or sell copies of the Software, and to
9 * permit persons to whom the Software is furnished to do so, subject
10 * to the following conditions:
11 * The above copyright notice and this permission notice shall be included
12 * in all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 *
22 */
23
30#ifndef OMX_Component_h
31#define OMX_Component_h
32
33#ifdef __cplusplus
34extern "C" {
35#endif /* __cplusplus */
36
37
38
39/* Each OMX header must include all required header files to allow the
40 * header to compile without errors. The includes below are required
41 * for this header file to compile successfully
42 */
43
44#include <OMX_Audio.h>
45#include <OMX_Video.h>
46#include <OMX_Image.h>
47#include <OMX_Other.h>
48
59
87
95
104
111
120
127
133
134/* Parameter specifying the content uri to use. */
143
144/* Parameter specifying the pipe to use. */
152
162
163
204
216
236
255
256/* @ingroup metadata */
265
278
281{
284 OMX_BOOL bAllKeys; /* if true then this structure refers to all keys and
285 * the three key fields below are ignored */
288 OMX_U8 nKey [128];
291 OMX_BOOL bEnabled; /* if true then key is part of filter (e.g.
292 * retained for query later). If false then
293 * key is not part of filter */
295
307typedef struct OMX_COMPONENTTYPE
308{
314
321
327
333
338 OMX_IN OMX_HANDLETYPE hComponent,
339 OMX_OUT OMX_STRING pComponentName,
340 OMX_OUT OMX_VERSIONTYPE* pComponentVersion,
341 OMX_OUT OMX_VERSIONTYPE* pSpecVersion,
342 OMX_OUT OMX_UUIDTYPE* pComponentUUID);
343
348 OMX_IN OMX_HANDLETYPE hComponent,
350 OMX_IN OMX_U32 nParam1,
351 OMX_IN OMX_PTR pCmdData);
352
357 OMX_IN OMX_HANDLETYPE hComponent,
358 OMX_IN OMX_INDEXTYPE nParamIndex,
359 OMX_INOUT OMX_PTR pComponentParameterStructure);
360
361
366 OMX_IN OMX_HANDLETYPE hComponent,
367 OMX_IN OMX_INDEXTYPE nIndex,
368 OMX_IN OMX_PTR pComponentParameterStructure);
369
370
375 OMX_IN OMX_HANDLETYPE hComponent,
376 OMX_IN OMX_INDEXTYPE nIndex,
377 OMX_INOUT OMX_PTR pComponentConfigStructure);
378
379
384 OMX_IN OMX_HANDLETYPE hComponent,
385 OMX_IN OMX_INDEXTYPE nIndex,
386 OMX_IN OMX_PTR pComponentConfigStructure);
387
388
393 OMX_IN OMX_HANDLETYPE hComponent,
394 OMX_IN OMX_STRING cParameterName,
395 OMX_OUT OMX_INDEXTYPE* pIndexType);
396
397
402 OMX_IN OMX_HANDLETYPE hComponent,
403 OMX_OUT OMX_STATETYPE* pState);
404
405
469 OMX_IN OMX_U32 nPort,
470 OMX_IN OMX_HANDLETYPE hTunneledComp,
471 OMX_IN OMX_U32 nTunneledPort,
472 OMX_INOUT OMX_TUNNELSETUPTYPE* pTunnelSetup);
473
479 OMX_IN OMX_HANDLETYPE hComponent,
480 OMX_INOUT OMX_BUFFERHEADERTYPE** ppBufferHdr,
481 OMX_IN OMX_U32 nPortIndex,
482 OMX_IN OMX_PTR pAppPrivate,
483 OMX_IN OMX_U32 nSizeBytes,
484 OMX_IN OMX_U8* pBuffer);
485
491 OMX_IN OMX_HANDLETYPE hComponent,
493 OMX_IN OMX_U32 nPortIndex,
494 OMX_IN OMX_PTR pAppPrivate,
495 OMX_IN OMX_U32 nSizeBytes);
496
502 OMX_IN OMX_HANDLETYPE hComponent,
503 OMX_IN OMX_U32 nPortIndex,
505
511 OMX_IN OMX_HANDLETYPE hComponent,
513
519 OMX_IN OMX_HANDLETYPE hComponent,
521
541 OMX_IN OMX_HANDLETYPE hComponent,
542 OMX_IN OMX_CALLBACKTYPE* pCallbacks,
543 OMX_IN OMX_PTR pAppData);
544
557 OMX_IN OMX_HANDLETYPE hComponent);
558
561 OMX_IN OMX_HANDLETYPE hComponent,
562 OMX_INOUT OMX_BUFFERHEADERTYPE** ppBufferHdr,
563 OMX_IN OMX_U32 nPortIndex,
564 OMX_IN OMX_PTR pAppPrivate,
565 OMX_IN void* eglImage);
566
568 OMX_IN OMX_HANDLETYPE hComponent,
569 OMX_OUT OMX_U8 *cRole,
570 OMX_IN OMX_U32 nIndex);
571
573
574#ifdef __cplusplus
575}
576#endif /* __cplusplus */
577
578#endif
579/* File EOF */
struct OMX_CONFIG_CONTAINERNODECOUNTTYPE OMX_CONFIG_CONTAINERNODECOUNTTYPE
struct OMX_CONFIG_BOOLEANTYPE OMX_CONFIG_BOOLEANTYPE
OMX_ERRORTYPE
Definition OMX_Core.h:127
OMX_INDEXTYPE
Definition OMX_Index.h:60
unsigned long OMX_U32
Definition OMX_Types.h:145
char * OMX_STRING
Definition OMX_Types.h:206
unsigned char OMX_U8
Definition OMX_Types.h:133
OMX_BOOL
Definition OMX_Types.h:189
void * OMX_PTR
Definition OMX_Types.h:199
void * OMX_HANDLETYPE
Definition OMX_Types.h:295
#define OMX_IN
Definition OMX_Types.h:75
unsigned char OMX_UUIDTYPE[128]
Definition OMX_Types.h:219
OMX_DIRTYPE
Definition OMX_Types.h:225
#define OMX_OUT
Definition OMX_Types.h:82
#define OMX_INOUT
Definition OMX_Types.h:91
OMX_ERRORTYPE(* AllocateBuffer)(OMX_HANDLETYPE hComponent, OMX_BUFFERHEADERTYPE **ppBuffer, OMX_U32 nPortIndex, OMX_PTR pAppPrivate, OMX_U32 nSizeBytes)
OMX_ERRORTYPE(* FreeBuffer)(OMX_HANDLETYPE hComponent, OMX_U32 nPortIndex, OMX_BUFFERHEADERTYPE *pBuffer)
OMX_ERRORTYPE(* UseBuffer)(OMX_HANDLETYPE hComponent, OMX_BUFFERHEADERTYPE **ppBufferHdr, OMX_U32 nPortIndex, OMX_PTR pAppPrivate, OMX_U32 nSizeBytes, OMX_U8 *pBuffer)
OMX_ERRORTYPE(* EmptyThisBuffer)(OMX_HANDLETYPE hComponent, OMX_BUFFERHEADERTYPE *pBuffer)
OMX_ERRORTYPE(* UseEGLImage)(OMX_HANDLETYPE hComponent, OMX_BUFFERHEADERTYPE **ppBufferHdr, OMX_U32 nPortIndex, OMX_PTR pAppPrivate, void *eglImage)
OMX_ERRORTYPE(* FillThisBuffer)(OMX_HANDLETYPE hComponent, OMX_BUFFERHEADERTYPE *pBuffer)
struct OMX_COMPONENTTYPE OMX_COMPONENTTYPE
OMX_PORTDOMAINTYPE
struct OMX_PARAM_PORTDEFINITIONTYPE OMX_PARAM_PORTDEFINITIONTYPE
OMX_STATETYPE
Definition OMX_Core.h:93
struct OMX_PARAM_U32TYPE OMX_PARAM_U32TYPE
@ OMX_PortDomainAudio
@ OMX_PortDomainVideo
@ OMX_PortDomainKhronosExtensions
@ OMX_PortDomainMax
@ OMX_PortDomainOther
@ OMX_PortDomainVendorStartUnused
@ OMX_PortDomainImage
OMX_COMMANDTYPE
Definition OMX_Core.h:50
struct OMX_PARAM_CONTENTURITYPE OMX_PARAM_CONTENTURITYPE
struct OMX_PARAM_CONTENTPIPETYPE OMX_PARAM_CONTENTPIPETYPE
struct OMX_CONFIG_METADATAITEMTYPE OMX_CONFIG_METADATAITEMTYPE
OMX_METADATASEARCHMODETYPE
struct OMX_CONFIG_CONTAINERNODEIDTYPE OMX_CONFIG_CONTAINERNODEIDTYPE
OMX_METADATACHARSETTYPE
struct OMX_CONFIG_METADATAITEMCOUNTTYPE OMX_CONFIG_METADATAITEMCOUNTTYPE
OMX_METADATASCOPETYPE
struct OMX_PARAM_METADATAFILTERTYPE OMX_PARAM_METADATAFILTERTYPE
@ OMX_MetadataSearchItemByIndex
@ OMX_MetadataSearchVendorStartUnused
@ OMX_MetadataSearchValueSizeByIndex
@ OMX_MetadataSearchKhronosExtensions
@ OMX_MetadataSearchTypeMax
@ OMX_MetadataSearchNextItemByKey
@ OMX_MetadataCharsetGB12345
@ OMX_MetadataCharsetBinary
@ OMX_MetadataCharsetISO88594
@ OMX_MetadataCharsetSMS7Bit
@ OMX_MetadataCharsetGB18030
@ OMX_MetadataCharsetISO2022JP
@ OMX_MetadataCharsetUTF16LE
@ OMX_MetadataCharsetISO885910
@ OMX_MetadataCharsetUnknown
@ OMX_MetadataCharsetVendorStartUnused
@ OMX_MetadataCharsetBig5
@ OMX_MetadataCharsetISO2022JP1
@ OMX_MetadataCharsetCodePage1252
@ OMX_MetadataCharsetISO885913
@ OMX_MetadataCharsetGB2312
@ OMX_MetadataCharsetUTF16BE
@ OMX_MetadataCharsetISO88598
@ OMX_MetadataCharsetImapUTF7
@ OMX_MetadataCharsetISO88593
@ OMX_MetadataCharsetISO88597
@ OMX_MetadataCharsetJavaConformantUTF8
@ OMX_MetadataCharsetISO88591
@ OMX_MetadataCharsetTypeMax
@ OMX_MetadataCharsetISO885914
@ OMX_MetadataCharsetISO885915
@ OMX_MetadataCharsetISO88592
@ OMX_MetadataCharsetISO88595
@ OMX_MetadataCharsetASCII
@ OMX_MetadataCharsetISO88599
@ OMX_MetadataCharsetISO88596
@ OMX_MetadataCharsetUTF8
@ OMX_MetadataCharsetHZGB2312
@ OMX_MetadataCharsetShiftJIS
@ OMX_MetadataCharsetKhronosExtensions
@ OMX_MetadataCharsetGBK
@ OMX_MetadataCharsetISOEUCJP
@ OMX_MetadataCharsetUTF7
@ OMX_MetadataScopePortLevel
@ OMX_MetadataScopeTypeMax
@ OMX_MetadataScopeTopLevel
@ OMX_MetadataScopeNodeLevel
@ OMX_MetadataScopeAllLevels
@ OMX_MetadataScopeKhronosExtensions
@ OMX_MetadataScopeVendorStartUnused
OMX_SUSPENSIONTYPE
OMX_SUSPENSIONPOLICYTYPE
struct OMX_RESOURCECONCEALMENTTYPE OMX_RESOURCECONCEALMENTTYPE
struct OMX_PARAM_SUSPENSIONPOLICYTYPE OMX_PARAM_SUSPENSIONPOLICYTYPE
struct OMX_PARAM_SUSPENSIONTYPE OMX_PARAM_SUSPENSIONTYPE
@ OMX_NotSuspended
@ OMX_SuspendMax
@ OMX_SuspensionKhronosExtensions
@ OMX_Suspended
@ OMX_SuspensionVendorStartUnused
@ OMX_SuspensionPolicyKhronosExtensions
@ OMX_SuspensionPolicyStartUnused
@ OMX_SuspensionDisabled
@ OMX_SuspensionPolicyMax
@ OMX_SuspensionEnabled
OMX_ERRORTYPE(* ComponentTunnelRequest)(OMX_HANDLETYPE hComp, OMX_U32 nPort, OMX_HANDLETYPE hTunneledComp, OMX_U32 nTunneledPort, OMX_TUNNELSETUPTYPE *pTunnelSetup)
OMX_ERRORTYPE(* SendCommand)(OMX_HANDLETYPE hComponent, OMX_COMMANDTYPE Cmd, OMX_U32 nParam1, OMX_PTR pCmdData)
OMX_ERRORTYPE(* ComponentRoleEnum)(OMX_HANDLETYPE hComponent, OMX_U8 *cRole, OMX_U32 nIndex)
OMX_ERRORTYPE(* SetCallbacks)(OMX_HANDLETYPE hComponent, OMX_CALLBACKTYPE *pCallbacks, OMX_PTR pAppData)
OMX_ERRORTYPE(* GetParameter)(OMX_HANDLETYPE hComponent, OMX_INDEXTYPE nParamIndex, OMX_PTR pComponentParameterStructure)
OMX_ERRORTYPE(* SetParameter)(OMX_HANDLETYPE hComponent, OMX_INDEXTYPE nIndex, OMX_PTR pComponentParameterStructure)
OMX_ERRORTYPE(* ComponentDeInit)(OMX_HANDLETYPE hComponent)
OMX_ERRORTYPE(* SetConfig)(OMX_HANDLETYPE hComponent, OMX_INDEXTYPE nIndex, OMX_PTR pComponentConfigStructure)
OMX_ERRORTYPE(* GetExtensionIndex)(OMX_HANDLETYPE hComponent, OMX_STRING cParameterName, OMX_INDEXTYPE *pIndexType)
OMX_VERSIONTYPE nVersion
OMX_PTR pApplicationPrivate
OMX_ERRORTYPE(* GetComponentVersion)(OMX_HANDLETYPE hComponent, OMX_STRING pComponentName, OMX_VERSIONTYPE *pComponentVersion, OMX_VERSIONTYPE *pSpecVersion, OMX_UUIDTYPE *pComponentUUID)
OMX_ERRORTYPE(* GetConfig)(OMX_HANDLETYPE hComponent, OMX_INDEXTYPE nIndex, OMX_PTR pComponentConfigStructure)
OMX_ERRORTYPE(* GetState)(OMX_HANDLETYPE hComponent, OMX_STATETYPE *pState)
OMX_VERSIONTYPE nVersion
OMX_METADATASCOPETYPE eScopeMode
OMX_METADATASCOPETYPE eScopeMode
OMX_METADATASEARCHMODETYPE eSearchMode
OMX_METADATACHARSETTYPE eKeyCharset
OMX_METADATACHARSETTYPE eValueCharset
OMX_METADATACHARSETTYPE eKeyCharset
union OMX_PARAM_PORTDEFINITIONTYPE::@0 format
OMX_PORTDOMAINTYPE eDomain
OMX_AUDIO_PORTDEFINITIONTYPE audio
OMX_OTHER_PORTDEFINITIONTYPE other
OMX_IMAGE_PORTDEFINITIONTYPE image
OMX_VIDEO_PORTDEFINITIONTYPE video
OMX_SUSPENSIONPOLICYTYPE ePolicy
OMX_SUSPENSIONTYPE eType
OMX_VERSIONTYPE nVersion

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