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 157557b7092cc9a1dfe766ac3d0421e1049c653c4aePannag Sanketi * an acceptable range once that is done. 158557b7092cc9a1dfe766ac3d0421e1049c653c4aePannag Sanketi * */ 1594da5660eee240cea3f7411a0ed5a1120bccdeb45Pannag Sanketi OMX_COLOR_FormatAndroidOpaque = 0x7F000789, 160d35df4412bc2218bb0d22522bd366123b8e6400cAnu Sundararajan OMX_TI_COLOR_FormatYUV420PackedSemiPlanar = 0x7F000100, 16138c07129c42222a764d784327d0a63f4cfc1331bJames Dong OMX_QCOM_COLOR_FormatYVU420SemiPlanar = 0x7FA30C00, 1626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLOR_FormatMax = 0x7FFFFFFF 1636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_COLOR_FORMATTYPE; 1646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 166348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 1676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Defines the matrix for conversion from RGB to YUV or vice versa. 168348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * iColorMatrix should be initialized with the fixed point values 1696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * used in converting between formats. 1706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORCONVERSIONTYPE { 1726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 173348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 1746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this struct applies to */ 1756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xColorMatrix[3][3]; /**< Stored in signed Q16 format */ 1766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xColorOffset[4]; /**< Stored in signed Q16 format */ 1776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber}OMX_CONFIG_COLORCONVERSIONTYPE; 1786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 180348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 181348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure defining percent to scale each frame dimension. For example: 1826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * To make the width 50% larger, use fWidth = 1.5 and to make the width 1836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 1/2 the original size, use fWidth = 0.5 1846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_SCALEFACTORTYPE { 1866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 187348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version info */ 1886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this struct applies to */ 1896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xWidth; /**< Fixed point value stored as Q16 */ 1906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xHeight; /**< Fixed point value stored as Q16 */ 1916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber}OMX_CONFIG_SCALEFACTORTYPE; 1926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 1936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 194348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 195348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Enumeration of possible image filter types 1966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 1976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_IMAGEFILTERTYPE { 1986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNone, 1996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNoise, 2006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterEmboss, 2016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterNegative, 2026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterSketch, 2036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterOilPaint, 2046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterHatch, 2056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterGpen, 206348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterAntialias, 207348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterDeRing, 2086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterSolarize, 209348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ImageFilterKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 2106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 2116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ImageFilterMax = 0x7FFFFFFF 2126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_IMAGEFILTERTYPE; 2136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 215348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 216348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Image filter configuration 2176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 219348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 2206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 221348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 222348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eImageFilter : Image filter type enumeration 2236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_IMAGEFILTERTYPE { 2256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 2266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 2276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_IMAGEFILTERTYPE eImageFilter; 2296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_IMAGEFILTERTYPE; 2306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 232348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 233348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Customized U and V for color enhancement 2346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 2366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 237348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 2386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 2396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bColorEnhancement : Enable/disable color enhancement 240348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nCustomizedU : Practical values: 16-240, range: 0-255, value set for 2416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * U component 242348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nCustomizedV : Practical values: 16-240, range: 0-255, value set for 2436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * V component 2446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORENHANCEMENTTYPE { 2466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 247348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 2486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bColorEnhancement; 2506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U8 nCustomizedU; 2516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U8 nCustomizedV; 2526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORENHANCEMENTTYPE; 2536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 255348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 256348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define color key and color key mask 2576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 2596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 260348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 2616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 2626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nARGBColor : 32bit Alpha, Red, Green, Blue Color 2636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nARGBMask : 32bit Mask for Alpha, Red, Green, Blue channels 2646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORKEYTYPE { 2666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 2676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 2686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 2696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nARGBColor; 2706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nARGBMask; 2716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORKEYTYPE; 2726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 2736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 274348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 275348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * List of color blend types for pre/post processing 2766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 2776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ENUMS: 2786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * None : No color blending present 279348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * AlphaConstant : Function is (alpha_constant * src) + 2806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * (1 - alpha_constant) * dst) 2816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * AlphaPerPixel : Function is (alpha * src) + (1 - alpha) * dst) 2826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Alternate : Function is alternating pixels from src and dst 2836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * And : Function is (src & dst) 2846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Or : Function is (src | dst) 2856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Invert : Function is ~src 2866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 2876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_COLORBLENDTYPE { 2886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendNone, 2896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlphaConstant, 2906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlphaPerPixel, 2916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAlternate, 2926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendAnd, 2936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendOr, 2946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendInvert, 295348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ColorBlendKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 2966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 2976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ColorBlendMax = 0x7FFFFFFF 2986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_COLORBLENDTYPE; 2996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 301348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 302348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Color blend configuration 3036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 305348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 306348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 307348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 3086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nRGBAlphaConstant : Constant global alpha values when global alpha is used 309348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eColorBlend : Color blend type enumeration 3106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_COLORBLENDTYPE { 3126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nRGBAlphaConstant; 3166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_COLORBLENDTYPE eColorBlend; 3176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_COLORBLENDTYPE; 3186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 320348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 3216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Hold frame dimension 3226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 324348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 326348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 327348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nWidth : Frame width in pixels 328348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nHeight : Frame height in pixels 3296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_FRAMESIZETYPE { 3316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nWidth; 3356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nHeight; 3366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_FRAMESIZETYPE; 3376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 340348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Rotation configuration 3416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 343348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 3456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 346348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nRotation : +/- integer rotation value 3476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_ROTATIONTYPE { 3496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 3506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 3516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 352348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_S32 nRotation; 3536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_ROTATIONTYPE; 3546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 356348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 357348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Possible mirroring directions for pre/post processing 3586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * ENUMS: 360348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * None : No mirroring 361348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Vertical : Vertical mirroring, flip on X axis 362348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Horizontal : Horizontal mirroring, flip on Y axis 3636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Both : Both vertical and horizontal mirroring 3646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_MIRRORTYPE { 3666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorNone = 0, 3676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorVertical, 3686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorHorizontal, 369348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorBoth, 370348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 3716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MirrorVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 372348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MirrorMax = 0x7FFFFFFF 3736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_MIRRORTYPE; 3746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 376348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 377348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Mirroring configuration 3786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 380348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 382348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 383348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eMirror : Mirror type enumeration 3846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 3856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_MIRRORTYPE { 3866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 387348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 3886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 3896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MIRRORTYPE eMirror; 3906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_MIRRORTYPE; 3916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 3926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 393348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 394348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Position information only 3956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 3966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 397348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 3986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 3996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 400348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nX : X coordinate for the point 401348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nY : Y coordinate for the point 402348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi */ 4036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_POINTTYPE { 4046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nX; 4086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nY; 4096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_POINTTYPE; 4106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 412348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 413348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Frame size plus position 4146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 416348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 417348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 418348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 4196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nLeft : X Coordinate of the top left corner of the rectangle 4206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nTop : Y Coordinate of the top left corner of the rectangle 421348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nWidth : Width of the rectangle 422348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nHeight : Height of the rectangle 4236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_RECTTYPE { 4256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 426348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; 427348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_U32 nPortIndex; 428348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_S32 nLeft; 4296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nTop; 4306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nWidth; 4316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nHeight; 4326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_RECTTYPE; 4336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 435348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 436348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Deblocking state; it is required to be set up before starting the codec 4376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 439348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 440348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 4416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 442348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * bDeblocking : Enable/disable deblocking mode 4436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_DEBLOCKINGTYPE { 4456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bDeblocking; 4496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_DEBLOCKINGTYPE; 4506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 452348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 453348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Stabilization state 4546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 456348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 457348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 458348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 4596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bStab : Enable/disable frame stabilization state 4606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_FRAMESTABTYPE { 4626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 4636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 4646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 4656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bStab; 4666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_FRAMESTABTYPE; 4676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 469348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 470348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control type 4716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 4736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * SunLight : Referenced in JSR-234 4746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Flash : Optimal for device's integrated flash 4756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 4766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_WHITEBALCONTROLTYPE { 4776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlOff = 0, 4786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlAuto, 4796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlSunLight, 4806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlCloudy, 4816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlShade, 4826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlTungsten, 4836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlFluorescent, 4846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlIncandescent, 4856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlFlash, 4866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlHorizon, 487348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_WhiteBalControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 4886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 4896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WhiteBalControlMax = 0x7FFFFFFF 4906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_WHITEBALCONTROLTYPE; 4916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 4926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 493348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 494348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control configuration 4956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 4966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 497348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 4986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 499348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 500348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eWhiteBalControl : White balance enumeration 5016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_WHITEBALCONTROLTYPE { 5036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_WHITEBALCONTROLTYPE eWhiteBalControl; 5076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_WHITEBALCONTROLTYPE; 5086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 510348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 511348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Exposure control type 5126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_EXPOSURECONTROLTYPE { 5146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlOff = 0, 5156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlAuto, 5166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlNight, 5176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlBackLight, 5186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSpotLight, 5196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSports, 5206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSnow, 5216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlBeach, 5226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlLargeAperture, 5236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlSmallApperture, 524348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_ExposureControlKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 5256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 5266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_ExposureControlMax = 0x7FFFFFFF 5276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_EXPOSURECONTROLTYPE; 5286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 530348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 531348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * White Balance control configuration 5326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 534348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 5356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 536348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 537348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * eExposureControl : Exposure control enumeration 5386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_EXPOSURECONTROLTYPE { 5406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EXPOSURECONTROLTYPE eExposureControl; 5446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_EXPOSURECONTROLTYPE; 5456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 547348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 548348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines sensor supported mode. 5496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 551348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 5526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 553348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 554348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nFrameRate : Single shot mode is indicated by a 0 5556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bOneShot : Enable for single shot, disable for streaming 556348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * sFrameSize : Framesize 5576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_SENSORMODETYPE { 5596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nFrameRate; 5636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bOneShot; 5646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FRAMESIZETYPE sFrameSize; 5656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_SENSORMODETYPE; 5666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 568348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 569348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines contrast level 5706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 572348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 573348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 574348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 5756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nContrast : Values allowed for contrast -100 to 100, zero means no change 5766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_CONTRASTTYPE { 5786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nContrast; 5826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_CONTRASTTYPE; 5836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 5846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 585348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 586348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines brightness level 5876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 5886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 589348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 590348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 591348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nPortIndex : Port that this structure applies to 592348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nBrightness : 0-100% 5936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 5946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_BRIGHTNESSTYPE { 5956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 5966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 5976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 5986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nBrightness; 5996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_BRIGHTNESSTYPE; 6006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 602348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 603348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines backlight level configuration for a video sink, e.g. LCD panel 6046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 607348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 6086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 6096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nBacklight : Values allowed for backlight 0-100% 610348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nTimeout : Number of milliseconds before backlight automatically turns 611348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * off. A value of 0x0 disables backight timeout 6126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_BACKLIGHTTYPE { 6146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nBacklight; 6186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nTimeout; 6196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_BACKLIGHTTYPE; 6206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 622348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 623348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines setting for Gamma 6246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 627348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 6286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 6296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nGamma : Values allowed for gamma -100 to 100, zero means no change 6306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_GAMMATYPE { 6326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nGamma; 6366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_GAMMATYPE; 6376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 639348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 640348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define for setting saturation 641348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * 6426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 6446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 646348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSaturation : Values allowed for saturation -100 to 100, zero means 6476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * no change 6486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_SATURATIONTYPE { 6506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nSaturation; 6546ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_SATURATIONTYPE; 6556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 657348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 658348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Define for setting Lightness 6596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 6616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 6626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 664348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nLightness : Values allowed for lightness -100 to 100, zero means no 6656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * change 6666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_LIGHTNESSTYPE { 6686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 nLightness; 6726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_LIGHTNESSTYPE; 6736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 675348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 676348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Plane blend configuration 6776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 6786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 679348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 6806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 6816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Index of input port associated with the plane. 682348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nDepth : Depth of the plane in relation to the screen. Higher 683348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * numbered depths are "behind" lower number depths. 6846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * This number defaults to the Port Index number. 685348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nAlpha : Transparency blending component for the entire plane. 6866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * See blending modes for more detail. 6876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 6886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_PLANEBLENDTYPE { 6896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 6906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 6916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 6926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nDepth; 6936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nAlpha; 6946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_PLANEBLENDTYPE; 6956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 6966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 697348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 6986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * Define interlace type 6996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 7006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 701348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nSize : Size of the structure in bytes 702348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 7036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 704348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * bEnable : Enable control variable for this functionality 7056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * (see below) 706348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nInterleavePortIndex : Index of input or output port associated with 707348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * the interleaved plane. 7086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * pPlanarPortIndexes[4] : Index of input or output planar ports. 7096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_INTERLEAVETYPE { 7116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 7126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 7136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 7146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bEnable; 7156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nInterleavePortIndex; 7166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_INTERLEAVETYPE; 7176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 719348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 720348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines the picture effect used for an input picture 7216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_TRANSITIONEFFECTTYPE { 7236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectNone, 7246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectFadeFromBlack, 7256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectFadeToBlack, 7266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectUnspecifiedThroughConstantColor, 7276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectDissolve, 7286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectWipe, 7296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectUnspecifiedMixOfTwoScenes, 730348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_EffectKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EffectMax = 0x7FFFFFFF 7336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_TRANSITIONEFFECTTYPE; 7346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 736348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 737348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure current transition effect 7386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 7396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 7406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 741348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * nVersion : OMX specification version information 7426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 7436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * eEffect : Effect to enable 7446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_TRANSITIONEFFECTTYPE { 7466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 7476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 7486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 7496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_TRANSITIONEFFECTTYPE eEffect; 7506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_TRANSITIONEFFECTTYPE; 7516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 753348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 754348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines possible data unit types for encoded video data. The data unit 7556ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * types are used both for encoded video input for playback as well as 756348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * encoded video output from recording. 7576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DATAUNITTYPE { 7596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitCodedPicture, 7606ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitVideoSegment, 7616ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitSeveralSegments, 7626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitArbitraryStreamSection, 763348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DataUnitKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataUnitMax = 0x7FFFFFFF 7666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DATAUNITTYPE; 7676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 769348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 770348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines possible encapsulation types for coded video data unit. The 771348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * encapsulation information is used both for encoded video input for 772348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * playback as well as encoded video output from recording. 7736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DATAUNITENCAPSULATIONTYPE { 7756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationElementaryStream, 7766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationGenericPayload, 7776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationRtpPayload, 778348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DataEncapsulationKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 7796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 7806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DataEncapsulationMax = 0x7FFFFFFF 7816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DATAUNITENCAPSULATIONTYPE; 7826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 784348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 785348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure the type of being decoded/encoded 7866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_DATAUNITTYPE { 7886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 789348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 7906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 7916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DATAUNITTYPE eUnitType; 7926ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DATAUNITENCAPSULATIONTYPE eEncapsulationType; 7936ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_DATAUNITTYPE; 7946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 7966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** 797348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Defines dither types 7986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 7996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_DITHERTYPE { 8006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherNone, 8016ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherOrdered, 8026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherErrorDiffusion, 8036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherOther, 804348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_DitherKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 8056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 8066ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DitherMax = 0x7FFFFFFF 8076ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_DITHERTYPE; 8086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 810348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 811348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Structure used to configure current type of dithering 8126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_DITHERTYPE { 8146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; /**< Size of the structure in bytes */ 815348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_VERSIONTYPE nVersion; /**< OMX specification version information */ 8166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 8176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_DITHERTYPE eDither; /**< Type of dithering to use */ 8186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_DITHERTYPE; 8196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_CAPTUREMODETYPE { 8216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; /**< Port that this structure applies to */ 824348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bContinuous; /**< If true then ignore frame rate and emit capture 8256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * data as fast as possible (otherwise obey port's frame rate). */ 826348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bFrameLimited; /**< If true then terminate capture after the port emits the 827348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * specified number of frames (otherwise the port does not 828348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * terminate the capture until instructed to do so by the client). 829348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Even if set, the client may manually terminate the capture prior 8306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * to reaching the limit. */ 8316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nFrameLimit; /**< Limit on number of frames emitted during a capture (only 8326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * valid if bFrameLimited is set). */ 8336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_CAPTUREMODETYPE; 8346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 8356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_METERINGTYPE { 836348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 8376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeAverage, /**< Center-weighted average metering. */ 8386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeSpot, /**< Spot (partial) metering. */ 8396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringModeMatrix, /**< Matrix or evaluative metering. */ 840348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 841348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_MeteringKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 8426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_MeteringVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 8436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_EVModeMax = 0x7fffffff 8446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_METERINGTYPE; 845348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi 8466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_EXPOSUREVALUETYPE { 8476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8486ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8496ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 8506ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_METERINGTYPE eMetering; 8516ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_S32 xEVCompensation; /**< Fixed point value stored as Q16 */ 8526ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nApertureFNumber; /**< e.g. nApertureFNumber = 2 implies "f/2" - Q16 format */ 8536ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bAutoAperture; /**< Whether aperture number is defined automatically */ 854348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_U32 nShutterSpeedMsec; /**< Shutterspeed in milliseconds */ 855348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_BOOL bAutoShutterSpeed; /**< Whether shutter speed is defined automatically */ 8566ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSensitivity; /**< e.g. nSensitivity = 100 implies "ISO 100" */ 8576ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bAutoSensitivity; /**< Whether sensitivity is defined automatically */ 8586ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_EXPOSUREVALUETYPE; 8596ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 860348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 861348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus region configuration 8626ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 8636ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 8646ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 8656ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 8666ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 8676ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bCenter : Use center region as focus region of interest 8686ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bLeft : Use left region as focus region of interest 8696ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bRight : Use right region as focus region of interest 8706ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTop : Use top region as focus region of interest 8716ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottom : Use bottom region as focus region of interest 8726ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopLeft : Use top left region as focus region of interest 8736ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopRight : Use top right region as focus region of interest 8746ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomLeft : Use bottom left region as focus region of interest 8756ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomRight : Use bottom right region as focus region of interest 8766ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8776ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_CONFIG_FOCUSREGIONTYPE { 8786ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 8796ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 8806ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 8816ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bCenter; 8826ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bLeft; 8836ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bRight; 8846ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTop; 8856ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottom; 8866ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopLeft; 8876ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopRight; 8886ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomLeft; 8896ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomRight; 8906ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_CONFIG_FOCUSREGIONTYPE; 8916ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 892348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 893348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus Status type 8946ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 8956ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef enum OMX_FOCUSSTATUSTYPE { 8966ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusOff = 0, 8976ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusRequest, 8986ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusReached, 8996ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusUnableToReach, 9006ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusLost, 901348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi OMX_FocusStatusKhronosExtensions = 0x6F000000, /**< Reserved region for introducing Khronos Standard Extensions */ 9026ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusVendorStartUnused = 0x7F000000, /**< Reserved region for introducing Vendor Extensions */ 9036ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FocusStatusMax = 0x7FFFFFFF 9046ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_FOCUSSTATUSTYPE; 9056ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 906348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi/** 907348c45bd963389dfd3038c57bd7728608cb31fa4Pannag Sanketi * Focus status configuration 9086ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * 9096ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * STRUCT MEMBERS: 9106ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nSize : Size of the structure in bytes 9116ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nVersion : OMX specification version information 9126ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * nPortIndex : Port that this structure applies to 9136ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * eFocusStatus : Specifies the focus status 9146ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bCenterStatus : Use center region as focus region of interest 9156ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bLeftStatus : Use left region as focus region of interest 9166ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bRightStatus : Use right region as focus region of interest 9176ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopStatus : Use top region as focus region of interest 9186ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomStatus : Use bottom region as focus region of interest 9196ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopLeftStatus : Use top left region as focus region of interest 9206ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bTopRightStatus : Use top right region as focus region of interest 9216ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomLeftStatus : Use bottom left region as focus region of interest 9226ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber * bBottomRightStatus : Use bottom right region as focus region of interest 9236ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber */ 9246ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Hubertypedef struct OMX_PARAM_FOCUSSTATUSTYPE { 9256ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nSize; 9266ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_VERSIONTYPE nVersion; 9276ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_U32 nPortIndex; 9286ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_FOCUSSTATUSTYPE eFocusStatus; 9296ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bCenterStatus; 9306ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bLeftStatus; 9316ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bRightStatus; 9326ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopStatus; 9336ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomStatus; 9346ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopLeftStatus; 9356ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bTopRightStatus; 9366ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomLeftStatus; 9376ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber OMX_BOOL bBottomRightStatus; 9386ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} OMX_PARAM_FOCUSSTATUSTYPE; 9396ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9406ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/** @} */ 9416ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9426ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#ifdef __cplusplus 9436ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber} 9446ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#endif /* __cplusplus */ 9456ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber 9466ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber#endif 9476ac35f059726cf60a364c1efd783a99c901f2d9dAndreas Huber/* File EOF */ 948