00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00029 #ifndef OMX_Other_h
00030 #define OMX_Other_h
00031
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035
00036
00037
00038
00039
00040
00041
00042 #include <OMX_Core.h>
00043
00044
00050 typedef enum OMX_OTHER_FORMATTYPE {
00051 OMX_OTHER_FormatTime = 0,
00053 OMX_OTHER_FormatPower,
00055 OMX_OTHER_FormatStats,
00057 OMX_OTHER_FormatBinary,
00058 OMX_OTHER_FormatVendorReserved = 1000,
00061 OMX_OTHER_FormatMax = 0x7FFFFFFF
00062 } OMX_OTHER_FORMATTYPE;
00063
00067 typedef enum OMX_TIME_SEEKMODETYPE {
00068 OMX_TIME_SeekModeFast = 0,
00072 OMX_TIME_SeekModeAccurate,
00076 OMX_TIME_SeekModeMax = 0x7FFFFFFF
00077 } OMX_TIME_SEEKMODETYPE;
00078
00079
00080 typedef struct OMX_TIME_CONFIG_SEEKMODETYPE {
00081 OMX_U32 nSize;
00082 OMX_VERSIONTYPE nVersion;
00083 OMX_TIME_SEEKMODETYPE eType;
00084 } OMX_TIME_CONFIG_SEEKMODETYPE;
00085
00108 typedef struct OMX_TIME_CONFIG_TIMESTAMPTYPE {
00109 OMX_U32 nSize;
00110 OMX_VERSIONTYPE nVersion;
00112 OMX_U32 nPortIndex;
00113 OMX_TICKS nTimestamp;
00114 } OMX_TIME_CONFIG_TIMESTAMPTYPE;
00115
00117 typedef enum OMX_TIME_UPDATETYPE {
00118 OMX_TIME_UpdateRequestFulfillment,
00119 OMX_TIME_UpdateScaleChanged,
00120 OMX_TIME_UpdateClockStateChanged,
00121 OMX_TIME_UpdateMax = 0x7FFFFFFF
00122 } OMX_TIME_UPDATETYPE;
00123
00125 typedef enum OMX_TIME_REFCLOCKTYPE {
00126 OMX_TIME_RefClockNone,
00127 OMX_TIME_RefClockAudio,
00128 OMX_TIME_RefClockVideo,
00129 OMX_TIME_RefClockMax = 0x7FFFFFFF
00130 } OMX_TIME_REFCLOCKTYPE;
00131
00133 typedef enum OMX_TIME_CLOCKSTATE {
00134 OMX_TIME_ClockStateRunning,
00135 OMX_TIME_ClockStateWaitingForStartTime,
00138 OMX_TIME_ClockStateStopped,
00139 OMX_TIME_ClockStateMax = 0x7FFFFFFF
00140 } OMX_TIME_CLOCKSTATE;
00141
00165 typedef struct OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE {
00166 OMX_U32 nSize;
00167 OMX_VERSIONTYPE nVersion;
00168 OMX_U32 nPortIndex;
00169 OMX_PTR pClientPrivate;
00174 OMX_TICKS nMediaTimestamp;
00175 OMX_TICKS nOffset;
00177 } OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE;
00178
00206 typedef struct OMX_TIME_MEDIATIMETYPE {
00207 OMX_U32 nSize;
00208 OMX_VERSIONTYPE nVersion;
00209 OMX_U32 nClientPrivate;
00212 OMX_TIME_UPDATETYPE eUpdateType;
00213 OMX_TICKS nMediaTimestamp;
00215 OMX_TICKS nOffset;
00218 OMX_TICKS nWallTimeAtMediaTime;
00223 OMX_S32 xScale;
00224 OMX_TIME_CLOCKSTATE eState;
00226 } OMX_TIME_MEDIATIMETYPE;
00227
00233 typedef struct OMX_TIME_CONFIG_SCALETYPE {
00234 OMX_U32 nSize;
00235 OMX_VERSIONTYPE nVersion;
00236 OMX_S32 xScale;
00238 } OMX_TIME_CONFIG_SCALETYPE;
00239
00241 #define OMX_CLOCKPORT0 0x00000001
00242 #define OMX_CLOCKPORT1 0x00000002
00243 #define OMX_CLOCKPORT2 0x00000004
00244 #define OMX_CLOCKPORT3 0x00000008
00245 #define OMX_CLOCKPORT4 0x00000010
00246 #define OMX_CLOCKPORT5 0x00000020
00247 #define OMX_CLOCKPORT6 0x00000040
00248 #define OMX_CLOCKPORT7 0x00000080
00249
00262 typedef struct OMX_TIME_CONFIG_CLOCKSTATETYPE {
00263 OMX_U32 nSize;
00264 OMX_VERSIONTYPE nVersion;
00266 OMX_TIME_CLOCKSTATE eState;
00267 OMX_TICKS nStartTime;
00268 OMX_TICKS nOffset;
00272 OMX_U32 nWaitMask;
00273 } OMX_TIME_CONFIG_CLOCKSTATETYPE;
00274
00278 typedef struct OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE {
00279 OMX_U32 nSize;
00280 OMX_VERSIONTYPE nVersion;
00281 OMX_TIME_REFCLOCKTYPE eClock;
00282 } OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE;
00283
00285 typedef struct OMX_OTHER_CONFIG_POWERTYPE {
00286 OMX_U32 nSize;
00287 OMX_VERSIONTYPE nVersion;
00288 OMX_BOOL bEnablePM;
00289 } OMX_OTHER_CONFIG_POWERTYPE;
00290
00291
00293 typedef struct OMX_OTHER_CONFIG_STATSTYPE {
00294 OMX_U32 nSize;
00295 OMX_VERSIONTYPE nVersion;
00296
00297 } OMX_OTHER_CONFIG_STATSTYPE;
00298
00299
00305 typedef struct OMX_OTHER_PORTDEFINITIONTYPE {
00306 OMX_OTHER_FORMATTYPE eFormat;
00307 } OMX_OTHER_PORTDEFINITIONTYPE;
00308
00312 typedef struct OMX_OTHER_PARAM_PORTFORMATTYPE {
00313 OMX_U32 nSize;
00314 OMX_VERSIONTYPE nVersion;
00315 OMX_U32 nPortIndex;
00316 OMX_U32 nIndex;
00317 OMX_OTHER_FORMATTYPE eFormat;
00318 } OMX_OTHER_PARAM_PORTFORMATTYPE;
00319
00320 #ifdef __cplusplus
00321 }
00322 #endif
00323
00324 #endif
00325