summaryrefslogtreecommitdiffstats
path: root/domx/omx_core/inc/OMX_TI_IVCommon.h
diff options
context:
space:
mode:
Diffstat (limited to 'domx/omx_core/inc/OMX_TI_IVCommon.h')
-rwxr-xr-xdomx/omx_core/inc/OMX_TI_IVCommon.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/domx/omx_core/inc/OMX_TI_IVCommon.h b/domx/omx_core/inc/OMX_TI_IVCommon.h
index ebd5b2f..cfe228a 100755
--- a/domx/omx_core/inc/OMX_TI_IVCommon.h
+++ b/domx/omx_core/inc/OMX_TI_IVCommon.h
@@ -55,6 +55,7 @@ extern "C" {
#define MAX_URI_LENGTH (OMX_MAX_STRINGNAME_SIZE)
+#define MAX_ALGOAREAS (35)
/*======================================================================= */
/* Enumerated values for operation mode for compressed image
@@ -2384,8 +2385,12 @@ typedef struct OMX_TI_CAPTYPE {
OMX_U16 ulCapVarFPSModesCount; // supported variable FPS capture modes count
OMX_TI_VARFPSTYPE tCapVarFPSModes[10];
OMX_TI_SENMOUNT_TYPE tSenMounting;
+ OMX_U16 ulAlgoAreasFocusCount; // supported number of AlgoAreas for focus areas
+ OMX_U16 ulAlgoAreasExposureCount; // supported number of AlgoAreas for exposure areas
} OMX_TI_CAPTYPE;
+
+
/**
* Defines 3A Face priority mode.
*
@@ -2600,6 +2605,48 @@ typedef struct OMX_TI_CONFIG_ZSLDELAYTYPE {
OMX_S32 nDelay;
} OMX_TI_CONFIG_ZSLDELAYTYPE;
+/**
+ * AlogAreas purpose
+ * This type specifies the purpose of areas specified in OMX_ALGOAREASTYPE.
+ * */
+typedef enum OMX_ALGOAREAPURPOSE{
+ OMX_AlgoAreaFocus = 0, // Multi region focus
+ OMX_AlgoAreaExposure,
+}OMX_ALGOAREAPURPOSE;
+
+typedef struct OMX_ALGOAREA {
+ OMX_S32 nLeft; /**< The leftmost coordinate of the area rectangle */
+ OMX_S32 nTop; /**< The topmost coordinate of the area rectangle */
+ OMX_U32 nWidth; /**< The width of the area rectangle in pixels */
+ OMX_U32 nHeight; /**< The height of the area rectangle in pixels */
+ OMX_U32 nPriority; /**< Priority - ranges from 1 to 1000 */
+}OMX_ALGOAREA;
+
+/**
+ * Algorythm areas type
+ * This type defines areas for Multi Region Focus,
+ * or another algorithm region parameters,
+ * such as Multi Region Auto Exposure.
+ *
+ * STRUCT MEMBERS:
+ * nSize : Size of the structure in bytes
+ * nVersion : OMX specification version information
+ * nPortIndex : Port index
+ * tAreaPosition : Area definition - coordinates and purpose - Multi Region Focus, Auto Exposure, etc.
+ * nNumAreas : Number of areas defined in the array
+ * nAlgoAreaPurpose : Algo area purpose - eg. Multi Region Focus is OMX_AlgoAreaFocus
+ */
+typedef struct OMX_ALGOAREASTYPE {
+ OMX_U32 nSize;
+ OMX_VERSIONTYPE nVersion;
+ OMX_U32 nPortIndex;
+
+ OMX_U32 nNumAreas;
+ OMX_ALGOAREA tAlgoAreas[MAX_ALGOAREAS];
+ OMX_ALGOAREAPURPOSE nAlgoAreaPurpose;
+} OMX_ALGOAREASTYPE;
+
+
#ifdef __cplusplus
}