OpenMAXBellagio 0.9.3
OMX_IVCommon.h
Go to the documentation of this file.
00001 
00029 #ifndef OMX_IVCommon_h
00030 #define OMX_IVCommon_h
00031 
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif /* __cplusplus */
00035 
00042 #include <OMX_Core.h>
00043 
00088 typedef enum OMX_COLOR_FORMATTYPE {
00089     OMX_COLOR_FormatUnused,
00090     OMX_COLOR_FormatMonochrome,
00091     OMX_COLOR_Format8bitRGB332,
00092     OMX_COLOR_Format12bitRGB444,
00093     OMX_COLOR_Format16bitARGB4444,
00094     OMX_COLOR_Format16bitARGB1555,
00095     OMX_COLOR_Format16bitRGB565,
00096     OMX_COLOR_Format16bitBGR565,
00097     OMX_COLOR_Format18bitRGB666,
00098     OMX_COLOR_Format18bitARGB1665,
00099     OMX_COLOR_Format19bitARGB1666, 
00100     OMX_COLOR_Format24bitRGB888,
00101     OMX_COLOR_Format24bitBGR888,
00102     OMX_COLOR_Format24bitARGB1887,
00103     OMX_COLOR_Format25bitARGB1888,
00104     OMX_COLOR_Format32bitBGRA8888,
00105     OMX_COLOR_Format32bitARGB8888,
00106     OMX_COLOR_FormatYUV411Planar,
00107     OMX_COLOR_FormatYUV411PackedPlanar,
00108     OMX_COLOR_FormatYUV420Planar,
00109     OMX_COLOR_FormatYUV420PackedPlanar,
00110     OMX_COLOR_FormatYUV420SemiPlanar,
00111     OMX_COLOR_FormatYUV422Planar,
00112     OMX_COLOR_FormatYUV422PackedPlanar,
00113     OMX_COLOR_FormatYUV422SemiPlanar,
00114     OMX_COLOR_FormatYCbYCr,
00115     OMX_COLOR_FormatYCrYCb,
00116     OMX_COLOR_FormatCbYCrY,
00117     OMX_COLOR_FormatCrYCbY,
00118     OMX_COLOR_FormatYUV444Interleaved,
00119     OMX_COLOR_FormatRawBayer8bit,
00120     OMX_COLOR_FormatRawBayer10bit,
00121     OMX_COLOR_FormatRawBayer8bitcompressed,
00122     OMX_COLOR_FormatL2, 
00123     OMX_COLOR_FormatL4, 
00124     OMX_COLOR_FormatL8, 
00125     OMX_COLOR_FormatL16, 
00126     OMX_COLOR_FormatL24, 
00127     OMX_COLOR_FormatL32,
00128     OMX_COLOR_FormatYUV420PackedSemiPlanar,
00129     OMX_COLOR_FormatYUV422PackedSemiPlanar,
00130     OMX_COLOR_Format18BitBGR666,
00131     OMX_COLOR_Format24BitARGB6666,
00132     OMX_COLOR_Format24BitABGR6666,
00133     OMX_COLOR_FormatKhronosExtensions = 0x6F000000, 
00134     OMX_COLOR_FormatVendorStartUnused = 0x7F000000, 
00135     OMX_COLOR_FormatMax = 0x7FFFFFFF
00136 } OMX_COLOR_FORMATTYPE;
00137 
00138 
00144 typedef struct OMX_CONFIG_COLORCONVERSIONTYPE {
00145     OMX_U32 nSize;              
00146     OMX_VERSIONTYPE nVersion;   
00147     OMX_U32 nPortIndex;         
00148     OMX_S32 xColorMatrix[3][3]; 
00149     OMX_S32 xColorOffset[4];    
00150 }OMX_CONFIG_COLORCONVERSIONTYPE;
00151 
00152 
00158 typedef struct OMX_CONFIG_SCALEFACTORTYPE {
00159     OMX_U32 nSize;            
00160     OMX_VERSIONTYPE nVersion; 
00161     OMX_U32 nPortIndex;       
00162     OMX_S32 xWidth;           
00163     OMX_S32 xHeight;          
00164 }OMX_CONFIG_SCALEFACTORTYPE;
00165 
00166 
00170 typedef enum OMX_IMAGEFILTERTYPE {
00171     OMX_ImageFilterNone,
00172     OMX_ImageFilterNoise,
00173     OMX_ImageFilterEmboss,
00174     OMX_ImageFilterNegative,
00175     OMX_ImageFilterSketch,
00176     OMX_ImageFilterOilPaint,
00177     OMX_ImageFilterHatch,
00178     OMX_ImageFilterGpen,
00179     OMX_ImageFilterAntialias, 
00180     OMX_ImageFilterDeRing,       
00181     OMX_ImageFilterSolarize,
00182     OMX_ImageFilterKhronosExtensions = 0x6F000000, 
00183     OMX_ImageFilterVendorStartUnused = 0x7F000000, 
00184     OMX_ImageFilterMax = 0x7FFFFFFF
00185 } OMX_IMAGEFILTERTYPE;
00186 
00187 
00197 typedef struct OMX_CONFIG_IMAGEFILTERTYPE {
00198     OMX_U32 nSize;
00199     OMX_VERSIONTYPE nVersion;
00200     OMX_U32 nPortIndex;
00201     OMX_IMAGEFILTERTYPE eImageFilter;
00202 } OMX_CONFIG_IMAGEFILTERTYPE;
00203 
00204 
00218 typedef struct OMX_CONFIG_COLORENHANCEMENTTYPE {
00219     OMX_U32 nSize;
00220     OMX_VERSIONTYPE nVersion; 
00221     OMX_U32 nPortIndex;
00222     OMX_BOOL bColorEnhancement;
00223     OMX_U8 nCustomizedU;
00224     OMX_U8 nCustomizedV;
00225 } OMX_CONFIG_COLORENHANCEMENTTYPE;
00226 
00227 
00238 typedef struct OMX_CONFIG_COLORKEYTYPE {
00239     OMX_U32 nSize;
00240     OMX_VERSIONTYPE nVersion;
00241     OMX_U32 nPortIndex;
00242     OMX_U32 nARGBColor;
00243     OMX_U32 nARGBMask;
00244 } OMX_CONFIG_COLORKEYTYPE;
00245 
00246 
00260 typedef enum OMX_COLORBLENDTYPE {
00261     OMX_ColorBlendNone,
00262     OMX_ColorBlendAlphaConstant,
00263     OMX_ColorBlendAlphaPerPixel,
00264     OMX_ColorBlendAlternate,
00265     OMX_ColorBlendAnd,
00266     OMX_ColorBlendOr,
00267     OMX_ColorBlendInvert,
00268     OMX_ColorBlendKhronosExtensions = 0x6F000000, 
00269     OMX_ColorBlendVendorStartUnused = 0x7F000000, 
00270     OMX_ColorBlendMax = 0x7FFFFFFF
00271 } OMX_COLORBLENDTYPE;
00272 
00273 
00284 typedef struct OMX_CONFIG_COLORBLENDTYPE {
00285     OMX_U32 nSize;
00286     OMX_VERSIONTYPE nVersion;
00287     OMX_U32 nPortIndex;
00288     OMX_U32 nRGBAlphaConstant;
00289     OMX_COLORBLENDTYPE  eColorBlend;
00290 } OMX_CONFIG_COLORBLENDTYPE;
00291 
00292 
00303 typedef struct OMX_FRAMESIZETYPE {
00304     OMX_U32 nSize;
00305     OMX_VERSIONTYPE nVersion;
00306     OMX_U32 nPortIndex;
00307     OMX_U32 nWidth;
00308     OMX_U32 nHeight;
00309 } OMX_FRAMESIZETYPE;
00310 
00311 
00321 typedef struct OMX_CONFIG_ROTATIONTYPE {
00322     OMX_U32 nSize;
00323     OMX_VERSIONTYPE nVersion;
00324     OMX_U32 nPortIndex;
00325     OMX_S32 nRotation; 
00326 } OMX_CONFIG_ROTATIONTYPE;
00327 
00328 
00338 typedef enum OMX_MIRRORTYPE {
00339     OMX_MirrorNone = 0,
00340     OMX_MirrorVertical,
00341     OMX_MirrorHorizontal,
00342     OMX_MirrorBoth, 
00343     OMX_MirrorKhronosExtensions = 0x6F000000, 
00344     OMX_MirrorVendorStartUnused = 0x7F000000, 
00345     OMX_MirrorMax = 0x7FFFFFFF   
00346 } OMX_MIRRORTYPE;
00347 
00348 
00358 typedef struct OMX_CONFIG_MIRRORTYPE {
00359     OMX_U32 nSize;
00360     OMX_VERSIONTYPE nVersion; 
00361     OMX_U32 nPortIndex;
00362     OMX_MIRRORTYPE  eMirror;
00363 } OMX_CONFIG_MIRRORTYPE;
00364 
00365 
00376 typedef struct OMX_CONFIG_POINTTYPE {
00377     OMX_U32 nSize;
00378     OMX_VERSIONTYPE nVersion;
00379     OMX_U32 nPortIndex;
00380     OMX_S32 nX;
00381     OMX_S32 nY;
00382 } OMX_CONFIG_POINTTYPE;
00383 
00384 
00397 typedef struct OMX_CONFIG_RECTTYPE {
00398     OMX_U32 nSize;
00399     OMX_VERSIONTYPE nVersion;  
00400     OMX_U32 nPortIndex; 
00401     OMX_S32 nLeft; 
00402     OMX_S32 nTop;
00403     OMX_U32 nWidth;
00404     OMX_U32 nHeight;
00405 } OMX_CONFIG_RECTTYPE;
00406 
00407 
00417 typedef struct OMX_PARAM_DEBLOCKINGTYPE {
00418     OMX_U32 nSize;
00419     OMX_VERSIONTYPE nVersion;
00420     OMX_U32 nPortIndex;
00421     OMX_BOOL bDeblocking;
00422 } OMX_PARAM_DEBLOCKINGTYPE;
00423 
00424 
00434 typedef struct OMX_CONFIG_FRAMESTABTYPE {
00435     OMX_U32 nSize;
00436     OMX_VERSIONTYPE nVersion;
00437     OMX_U32 nPortIndex;
00438     OMX_BOOL bStab;
00439 } OMX_CONFIG_FRAMESTABTYPE;
00440 
00441 
00449 typedef enum OMX_WHITEBALCONTROLTYPE {
00450     OMX_WhiteBalControlOff = 0,
00451     OMX_WhiteBalControlAuto,
00452     OMX_WhiteBalControlSunLight,
00453     OMX_WhiteBalControlCloudy,
00454     OMX_WhiteBalControlShade,
00455     OMX_WhiteBalControlTungsten,
00456     OMX_WhiteBalControlFluorescent,
00457     OMX_WhiteBalControlIncandescent,
00458     OMX_WhiteBalControlFlash,
00459     OMX_WhiteBalControlHorizon,
00460     OMX_WhiteBalControlKhronosExtensions = 0x6F000000, 
00461     OMX_WhiteBalControlVendorStartUnused = 0x7F000000, 
00462     OMX_WhiteBalControlMax = 0x7FFFFFFF
00463 } OMX_WHITEBALCONTROLTYPE;
00464 
00465 
00475 typedef struct OMX_CONFIG_WHITEBALCONTROLTYPE {
00476     OMX_U32 nSize;
00477     OMX_VERSIONTYPE nVersion;
00478     OMX_U32 nPortIndex;
00479     OMX_WHITEBALCONTROLTYPE eWhiteBalControl;
00480 } OMX_CONFIG_WHITEBALCONTROLTYPE;
00481 
00482 
00486 typedef enum OMX_EXPOSURECONTROLTYPE {
00487     OMX_ExposureControlOff = 0,
00488     OMX_ExposureControlAuto,
00489     OMX_ExposureControlNight,
00490     OMX_ExposureControlBackLight,
00491     OMX_ExposureControlSpotLight,
00492     OMX_ExposureControlSports,
00493     OMX_ExposureControlSnow,
00494     OMX_ExposureControlBeach,
00495     OMX_ExposureControlLargeAperture,
00496     OMX_ExposureControlSmallApperture,
00497     OMX_ExposureControlKhronosExtensions = 0x6F000000, 
00498     OMX_ExposureControlVendorStartUnused = 0x7F000000, 
00499     OMX_ExposureControlMax = 0x7FFFFFFF
00500 } OMX_EXPOSURECONTROLTYPE;
00501 
00502 
00512 typedef struct OMX_CONFIG_EXPOSURECONTROLTYPE {
00513     OMX_U32 nSize;
00514     OMX_VERSIONTYPE nVersion;
00515     OMX_U32 nPortIndex;
00516     OMX_EXPOSURECONTROLTYPE eExposureControl;
00517 } OMX_CONFIG_EXPOSURECONTROLTYPE;
00518 
00519 
00531 typedef struct OMX_PARAM_SENSORMODETYPE {
00532     OMX_U32 nSize;
00533     OMX_VERSIONTYPE nVersion;
00534     OMX_U32 nPortIndex;
00535     OMX_U32 nFrameRate;
00536     OMX_BOOL bOneShot;
00537     OMX_FRAMESIZETYPE sFrameSize;
00538 } OMX_PARAM_SENSORMODETYPE;
00539 
00540 
00550 typedef struct OMX_CONFIG_CONTRASTTYPE {
00551     OMX_U32 nSize;
00552     OMX_VERSIONTYPE nVersion;
00553     OMX_U32 nPortIndex;
00554     OMX_S32 nContrast;
00555 } OMX_CONFIG_CONTRASTTYPE;
00556 
00557 
00567 typedef struct OMX_CONFIG_BRIGHTNESSTYPE {
00568     OMX_U32 nSize;
00569     OMX_VERSIONTYPE nVersion;
00570     OMX_U32 nPortIndex;
00571     OMX_U32 nBrightness;
00572 } OMX_CONFIG_BRIGHTNESSTYPE;
00573 
00574 
00586 typedef struct OMX_CONFIG_BACKLIGHTTYPE {
00587     OMX_U32 nSize;
00588     OMX_VERSIONTYPE nVersion;
00589     OMX_U32 nPortIndex;
00590     OMX_U32 nBacklight;
00591     OMX_U32 nTimeout;
00592 } OMX_CONFIG_BACKLIGHTTYPE;
00593 
00594 
00604 typedef struct OMX_CONFIG_GAMMATYPE {
00605     OMX_U32 nSize;
00606     OMX_VERSIONTYPE nVersion;
00607     OMX_U32 nPortIndex;
00608     OMX_S32 nGamma;
00609 } OMX_CONFIG_GAMMATYPE;
00610 
00611 
00622 typedef struct OMX_CONFIG_SATURATIONTYPE {
00623     OMX_U32 nSize;
00624     OMX_VERSIONTYPE nVersion;
00625     OMX_U32 nPortIndex;
00626     OMX_S32 nSaturation;
00627 } OMX_CONFIG_SATURATIONTYPE;
00628 
00629 
00640 typedef struct OMX_CONFIG_LIGHTNESSTYPE {
00641     OMX_U32 nSize;
00642     OMX_VERSIONTYPE nVersion;
00643     OMX_U32 nPortIndex;
00644     OMX_S32 nLightness;
00645 } OMX_CONFIG_LIGHTNESSTYPE;
00646 
00647 
00661 typedef struct OMX_CONFIG_PLANEBLENDTYPE {
00662     OMX_U32 nSize;
00663     OMX_VERSIONTYPE nVersion;
00664     OMX_U32 nPortIndex;
00665     OMX_U32 nDepth;
00666     OMX_U32 nAlpha;
00667 } OMX_CONFIG_PLANEBLENDTYPE;
00668 
00669 
00683 typedef struct OMX_PARAM_INTERLEAVETYPE {
00684     OMX_U32 nSize;
00685     OMX_VERSIONTYPE nVersion;
00686     OMX_U32 nPortIndex;
00687     OMX_BOOL bEnable;
00688     OMX_U32 nInterleavePortIndex;
00689 } OMX_PARAM_INTERLEAVETYPE;
00690 
00691 
00695 typedef enum OMX_TRANSITIONEFFECTTYPE {
00696     OMX_EffectNone,
00697     OMX_EffectFadeFromBlack,
00698     OMX_EffectFadeToBlack,
00699     OMX_EffectUnspecifiedThroughConstantColor,
00700     OMX_EffectDissolve,
00701     OMX_EffectWipe,
00702     OMX_EffectUnspecifiedMixOfTwoScenes,
00703     OMX_EffectKhronosExtensions = 0x6F000000, 
00704     OMX_EffectVendorStartUnused = 0x7F000000, 
00705     OMX_EffectMax = 0x7FFFFFFF
00706 } OMX_TRANSITIONEFFECTTYPE;
00707 
00708 
00718 typedef struct OMX_CONFIG_TRANSITIONEFFECTTYPE {
00719     OMX_U32 nSize;
00720     OMX_VERSIONTYPE nVersion;
00721     OMX_U32 nPortIndex;
00722     OMX_TRANSITIONEFFECTTYPE eEffect;
00723 } OMX_CONFIG_TRANSITIONEFFECTTYPE;
00724 
00725 
00731 typedef enum OMX_DATAUNITTYPE {
00732     OMX_DataUnitCodedPicture,
00733     OMX_DataUnitVideoSegment,
00734     OMX_DataUnitSeveralSegments,
00735     OMX_DataUnitArbitraryStreamSection,
00736     OMX_DataUnitKhronosExtensions = 0x6F000000, 
00737     OMX_DataUnitVendorStartUnused = 0x7F000000, 
00738     OMX_DataUnitMax = 0x7FFFFFFF
00739 } OMX_DATAUNITTYPE;
00740 
00741 
00747 typedef enum OMX_DATAUNITENCAPSULATIONTYPE {
00748     OMX_DataEncapsulationElementaryStream,
00749     OMX_DataEncapsulationGenericPayload,
00750     OMX_DataEncapsulationRtpPayload,
00751     OMX_DataEncapsulationKhronosExtensions = 0x6F000000, 
00752     OMX_DataEncapsulationVendorStartUnused = 0x7F000000, 
00753     OMX_DataEncapsulationMax = 0x7FFFFFFF
00754 } OMX_DATAUNITENCAPSULATIONTYPE;
00755 
00756 
00760 typedef struct OMX_PARAM_DATAUNITTYPE {
00761     OMX_U32 nSize;            
00762     OMX_VERSIONTYPE nVersion; 
00763     OMX_U32 nPortIndex;       
00764     OMX_DATAUNITTYPE eUnitType;
00765     OMX_DATAUNITENCAPSULATIONTYPE eEncapsulationType;
00766 } OMX_PARAM_DATAUNITTYPE;
00767 
00768 
00772 typedef enum OMX_DITHERTYPE {
00773     OMX_DitherNone,
00774     OMX_DitherOrdered,
00775     OMX_DitherErrorDiffusion,
00776     OMX_DitherOther,
00777     OMX_DitherKhronosExtensions = 0x6F000000, 
00778     OMX_DitherVendorStartUnused = 0x7F000000, 
00779     OMX_DitherMax = 0x7FFFFFFF
00780 } OMX_DITHERTYPE;
00781 
00782 
00786 typedef struct OMX_CONFIG_DITHERTYPE {
00787     OMX_U32 nSize;            
00788     OMX_VERSIONTYPE nVersion; 
00789     OMX_U32 nPortIndex;       
00790     OMX_DITHERTYPE eDither;   
00791 } OMX_CONFIG_DITHERTYPE;
00792 
00793 typedef struct OMX_CONFIG_CAPTUREMODETYPE {
00794     OMX_U32 nSize;
00795     OMX_VERSIONTYPE nVersion;
00796     OMX_U32 nPortIndex;     
00797     OMX_BOOL bContinuous;   
00799     OMX_BOOL bFrameLimited; 
00804     OMX_U32 nFrameLimit;      
00806 } OMX_CONFIG_CAPTUREMODETYPE;
00807 
00808 typedef enum OMX_METERINGTYPE {
00809  
00810     OMX_MeteringModeAverage,     
00811     OMX_MeteringModeSpot,         
00812     OMX_MeteringModeMatrix,      
00814     OMX_MeteringKhronosExtensions = 0x6F000000, 
00815     OMX_MeteringVendorStartUnused = 0x7F000000, 
00816     OMX_EVModeMax = 0x7fffffff
00817 } OMX_METERINGTYPE;
00818  
00819 typedef struct OMX_CONFIG_EXPOSUREVALUETYPE {
00820     OMX_U32 nSize;
00821     OMX_VERSIONTYPE nVersion;
00822     OMX_U32 nPortIndex;
00823     OMX_METERINGTYPE eMetering;
00824     OMX_S32 xEVCompensation;      
00825     OMX_U32 nApertureFNumber;     
00826     OMX_BOOL bAutoAperture;     
00827     OMX_U32 nShutterSpeedMsec;    
00828     OMX_BOOL bAutoShutterSpeed; 
00829     OMX_U32 nSensitivity;         
00830     OMX_BOOL bAutoSensitivity;  
00831 } OMX_CONFIG_EXPOSUREVALUETYPE;
00832 
00850 typedef struct OMX_CONFIG_FOCUSREGIONTYPE {
00851     OMX_U32 nSize;
00852     OMX_VERSIONTYPE nVersion;
00853     OMX_U32 nPortIndex;
00854     OMX_BOOL bCenter;
00855     OMX_BOOL bLeft;
00856     OMX_BOOL bRight;
00857     OMX_BOOL bTop;
00858     OMX_BOOL bBottom;
00859     OMX_BOOL bTopLeft;
00860     OMX_BOOL bTopRight;
00861     OMX_BOOL bBottomLeft;
00862     OMX_BOOL bBottomRight;
00863 } OMX_CONFIG_FOCUSREGIONTYPE;
00864 
00868 typedef enum OMX_FOCUSSTATUSTYPE {
00869     OMX_FocusStatusOff = 0,
00870     OMX_FocusStatusRequest,
00871     OMX_FocusStatusReached,
00872     OMX_FocusStatusUnableToReach,
00873     OMX_FocusStatusLost,
00874     OMX_FocusStatusKhronosExtensions = 0x6F000000, 
00875     OMX_FocusStatusVendorStartUnused = 0x7F000000, 
00876     OMX_FocusStatusMax = 0x7FFFFFFF
00877 } OMX_FOCUSSTATUSTYPE;
00878 
00897 typedef struct OMX_PARAM_FOCUSSTATUSTYPE {
00898     OMX_U32 nSize;
00899     OMX_VERSIONTYPE nVersion;
00900     OMX_U32 nPortIndex;
00901     OMX_FOCUSSTATUSTYPE eFocusStatus;
00902     OMX_BOOL bCenterStatus;
00903     OMX_BOOL bLeftStatus;
00904     OMX_BOOL bRightStatus;
00905     OMX_BOOL bTopStatus;
00906     OMX_BOOL bBottomStatus;
00907     OMX_BOOL bTopLeftStatus;
00908     OMX_BOOL bTopRightStatus;
00909     OMX_BOOL bBottomLeftStatus;
00910     OMX_BOOL bBottomRightStatus;
00911 } OMX_PARAM_FOCUSSTATUSTYPE;
00912 
00915 #ifdef __cplusplus
00916 }
00917 #endif /* __cplusplus */
00918 
00919 #endif
00920 /* File EOF */