OMX_IVCommon.h revision 348c45bd963389dfd3038c57bd7728608cb31fa4
16ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/* ------------------------------------------------------------------ 26ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Copyright (C) 1998-2009 PacketVideo 36ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 46ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Licensed under the Apache License, Version 2.0 (the "License"); 56ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * you may not use this file except in compliance with the License. 66ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * You may obtain a copy of the License at 76ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 86ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * http://www.apache.org/licenses/LICENSE-2.0 96ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Unless required by applicable law or agreed to in writing, software 116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * distributed under the License is distributed on an "AS IS" BASIS, 126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * express or implied. 146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * See the License for the specific language governing permissions 156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * and limitations under the License. 166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ------------------------------------------------------------------- 176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 19348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Copyright (c) 2008 The Khronos Group Inc. 20348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * 216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Permission is hereby granted, free of charge, to any person obtaining 226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * a copy of this software and associated documentation files (the 236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * "Software"), to deal in the Software without restriction, including 246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * without limitation the rights to use, copy, modify, merge, publish, 256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * distribute, sublicense, and/or sell copies of the Software, and to 266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * permit persons to whom the Software is furnished to do so, subject 27348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * to the following conditions: 286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * The above copyright notice and this permission notice shall be included 29348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * in all copies or substantial portions of the Software. 30348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * 316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 37348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 41348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * @file OMX_IVCommon.h - OpenMax IL version 1.1.2 436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * The structures needed by Video and Image components to exchange 446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * parameters and configuration data with the components. 456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#ifndef OMX_IVCommon_h 476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#define OMX_IVCommon_h 486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#ifdef __cplusplus 506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huberextern "C" { 516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#endif /* __cplusplus */ 526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Each OMX header must include all required header files to allow the header 556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * to compile without errors. The includes below are required for this header 56348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * file to compile successfully 576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#include <OMX_Core.h> 606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** @defgroup iv OpenMAX IL Imaging and Video Domain 626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Common structures for OpenMAX IL Imaging and Video domains 636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * @{ 646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 67348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 68348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Enumeration defining possible uncompressed image/video formats. 696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ENUMS: 716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Unused : Placeholder value when format is N/A 726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Monochrome : black and white 736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 8bitRGB332 : Red 7:5, Green 4:2, Blue 1:0 746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 12bitRGB444 : Red 11:8, Green 7:4, Blue 3:0 756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 16bitARGB4444 : Alpha 15:12, Red 11:8, Green 7:4, Blue 3:0 766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 16bitARGB1555 : Alpha 15, Red 14:10, Green 9:5, Blue 4:0 776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 16bitRGB565 : Red 15:11, Green 10:5, Blue 4:0 786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 16bitBGR565 : Blue 15:11, Green 10:5, Red 4:0 796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 18bitRGB666 : Red 17:12, Green 11:6, Blue 5:0 806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 18bitARGB1665 : Alpha 17, Red 16:11, Green 10:5, Blue 4:0 816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 19bitARGB1666 : Alpha 18, Red 17:12, Green 11:6, Blue 5:0 826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 24bitRGB888 : Red 24:16, Green 15:8, Blue 7:0 836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 24bitBGR888 : Blue 24:16, Green 15:8, Red 7:0 846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 24bitARGB1887 : Alpha 23, Red 22:15, Green 14:7, Blue 6:0 856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 25bitARGB1888 : Alpha 24, Red 23:16, Green 15:8, Blue 7:0 866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 32bitBGRA8888 : Blue 31:24, Green 23:16, Red 15:8, Alpha 7:0 876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 32bitARGB8888 : Alpha 31:24, Red 23:16, Green 15:8, Blue 7:0 886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV411Planar : U,Y are subsampled by a factor of 4 horizontally 896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV411PackedPlanar : packed per payload in planar slices 906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV420Planar : Three arrays Y,U,V. 916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV420PackedPlanar : packed per payload in planar slices 926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV420SemiPlanar : Two arrays, one is all Y, the other is U and V 936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV422Planar : Three arrays Y,U,V. 946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV422PackedPlanar : packed per payload in planar slices 956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV422SemiPlanar : Two arrays, one is all Y, the other is U and V 966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YCbYCr : Organized as 16bit YUYV (i.e. YCbYCr) 976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YCrYCb : Organized as 16bit YVYU (i.e. YCrYCb) 986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * CbYCrY : Organized as 16bit UYVY (i.e. CbYCrY) 996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * CrYCbY : Organized as 16bit VYUY (i.e. CrYCbY) 1006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * YUV444Interleaved : Each pixel contains equal parts YUV 1016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * RawBayer8bit : SMIA camera output format 1026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * RawBayer10bit : SMIA camera output format 1036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * RawBayer8bitcompressed : SMIA camera output format 1046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_COLOR_FORMATTYPE { 1066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatUnused, 1076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatMonochrome, 1086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format8bitRGB332, 1096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format12bitRGB444, 1106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format16bitARGB4444, 1116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format16bitARGB1555, 1126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format16bitRGB565, 1136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format16bitBGR565, 1146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format18bitRGB666, 1156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format18bitARGB1665, 116348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_Format19bitARGB1666, 1176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format24bitRGB888, 1186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format24bitBGR888, 1196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format24bitARGB1887, 1206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format25bitARGB1888, 1216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format32bitBGRA8888, 1226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format32bitARGB8888, 1236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV411Planar, 1246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV411PackedPlanar, 1256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV420Planar, 1266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV420PackedPlanar, 1276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV420SemiPlanar, 1286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV422Planar, 1296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV422PackedPlanar, 1306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV422SemiPlanar, 1316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYCbYCr, 1326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYCrYCb, 1336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatCbYCrY, 1346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatCrYCbY, 1356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV444Interleaved, 1366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatRawBayer8bit, 1376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatRawBayer10bit, 1386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatRawBayer8bitcompressed, 139348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatL2, 140348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatL4, 141348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatL8, 142348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatL16, 143348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatL24, 1446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatL32, 1456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV420PackedSemiPlanar, 1466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatYUV422PackedSemiPlanar, 1476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format18BitBGR666, 1486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format24BitARGB6666, 1496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_Format24BitABGR6666, 150348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 1516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 152348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi /**<Reserved android opaque colorformat. Tells the encoder that 153348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * the actual colorformat will be relayed by the 154348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Gralloc Buffers. 155348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * FIXME: In the process of reserving some enum values for 156348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Android-specific OMX IL colorformats. Change this enum to 157348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * an acceptable range once that is done.*/ 158348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_COLOR_FormatAndroidOpaque = 0x7F000001, 159d35df4412bc2218bb0d22522bd366123b8e6400cAnu Sundararajan OMX_TI_COLOR_FormatYUV420PackedSemiPlanar = 0x7F000100, 16038c07129c42222a764d784327d0a63f4cfc1331bJames Dong OMX_QCOM_COLOR_FormatYVU420SemiPlanar = 0x7FA30C00, 1616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatMax = 0x7FFFFFFF 1626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_COLOR_FORMATTYPE; 1636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 165348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 1666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Defines the matrix for conversion from RGB to YUV or vice versa. 167348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * iColorMatrix should be initialized with the fixed point values 1686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * used in converting between formats. 1696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORCONVERSIONTYPE { 1716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 172348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 1736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this struct applies to */ 1746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xColorMatrix[3][3]; /**< Stored in signed Q16 format */ 1756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xColorOffset[4]; /**< Stored in signed Q16 format */ 1766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber}OMX_CONFIG_COLORCONVERSIONTYPE; 1776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 179348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 180348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure defining percent to scale each frame dimension. For example: 1816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * To make the width 50% larger, use fWidth = 1.5 and to make the width 1826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 1/2 the original size, use fWidth = 0.5 1836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_SCALEFACTORTYPE { 1856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 186348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 1876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this struct applies to */ 1886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xWidth; /**< Fixed point value stored as Q16 */ 1896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xHeight; /**< Fixed point value stored as Q16 */ 1906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber}OMX_CONFIG_SCALEFACTORTYPE; 1916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 193348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 194348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Enumeration of possible image filter types 1956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_IMAGEFILTERTYPE { 1976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNone, 1986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNoise, 1996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterEmboss, 2006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNegative, 2016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterSketch, 2026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterOilPaint, 2036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterHatch, 2046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterGpen, 205348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterAntialias, 206348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterDeRing, 2076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterSolarize, 208348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 2096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 2106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterMax = 0x7FFFFFFF 2116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_IMAGEFILTERTYPE; 2126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 214348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 215348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Image filter configuration 2166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 218348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 2196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 220348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 221348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eImageFilter : Image filter type enumeration 2226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_IMAGEFILTERTYPE { 2246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 2256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 2266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_IMAGEFILTERTYPE eImageFilter; 2286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_IMAGEFILTERTYPE; 2296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 231348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 232348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Customized U and V for color enhancement 2336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 2356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 236348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 2376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 2386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bColorEnhancement : Enable/disable color enhancement 239348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nCustomizedU : Practical values: 16-240, range: 0-255, value set for 2406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * U component 241348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nCustomizedV : Practical values: 16-240, range: 0-255, value set for 2426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * V component 2436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORENHANCEMENTTYPE { 2456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 246348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 2476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bColorEnhancement; 2496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U8 nCustomizedU; 2506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U8 nCustomizedV; 2516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORENHANCEMENTTYPE; 2526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 254348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 255348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define color key and color key mask 2566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 2586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 259348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 2606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 2616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nARGBColor : 32bit Alpha, Red, Green, Blue Color 2626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nARGBMask : 32bit Mask for Alpha, Red, Green, Blue channels 2636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORKEYTYPE { 2656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 2666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 2676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nARGBColor; 2696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nARGBMask; 2706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORKEYTYPE; 2716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 273348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 274348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * List of color blend types for pre/post processing 2756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ENUMS: 2776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * None : No color blending present 278348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * AlphaConstant : Function is (alpha_constant * src) + 2796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * (1 - alpha_constant) * dst) 2806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * AlphaPerPixel : Function is (alpha * src) + (1 - alpha) * dst) 2816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Alternate : Function is alternating pixels from src and dst 2826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * And : Function is (src & dst) 2836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Or : Function is (src | dst) 2846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Invert : Function is ~src 2856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_COLORBLENDTYPE { 2876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendNone, 2886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlphaConstant, 2896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlphaPerPixel, 2906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlternate, 2916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAnd, 2926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendOr, 2936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendInvert, 294348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ColorBlendKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 2956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 2966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendMax = 0x7FFFFFFF 2976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_COLORBLENDTYPE; 2986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 300348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 301348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Color blend configuration 3026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 304348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 305348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 306348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 3076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nRGBAlphaConstant : Constant global alpha values when global alpha is used 308348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eColorBlend : Color blend type enumeration 3096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORBLENDTYPE { 3116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nRGBAlphaConstant; 3156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLORBLENDTYPE eColorBlend; 3166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORBLENDTYPE; 3176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 319348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 3206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Hold frame dimension 3216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 323348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 325348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 326348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nWidth : Frame width in pixels 327348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nHeight : Frame height in pixels 3286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_FRAMESIZETYPE { 3306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nWidth; 3346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nHeight; 3356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_FRAMESIZETYPE; 3366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 339348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Rotation configuration 3406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 342348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 3446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 345348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nRotation : +/- integer rotation value 3466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_ROTATIONTYPE { 3486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 351348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_S32 nRotation; 3526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_ROTATIONTYPE; 3536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 355348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 356348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Possible mirroring directions for pre/post processing 3576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ENUMS: 359348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * None : No mirroring 360348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Vertical : Vertical mirroring, flip on X axis 361348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Horizontal : Horizontal mirroring, flip on Y axis 3626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Both : Both vertical and horizontal mirroring 3636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_MIRRORTYPE { 3656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorNone = 0, 3666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorVertical, 3676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorHorizontal, 368348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorBoth, 369348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 3706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 371348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorMax = 0x7FFFFFFF 3726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_MIRRORTYPE; 3736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 375348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 376348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Mirroring configuration 3776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 379348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 381348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 382348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eMirror : Mirror type enumeration 3836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_MIRRORTYPE { 3856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 386348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 3876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MIRRORTYPE eMirror; 3896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_MIRRORTYPE; 3906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 392348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 393348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Position information only 3946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 396348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 3986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 399348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nX : X coordinate for the point 400348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nY : Y coordinate for the point 401348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi */ 4026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_POINTTYPE { 4036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nX; 4076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nY; 4086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_POINTTYPE; 4096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 411348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 412348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Frame size plus position 4136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 415348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 416348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 417348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 4186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nLeft : X Coordinate of the top left corner of the rectangle 4196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nTop : Y Coordinate of the top left corner of the rectangle 420348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nWidth : Width of the rectangle 421348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nHeight : Height of the rectangle 4226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_RECTTYPE { 4246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 425348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 426348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_U32 nPortIndex; 427348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_S32 nLeft; 4286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nTop; 4296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nWidth; 4306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nHeight; 4316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_RECTTYPE; 4326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 434348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 435348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Deblocking state; it is required to be set up before starting the codec 4366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 438348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 439348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 4406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 441348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * bDeblocking : Enable/disable deblocking mode 4426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_DEBLOCKINGTYPE { 4446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bDeblocking; 4486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_DEBLOCKINGTYPE; 4496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 451348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 452348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Stabilization state 4536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 455348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 456348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 457348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 4586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bStab : Enable/disable frame stabilization state 4596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_FRAMESTABTYPE { 4616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bStab; 4656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_FRAMESTABTYPE; 4666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 468348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 469348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control type 4706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 4726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * SunLight : Referenced in JSR-234 4736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Flash : Optimal for device's integrated flash 4746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_WHITEBALCONTROLTYPE { 4766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlOff = 0, 4776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlAuto, 4786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlSunLight, 4796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlCloudy, 4806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlShade, 4816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlTungsten, 4826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlFluorescent, 4836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlIncandescent, 4846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlFlash, 4856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlHorizon, 486348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_WhiteBalControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 4876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 4886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlMax = 0x7FFFFFFF 4896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_WHITEBALCONTROLTYPE; 4906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 492348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 493348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control configuration 4946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 496348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 4976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 498348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 499348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eWhiteBalControl : White balance enumeration 5006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_WHITEBALCONTROLTYPE { 5026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WHITEBALCONTROLTYPE eWhiteBalControl; 5066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_WHITEBALCONTROLTYPE; 5076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 509348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 510348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Exposure control type 5116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_EXPOSURECONTROLTYPE { 5136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlOff = 0, 5146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlAuto, 5156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlNight, 5166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlBackLight, 5176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSpotLight, 5186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSports, 5196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSnow, 5206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlBeach, 5216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlLargeAperture, 5226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSmallApperture, 523348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ExposureControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 5246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 5256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlMax = 0x7FFFFFFF 5266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_EXPOSURECONTROLTYPE; 5276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 529348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 530348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control configuration 5316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 533348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 5346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 535348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 536348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eExposureControl : Exposure control enumeration 5376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_EXPOSURECONTROLTYPE { 5396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EXPOSURECONTROLTYPE eExposureControl; 5436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_EXPOSURECONTROLTYPE; 5446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 546348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 547348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines sensor supported mode. 5486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 550348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 5516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 552348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 553348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nFrameRate : Single shot mode is indicated by a 0 5546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bOneShot : Enable for single shot, disable for streaming 555348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * sFrameSize : Framesize 5566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_SENSORMODETYPE { 5586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nFrameRate; 5626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bOneShot; 5636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FRAMESIZETYPE sFrameSize; 5646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_SENSORMODETYPE; 5656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 567348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 568348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines contrast level 5696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 571348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 572348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 573348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 5746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nContrast : Values allowed for contrast -100 to 100, zero means no change 5756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_CONTRASTTYPE { 5776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nContrast; 5816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_CONTRASTTYPE; 5826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 584348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 585348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines brightness level 5866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 588348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 589348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 590348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 591348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nBrightness : 0-100% 5926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_BRIGHTNESSTYPE { 5946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nBrightness; 5986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_BRIGHTNESSTYPE; 5996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 601348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 602348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines backlight level configuration for a video sink, e.g. LCD panel 6036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 606348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 6076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 6086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nBacklight : Values allowed for backlight 0-100% 609348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nTimeout : Number of milliseconds before backlight automatically turns 610348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * off. A value of 0x0 disables backight timeout 6116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_BACKLIGHTTYPE { 6136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nBacklight; 6176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nTimeout; 6186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_BACKLIGHTTYPE; 6196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 621348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 622348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines setting for Gamma 6236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 626348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 6276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 6286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nGamma : Values allowed for gamma -100 to 100, zero means no change 6296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_GAMMATYPE { 6316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nGamma; 6356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_GAMMATYPE; 6366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 638348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 639348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define for setting saturation 640348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * 6416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 6436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 645348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSaturation : Values allowed for saturation -100 to 100, zero means 6466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * no change 6476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_SATURATIONTYPE { 6496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nSaturation; 6536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_SATURATIONTYPE; 6546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 656348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 657348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define for setting Lightness 6586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 6616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 663348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nLightness : Values allowed for lightness -100 to 100, zero means no 6646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * change 6656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_LIGHTNESSTYPE { 6676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nLightness; 6716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_LIGHTNESSTYPE; 6726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 674348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 675348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Plane blend configuration 6766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 678348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 6796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Index of input port associated with the plane. 681348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nDepth : Depth of the plane in relation to the screen. Higher 682348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * numbered depths are "behind" lower number depths. 6836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * This number defaults to the Port Index number. 684348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nAlpha : Transparency blending component for the entire plane. 6856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * See blending modes for more detail. 6866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_PLANEBLENDTYPE { 6886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nDepth; 6926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nAlpha; 6936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_PLANEBLENDTYPE; 6946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 696348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 6976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Define interlace type 6986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 700348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 701348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 7026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 703348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * bEnable : Enable control variable for this functionality 7046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * (see below) 705348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nInterleavePortIndex : Index of input or output port associated with 706348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * the interleaved plane. 7076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * pPlanarPortIndexes[4] : Index of input or output planar ports. 7086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_INTERLEAVETYPE { 7106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 7116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 7126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 7136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bEnable; 7146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nInterleavePortIndex; 7156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_INTERLEAVETYPE; 7166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 718348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 719348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines the picture effect used for an input picture 7206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_TRANSITIONEFFECTTYPE { 7226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectNone, 7236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectFadeFromBlack, 7246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectFadeToBlack, 7256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectUnspecifiedThroughConstantColor, 7266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectDissolve, 7276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectWipe, 7286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectUnspecifiedMixOfTwoScenes, 729348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_EffectKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectMax = 0x7FFFFFFF 7326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_TRANSITIONEFFECTTYPE; 7336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 735348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 736348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure current transition effect 7376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 7386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 7396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 740348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 7416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 7426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * eEffect : Effect to enable 7436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_TRANSITIONEFFECTTYPE { 7456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 7466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 7476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 7486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_TRANSITIONEFFECTTYPE eEffect; 7496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_TRANSITIONEFFECTTYPE; 7506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 752348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 753348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines possible data unit types for encoded video data. The data unit 7546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * types are used both for encoded video input for playback as well as 755348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * encoded video output from recording. 7566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DATAUNITTYPE { 7586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitCodedPicture, 7596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitVideoSegment, 7606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitSeveralSegments, 7616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitArbitraryStreamSection, 762348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DataUnitKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitMax = 0x7FFFFFFF 7656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DATAUNITTYPE; 7666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 768348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 769348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines possible encapsulation types for coded video data unit. The 770348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * encapsulation information is used both for encoded video input for 771348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * playback as well as encoded video output from recording. 7726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DATAUNITENCAPSULATIONTYPE { 7746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationElementaryStream, 7756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationGenericPayload, 7766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationRtpPayload, 777348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DataEncapsulationKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationMax = 0x7FFFFFFF 7806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DATAUNITENCAPSULATIONTYPE; 7816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 783348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 784348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure the type of being decoded/encoded 7856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_DATAUNITTYPE { 7876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 788348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 7896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 7906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DATAUNITTYPE eUnitType; 7916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DATAUNITENCAPSULATIONTYPE eEncapsulationType; 7926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_DATAUNITTYPE; 7936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 796348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines dither types 7976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DITHERTYPE { 7996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherNone, 8006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherOrdered, 8016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherErrorDiffusion, 8026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherOther, 803348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DitherKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 8046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 8056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherMax = 0x7FFFFFFF 8066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DITHERTYPE; 8076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 809348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 810348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure current type of dithering 8116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_DITHERTYPE { 8136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 814348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 8156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 8166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DITHERTYPE eDither; /**< Type of dithering to use */ 8176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_DITHERTYPE; 8186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_CAPTUREMODETYPE { 8206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 823348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bContinuous; /**< If true then ignore frame rate and emit capture 8246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * data as fast as possible (otherwise obey port's frame rate). */ 825348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bFrameLimited; /**< If true then terminate capture after the port emits the 826348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * specified number of frames (otherwise the port does not 827348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * terminate the capture until instructed to do so by the client). 828348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Even if set, the client may manually terminate the capture prior 8296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * to reaching the limit. */ 8306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nFrameLimit; /**< Limit on number of frames emitted during a capture (only 8316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * valid if bFrameLimited is set). */ 8326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_CAPTUREMODETYPE; 8336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_METERINGTYPE { 835348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 8366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeAverage, /**< Center-weighted average metering. */ 8376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeSpot, /**< Spot (partial) metering. */ 8386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeMatrix, /**< Matrix or evaluative metering. */ 839348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 840348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MeteringKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 8416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 8426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EVModeMax = 0x7fffffff 8436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_METERINGTYPE; 844348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 8456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_EXPOSUREVALUETYPE { 8466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 8496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_METERINGTYPE eMetering; 8506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xEVCompensation; /**< Fixed point value stored as Q16 */ 8516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nApertureFNumber; /**< e.g. nApertureFNumber = 2 implies "f/2" - Q16 format */ 8526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bAutoAperture; /**< Whether aperture number is defined automatically */ 853348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_U32 nShutterSpeedMsec; /**< Shutterspeed in milliseconds */ 854348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bAutoShutterSpeed; /**< Whether shutter speed is defined automatically */ 8556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSensitivity; /**< e.g. nSensitivity = 100 implies "ISO 100" */ 8566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bAutoSensitivity; /**< Whether sensitivity is defined automatically */ 8576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_EXPOSUREVALUETYPE; 8586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 859348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 860348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus region configuration 8616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 8626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 8636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 8646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 8656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 8666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bCenter : Use center region as focus region of interest 8676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bLeft : Use left region as focus region of interest 8686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bRight : Use right region as focus region of interest 8696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTop : Use top region as focus region of interest 8706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottom : Use bottom region as focus region of interest 8716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopLeft : Use top left region as focus region of interest 8726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopRight : Use top right region as focus region of interest 8736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomLeft : Use bottom left region as focus region of interest 8746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomRight : Use bottom right region as focus region of interest 8756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_FOCUSREGIONTYPE { 8776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 8806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bCenter; 8816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bLeft; 8826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bRight; 8836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTop; 8846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottom; 8856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopLeft; 8866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopRight; 8876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomLeft; 8886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomRight; 8896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_FOCUSREGIONTYPE; 8906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 891348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 892348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus Status type 8936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_FOCUSSTATUSTYPE { 8956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusOff = 0, 8966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusRequest, 8976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusReached, 8986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusUnableToReach, 8996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusLost, 900348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_FocusStatusKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 9016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 9026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusMax = 0x7FFFFFFF 9036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_FOCUSSTATUSTYPE; 9046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 905348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 906348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus status configuration 9076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 9086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 9096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 9106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 9116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 9126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * eFocusStatus : Specifies the focus status 9136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bCenterStatus : Use center region as focus region of interest 9146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bLeftStatus : Use left region as focus region of interest 9156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bRightStatus : Use right region as focus region of interest 9166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopStatus : Use top region as focus region of interest 9176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomStatus : Use bottom region as focus region of interest 9186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopLeftStatus : Use top left region as focus region of interest 9196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopRightStatus : Use top right region as focus region of interest 9206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomLeftStatus : Use bottom left region as focus region of interest 9216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomRightStatus : Use bottom right region as focus region of interest 9226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 9236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_FOCUSSTATUSTYPE { 9246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 9256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 9266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 9276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FOCUSSTATUSTYPE eFocusStatus; 9286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bCenterStatus; 9296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bLeftStatus; 9306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bRightStatus; 9316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopStatus; 9326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomStatus; 9336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopLeftStatus; 9346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopRightStatus; 9356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomLeftStatus; 9366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomRightStatus; 9376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_FOCUSSTATUSTYPE; 9386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** @} */ 9406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#ifdef __cplusplus 9426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} 9436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#endif /* __cplusplus */ 9446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#endif 9466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/* File EOF */ 947