|
1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
2 // All rights reserved. |
|
3 // This component and the accompanying materials are made available |
|
4 // 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 |
|
5 // which accompanies this distribution, and is available |
|
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // |
|
15 |
|
16 #ifndef CONVERSIONCOEFFICIENT_H |
|
17 #define CONVERSIONCOEFFICIENT_H |
|
18 |
|
19 /** |
|
20 Specifies the possible YUV-RGB conversion coefficients to use. |
|
21 |
|
22 The coefficients are determined by two factors: |
|
23 The YUV signal range used, and the actual conversion multipliers. |
|
24 @publishedAll |
|
25 @released |
|
26 */ |
|
27 enum TYuvCoefficients |
|
28 { |
|
29 /** |
|
30 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. |
|
31 */ |
|
32 EYuvRange0 = 0x01000000, |
|
33 |
|
34 /** |
|
35 The nominal Y, U, and V ranges are [0…255]. This corresponds to H.264 | MPEG-4 AVC video_range_flag=1. |
|
36 */ |
|
37 EYuvRange1 = 0x02000000, |
|
38 |
|
39 /** |
|
40 The YUV-RGB conversion cofficients are those specified in ITU-R Recommendation BT.709. |
|
41 This corresponds to H.264 | MPEG-4 AVC matrix_coefficients=1. BT.709 is the default YUV format used |
|
42 for MPEG-4 Part 2 and H.264 | MPEG-4 AVC. |
|
43 */ |
|
44 EYuvBt709 = 0x00000001, |
|
45 |
|
46 /** |
|
47 YUV data with range 0 (Y [16…235]) and conversion coefficients according to BT.709. |
|
48 This is the most typical configuration. |
|
49 */ |
|
50 EYuvBt709Range0 = EYuvRange0 | EYuvBt709, |
|
51 |
|
52 /** |
|
53 YUV data with range 1 (Y [0…255]) and conversion coefficients according to BT.709. |
|
54 */ |
|
55 EYuvBt709Range1 = EYuvRange1 | EYuvBt709, |
|
56 |
|
57 /** |
|
58 The YUV-RGB conversion cofficients are those specified in ITU-R Recommendation BT.601.5. |
|
59 */ |
|
60 EYuvBt601 = 0x00000002, |
|
61 |
|
62 /** |
|
63 YUV data with range 0 (Y [16…235]) and conversion coefficients according to BT.601.5. |
|
64 This is the data format used in H.263. |
|
65 */ |
|
66 EYuvBt601Range0 = EYuvRange0 | EYuvBt601, |
|
67 |
|
68 /** |
|
69 YUV data with range 1 (Y [0…255]) and conversion coefficients according to BT.601.5. |
|
70 */ |
|
71 EYuvBt601Range1 = EYuvRange1 | EYuvBt601, |
|
72 |
|
73 /** |
|
74 A custom conversion matrix is used. |
|
75 @see TYuvConversionMatrix. |
|
76 */ |
|
77 ECustomYuvMatrix = 0x00800000 |
|
78 }; |
|
79 |
|
80 #endif // CONVERSIONCOEFFICIENT_H |