williamr@2: // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // williamr@2: williamr@2: #ifndef CONVERSIONCOEFFICIENT_H williamr@2: #define CONVERSIONCOEFFICIENT_H williamr@2: williamr@2: /** williamr@2: Specifies the possible YUV-RGB conversion coefficients to use. williamr@2: williamr@2: The coefficients are determined by two factors: williamr@2: The YUV signal range used, and the actual conversion multipliers. williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: enum TYuvCoefficients williamr@2: { williamr@2: /** williamr@2: The nominal Y range is [16…235] and the U and V ranges [16…240]. This corresponds to H.264 | MPEG-4 AVC video_range_flag=0. williamr@2: */ williamr@2: EYuvRange0 = 0x01000000, williamr@2: williamr@2: /** williamr@2: The nominal Y, U, and V ranges are [0…255]. This corresponds to H.264 | MPEG-4 AVC video_range_flag=1. williamr@2: */ williamr@2: EYuvRange1 = 0x02000000, williamr@2: williamr@2: /** williamr@2: The YUV-RGB conversion cofficients are those specified in ITU-R Recommendation BT.709. williamr@2: This corresponds to H.264 | MPEG-4 AVC matrix_coefficients=1. BT.709 is the default YUV format used williamr@2: for MPEG-4 Part 2 and H.264 | MPEG-4 AVC. williamr@2: */ williamr@2: EYuvBt709 = 0x00000001, williamr@2: williamr@2: /** williamr@2: YUV data with range 0 (Y [16…235]) and conversion coefficients according to BT.709. williamr@2: This is the most typical configuration. williamr@2: */ williamr@2: EYuvBt709Range0 = EYuvRange0 | EYuvBt709, williamr@2: williamr@2: /** williamr@2: YUV data with range 1 (Y [0…255]) and conversion coefficients according to BT.709. williamr@2: */ williamr@2: EYuvBt709Range1 = EYuvRange1 | EYuvBt709, williamr@2: williamr@2: /** williamr@2: The YUV-RGB conversion cofficients are those specified in ITU-R Recommendation BT.601.5. williamr@2: */ williamr@2: EYuvBt601 = 0x00000002, williamr@2: williamr@2: /** williamr@2: YUV data with range 0 (Y [16…235]) and conversion coefficients according to BT.601.5. williamr@2: This is the data format used in H.263. williamr@2: */ williamr@2: EYuvBt601Range0 = EYuvRange0 | EYuvBt601, williamr@2: williamr@2: /** williamr@2: YUV data with range 1 (Y [0…255]) and conversion coefficients according to BT.601.5. williamr@2: */ williamr@2: EYuvBt601Range1 = EYuvRange1 | EYuvBt601, williamr@2: williamr@2: /** williamr@2: A custom conversion matrix is used. williamr@2: @see TYuvConversionMatrix. williamr@2: */ williamr@2: ECustomYuvMatrix = 0x00800000 williamr@2: }; williamr@2: williamr@2: #endif // CONVERSIONCOEFFICIENT_H