summaryrefslogtreecommitdiffstats
path: root/sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h
diff options
context:
space:
mode:
authorSeungBeom Kim <sbcrux.kim@samsung.com>2011-07-19 10:23:46 +0900
committerJames Dong <jdong@google.com>2011-07-25 17:39:50 -0700
commitdd600c91fc1bc564ae62ef945d67436fe2fb0451 (patch)
treead72255e4bdda4f81c8157d061861dd5c385d6af /sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h
parent40a09525b7c484764c64daa1ca663a314a1b6d31 (diff)
downloaddevice_samsung_crespo-dd600c91fc1bc564ae62ef945d67436fe2fb0451.zip
device_samsung_crespo-dd600c91fc1bc564ae62ef945d67436fe2fb0451.tar.gz
device_samsung_crespo-dd600c91fc1bc564ae62ef945d67436fe2fb0451.tar.bz2
Change SEC_OMX for Video Editor
1. Support Google ExtensionIndex. 2. Decode Component - Decode component return real YUV output data. - Video decode component support two output port color format. They are OMX_COLOR_FormatYUV420SemiPlanar(NV12) and OMX_COLOR_FormatYUV420Planar. Choose one of them under negotiation. - output port default color format is OMX_COLOR_FormatYUV420SemiPlanar(NV12). - Turn off the gralloc/graphic buffer since gralloc/graphic buffer allocator is unavailable 3. Encode Component - Encode component support real YUV input data. - Video encode component support two input port color format. They are OMX_COLOR_FormatYUV420SemiPlanar(NV12) and OMX_COLOR_FormatYUV420Planar. Choose one of them under negotiation. - input port default color format is OMX_COLOR_FormatYUV420SemiPlanar(NV12). - gralloc buffer is not support yet. (store meta data mode use physical address.) 4. Camera hal - Support metadata buffer mode TODO: 1. enable grallco/graphic buffer once the allocator is available 2. add support for gralloc-based metadata buffer support in video encoder component Change-Id: Ic8ba4f0230d6de77ffde7ddf1e2c9a3a5aeb806f Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
Diffstat (limited to 'sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h')
-rw-r--r--sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h100
1 files changed, 55 insertions, 45 deletions
diff --git a/sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h b/sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h
index 10dd94d..66aa696 100644
--- a/sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h
+++ b/sec_mm/sec_omx/sec_omx_include/sec/SEC_OMX_Def.h
@@ -16,10 +16,10 @@
*/
/*
- * @file SEC_OMX_Def.h
- * @brief SEC_OMX specific define
- * @author SeungBeom Kim (sbcrux.kim@samsung.com)
- * @version 1.0
+ * @file SEC_OMX_Def.h
+ * @brief SEC_OMX specific define
+ * @author SeungBeom Kim (sbcrux.kim@samsung.com)
+ * @version 1.0
* @history
* 2010.7.15 : Create
*/
@@ -43,83 +43,93 @@
#define MAX_OMX_COMPONENT_LIBNAME_SIZE OMX_MAX_STRINGNAME_SIZE * 2
#define MAX_OMX_MIMETYPE_SIZE OMX_MAX_STRINGNAME_SIZE
-#define MAX_TIMESTAMP 16
-#define MAX_FLAGS 16
+#define MAX_TIMESTAMP 17
+#define MAX_FLAGS 17
+#define USE_ANDROID_EXTENSION
typedef enum _SEC_CODEC_TYPE
{
- SW_CODEC,
- HW_VIDEO_CODEC,
- HW_AUDIO_CODEC
+ SW_CODEC,
+ HW_VIDEO_CODEC,
+ HW_AUDIO_CODEC
} SEC_CODEC_TYPE;
typedef struct _SEC_OMX_PRIORITYMGMTTYPE
{
- OMX_U32 nGroupPriority; /* the value 0 represents the highest priority */
- /* for a group of components */
- OMX_U32 nGroupID;
+ OMX_U32 nGroupPriority; /* the value 0 represents the highest priority */
+ /* for a group of components */
+ OMX_U32 nGroupID;
} SEC_OMX_PRIORITYMGMTTYPE;
typedef enum _SEC_OMX_INDEXTYPE
{
- OMX_IndexVendorThumbnailMode = 0x7F000001,
- OMX_COMPONENT_CAPABILITY_TYPE_INDEX = 0xFF7A347 /*for Android*/
+#define SEC_INDEX_PARAM_ENABLE_THUMBNAIL "OMX.SEC.index.ThumbnailMode"
+ OMX_IndexVendorThumbnailMode = 0x7F000001,
+
+ /* for Android Native Window */
+#define SEC_INDEX_PARAM_ENABLE_ANB "OMX.google.android.index.enableAndroidNativeBuffers"
+ OMX_IndexParamEnableAndroidBuffers = 0x7F000011,
+#define SEC_INDEX_PARAM_GET_ANB "OMX.google.android.index.getAndroidNativeBufferUsage"
+ OMX_IndexParamGetAndroidNativeBuffer = 0x7F000012,
+#define SEC_INDEX_PARAM_USE_ANB "OMX.google.android.index.useAndroidNativeBuffer"
+ OMX_IndexParamUseAndroidNativeBuffer = 0x7F000013,
+#define SEC_INDEX_PARAM_STORE_METADATA_BUFFER "OMX.google.android.index.storeMetaDataInBuffers"
+ OMX_IndexParamStoreMetaDataBuffer = 0x7F000014,
+
+ /* for Android PV OpenCore*/
+ OMX_COMPONENT_CAPABILITY_TYPE_INDEX = 0xFF7A347
} SEC_OMX_INDEXTYPE;
typedef enum _SEC_OMX_ERRORTYPE
{
- OMX_ErrorNoEOF = 0x90000001,
- OMX_ErrorInputDataDecodeYet,
- OMX_ErrorInputDataEncodeYet,
- OMX_ErrorMFCInit
+ OMX_ErrorNoEOF = 0x90000001,
+ OMX_ErrorInputDataDecodeYet,
+ OMX_ErrorInputDataEncodeYet,
+ OMX_ErrorMFCInit
} SEC_OMX_ERRORTYPE;
typedef enum _SEC_OMX_COMMANDTYPE
{
- SEC_OMX_CommandComponentDeInit = 0x7F000001,
- SEC_OMX_CommandEmptyBuffer,
- SEC_OMX_CommandFillBuffer
+ SEC_OMX_CommandComponentDeInit = 0x7F000001,
+ SEC_OMX_CommandEmptyBuffer,
+ SEC_OMX_CommandFillBuffer
} SEC_OMX_COMMANDTYPE;
typedef enum _SEC_OMX_TRANS_STATETYPE {
- SEC_OMX_TransStateInvalid,
- SEC_OMX_TransStateLoadedToIdle,
- SEC_OMX_TransStateIdleToExecuting,
- SEC_OMX_TransStateExecutingToIdle,
- SEC_OMX_TransStateIdleToLoaded,
- SEC_OMX_TransStateMax = 0X7FFFFFFF
+ SEC_OMX_TransStateInvalid,
+ SEC_OMX_TransStateLoadedToIdle,
+ SEC_OMX_TransStateIdleToExecuting,
+ SEC_OMX_TransStateExecutingToIdle,
+ SEC_OMX_TransStateIdleToLoaded,
+ SEC_OMX_TransStateMax = 0X7FFFFFFF
} SEC_OMX_TRANS_STATETYPE;
typedef enum _SEC_OMX_COLOR_FORMATTYPE {
-#ifndef USE_SAMSUNG_COLORFORMAT
- SEC_OMX_COLOR_FormatNV12PhysicalAddress = OMX_COLOR_FormatYUV420SemiPlanar
-#else
- SEC_OMX_COLOR_FormatNV12PhysicalAddress = 0x7F000001 /**< Reserved region for introducing Vendor Extensions */
-#endif
+ OMX_SEC_COLOR_FormatNV12TPhysicalAddress = 0x7F000001 /**< Reserved region for introducing Vendor Extensions */
}SEC_OMX_COLOR_FORMATTYPE;
typedef enum _SEC_OMX_SUPPORTFORMAT_TYPE
{
- supportFormat_1 = 0x00,
- supportFormat_2,
- supportFormat_3,
- supportFormat_4
+ supportFormat_0 = 0x00,
+ supportFormat_1,
+ supportFormat_2,
+ supportFormat_3
} SEC_OMX_SUPPORTFORMAT_TYPE;
/* for Android */
typedef struct _OMXComponentCapabilityFlagsType
{
- /* OMX COMPONENT CAPABILITY RELATED MEMBERS */
- OMX_BOOL iIsOMXComponentMultiThreaded;
- OMX_BOOL iOMXComponentSupportsExternalOutputBufferAlloc;
- OMX_BOOL iOMXComponentSupportsExternalInputBufferAlloc;
- OMX_BOOL iOMXComponentSupportsMovableInputBuffers;
- OMX_BOOL iOMXComponentSupportsPartialFrames;
- OMX_BOOL iOMXComponentUsesNALStartCodes;
- OMX_BOOL iOMXComponentCanHandleIncompleteFrames;
- OMX_BOOL iOMXComponentUsesFullAVCFrames;
+ /* OMX COMPONENT CAPABILITY RELATED MEMBERS */
+ OMX_BOOL iIsOMXComponentMultiThreaded;
+ OMX_BOOL iOMXComponentSupportsExternalOutputBufferAlloc;
+ OMX_BOOL iOMXComponentSupportsExternalInputBufferAlloc;
+ OMX_BOOL iOMXComponentSupportsMovableInputBuffers;
+ OMX_BOOL iOMXComponentSupportsPartialFrames;
+ OMX_BOOL iOMXComponentUsesNALStartCodes;
+ OMX_BOOL iOMXComponentCanHandleIncompleteFrames;
+ OMX_BOOL iOMXComponentUsesFullAVCFrames;
} OMXComponentCapabilityFlagsType;
typedef struct _SEC_OMX_VIDEO_PROFILELEVEL