OpenMAXBellagio  0.9.3
OMX_Other.h File Reference
#include <OMX_Core.h>

Go to the source code of this file.

Data Structures

struct  OMX_TIME_CONFIG_SEEKMODETYPE
 
struct  OMX_TIME_CONFIG_TIMESTAMPTYPE
 
struct  OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE
 
struct  OMX_TIME_MEDIATIMETYPE
 
struct  OMX_TIME_CONFIG_SCALETYPE
 
struct  OMX_TIME_CONFIG_CLOCKSTATETYPE
 
struct  OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE
 
struct  OMX_OTHER_CONFIG_POWERTYPE
 
struct  OMX_OTHER_CONFIG_STATSTYPE
 
struct  OMX_OTHER_PORTDEFINITIONTYPE
 
struct  OMX_OTHER_PARAM_PORTFORMATTYPE
 

Macros

#define OMX_CLOCKPORT0   0x00000001
 
#define OMX_CLOCKPORT1   0x00000002
 
#define OMX_CLOCKPORT2   0x00000004
 
#define OMX_CLOCKPORT3   0x00000008
 
#define OMX_CLOCKPORT4   0x00000010
 
#define OMX_CLOCKPORT5   0x00000020
 
#define OMX_CLOCKPORT6   0x00000040
 
#define OMX_CLOCKPORT7   0x00000080
 

Typedefs

typedef enum OMX_OTHER_FORMATTYPE OMX_OTHER_FORMATTYPE
 
typedef enum OMX_TIME_SEEKMODETYPE OMX_TIME_SEEKMODETYPE
 
typedef struct OMX_TIME_CONFIG_SEEKMODETYPE OMX_TIME_CONFIG_SEEKMODETYPE
 
typedef struct OMX_TIME_CONFIG_TIMESTAMPTYPE OMX_TIME_CONFIG_TIMESTAMPTYPE
 
typedef enum OMX_TIME_UPDATETYPE OMX_TIME_UPDATETYPE
 
typedef enum OMX_TIME_REFCLOCKTYPE OMX_TIME_REFCLOCKTYPE
 
typedef enum OMX_TIME_CLOCKSTATE OMX_TIME_CLOCKSTATE
 
typedef struct OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE
 
typedef struct OMX_TIME_MEDIATIMETYPE OMX_TIME_MEDIATIMETYPE
 
typedef struct OMX_TIME_CONFIG_SCALETYPE OMX_TIME_CONFIG_SCALETYPE
 
typedef struct OMX_TIME_CONFIG_CLOCKSTATETYPE OMX_TIME_CONFIG_CLOCKSTATETYPE
 
typedef struct OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE
 
typedef struct OMX_OTHER_CONFIG_POWERTYPE OMX_OTHER_CONFIG_POWERTYPE
 
typedef struct OMX_OTHER_CONFIG_STATSTYPE OMX_OTHER_CONFIG_STATSTYPE
 
typedef struct OMX_OTHER_PORTDEFINITIONTYPE OMX_OTHER_PORTDEFINITIONTYPE
 
typedef struct OMX_OTHER_PARAM_PORTFORMATTYPE OMX_OTHER_PARAM_PORTFORMATTYPE
 

Enumerations

enum  OMX_OTHER_FORMATTYPE {
  OMX_OTHER_FormatTime = 0, OMX_OTHER_FormatPower, OMX_OTHER_FormatStats, OMX_OTHER_FormatBinary,
  OMX_OTHER_FormatVendorReserved = 1000, OMX_OTHER_FormatKhronosExtensions = 0x6F000000, OMX_OTHER_FormatVendorStartUnused = 0x7F000000, OMX_OTHER_FormatMax = 0x7FFFFFFF
}
 
enum  OMX_TIME_SEEKMODETYPE {
  OMX_TIME_SeekModeFast = 0, OMX_TIME_SeekModeAccurate, OMX_TIME_SeekModeKhronosExtensions = 0x6F000000, OMX_TIME_SeekModeVendorStartUnused = 0x7F000000,
  OMX_TIME_SeekModeMax = 0x7FFFFFFF
}
 
enum  OMX_TIME_UPDATETYPE {
  OMX_TIME_UpdateRequestFulfillment, OMX_TIME_UpdateScaleChanged, OMX_TIME_UpdateClockStateChanged, OMX_TIME_UpdateKhronosExtensions = 0x6F000000,
  OMX_TIME_UpdateVendorStartUnused = 0x7F000000, OMX_TIME_UpdateMax = 0x7FFFFFFF
}
 
enum  OMX_TIME_REFCLOCKTYPE {
  OMX_TIME_RefClockNone, OMX_TIME_RefClockAudio, OMX_TIME_RefClockVideo, OMX_TIME_RefClockKhronosExtensions = 0x6F000000,
  OMX_TIME_RefClockVendorStartUnused = 0x7F000000, OMX_TIME_RefClockMax = 0x7FFFFFFF
}
 
enum  OMX_TIME_CLOCKSTATE {
  OMX_TIME_ClockStateRunning, OMX_TIME_ClockStateWaitingForStartTime, OMX_TIME_ClockStateStopped, OMX_TIME_ClockStateKhronosExtensions = 0x6F000000,
  OMX_TIME_ClockStateVendorStartUnused = 0x7F000000, OMX_TIME_ClockStateMax = 0x7FFFFFFF
}
 

Detailed Description

  • OpenMax IL version 1.1.2 The structures needed by Other components to exchange parameters and configuration data with the components.

Definition in file OMX_Other.h.

Macro Definition Documentation

◆ OMX_CLOCKPORT0

#define OMX_CLOCKPORT0   0x00000001

Bits used to identify a clock port. Used in OMX_TIME_CONFIG_CLOCKSTATETYPE’s nWaitMask field

Definition at line 251 of file OMX_Other.h.

◆ OMX_CLOCKPORT1

#define OMX_CLOCKPORT1   0x00000002

Definition at line 252 of file OMX_Other.h.

◆ OMX_CLOCKPORT2

#define OMX_CLOCKPORT2   0x00000004

Definition at line 253 of file OMX_Other.h.

◆ OMX_CLOCKPORT3

#define OMX_CLOCKPORT3   0x00000008

Definition at line 254 of file OMX_Other.h.

◆ OMX_CLOCKPORT4

#define OMX_CLOCKPORT4   0x00000010

Definition at line 255 of file OMX_Other.h.

◆ OMX_CLOCKPORT5

#define OMX_CLOCKPORT5   0x00000020

Definition at line 256 of file OMX_Other.h.

◆ OMX_CLOCKPORT6

#define OMX_CLOCKPORT6   0x00000040

Definition at line 257 of file OMX_Other.h.

◆ OMX_CLOCKPORT7

#define OMX_CLOCKPORT7   0x00000080

Definition at line 258 of file OMX_Other.h.

Typedef Documentation

◆ OMX_OTHER_CONFIG_POWERTYPE

Descriptor for setting specifics of power type. Note: this structure is listed for backwards compatibility.

◆ OMX_OTHER_CONFIG_STATSTYPE

Descriptor for setting specifics of stats type. Note: this structure is listed for backwards compatibility.

◆ OMX_OTHER_FORMATTYPE

Enumeration of possible data types which match to multiple domains or no domain at all. For types which are vendor specific, a value above OMX_OTHER_VENDORTSTART should be used.

◆ OMX_OTHER_PARAM_PORTFORMATTYPE

Port format parameter. This structure is used to enumerate the various data input/output format supported by the port.

◆ OMX_OTHER_PORTDEFINITIONTYPE

The PortDefinition structure is used to define all of the parameters necessary for the compliant component to setup an input or an output other path.

◆ OMX_TIME_CLOCKSTATE

Enumeration of clock states.

◆ OMX_TIME_CONFIG_ACTIVEREFCLOCKTYPE

Structure representing the reference clock currently being used to compute media time. IL client uses this config to change or query the clock component's active reference clock

◆ OMX_TIME_CONFIG_CLOCKSTATETYPE

Structure representing the current mode of the media clock. IL Client uses this config to change or query the mode of the media clock of the clock component. Applicable only to clock component.

On a SetConfig if eState is OMX_TIME_ClockStateRunning media time starts immediately at the prescribed start time. If OMX_TIME_ClockStateWaitingForStartTime the Clock Component ignores the given nStartTime and waits for all clients specified in the nWaitMask to send starttimes (via OMX_IndexConfigTimeClientStartTime). The Clock Component then starts the media clock using the earliest start time supplied.

◆ OMX_TIME_CONFIG_MEDIATIMEREQUESTTYPE

Structure representing a media time request to the clock component.

A client component sends this structure to the Clock Component via a SetConfig on its client port to specify a media timestamp the Clock Component should emit. The Clock Component should fulfill the request by sending a OMX_TIME_MEDIATIMETYPE when its media clock matches the requested timestamp.

The client may require a media time request be fulfilled slightly earlier than the media time specified. In this case the client specifies an offset which is equal to the difference between wall time corresponding to the requested media time and the wall time when it will be fulfilled.

A client component may uses these requests and the OMX_TIME_MEDIATIMETYPE to time events according to timestamps. If a client must perform an operation O at a time T (e.g. deliver a video frame at its corresponding timestamp), it makes a media time request at T (perhaps specifying an offset to ensure the request fulfillment is a little early). When the clock component passes the resulting OMX_TIME_MEDIATIMETYPE structure back to the client component, the client may perform operation O (perhaps having to wait a slight amount more time itself as specified by the return values). Structure sent from the clock component client either when fulfilling a media time request or when the time scale has changed.

In the former case the Clock Component fills this structure and times its emission to a client component (via the client port) according to the corresponding media time request sent by the client. The Clock Component should time the emission to occur when the requested timestamp matches the Clock Component's media time but also the prescribed offset early.

Upon scale changes the clock component clears the nClientPrivate data, sends the current media time and sets the nScale to the new scale via the client port. It emits a OMX_TIME_MEDIATIMETYPE to all clients independent of any requests. This allows clients to alter processing to accomodate scaling. For instance a video component might skip inter-frames in the case of extreme fastforward. Likewise an audio component might add or remove samples from an audio frame to scale audio data.

It is expected that some clock components may not be able to fulfill requests at exactly the prescribed time. This is acceptable so long as the request is fulfilled at least as early as described and not later. This structure provides fields the client may use to wait for the remaining time.

The client may use either the nOffset or nWallTimeAtMedia fields to determine the wall time until the nMediaTimestamp actually occurs. In the latter case the client can get a more accurate value for offset by getting the current wall from the cloc component and subtracting it from nWallTimeAtMedia.

◆ OMX_TIME_CONFIG_SCALETYPE

Structure representing the current media time scale factor. Applicable only to clock component, other components see scale changes via OMX_TIME_MEDIATIMETYPE buffers sent via the clock component client ports. Upon recieving this config the clock component changes the rate by which the media time increases or decreases effectively implementing trick modes.

◆ OMX_TIME_CONFIG_SEEKMODETYPE

◆ OMX_TIME_CONFIG_TIMESTAMPTYPE

Structure representing a time stamp used with the following configs on the Clock Component (CC):

OMX_IndexConfigTimeCurrentWallTime: query of the CC’s current wall
time OMX_IndexConfigTimeCurrentMediaTime: query of the CC’s current media time OMX_IndexConfigTimeCurrentAudioReference and
OMX_IndexConfigTimeCurrentVideoReference: audio/video reference clock sending SC its reference time OMX_IndexConfigTimeClientStartTime: a Clock Component client sends this structure to the Clock Component via a SetConfig on its client port when it receives a buffer with OMX_BUFFERFLAG_STARTTIME set. It must use the timestamp specified by that buffer for nStartTimestamp.

It’s also used with the following config on components in general:

OMX_IndexConfigTimePosition: IL client querying component position (GetConfig) or commanding a component to seek to the given location (SetConfig)

◆ OMX_TIME_MEDIATIMETYPE

◆ OMX_TIME_REFCLOCKTYPE

Enumeration of possible reference clocks to the media time.

◆ OMX_TIME_SEEKMODETYPE

Enumeration of seek modes.

◆ OMX_TIME_UPDATETYPE

Enumeration of possible reference clocks to the media time.

Enumeration Type Documentation

◆ OMX_OTHER_FORMATTYPE

Enumeration of possible data types which match to multiple domains or no domain at all. For types which are vendor specific, a value above OMX_OTHER_VENDORTSTART should be used.

Enumerator
OMX_OTHER_FormatTime 

Transmission of various timestamps, elapsed time, time deltas, etc

OMX_OTHER_FormatPower 

Perhaps used for enabling/disabling power management, setting clocks?

OMX_OTHER_FormatStats 

Could be things such as frame rate, frames dropped, etc

OMX_OTHER_FormatBinary 

Arbitrary binary data

OMX_OTHER_FormatVendorReserved 

Starting value for vendor specific formats

OMX_OTHER_FormatKhronosExtensions 

Reserved region for introducing Khronos Standard Extensions

OMX_OTHER_FormatVendorStartUnused 

Reserved region for introducing Vendor Extensions

OMX_OTHER_FormatMax 

Definition at line 50 of file OMX_Other.h.

◆ OMX_TIME_CLOCKSTATE

Enumeration of clock states.

Enumerator
OMX_TIME_ClockStateRunning 

Clock running.

OMX_TIME_ClockStateWaitingForStartTime 

Clock waiting until the prescribed clients emit their start time.

OMX_TIME_ClockStateStopped 

Clock stopped.

OMX_TIME_ClockStateKhronosExtensions 

Reserved region for introducing Khronos Standard Extensions

OMX_TIME_ClockStateVendorStartUnused 

Reserved region for introducing Vendor Extensions

OMX_TIME_ClockStateMax 

Definition at line 141 of file OMX_Other.h.

◆ OMX_TIME_REFCLOCKTYPE

Enumeration of possible reference clocks to the media time.

Enumerator
OMX_TIME_RefClockNone 

Use no references.

OMX_TIME_RefClockAudio 

Use references sent through OMX_IndexConfigTimeCurrentAudioReference

OMX_TIME_RefClockVideo 

Use references sent through OMX_IndexConfigTimeCurrentVideoReference

OMX_TIME_RefClockKhronosExtensions 

Reserved region for introducing Khronos Standard Extensions

OMX_TIME_RefClockVendorStartUnused 

Reserved region for introducing Vendor Extensions

OMX_TIME_RefClockMax 

Definition at line 131 of file OMX_Other.h.

◆ OMX_TIME_SEEKMODETYPE

Enumeration of seek modes.

Enumerator
OMX_TIME_SeekModeFast 

Prefer seeking to an approximation of the requested seek position over
the actual seek position if it results in a faster seek.

OMX_TIME_SeekModeAccurate 

Prefer seeking to the actual seek position over an approximation of the requested seek position even if it results in a slower seek.

OMX_TIME_SeekModeKhronosExtensions 

Reserved region for introducing Khronos Standard Extensions

OMX_TIME_SeekModeVendorStartUnused 

Reserved region for introducing Vendor Extensions

OMX_TIME_SeekModeMax 

Definition at line 69 of file OMX_Other.h.

◆ OMX_TIME_UPDATETYPE

Enumeration of possible reference clocks to the media time.

Enumerator
OMX_TIME_UpdateRequestFulfillment 

Update is the fulfillment of a media time request.

OMX_TIME_UpdateScaleChanged 

Update was generated because the scale chagned.

OMX_TIME_UpdateClockStateChanged 

Update was generated because the clock state changed.

OMX_TIME_UpdateKhronosExtensions 

Reserved region for introducing Khronos Standard Extensions

OMX_TIME_UpdateVendorStartUnused 

Reserved region for introducing Vendor Extensions

OMX_TIME_UpdateMax 

Definition at line 121 of file OMX_Other.h.


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