1334de520b0369215b7931fefa424fb92d295f0ebJames Dong/* ------------------------------------------------------------------ 2334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Copyright (C) 1998-2009 PacketVideo 3334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 4334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Licensed under the Apache License, Version 2.0 (the "License"); 5334de520b0369215b7931fefa424fb92d295f0ebJames Dong * you may not use this file except in compliance with the License. 6334de520b0369215b7931fefa424fb92d295f0ebJames Dong * You may obtain a copy of the License at 7334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 8334de520b0369215b7931fefa424fb92d295f0ebJames Dong * http://www.apache.org/licenses/LICENSE-2.0 9334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 10334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Unless required by applicable law or agreed to in writing, software 11334de520b0369215b7931fefa424fb92d295f0ebJames Dong * distributed under the License is distributed on an "AS IS" BASIS, 12334de520b0369215b7931fefa424fb92d295f0ebJames Dong * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13334de520b0369215b7931fefa424fb92d295f0ebJames Dong * express or implied. 14334de520b0369215b7931fefa424fb92d295f0ebJames Dong * See the License for the specific language governing permissions 15334de520b0369215b7931fefa424fb92d295f0ebJames Dong * and limitations under the License. 16334de520b0369215b7931fefa424fb92d295f0ebJames Dong * ------------------------------------------------------------------- 17334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 18334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 19334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Copyright (c) 2008 The Khronos Group Inc. 20334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 21334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Permission is hereby granted, free of charge, to any person obtaining 22334de520b0369215b7931fefa424fb92d295f0ebJames Dong * a copy of this software and associated documentation files (the 23334de520b0369215b7931fefa424fb92d295f0ebJames Dong * "Software"), to deal in the Software without restriction, including 24334de520b0369215b7931fefa424fb92d295f0ebJames Dong * without limitation the rights to use, copy, modify, merge, publish, 25334de520b0369215b7931fefa424fb92d295f0ebJames Dong * distribute, sublicense, and/or sell copies of the Software, and to 26334de520b0369215b7931fefa424fb92d295f0ebJames Dong * permit persons to whom the Software is furnished to do so, subject 27334de520b0369215b7931fefa424fb92d295f0ebJames Dong * to the following conditions: 28334de520b0369215b7931fefa424fb92d295f0ebJames Dong * The above copyright notice and this permission notice shall be included 29334de520b0369215b7931fefa424fb92d295f0ebJames Dong * in all copies or substantial portions of the Software. 30334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 31334de520b0369215b7931fefa424fb92d295f0ebJames Dong * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 32334de520b0369215b7931fefa424fb92d295f0ebJames Dong * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 33334de520b0369215b7931fefa424fb92d295f0ebJames Dong * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 34334de520b0369215b7931fefa424fb92d295f0ebJames Dong * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 35334de520b0369215b7931fefa424fb92d295f0ebJames Dong * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 36334de520b0369215b7931fefa424fb92d295f0ebJames Dong * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 37334de520b0369215b7931fefa424fb92d295f0ebJames Dong * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 38334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 39334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 40334de520b0369215b7931fefa424fb92d295f0ebJames Dong 41334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 42334de520b0369215b7931fefa424fb92d295f0ebJames Dong * @file OMX_IVCommon.h - OpenMax IL version 1.1.2 43334de520b0369215b7931fefa424fb92d295f0ebJames Dong * The structures needed by Video and Image components to exchange 44334de520b0369215b7931fefa424fb92d295f0ebJames Dong * parameters and configuration data with the components. 45334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 46334de520b0369215b7931fefa424fb92d295f0ebJames Dong#ifndef OMX_IVCommon_h 47334de520b0369215b7931fefa424fb92d295f0ebJames Dong#define OMX_IVCommon_h 48334de520b0369215b7931fefa424fb92d295f0ebJames Dong 49334de520b0369215b7931fefa424fb92d295f0ebJames Dong#ifdef __cplusplus 50334de520b0369215b7931fefa424fb92d295f0ebJames Dongextern "C" { 51334de520b0369215b7931fefa424fb92d295f0ebJames Dong#endif /* __cplusplus */ 52334de520b0369215b7931fefa424fb92d295f0ebJames Dong 53334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 54334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Each OMX header must include all required header files to allow the header 55334de520b0369215b7931fefa424fb92d295f0ebJames Dong * to compile without errors. The includes below are required for this header 56334de520b0369215b7931fefa424fb92d295f0ebJames Dong * file to compile successfully 57334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 58334de520b0369215b7931fefa424fb92d295f0ebJames Dong 59334de520b0369215b7931fefa424fb92d295f0ebJames Dong#include <OMX_Core.h> 60334de520b0369215b7931fefa424fb92d295f0ebJames Dong 61334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** @defgroup iv OpenMAX IL Imaging and Video Domain 62334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Common structures for OpenMAX IL Imaging and Video domains 63334de520b0369215b7931fefa424fb92d295f0ebJames Dong * @{ 64334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 65334de520b0369215b7931fefa424fb92d295f0ebJames Dong 66334de520b0369215b7931fefa424fb92d295f0ebJames Dong 67334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 68334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Enumeration defining possible uncompressed image/video formats. 69334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 70334de520b0369215b7931fefa424fb92d295f0ebJames Dong * ENUMS: 71334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Unused : Placeholder value when format is N/A 72334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Monochrome : black and white 73334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 8bitRGB332 : Red 7:5, Green 4:2, Blue 1:0 74334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 12bitRGB444 : Red 11:8, Green 7:4, Blue 3:0 75334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 16bitARGB4444 : Alpha 15:12, Red 11:8, Green 7:4, Blue 3:0 76334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 16bitARGB1555 : Alpha 15, Red 14:10, Green 9:5, Blue 4:0 77334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 16bitRGB565 : Red 15:11, Green 10:5, Blue 4:0 78334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 16bitBGR565 : Blue 15:11, Green 10:5, Red 4:0 79334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 18bitRGB666 : Red 17:12, Green 11:6, Blue 5:0 80334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 18bitARGB1665 : Alpha 17, Red 16:11, Green 10:5, Blue 4:0 81334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 19bitARGB1666 : Alpha 18, Red 17:12, Green 11:6, Blue 5:0 82334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 24bitRGB888 : Red 24:16, Green 15:8, Blue 7:0 83334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 24bitBGR888 : Blue 24:16, Green 15:8, Red 7:0 84334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 24bitARGB1887 : Alpha 23, Red 22:15, Green 14:7, Blue 6:0 85334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 25bitARGB1888 : Alpha 24, Red 23:16, Green 15:8, Blue 7:0 86334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 32bitBGRA8888 : Blue 31:24, Green 23:16, Red 15:8, Alpha 7:0 87334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 32bitARGB8888 : Alpha 31:24, Red 23:16, Green 15:8, Blue 7:0 88334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV411Planar : U,Y are subsampled by a factor of 4 horizontally 89334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV411PackedPlanar : packed per payload in planar slices 90334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV420Planar : Three arrays Y,U,V. 91334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV420PackedPlanar : packed per payload in planar slices 92334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV420SemiPlanar : Two arrays, one is all Y, the other is U and V 93334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV422Planar : Three arrays Y,U,V. 94334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV422PackedPlanar : packed per payload in planar slices 95334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV422SemiPlanar : Two arrays, one is all Y, the other is U and V 96334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YCbYCr : Organized as 16bit YUYV (i.e. YCbYCr) 97334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YCrYCb : Organized as 16bit YVYU (i.e. YCrYCb) 98334de520b0369215b7931fefa424fb92d295f0ebJames Dong * CbYCrY : Organized as 16bit UYVY (i.e. CbYCrY) 99334de520b0369215b7931fefa424fb92d295f0ebJames Dong * CrYCbY : Organized as 16bit VYUY (i.e. CrYCbY) 100334de520b0369215b7931fefa424fb92d295f0ebJames Dong * YUV444Interleaved : Each pixel contains equal parts YUV 101334de520b0369215b7931fefa424fb92d295f0ebJames Dong * RawBayer8bit : SMIA camera output format 102334de520b0369215b7931fefa424fb92d295f0ebJames Dong * RawBayer10bit : SMIA camera output format 103334de520b0369215b7931fefa424fb92d295f0ebJames Dong * RawBayer8bitcompressed : SMIA camera output format 104334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 105334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_COLOR_FORMATTYPE { 106334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatUnused, 107334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatMonochrome, 108334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format8bitRGB332, 109334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format12bitRGB444, 110334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format16bitARGB4444, 111334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format16bitARGB1555, 112334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format16bitRGB565, 113334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format16bitBGR565, 114334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format18bitRGB666, 115334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format18bitARGB1665, 116334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format19bitARGB1666, 117334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format24bitRGB888, 118334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format24bitBGR888, 119334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format24bitARGB1887, 120334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format25bitARGB1888, 121334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format32bitBGRA8888, 122334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format32bitARGB8888, 123334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV411Planar, 124334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV411PackedPlanar, 125334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV420Planar, 126334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV420PackedPlanar, 127334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV420SemiPlanar, 128334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV422Planar, 129334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV422PackedPlanar, 130334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV422SemiPlanar, 131334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYCbYCr, 132334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYCrYCb, 133334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatCbYCrY, 134334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatCrYCbY, 135334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV444Interleaved, 136334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatRawBayer8bit, 137334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatRawBayer10bit, 138334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatRawBayer8bitcompressed, 139334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL2, 140334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL4, 141334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL8, 142334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL16, 143334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL24, 144334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatL32, 145334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV420PackedSemiPlanar, 146334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatYUV422PackedSemiPlanar, 147334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format18BitBGR666, 148334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format24BitARGB6666, 149334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_Format24BitABGR6666, 150334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 151334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 152334de520b0369215b7931fefa424fb92d295f0ebJames Dong /**<Reserved android opaque colorformat. Tells the encoder that 153334de520b0369215b7931fefa424fb92d295f0ebJames Dong * the actual colorformat will be relayed by the 154334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Gralloc Buffers. 155334de520b0369215b7931fefa424fb92d295f0ebJames Dong * FIXME: In the process of reserving some enum values for 156334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Android-specific OMX IL colorformats. Change this enum to 157334de520b0369215b7931fefa424fb92d295f0ebJames Dong * an acceptable range once that is done. 158334de520b0369215b7931fefa424fb92d295f0ebJames Dong * */ 159334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatAndroidOpaque = 0x7F000789, 16001cb166a53808b4c896923756244a7ed3348a972David Smith OMX_COLOR_Format32BitRGBA8888 = 0x7F00A000, 161524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar /** Flexible 8-bit YUV format. Codec should report this format 162524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar * as being supported if it supports any YUV420 packed planar 163524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar * or semiplanar formats. When port is set to use this format, 164524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar * codec can substitute any YUV420 packed planar or semiplanar 165524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar * format for it. */ 166524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar OMX_COLOR_FormatYUV420Flexible = 0x7F420888, 167524077caa6a5e5508af40cf2012d45087ed9e7f3Lajos Molnar 168334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_TI_COLOR_FormatYUV420PackedSemiPlanar = 0x7F000100, 169334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_QCOM_COLOR_FormatYVU420SemiPlanar = 0x7FA30C00, 17007912f50930cf8cea2bc5f8f94e014c31af583b6Haynes Mathew George OMX_QCOM_COLOR_FormatYUV420PackedSemiPlanar64x32Tile2m8ka = 0x7FA30C03, 17162b40b35358910315be9ea44520ad6403d0023f6Marco Nelissen OMX_SEC_COLOR_FormatNV12Tiled = 0x7FC00002, 1721bc7e2f6dd78499f8ad469c54e200edb654acc67Rom Lemarchand OMX_QCOM_COLOR_FormatYUV420PackedSemiPlanar32m = 0x7FA30C04, 173334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLOR_FormatMax = 0x7FFFFFFF 174334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_COLOR_FORMATTYPE; 175334de520b0369215b7931fefa424fb92d295f0ebJames Dong 176334de520b0369215b7931fefa424fb92d295f0ebJames Dong 177334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 178334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines the matrix for conversion from RGB to YUV or vice versa. 179334de520b0369215b7931fefa424fb92d295f0ebJames Dong * iColorMatrix should be initialized with the fixed point values 180334de520b0369215b7931fefa424fb92d295f0ebJames Dong * used in converting between formats. 181334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 182334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_COLORCONVERSIONTYPE { 183334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; /**< Size of the structure in bytes */ 184334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 185334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; /**< Port that this struct applies to */ 186334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 xColorMatrix[3][3]; /**< Stored in signed Q16 format */ 187334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 xColorOffset[4]; /**< Stored in signed Q16 format */ 188334de520b0369215b7931fefa424fb92d295f0ebJames Dong}OMX_CONFIG_COLORCONVERSIONTYPE; 189334de520b0369215b7931fefa424fb92d295f0ebJames Dong 190334de520b0369215b7931fefa424fb92d295f0ebJames Dong 191334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 192334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Structure defining percent to scale each frame dimension. For example: 193334de520b0369215b7931fefa424fb92d295f0ebJames Dong * To make the width 50% larger, use fWidth = 1.5 and to make the width 194334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 1/2 the original size, use fWidth = 0.5 195334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 196334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_SCALEFACTORTYPE { 197334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; /**< Size of the structure in bytes */ 198334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 199334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; /**< Port that this struct applies to */ 200334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 xWidth; /**< Fixed point value stored as Q16 */ 201334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 xHeight; /**< Fixed point value stored as Q16 */ 202334de520b0369215b7931fefa424fb92d295f0ebJames Dong}OMX_CONFIG_SCALEFACTORTYPE; 203334de520b0369215b7931fefa424fb92d295f0ebJames Dong 204334de520b0369215b7931fefa424fb92d295f0ebJames Dong 205334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 206334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Enumeration of possible image filter types 207334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 208334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_IMAGEFILTERTYPE { 209334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterNone, 210334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterNoise, 211334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterEmboss, 212334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterNegative, 213334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterSketch, 214334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterOilPaint, 215334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterHatch, 216334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterGpen, 217334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterAntialias, 218334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterDeRing, 219334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterSolarize, 220334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 221334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 222334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ImageFilterMax = 0x7FFFFFFF 223334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_IMAGEFILTERTYPE; 224334de520b0369215b7931fefa424fb92d295f0ebJames Dong 225334de520b0369215b7931fefa424fb92d295f0ebJames Dong 226334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 227334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Image filter configuration 228334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 229334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 230334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 231334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 232334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 233334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eImageFilter : Image filter type enumeration 234334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 235334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_IMAGEFILTERTYPE { 236334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 237334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 238334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 239334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_IMAGEFILTERTYPE eImageFilter; 240334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_IMAGEFILTERTYPE; 241334de520b0369215b7931fefa424fb92d295f0ebJames Dong 242334de520b0369215b7931fefa424fb92d295f0ebJames Dong 243334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 244334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Customized U and V for color enhancement 245334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 246334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 247334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 248334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 249334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 250334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bColorEnhancement : Enable/disable color enhancement 251334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nCustomizedU : Practical values: 16-240, range: 0-255, value set for 252334de520b0369215b7931fefa424fb92d295f0ebJames Dong * U component 253334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nCustomizedV : Practical values: 16-240, range: 0-255, value set for 254334de520b0369215b7931fefa424fb92d295f0ebJames Dong * V component 255334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 256334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_COLORENHANCEMENTTYPE { 257334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 258334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 259334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 260334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bColorEnhancement; 261334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U8 nCustomizedU; 262334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U8 nCustomizedV; 263334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_COLORENHANCEMENTTYPE; 264334de520b0369215b7931fefa424fb92d295f0ebJames Dong 265334de520b0369215b7931fefa424fb92d295f0ebJames Dong 266334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 267334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Define color key and color key mask 268334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 269334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 270334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 271334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 272334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 273334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nARGBColor : 32bit Alpha, Red, Green, Blue Color 274334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nARGBMask : 32bit Mask for Alpha, Red, Green, Blue channels 275334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 276334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_COLORKEYTYPE { 277334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 278334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 279334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 280334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nARGBColor; 281334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nARGBMask; 282334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_COLORKEYTYPE; 283334de520b0369215b7931fefa424fb92d295f0ebJames Dong 284334de520b0369215b7931fefa424fb92d295f0ebJames Dong 285334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 286334de520b0369215b7931fefa424fb92d295f0ebJames Dong * List of color blend types for pre/post processing 287334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 288334de520b0369215b7931fefa424fb92d295f0ebJames Dong * ENUMS: 289334de520b0369215b7931fefa424fb92d295f0ebJames Dong * None : No color blending present 290334de520b0369215b7931fefa424fb92d295f0ebJames Dong * AlphaConstant : Function is (alpha_constant * src) + 291334de520b0369215b7931fefa424fb92d295f0ebJames Dong * (1 - alpha_constant) * dst) 292334de520b0369215b7931fefa424fb92d295f0ebJames Dong * AlphaPerPixel : Function is (alpha * src) + (1 - alpha) * dst) 293334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Alternate : Function is alternating pixels from src and dst 294334de520b0369215b7931fefa424fb92d295f0ebJames Dong * And : Function is (src & dst) 295334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Or : Function is (src | dst) 296334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Invert : Function is ~src 297334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 298334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_COLORBLENDTYPE { 299334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendNone, 300334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendAlphaConstant, 301334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendAlphaPerPixel, 302334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendAlternate, 303334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendAnd, 304334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendOr, 305334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendInvert, 306334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 307334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 308334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ColorBlendMax = 0x7FFFFFFF 309334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_COLORBLENDTYPE; 310334de520b0369215b7931fefa424fb92d295f0ebJames Dong 311334de520b0369215b7931fefa424fb92d295f0ebJames Dong 312334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 313334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Color blend configuration 314334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 315334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 316334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 317334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 318334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 319334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nRGBAlphaConstant : Constant global alpha values when global alpha is used 320334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eColorBlend : Color blend type enumeration 321334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 322334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_COLORBLENDTYPE { 323334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 324334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 325334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 326334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nRGBAlphaConstant; 327334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_COLORBLENDTYPE eColorBlend; 328334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_COLORBLENDTYPE; 329334de520b0369215b7931fefa424fb92d295f0ebJames Dong 330334de520b0369215b7931fefa424fb92d295f0ebJames Dong 331334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 332334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Hold frame dimension 333334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 334334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 335334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 336334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 337334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 338334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nWidth : Frame width in pixels 339334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nHeight : Frame height in pixels 340334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 341334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_FRAMESIZETYPE { 342334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 343334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 344334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 345334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nWidth; 346334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nHeight; 347334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_FRAMESIZETYPE; 348334de520b0369215b7931fefa424fb92d295f0ebJames Dong 349334de520b0369215b7931fefa424fb92d295f0ebJames Dong 350334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 351334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Rotation configuration 352334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 353334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 354334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 355334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 356334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 357334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nRotation : +/- integer rotation value 358334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 359334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_ROTATIONTYPE { 360334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 361334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 362334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 363334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nRotation; 364334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_ROTATIONTYPE; 365334de520b0369215b7931fefa424fb92d295f0ebJames Dong 366334de520b0369215b7931fefa424fb92d295f0ebJames Dong 367334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 368334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Possible mirroring directions for pre/post processing 369334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 370334de520b0369215b7931fefa424fb92d295f0ebJames Dong * ENUMS: 371334de520b0369215b7931fefa424fb92d295f0ebJames Dong * None : No mirroring 372334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Vertical : Vertical mirroring, flip on X axis 373334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Horizontal : Horizontal mirroring, flip on Y axis 374334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Both : Both vertical and horizontal mirroring 375334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 376334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_MIRRORTYPE { 377334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorNone = 0, 378334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorVertical, 379334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorHorizontal, 380334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorBoth, 381334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 382334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 383334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MirrorMax = 0x7FFFFFFF 384334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_MIRRORTYPE; 385334de520b0369215b7931fefa424fb92d295f0ebJames Dong 386334de520b0369215b7931fefa424fb92d295f0ebJames Dong 387334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 388334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Mirroring configuration 389334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 390334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 391334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 392334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 393334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 394334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eMirror : Mirror type enumeration 395334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 396334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_MIRRORTYPE { 397334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 398334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 399334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 400334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MIRRORTYPE eMirror; 401334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_MIRRORTYPE; 402334de520b0369215b7931fefa424fb92d295f0ebJames Dong 403334de520b0369215b7931fefa424fb92d295f0ebJames Dong 404334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 405334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Position information only 406334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 407334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 408334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 409334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 410334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 411334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nX : X coordinate for the point 412334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nY : Y coordinate for the point 413334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 414334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_POINTTYPE { 415334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 416334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 417334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 418334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nX; 419334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nY; 420334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_POINTTYPE; 421334de520b0369215b7931fefa424fb92d295f0ebJames Dong 422334de520b0369215b7931fefa424fb92d295f0ebJames Dong 423334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 424334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Frame size plus position 425334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 426334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 427334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 428334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 429334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 430334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nLeft : X Coordinate of the top left corner of the rectangle 431334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nTop : Y Coordinate of the top left corner of the rectangle 432334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nWidth : Width of the rectangle 433334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nHeight : Height of the rectangle 434334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 435334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_RECTTYPE { 436334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 437334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 438334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 439334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nLeft; 440334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nTop; 441334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nWidth; 442334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nHeight; 443334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_RECTTYPE; 444334de520b0369215b7931fefa424fb92d295f0ebJames Dong 445334de520b0369215b7931fefa424fb92d295f0ebJames Dong 446334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 447334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Deblocking state; it is required to be set up before starting the codec 448334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 449334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 450334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 451334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 452334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 453334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bDeblocking : Enable/disable deblocking mode 454334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 455334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_PARAM_DEBLOCKINGTYPE { 456334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 457334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 458334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 459334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bDeblocking; 460334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_PARAM_DEBLOCKINGTYPE; 461334de520b0369215b7931fefa424fb92d295f0ebJames Dong 462334de520b0369215b7931fefa424fb92d295f0ebJames Dong 463334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 464334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Stabilization state 465334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 466334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 467334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 468334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 469334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 470334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bStab : Enable/disable frame stabilization state 471334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 472334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_FRAMESTABTYPE { 473334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 474334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 475334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 476334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bStab; 477334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_FRAMESTABTYPE; 478334de520b0369215b7931fefa424fb92d295f0ebJames Dong 479334de520b0369215b7931fefa424fb92d295f0ebJames Dong 480334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 481334de520b0369215b7931fefa424fb92d295f0ebJames Dong * White Balance control type 482334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 483334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 484334de520b0369215b7931fefa424fb92d295f0ebJames Dong * SunLight : Referenced in JSR-234 485334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Flash : Optimal for device's integrated flash 486334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 487334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_WHITEBALCONTROLTYPE { 488334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlOff = 0, 489334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlAuto, 490334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlSunLight, 491334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlCloudy, 492334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlShade, 493334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlTungsten, 494334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlFluorescent, 495334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlIncandescent, 496334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlFlash, 497334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlHorizon, 498334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 499334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 500334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WhiteBalControlMax = 0x7FFFFFFF 501334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_WHITEBALCONTROLTYPE; 502334de520b0369215b7931fefa424fb92d295f0ebJames Dong 503334de520b0369215b7931fefa424fb92d295f0ebJames Dong 504334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 505334de520b0369215b7931fefa424fb92d295f0ebJames Dong * White Balance control configuration 506334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 507334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 508334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 509334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 510334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 511334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eWhiteBalControl : White balance enumeration 512334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 513334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_WHITEBALCONTROLTYPE { 514334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 515334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 516334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 517334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_WHITEBALCONTROLTYPE eWhiteBalControl; 518334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_WHITEBALCONTROLTYPE; 519334de520b0369215b7931fefa424fb92d295f0ebJames Dong 520334de520b0369215b7931fefa424fb92d295f0ebJames Dong 521334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 522334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Exposure control type 523334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 524334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_EXPOSURECONTROLTYPE { 525334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlOff = 0, 526334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlAuto, 527334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlNight, 528334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlBackLight, 529334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlSpotLight, 530334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlSports, 531334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlSnow, 532334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlBeach, 533334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlLargeAperture, 534334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlSmallApperture, 535334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 536334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 537334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_ExposureControlMax = 0x7FFFFFFF 538334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_EXPOSURECONTROLTYPE; 539334de520b0369215b7931fefa424fb92d295f0ebJames Dong 540334de520b0369215b7931fefa424fb92d295f0ebJames Dong 541334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 542334de520b0369215b7931fefa424fb92d295f0ebJames Dong * White Balance control configuration 543334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 544334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 545334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 546334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 547334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 548334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eExposureControl : Exposure control enumeration 549334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 550334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_EXPOSURECONTROLTYPE { 551334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 552334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 553334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 554334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EXPOSURECONTROLTYPE eExposureControl; 555334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_EXPOSURECONTROLTYPE; 556334de520b0369215b7931fefa424fb92d295f0ebJames Dong 557334de520b0369215b7931fefa424fb92d295f0ebJames Dong 558334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 559334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines sensor supported mode. 560334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 561334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 562334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 563334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 564334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 565334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nFrameRate : Single shot mode is indicated by a 0 566334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bOneShot : Enable for single shot, disable for streaming 567334de520b0369215b7931fefa424fb92d295f0ebJames Dong * sFrameSize : Framesize 568334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 569334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_PARAM_SENSORMODETYPE { 570334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 571334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 572334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 573334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nFrameRate; 574334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bOneShot; 575334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FRAMESIZETYPE sFrameSize; 576334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_PARAM_SENSORMODETYPE; 577334de520b0369215b7931fefa424fb92d295f0ebJames Dong 578334de520b0369215b7931fefa424fb92d295f0ebJames Dong 579334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 580334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines contrast level 581334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 582334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 583334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 584334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 585334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 586334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nContrast : Values allowed for contrast -100 to 100, zero means no change 587334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 588334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_CONTRASTTYPE { 589334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 590334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 591334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 592334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nContrast; 593334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_CONTRASTTYPE; 594334de520b0369215b7931fefa424fb92d295f0ebJames Dong 595334de520b0369215b7931fefa424fb92d295f0ebJames Dong 596334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 597334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines brightness level 598334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 599334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 600334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 601334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 602334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 603334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nBrightness : 0-100% 604334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 605334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_BRIGHTNESSTYPE { 606334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 607334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 608334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 609334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nBrightness; 610334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_BRIGHTNESSTYPE; 611334de520b0369215b7931fefa424fb92d295f0ebJames Dong 612334de520b0369215b7931fefa424fb92d295f0ebJames Dong 613334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 614334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines backlight level configuration for a video sink, e.g. LCD panel 615334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 616334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 617334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 618334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 619334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 620334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nBacklight : Values allowed for backlight 0-100% 621334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nTimeout : Number of milliseconds before backlight automatically turns 622334de520b0369215b7931fefa424fb92d295f0ebJames Dong * off. A value of 0x0 disables backight timeout 623334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 624334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_BACKLIGHTTYPE { 625334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 626334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 627334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 628334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nBacklight; 629334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nTimeout; 630334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_BACKLIGHTTYPE; 631334de520b0369215b7931fefa424fb92d295f0ebJames Dong 632334de520b0369215b7931fefa424fb92d295f0ebJames Dong 633334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 634334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines setting for Gamma 635334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 636334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 637334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 638334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 639334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 640334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nGamma : Values allowed for gamma -100 to 100, zero means no change 641334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 642334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_GAMMATYPE { 643334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 644334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 645334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 646334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nGamma; 647334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_GAMMATYPE; 648334de520b0369215b7931fefa424fb92d295f0ebJames Dong 649334de520b0369215b7931fefa424fb92d295f0ebJames Dong 650334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 651334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Define for setting saturation 652334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 653334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 654334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 655334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 656334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 657334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSaturation : Values allowed for saturation -100 to 100, zero means 658334de520b0369215b7931fefa424fb92d295f0ebJames Dong * no change 659334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 660334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_SATURATIONTYPE { 661334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 662334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 663334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 664334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nSaturation; 665334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_SATURATIONTYPE; 666334de520b0369215b7931fefa424fb92d295f0ebJames Dong 667334de520b0369215b7931fefa424fb92d295f0ebJames Dong 668334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 669334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Define for setting Lightness 670334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 671334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 672334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 673334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 674334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 675334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nLightness : Values allowed for lightness -100 to 100, zero means no 676334de520b0369215b7931fefa424fb92d295f0ebJames Dong * change 677334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 678334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_LIGHTNESSTYPE { 679334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 680334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 681334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 682334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 nLightness; 683334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_LIGHTNESSTYPE; 684334de520b0369215b7931fefa424fb92d295f0ebJames Dong 685334de520b0369215b7931fefa424fb92d295f0ebJames Dong 686334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 687334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Plane blend configuration 688334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 689334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 690334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 691334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 692334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Index of input port associated with the plane. 693334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nDepth : Depth of the plane in relation to the screen. Higher 694334de520b0369215b7931fefa424fb92d295f0ebJames Dong * numbered depths are "behind" lower number depths. 695334de520b0369215b7931fefa424fb92d295f0ebJames Dong * This number defaults to the Port Index number. 696334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nAlpha : Transparency blending component for the entire plane. 697334de520b0369215b7931fefa424fb92d295f0ebJames Dong * See blending modes for more detail. 698334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 699334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_PLANEBLENDTYPE { 700334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 701334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 702334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 703334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nDepth; 704334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nAlpha; 705334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_PLANEBLENDTYPE; 706334de520b0369215b7931fefa424fb92d295f0ebJames Dong 707334de520b0369215b7931fefa424fb92d295f0ebJames Dong 708334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 709334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Define interlace type 710334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 711334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 712334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 713334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 714334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 715334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bEnable : Enable control variable for this functionality 716334de520b0369215b7931fefa424fb92d295f0ebJames Dong * (see below) 717334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nInterleavePortIndex : Index of input or output port associated with 718334de520b0369215b7931fefa424fb92d295f0ebJames Dong * the interleaved plane. 719334de520b0369215b7931fefa424fb92d295f0ebJames Dong * pPlanarPortIndexes[4] : Index of input or output planar ports. 720334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 721334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_PARAM_INTERLEAVETYPE { 722334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 723334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 724334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 725334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bEnable; 726334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nInterleavePortIndex; 727334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_PARAM_INTERLEAVETYPE; 728334de520b0369215b7931fefa424fb92d295f0ebJames Dong 729334de520b0369215b7931fefa424fb92d295f0ebJames Dong 730334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 731334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines the picture effect used for an input picture 732334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 733334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_TRANSITIONEFFECTTYPE { 734334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectNone, 735334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectFadeFromBlack, 736334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectFadeToBlack, 737334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectUnspecifiedThroughConstantColor, 738334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectDissolve, 739334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectWipe, 740334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectUnspecifiedMixOfTwoScenes, 741334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 742334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 743334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EffectMax = 0x7FFFFFFF 744334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_TRANSITIONEFFECTTYPE; 745334de520b0369215b7931fefa424fb92d295f0ebJames Dong 746334de520b0369215b7931fefa424fb92d295f0ebJames Dong 747334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 748334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Structure used to configure current transition effect 749334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 750334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 751334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 752334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 753334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 754334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eEffect : Effect to enable 755334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 756334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_TRANSITIONEFFECTTYPE { 757334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 758334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 759334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 760334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_TRANSITIONEFFECTTYPE eEffect; 761334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_TRANSITIONEFFECTTYPE; 762334de520b0369215b7931fefa424fb92d295f0ebJames Dong 763334de520b0369215b7931fefa424fb92d295f0ebJames Dong 764334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 765334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines possible data unit types for encoded video data. The data unit 766334de520b0369215b7931fefa424fb92d295f0ebJames Dong * types are used both for encoded video input for playback as well as 767334de520b0369215b7931fefa424fb92d295f0ebJames Dong * encoded video output from recording. 768334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 769334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_DATAUNITTYPE { 770334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitCodedPicture, 771334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitVideoSegment, 772334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitSeveralSegments, 773334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitArbitraryStreamSection, 774334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 775334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 776334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataUnitMax = 0x7FFFFFFF 777334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_DATAUNITTYPE; 778334de520b0369215b7931fefa424fb92d295f0ebJames Dong 779334de520b0369215b7931fefa424fb92d295f0ebJames Dong 780334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 781334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines possible encapsulation types for coded video data unit. The 782334de520b0369215b7931fefa424fb92d295f0ebJames Dong * encapsulation information is used both for encoded video input for 783334de520b0369215b7931fefa424fb92d295f0ebJames Dong * playback as well as encoded video output from recording. 784334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 785334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_DATAUNITENCAPSULATIONTYPE { 786334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationElementaryStream, 787334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationGenericPayload, 788334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationRtpPayload, 789334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 790334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 791334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DataEncapsulationMax = 0x7FFFFFFF 792334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_DATAUNITENCAPSULATIONTYPE; 793334de520b0369215b7931fefa424fb92d295f0ebJames Dong 794334de520b0369215b7931fefa424fb92d295f0ebJames Dong 795334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 796334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Structure used to configure the type of being decoded/encoded 797334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 798334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_PARAM_DATAUNITTYPE { 799334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; /**< Size of the structure in bytes */ 800334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 801334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; /**< Port that this structure applies to */ 802334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DATAUNITTYPE eUnitType; 803334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DATAUNITENCAPSULATIONTYPE eEncapsulationType; 804334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_PARAM_DATAUNITTYPE; 805334de520b0369215b7931fefa424fb92d295f0ebJames Dong 806334de520b0369215b7931fefa424fb92d295f0ebJames Dong 807334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 808334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Defines dither types 809334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 810334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_DITHERTYPE { 811334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherNone, 812334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherOrdered, 813334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherErrorDiffusion, 814334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherOther, 815334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 816334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 817334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DitherMax = 0x7FFFFFFF 818334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_DITHERTYPE; 819334de520b0369215b7931fefa424fb92d295f0ebJames Dong 820334de520b0369215b7931fefa424fb92d295f0ebJames Dong 821334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 822334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Structure used to configure current type of dithering 823334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 824334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_DITHERTYPE { 825334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; /**< Size of the structure in bytes */ 826334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 827334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; /**< Port that this structure applies to */ 828334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_DITHERTYPE eDither; /**< Type of dithering to use */ 829334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_DITHERTYPE; 830334de520b0369215b7931fefa424fb92d295f0ebJames Dong 831334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_CAPTUREMODETYPE { 832334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 833334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 834334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; /**< Port that this structure applies to */ 835334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bContinuous; /**< If true then ignore frame rate and emit capture 836334de520b0369215b7931fefa424fb92d295f0ebJames Dong * data as fast as possible (otherwise obey port's frame rate). */ 837334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bFrameLimited; /**< If true then terminate capture after the port emits the 838334de520b0369215b7931fefa424fb92d295f0ebJames Dong * specified number of frames (otherwise the port does not 839334de520b0369215b7931fefa424fb92d295f0ebJames Dong * terminate the capture until instructed to do so by the client). 840334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Even if set, the client may manually terminate the capture prior 841334de520b0369215b7931fefa424fb92d295f0ebJames Dong * to reaching the limit. */ 842334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nFrameLimit; /**< Limit on number of frames emitted during a capture (only 843334de520b0369215b7931fefa424fb92d295f0ebJames Dong * valid if bFrameLimited is set). */ 844334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_CAPTUREMODETYPE; 845334de520b0369215b7931fefa424fb92d295f0ebJames Dong 846334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_METERINGTYPE { 847334de520b0369215b7931fefa424fb92d295f0ebJames Dong 848334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MeteringModeAverage, /**< Center-weighted average metering. */ 849a1ae5a4fe52192525f510dc14ecf1f7d4fb107f5Lajos Molnar OMX_MeteringModeSpot, /**< Spot (partial) metering. */ 850334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MeteringModeMatrix, /**< Matrix or evaluative metering. */ 851334de520b0369215b7931fefa424fb92d295f0ebJames Dong 852334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MeteringKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 853334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_MeteringVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 854334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_EVModeMax = 0x7fffffff 855334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_METERINGTYPE; 856334de520b0369215b7931fefa424fb92d295f0ebJames Dong 857334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_EXPOSUREVALUETYPE { 858334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 859334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 860334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 861334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_METERINGTYPE eMetering; 862334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_S32 xEVCompensation; /**< Fixed point value stored as Q16 */ 863334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nApertureFNumber; /**< e.g. nApertureFNumber = 2 implies "f/2" - Q16 format */ 864a1ae5a4fe52192525f510dc14ecf1f7d4fb107f5Lajos Molnar OMX_BOOL bAutoAperture; /**< Whether aperture number is defined automatically */ 865334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nShutterSpeedMsec; /**< Shutterspeed in milliseconds */ 866a1ae5a4fe52192525f510dc14ecf1f7d4fb107f5Lajos Molnar OMX_BOOL bAutoShutterSpeed; /**< Whether shutter speed is defined automatically */ 867334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSensitivity; /**< e.g. nSensitivity = 100 implies "ISO 100" */ 868a1ae5a4fe52192525f510dc14ecf1f7d4fb107f5Lajos Molnar OMX_BOOL bAutoSensitivity; /**< Whether sensitivity is defined automatically */ 869334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_EXPOSUREVALUETYPE; 870334de520b0369215b7931fefa424fb92d295f0ebJames Dong 871334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 872334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Focus region configuration 873334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 874334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 875334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 876334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 877334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 878334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bCenter : Use center region as focus region of interest 879334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bLeft : Use left region as focus region of interest 880334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bRight : Use right region as focus region of interest 881334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTop : Use top region as focus region of interest 882334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottom : Use bottom region as focus region of interest 883334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTopLeft : Use top left region as focus region of interest 884334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTopRight : Use top right region as focus region of interest 885334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottomLeft : Use bottom left region as focus region of interest 886334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottomRight : Use bottom right region as focus region of interest 887334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 888334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_CONFIG_FOCUSREGIONTYPE { 889334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 890334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 891334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 892334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bCenter; 893334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bLeft; 894334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bRight; 895334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTop; 896334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottom; 897334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTopLeft; 898334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTopRight; 899334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottomLeft; 900334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottomRight; 901334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_CONFIG_FOCUSREGIONTYPE; 902334de520b0369215b7931fefa424fb92d295f0ebJames Dong 903334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 904334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Focus Status type 905334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 906334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef enum OMX_FOCUSSTATUSTYPE { 907334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusOff = 0, 908334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusRequest, 909334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusReached, 910334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusUnableToReach, 911334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusLost, 912334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 913334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 914334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FocusStatusMax = 0x7FFFFFFF 915334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_FOCUSSTATUSTYPE; 916334de520b0369215b7931fefa424fb92d295f0ebJames Dong 917334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** 918334de520b0369215b7931fefa424fb92d295f0ebJames Dong * Focus status configuration 919334de520b0369215b7931fefa424fb92d295f0ebJames Dong * 920334de520b0369215b7931fefa424fb92d295f0ebJames Dong * STRUCT MEMBERS: 921334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nSize : Size of the structure in bytes 922334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nVersion : OMX specification version information 923334de520b0369215b7931fefa424fb92d295f0ebJames Dong * nPortIndex : Port that this structure applies to 924334de520b0369215b7931fefa424fb92d295f0ebJames Dong * eFocusStatus : Specifies the focus status 925334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bCenterStatus : Use center region as focus region of interest 926334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bLeftStatus : Use left region as focus region of interest 927334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bRightStatus : Use right region as focus region of interest 928334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTopStatus : Use top region as focus region of interest 929334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottomStatus : Use bottom region as focus region of interest 930334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTopLeftStatus : Use top left region as focus region of interest 931334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bTopRightStatus : Use top right region as focus region of interest 932334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottomLeftStatus : Use bottom left region as focus region of interest 933334de520b0369215b7931fefa424fb92d295f0ebJames Dong * bBottomRightStatus : Use bottom right region as focus region of interest 934334de520b0369215b7931fefa424fb92d295f0ebJames Dong */ 935334de520b0369215b7931fefa424fb92d295f0ebJames Dongtypedef struct OMX_PARAM_FOCUSSTATUSTYPE { 936334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nSize; 937334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_VERSIONTYPE nVersion; 938334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_U32 nPortIndex; 939334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_FOCUSSTATUSTYPE eFocusStatus; 940334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bCenterStatus; 941334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bLeftStatus; 942334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bRightStatus; 943334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTopStatus; 944334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottomStatus; 945334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTopLeftStatus; 946334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bTopRightStatus; 947334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottomLeftStatus; 948334de520b0369215b7931fefa424fb92d295f0ebJames Dong OMX_BOOL bBottomRightStatus; 949334de520b0369215b7931fefa424fb92d295f0ebJames Dong} OMX_PARAM_FOCUSSTATUSTYPE; 950334de520b0369215b7931fefa424fb92d295f0ebJames Dong 951334de520b0369215b7931fefa424fb92d295f0ebJames Dong/** @} */ 952334de520b0369215b7931fefa424fb92d295f0ebJames Dong 953334de520b0369215b7931fefa424fb92d295f0ebJames Dong#ifdef __cplusplus 954334de520b0369215b7931fefa424fb92d295f0ebJames Dong} 955334de520b0369215b7931fefa424fb92d295f0ebJames Dong#endif /* __cplusplus */ 956334de520b0369215b7931fefa424fb92d295f0ebJames Dong 957334de520b0369215b7931fefa424fb92d295f0ebJames Dong#endif 958334de520b0369215b7931fefa424fb92d295f0ebJames Dong/* File EOF */ 959