Long overdue coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38974 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
71b60eaf35
commit
7c143ae93e
@ -1,49 +1,54 @@
|
||||
/*
|
||||
** Copyright 2004, Marcus Overhagen. All rights reserved.
|
||||
** Distributed under the terms of the MIT license.
|
||||
**
|
||||
** This file implements a image format conversion from
|
||||
** planar YCbCr420 format to linear RGB32 format.
|
||||
** Lookup tables are used to avoid doing multiplications
|
||||
** or conditial if() checks inside the inner loop.
|
||||
** These tables have been generated by gen_lookup.cpp
|
||||
*/
|
||||
* Copyright 2004, Marcus Overhagen. All rights reserved.
|
||||
* Distributed under the terms of the MIT license.
|
||||
*/
|
||||
|
||||
//! This file implements an image format conversion from
|
||||
// planar YCbCr420 format to linear RGB32 format.
|
||||
// Lookup tables are used to avoid doing multiplications
|
||||
// or conditial if() checks inside the inner loop.
|
||||
// These tables have been generated by gen_lookup.cpp
|
||||
|
||||
|
||||
#include "gfx_conv_c.h"
|
||||
|
||||
#include <strings.h>
|
||||
#include <stdio.h>
|
||||
#include "gfx_conv_c.h"
|
||||
|
||||
|
||||
extern const int32 Cr_Rtab[];
|
||||
extern const int32 Cr_Gtab[];
|
||||
extern const int32 Cb_Gtab[];
|
||||
extern const int32 Cb_Btab[];
|
||||
extern const int32 Ytab[];
|
||||
extern const uint32 *Rtab;
|
||||
extern const uint32 *Gtab;
|
||||
extern const uint32 *Btab;
|
||||
extern const uint32* Rtab;
|
||||
extern const uint32* Gtab;
|
||||
extern const uint32* Btab;
|
||||
|
||||
void gfx_conv_YCbCr420p_RGB32_c(AVFrame *in, AVFrame *out, int width, int height)
|
||||
|
||||
void
|
||||
gfx_conv_YCbCr420p_RGB32_c(AVFrame* in, AVFrame* out, int width, int height)
|
||||
{
|
||||
uint32 poutInc = 2 * out->linesize[0];
|
||||
uint32 *poutEven = (uint32 *)out->data[0];
|
||||
uint32 *poutOdd = (uint32 *)(out->linesize[0] + (uint8 *)poutEven);
|
||||
uint32* poutEven = (uint32*)out->data[0];
|
||||
uint32* poutOdd = (uint32*)(out->linesize[0] + (uint8*)poutEven);
|
||||
|
||||
uint32 pi1Inc = in->linesize[0];
|
||||
uint32 pi1Inc2 = 2 * pi1Inc;
|
||||
uint32 pi2Inc = in->linesize[1];
|
||||
uint32 pi3Inc = in->linesize[2];
|
||||
|
||||
uint8 *pi1Base = (uint8 *)in->data[0];
|
||||
uint8 *pi2Base = (uint8 *)in->data[1];
|
||||
uint8 *pi3Base = (uint8 *)in->data[2];
|
||||
uint8* pi1Base = (uint8*)in->data[0];
|
||||
uint8* pi2Base = (uint8*)in->data[1];
|
||||
uint8* pi3Base = (uint8*)in->data[2];
|
||||
|
||||
uint32 runs = height / 2;
|
||||
for (uint32 i = 0; i < runs; i++) {
|
||||
|
||||
uint16 *pi1Even = (uint16 *) (i * pi1Inc2 + pi1Base);
|
||||
uint16 *pi1Odd = (uint16 *) (pi1Inc + (uint8 *)pi1Even);
|
||||
uint8 *pi2 = i * pi2Inc + pi2Base;
|
||||
uint8 *pi3 = i *pi3Inc + pi3Base;
|
||||
uint16* pi1Even = (uint16*)(i * pi1Inc2 + pi1Base);
|
||||
uint16* pi1Odd = (uint16*)(pi1Inc + (uint8*)pi1Even);
|
||||
uint8* pi2 = i * pi2Inc + pi2Base;
|
||||
uint8* pi3 = i * pi3Inc + pi3Base;
|
||||
|
||||
for (uint32 j = 0; j < (uint32)width; j+= 2) {
|
||||
|
||||
@ -87,384 +92,510 @@ void gfx_conv_YCbCr420p_RGB32_c(AVFrame *in, AVFrame *out, int width, int height
|
||||
poutOdd[j + 1] = Rtab[R] | Gtab[G] | Btab[B];
|
||||
|
||||
}
|
||||
poutEven = (uint32 *)(poutInc + (uint8 *)poutEven);
|
||||
poutOdd = (uint32 *)(poutInc + (uint8 *)poutOdd);
|
||||
poutEven = (uint32*)(poutInc + (uint8*)poutEven);
|
||||
poutOdd = (uint32*)(poutInc + (uint8*)poutOdd);
|
||||
}
|
||||
if (height & 1) {
|
||||
// XXX special case for last line if height not multiple of 2 goes here
|
||||
memset((height - 1) * out->linesize[0] + (uint8 *)out->data[0], 0, width * 4);
|
||||
memset((height - 1) * out->linesize[0] + (uint8*)out->data[0], 0,
|
||||
width * 4);
|
||||
}
|
||||
}
|
||||
|
||||
const int32 Cb_Gtab[256] = {
|
||||
1644167, 1631322, 1618477, 1605632, 1592787, 1579942, 1567097, 1554252, 1541407, 1528562,
|
||||
1515717, 1502872, 1490026, 1477181, 1464336, 1451491, 1438646, 1425801, 1412956, 1400111,
|
||||
1387266, 1374421, 1361576, 1348731, 1335886, 1323041, 1310196, 1297351, 1284506, 1271661,
|
||||
1258815, 1245970, 1233125, 1220280, 1207435, 1194590, 1181745, 1168900, 1156055, 1143210,
|
||||
1130365, 1117520, 1104675, 1091830, 1078985, 1066140, 1053295, 1040450, 1027604, 1014759,
|
||||
1001914, 989069, 976224, 963379, 950534, 937689, 924844, 911999, 899154, 886309,
|
||||
873464, 860619, 847774, 834929, 822084, 809239, 796393, 783548, 770703, 757858,
|
||||
745013, 732168, 719323, 706478, 693633, 680788, 667943, 655098, 642253, 629408,
|
||||
616563, 603718, 590873, 578028, 565182, 552337, 539492, 526647, 513802, 500957,
|
||||
488112, 475267, 462422, 449577, 436732, 423887, 411042, 398197, 385352, 372507,
|
||||
359662, 346817, 333971, 321126, 308281, 295436, 282591, 269746, 256901, 244056,
|
||||
231211, 218366, 205521, 192676, 179831, 166986, 154141, 141296, 128451, 115606,
|
||||
102760, 89915, 77070, 64225, 51380, 38535, 25690, 12845, 0, -12844,
|
||||
-25689, -38534, -51379, -64224, -77069, -89914, -102759, -115605, -128450, -141295,
|
||||
-154140, -166985, -179830, -192675, -205520, -218365, -231210, -244055, -256900, -269745,
|
||||
-282590, -295435, -308280, -321125, -333970, -346816, -359661, -372506, -385351, -398196,
|
||||
-411041, -423886, -436731, -449576, -462421, -475266, -488111, -500956, -513801, -526646,
|
||||
-539491, -552336, -565181, -578027, -590872, -603717, -616562, -629407, -642252, -655097,
|
||||
-667942, -680787, -693632, -706477, -719322, -732167, -745012, -757857, -770702, -783547,
|
||||
-796392, -809238, -822083, -834928, -847773, -860618, -873463, -886308, -899153, -911998,
|
||||
-924843, -937688, -950533, -963378, -976223, -989068, -1001913, -1014758, -1027603, -1040449,
|
||||
-1053294, -1066139, -1078984, -1091829, -1104674, -1117519, -1130364, -1143209, -1156054, -1168899,
|
||||
-1181744, -1194589, -1207434, -1220279, -1233124, -1245969, -1258814, -1271660, -1284505, -1297350,
|
||||
-1310195, -1323040, -1335885, -1348730, -1361575, -1374420, -1387265, -1400110, -1412955, -1425800,
|
||||
-1438645, -1451490, -1464335, -1477180, -1490025, -1502871, -1515716, -1528561, -1541406, -1554251,
|
||||
-1567096, -1579941, -1592786, -1605631, -1618476, -1631321,
|
||||
1644167, 1631322, 1618477, 1605632, 1592787, 1579942, 1567097, 1554252,
|
||||
1541407, 1528562, 1515717, 1502872, 1490026, 1477181, 1464336, 1451491,
|
||||
1438646, 1425801, 1412956, 1400111, 1387266, 1374421, 1361576, 1348731,
|
||||
1335886, 1323041, 1310196, 1297351, 1284506, 1271661, 1258815, 1245970,
|
||||
1233125, 1220280, 1207435, 1194590, 1181745, 1168900, 1156055, 1143210,
|
||||
1130365, 1117520, 1104675, 1091830, 1078985, 1066140, 1053295, 1040450,
|
||||
1027604, 1014759, 1001914, 989069, 976224, 963379, 950534, 937689, 924844,
|
||||
911999, 899154, 886309, 873464, 860619, 847774, 834929, 822084, 809239,
|
||||
796393, 783548, 770703, 757858, 745013, 732168, 719323, 706478, 693633,
|
||||
680788, 667943, 655098, 642253, 629408, 616563, 603718, 590873, 578028,
|
||||
565182, 552337, 539492, 526647, 513802, 500957, 488112, 475267, 462422,
|
||||
449577, 436732, 423887, 411042, 398197, 385352, 372507, 359662, 346817,
|
||||
333971, 321126, 308281, 295436, 282591, 269746, 256901, 244056, 231211,
|
||||
218366, 205521, 192676, 179831, 166986, 154141, 141296, 128451, 115606,
|
||||
102760, 89915, 77070, 64225, 51380, 38535, 25690, 12845, 0, -12844, -25689,
|
||||
-38534, -51379, -64224, -77069, -89914, -102759, -115605, -128450, -141295,
|
||||
-154140, -166985, -179830, -192675, -205520, -218365, -231210, -244055,
|
||||
-256900, -269745, -282590, -295435, -308280, -321125, -333970, -346816,
|
||||
-359661, -372506, -385351, -398196, -411041, -423886, -436731, -449576,
|
||||
-462421, -475266, -488111, -500956, -513801, -526646, -539491, -552336,
|
||||
-565181, -578027, -590872, -603717, -616562, -629407, -642252, -655097,
|
||||
-667942, -680787, -693632, -706477, -719322, -732167, -745012, -757857,
|
||||
-770702, -783547, -796392, -809238, -822083, -834928, -847773, -860618,
|
||||
-873463, -886308, -899153, -911998, -924843, -937688, -950533, -963378,
|
||||
-976223, -989068, -1001913, -1014758, -1027603, -1040449, -1053294,
|
||||
-1066139, -1078984, -1091829, -1104674, -1117519, -1130364, -1143209,
|
||||
-1156054, -1168899, -1181744, -1194589, -1207434, -1220279, -1233124,
|
||||
-1245969, -1258814, -1271660, -1284505, -1297350, -1310195, -1323040,
|
||||
-1335885, -1348730, -1361575, -1374420, -1387265, -1400110, -1412955,
|
||||
-1425800, -1438645, -1451490, -1464335, -1477180, -1490025, -1502871,
|
||||
-1515716, -1528561, -1541406, -1554251, -1567096, -1579941, -1592786,
|
||||
-1605631, -1618476, -1631321,
|
||||
};
|
||||
|
||||
const int32 Cb_Btab[256] = {
|
||||
-8459910, -8393817, -8327724, -8261631, -8195538, -8129445, -8063352, -7997259, -7931166, -7865073,
|
||||
-7798980, -7732887, -7666793, -7600700, -7534607, -7468514, -7402421, -7336328, -7270235, -7204142,
|
||||
-7138049, -7071956, -7005863, -6939770, -6873677, -6807584, -6741491, -6675398, -6609305, -6543212,
|
||||
-6477118, -6411025, -6344932, -6278839, -6212746, -6146653, -6080560, -6014467, -5948374, -5882281,
|
||||
-5816188, -5750095, -5684002, -5617909, -5551816, -5485723, -5419630, -5353537, -5287443, -5221350,
|
||||
-5155257, -5089164, -5023071, -4956978, -4890885, -4824792, -4758699, -4692606, -4626513, -4560420,
|
||||
-4494327, -4428234, -4362141, -4296048, -4229955, -4163862, -4097768, -4031675, -3965582, -3899489,
|
||||
-3833396, -3767303, -3701210, -3635117, -3569024, -3502931, -3436838, -3370745, -3304652, -3238559,
|
||||
-3172466, -3106373, -3040280, -2974187, -2908093, -2842000, -2775907, -2709814, -2643721, -2577628,
|
||||
-2511535, -2445442, -2379349, -2313256, -2247163, -2181070, -2114977, -2048884, -1982791, -1916698,
|
||||
-1850605, -1784512, -1718418, -1652325, -1586232, -1520139, -1454046, -1387953, -1321860, -1255767,
|
||||
-1189674, -1123581, -1057488, -991395, -925302, -859209, -793116, -727023, -660930, -594837,
|
||||
-528743, -462650, -396557, -330464, -264371, -198278, -132185, -66092, 0, 66093,
|
||||
132186, 198279, 264372, 330465, 396558, 462651, 528744, 594838, 660931, 727024,
|
||||
793117, 859210, 925303, 991396, 1057489, 1123582, 1189675, 1255768, 1321861, 1387954,
|
||||
1454047, 1520140, 1586233, 1652326, 1718419, 1784513, 1850606, 1916699, 1982792, 2048885,
|
||||
2114978, 2181071, 2247164, 2313257, 2379350, 2445443, 2511536, 2577629, 2643722, 2709815,
|
||||
2775908, 2842001, 2908094, 2974188, 3040281, 3106374, 3172467, 3238560, 3304653, 3370746,
|
||||
3436839, 3502932, 3569025, 3635118, 3701211, 3767304, 3833397, 3899490, 3965583, 4031676,
|
||||
4097769, 4163863, 4229956, 4296049, 4362142, 4428235, 4494328, 4560421, 4626514, 4692607,
|
||||
4758700, 4824793, 4890886, 4956979, 5023072, 5089165, 5155258, 5221351, 5287444, 5353538,
|
||||
5419631, 5485724, 5551817, 5617910, 5684003, 5750096, 5816189, 5882282, 5948375, 6014468,
|
||||
6080561, 6146654, 6212747, 6278840, 6344933, 6411026, 6477119, 6543213, 6609306, 6675399,
|
||||
6741492, 6807585, 6873678, 6939771, 7005864, 7071957, 7138050, 7204143, 7270236, 7336329,
|
||||
7402422, 7468515, 7534608, 7600701, 7666794, 7732888, 7798981, 7865074, 7931167, 7997260,
|
||||
-8459910, -8393817, -8327724, -8261631, -8195538, -8129445, -8063352,
|
||||
-7997259, -7931166, -7865073, -7798980, -7732887, -7666793, -7600700,
|
||||
-7534607, -7468514, -7402421, -7336328, -7270235, -7204142, -7138049,
|
||||
-7071956, -7005863, -6939770, -6873677, -6807584, -6741491, -6675398,
|
||||
-6609305, -6543212, -6477118, -6411025, -6344932, -6278839, -6212746,
|
||||
-6146653, -6080560, -6014467, -5948374, -5882281, -5816188, -5750095,
|
||||
-5684002, -5617909, -5551816, -5485723, -5419630, -5353537, -5287443,
|
||||
-5221350, -5155257, -5089164, -5023071, -4956978, -4890885, -4824792,
|
||||
-4758699, -4692606, -4626513, -4560420, -4494327, -4428234, -4362141,
|
||||
-4296048, -4229955, -4163862, -4097768, -4031675, -3965582, -3899489,
|
||||
-3833396, -3767303, -3701210, -3635117, -3569024, -3502931, -3436838,
|
||||
-3370745, -3304652, -3238559, -3172466, -3106373, -3040280, -2974187,
|
||||
-2908093, -2842000, -2775907, -2709814, -2643721, -2577628, -2511535,
|
||||
-2445442, -2379349, -2313256, -2247163, -2181070, -2114977, -2048884,
|
||||
-1982791, -1916698, -1850605, -1784512, -1718418, -1652325, -1586232,
|
||||
-1520139, -1454046, -1387953, -1321860, -1255767, -1189674, -1123581,
|
||||
-1057488, -991395, -925302, -859209, -793116, -727023, -660930, -594837,
|
||||
-528743, -462650, -396557, -330464, -264371, -198278, -132185, -66092, 0,
|
||||
66093, 132186, 198279, 264372, 330465, 396558, 462651, 528744, 594838,
|
||||
660931, 727024, 793117, 859210, 925303, 991396, 1057489, 1123582,
|
||||
1189675, 1255768, 1321861, 1387954, 1454047, 1520140, 1586233, 1652326,
|
||||
1718419, 1784513, 1850606, 1916699, 1982792, 2048885, 2114978, 2181071,
|
||||
2247164, 2313257, 2379350, 2445443, 2511536, 2577629, 2643722, 2709815,
|
||||
2775908, 2842001, 2908094, 2974188, 3040281, 3106374, 3172467, 3238560,
|
||||
3304653, 3370746, 3436839, 3502932, 3569025, 3635118, 3701211, 3767304,
|
||||
3833397, 3899490, 3965583, 4031676, 4097769, 4163863, 4229956, 4296049,
|
||||
4362142, 4428235, 4494328, 4560421, 4626514, 4692607, 4758700, 4824793,
|
||||
4890886, 4956979, 5023072, 5089165, 5155258, 5221351, 5287444, 5353538,
|
||||
5419631, 5485724, 5551817, 5617910, 5684003, 5750096, 5816189, 5882282,
|
||||
5948375, 6014468, 6080561, 6146654, 6212747, 6278840, 6344933, 6411026,
|
||||
6477119, 6543213, 6609306, 6675399, 6741492, 6807585, 6873678, 6939771,
|
||||
7005864, 7071957, 7138050, 7204143, 7270236, 7336329, 7402422, 7468515,
|
||||
7534608, 7600701, 7666794, 7732888, 7798981, 7865074, 7931167, 7997260,
|
||||
8063353, 8129446, 8195539, 8261632, 8327725, 8393818,
|
||||
};
|
||||
|
||||
const int32 Cr_Rtab[256] = {
|
||||
-6694108, -6641810, -6589513, -6537215, -6484917, -6432620, -6380322, -6328024, -6275726, -6223429,
|
||||
-6171131, -6118833, -6066535, -6014238, -5961940, -5909642, -5857345, -5805047, -5752749, -5700451,
|
||||
-5648154, -5595856, -5543558, -5491260, -5438963, -5386665, -5334367, -5282070, -5229772, -5177474,
|
||||
-5125176, -5072879, -5020581, -4968283, -4915985, -4863688, -4811390, -4759092, -4706795, -4654497,
|
||||
-4602199, -4549901, -4497604, -4445306, -4393008, -4340710, -4288413, -4236115, -4183817, -4131520,
|
||||
-4079222, -4026924, -3974626, -3922329, -3870031, -3817733, -3765435, -3713138, -3660840, -3608542,
|
||||
-3556245, -3503947, -3451649, -3399351, -3347054, -3294756, -3242458, -3190160, -3137863, -3085565,
|
||||
-3033267, -2980969, -2928672, -2876374, -2824076, -2771779, -2719481, -2667183, -2614885, -2562588,
|
||||
-2510290, -2457992, -2405694, -2353397, -2301099, -2248801, -2196504, -2144206, -2091908, -2039610,
|
||||
-1987313, -1935015, -1882717, -1830419, -1778122, -1725824, -1673526, -1621229, -1568931, -1516633,
|
||||
-1464335, -1412038, -1359740, -1307442, -1255144, -1202847, -1150549, -1098251, -1045954, -993656,
|
||||
-941358, -889060, -836763, -784465, -732167, -679869, -627572, -575274, -522976, -470679,
|
||||
-418381, -366083, -313785, -261488, -209190, -156892, -104594, -52297, 0, 52298,
|
||||
104595, 156893, 209191, 261489, 313786, 366084, 418382, 470680, 522977, 575275,
|
||||
627573, 679870, 732168, 784466, 836764, 889061, 941359, 993657, 1045955, 1098252,
|
||||
1150550, 1202848, 1255145, 1307443, 1359741, 1412039, 1464336, 1516634, 1568932, 1621230,
|
||||
1673527, 1725825, 1778123, 1830420, 1882718, 1935016, 1987314, 2039611, 2091909, 2144207,
|
||||
2196505, 2248802, 2301100, 2353398, 2405695, 2457993, 2510291, 2562589, 2614886, 2667184,
|
||||
2719482, 2771780, 2824077, 2876375, 2928673, 2980970, 3033268, 3085566, 3137864, 3190161,
|
||||
3242459, 3294757, 3347055, 3399352, 3451650, 3503948, 3556246, 3608543, 3660841, 3713139,
|
||||
3765436, 3817734, 3870032, 3922330, 3974627, 4026925, 4079223, 4131521, 4183818, 4236116,
|
||||
4288414, 4340711, 4393009, 4445307, 4497605, 4549902, 4602200, 4654498, 4706796, 4759093,
|
||||
4811391, 4863689, 4915986, 4968284, 5020582, 5072880, 5125177, 5177475, 5229773, 5282071,
|
||||
5334368, 5386666, 5438964, 5491261, 5543559, 5595857, 5648155, 5700452, 5752750, 5805048,
|
||||
5857346, 5909643, 5961941, 6014239, 6066536, 6118834, 6171132, 6223430, 6275727, 6328025,
|
||||
6380323, 6432621, 6484918, 6537216, 6589514, 6641811,
|
||||
-6694108, -6641810, -6589513, -6537215, -6484917, -6432620, -6380322,
|
||||
-6328024, -6275726, -6223429, -6171131, -6118833, -6066535, -6014238,
|
||||
-5961940, -5909642, -5857345, -5805047, -5752749, -5700451, -5648154,
|
||||
-5595856, -5543558, -5491260, -5438963, -5386665, -5334367, -5282070,
|
||||
-5229772, -5177474, -5125176, -5072879, -5020581, -4968283, -4915985,
|
||||
-4863688, -4811390, -4759092, -4706795, -4654497, -4602199, -4549901,
|
||||
-4497604, -4445306, -4393008, -4340710, -4288413, -4236115, -4183817,
|
||||
-4131520, -4079222, -4026924, -3974626, -3922329, -3870031, -3817733,
|
||||
-3765435, -3713138, -3660840, -3608542, -3556245, -3503947, -3451649,
|
||||
-3399351, -3347054, -3294756, -3242458, -3190160, -3137863, -3085565,
|
||||
-3033267, -2980969, -2928672, -2876374, -2824076, -2771779, -2719481,
|
||||
-2667183, -2614885, -2562588, -2510290, -2457992, -2405694, -2353397,
|
||||
-2301099, -2248801, -2196504, -2144206, -2091908, -2039610, -1987313,
|
||||
-1935015, -1882717, -1830419, -1778122, -1725824, -1673526, -1621229,
|
||||
-1568931, -1516633, -1464335, -1412038, -1359740, -1307442, -1255144,
|
||||
-1202847, -1150549, -1098251, -1045954, -993656, -941358, -889060, -836763,
|
||||
-784465, -732167, -679869, -627572, -575274, -522976, -470679, -418381,
|
||||
-366083, -313785, -261488, -209190, -156892, -104594, -52297, 0, 52298,
|
||||
104595, 156893, 209191, 261489, 313786, 366084, 418382, 470680, 522977,
|
||||
575275, 627573, 679870, 732168, 784466, 836764, 889061, 941359, 993657,
|
||||
1045955, 1098252, 1150550, 1202848, 1255145, 1307443, 1359741, 1412039,
|
||||
1464336, 1516634, 1568932, 1621230, 1673527, 1725825, 1778123, 1830420,
|
||||
1882718, 1935016, 1987314, 2039611, 2091909, 2144207, 2196505, 2248802,
|
||||
2301100, 2353398, 2405695, 2457993, 2510291, 2562589, 2614886, 2667184,
|
||||
2719482, 2771780, 2824077, 2876375, 2928673, 2980970, 3033268, 3085566,
|
||||
3137864, 3190161, 3242459, 3294757, 3347055, 3399352, 3451650, 3503948,
|
||||
3556246, 3608543, 3660841, 3713139, 3765436, 3817734, 3870032, 3922330,
|
||||
3974627, 4026925, 4079223, 4131521, 4183818, 4236116, 4288414, 4340711,
|
||||
4393009, 4445307, 4497605, 4549902, 4602200, 4654498, 4706796, 4759093,
|
||||
4811391, 4863689, 4915986, 4968284, 5020582, 5072880, 5125177, 5177475,
|
||||
5229773, 5282071, 5334368, 5386666, 5438964, 5491261, 5543559, 5595857,
|
||||
5648155, 5700452, 5752750, 5805048, 5857346, 5909643, 5961941, 6014239,
|
||||
6066536, 6118834, 6171132, 6223430, 6275727, 6328025, 6380323, 6432621,
|
||||
6484918, 6537216, 6589514, 6641811,
|
||||
};
|
||||
|
||||
const int32 Cr_Gtab[256] = {
|
||||
3409969, 3383329, 3356688, 3330048, 3303408, 3276767, 3250127, 3223486, 3196846, 3170206,
|
||||
3143565, 3116925, 3090285, 3063644, 3037004, 3010363, 2983723, 2957083, 2930442, 2903802,
|
||||
2877161, 2850521, 2823881, 2797240, 2770600, 2743960, 2717319, 2690679, 2664038, 2637398,
|
||||
2610758, 2584117, 2557477, 2530836, 2504196, 2477556, 2450915, 2424275, 2397635, 2370994,
|
||||
2344354, 2317713, 2291073, 2264433, 2237792, 2211152, 2184511, 2157871, 2131231, 2104590,
|
||||
2077950, 2051310, 2024669, 1998029, 1971388, 1944748, 1918108, 1891467, 1864827, 1838186,
|
||||
1811546, 1784906, 1758265, 1731625, 1704985, 1678344, 1651704, 1625063, 1598423, 1571783,
|
||||
1545142, 1518502, 1491862, 1465221, 1438581, 1411940, 1385300, 1358660, 1332019, 1305379,
|
||||
1278738, 1252098, 1225458, 1198817, 1172177, 1145537, 1118896, 1092256, 1065615, 1038975,
|
||||
1012335, 985694, 959054, 932413, 905773, 879133, 852492, 825852, 799212, 772571,
|
||||
745931, 719290, 692650, 666010, 639369, 612729, 586088, 559448, 532808, 506167,
|
||||
479527, 452887, 426246, 399606, 372965, 346325, 319685, 293044, 266404, 239763,
|
||||
213123, 186483, 159842, 133202, 106562, 79921, 53281, 26640, 0, -26639,
|
||||
-53280, -79920, -106561, -133201, -159841, -186482, -213122, -239762, -266403, -293043,
|
||||
-319684, -346324, -372964, -399605, -426245, -452886, -479526, -506166, -532807, -559447,
|
||||
-586087, -612728, -639368, -666009, -692649, -719289, -745930, -772570, -799211, -825851,
|
||||
-852491, -879132, -905772, -932412, -959053, -985693, -1012334, -1038974, -1065614, -1092255,
|
||||
-1118895, -1145536, -1172176, -1198816, -1225457, -1252097, -1278737, -1305378, -1332018, -1358659,
|
||||
-1385299, -1411939, -1438580, -1465220, -1491861, -1518501, -1545141, -1571782, -1598422, -1625062,
|
||||
-1651703, -1678343, -1704984, -1731624, -1758264, -1784905, -1811545, -1838185, -1864826, -1891466,
|
||||
-1918107, -1944747, -1971387, -1998028, -2024668, -2051309, -2077949, -2104589, -2131230, -2157870,
|
||||
-2184510, -2211151, -2237791, -2264432, -2291072, -2317712, -2344353, -2370993, -2397634, -2424274,
|
||||
-2450914, -2477555, -2504195, -2530835, -2557476, -2584116, -2610757, -2637397, -2664037, -2690678,
|
||||
-2717318, -2743959, -2770599, -2797239, -2823880, -2850520, -2877160, -2903801, -2930441, -2957082,
|
||||
-2983722, -3010362, -3037003, -3063643, -3090284, -3116924, -3143564, -3170205, -3196845, -3223485,
|
||||
3409969, 3383329, 3356688, 3330048, 3303408, 3276767, 3250127, 3223486,
|
||||
3196846, 3170206, 3143565, 3116925, 3090285, 3063644, 3037004, 3010363,
|
||||
2983723, 2957083, 2930442, 2903802, 2877161, 2850521, 2823881, 2797240,
|
||||
2770600, 2743960, 2717319, 2690679, 2664038, 2637398, 2610758, 2584117,
|
||||
2557477, 2530836, 2504196, 2477556, 2450915, 2424275, 2397635, 2370994,
|
||||
2344354, 2317713, 2291073, 2264433, 2237792, 2211152, 2184511, 2157871,
|
||||
2131231, 2104590, 2077950, 2051310, 2024669, 1998029, 1971388, 1944748,
|
||||
1918108, 1891467, 1864827, 1838186, 1811546, 1784906, 1758265, 1731625,
|
||||
1704985, 1678344, 1651704, 1625063, 1598423, 1571783, 1545142, 1518502,
|
||||
1491862, 1465221, 1438581, 1411940, 1385300, 1358660, 1332019, 1305379,
|
||||
1278738, 1252098, 1225458, 1198817, 1172177, 1145537, 1118896, 1092256,
|
||||
1065615, 1038975, 1012335, 985694, 959054, 932413, 905773, 879133, 852492,
|
||||
825852, 799212, 772571, 745931, 719290, 692650, 666010, 639369, 612729,
|
||||
586088, 559448, 532808, 506167, 479527, 452887, 426246, 399606, 372965,
|
||||
346325, 319685, 293044, 266404, 239763, 213123, 186483, 159842, 133202,
|
||||
106562, 79921, 53281, 26640, 0, -26639, -53280, -79920, -106561, -133201,
|
||||
-159841, -186482, -213122, -239762, -266403, -293043, -319684, -346324,
|
||||
-372964, -399605, -426245, -452886, -479526, -506166, -532807, -559447,
|
||||
-586087, -612728, -639368, -666009, -692649, -719289, -745930, -772570,
|
||||
-799211, -825851, -852491, -879132, -905772, -932412, -959053, -985693,
|
||||
-1012334, -1038974, -1065614, -1092255, -1118895, -1145536, -1172176,
|
||||
-1198816, -1225457, -1252097, -1278737, -1305378, -1332018, -1358659,
|
||||
-1385299, -1411939, -1438580, -1465220, -1491861, -1518501, -1545141,
|
||||
-1571782, -1598422, -1625062, -1651703, -1678343, -1704984, -1731624,
|
||||
-1758264, -1784905, -1811545, -1838185, -1864826, -1891466, -1918107,
|
||||
-1944747, -1971387, -1998028, -2024668, -2051309, -2077949, -2104589,
|
||||
-2131230, -2157870, -2184510, -2211151, -2237791, -2264432, -2291072,
|
||||
-2317712, -2344353, -2370993, -2397634, -2424274, -2450914, -2477555,
|
||||
-2504195, -2530835, -2557476, -2584116, -2610757, -2637397, -2664037,
|
||||
-2690678, -2717318, -2743959, -2770599, -2797239, -2823880, -2850520,
|
||||
-2877160, -2903801, -2930441, -2957082, -2983722, -3010362, -3037003,
|
||||
-3063643, -3090284, -3116924, -3143564, -3170205, -3196845, -3223485,
|
||||
-3250126, -3276766, -3303407, -3330047, -3356687, -3383328,
|
||||
};
|
||||
|
||||
const int32 Ytab[256] = {
|
||||
-610270, -572128, -533986, -495844, -457702, -419560, -381419, -343277, -305135, -266993,
|
||||
-228851, -190709, -152567, -114425, -76283, -38141, 0, 38142, 76284, 114426,
|
||||
152568, 190710, 228852, 266994, 305136, 343278, 381420, 419561, 457703, 495845,
|
||||
533987, 572129, 610271, 648413, 686555, 724697, 762839, 800981, 839123, 877265,
|
||||
915407, 953549, 991691, 1029833, 1067975, 1106117, 1144259, 1182401, 1220542, 1258684,
|
||||
1296826, 1334968, 1373110, 1411252, 1449394, 1487536, 1525678, 1563820, 1601962, 1640104,
|
||||
1678246, 1716388, 1754530, 1792672, 1830814, 1868956, 1907098, 1945240, 1983382, 2021523,
|
||||
2059665, 2097807, 2135949, 2174091, 2212233, 2250375, 2288517, 2326659, 2364801, 2402943,
|
||||
2441085, 2479227, 2517369, 2555511, 2593653, 2631795, 2669937, 2708079, 2746221, 2784362,
|
||||
2822504, 2860646, 2898788, 2936930, 2975072, 3013214, 3051356, 3089498, 3127640, 3165782,
|
||||
3203924, 3242066, 3280208, 3318350, 3356492, 3394634, 3432776, 3470918, 3509060, 3547202,
|
||||
3585343, 3623485, 3661627, 3699769, 3737911, 3776053, 3814195, 3852337, 3890479, 3928621,
|
||||
3966763, 4004905, 4043047, 4081189, 4119331, 4157473, 4195615, 4233757, 4271899, 4310041,
|
||||
4348183, 4386324, 4424466, 4462608, 4500750, 4538892, 4577034, 4615176, 4653318, 4691460,
|
||||
4729602, 4767744, 4805886, 4844028, 4882170, 4920312, 4958454, 4996596, 5034738, 5072880,
|
||||
5111022, 5149164, 5187305, 5225447, 5263589, 5301731, 5339873, 5378015, 5416157, 5454299,
|
||||
5492441, 5530583, 5568725, 5606867, 5645009, 5683151, 5721293, 5759435, 5797577, 5835719,
|
||||
5873861, 5912003, 5950145, 5988286, 6026428, 6064570, 6102712, 6140854, 6178996, 6217138,
|
||||
6255280, 6293422, 6331564, 6369706, 6407848, 6445990, 6484132, 6522274, 6560416, 6598558,
|
||||
6636700, 6674842, 6712984, 6751126, 6789267, 6827409, 6865551, 6903693, 6941835, 6979977,
|
||||
7018119, 7056261, 7094403, 7132545, 7170687, 7208829, 7246971, 7285113, 7323255, 7361397,
|
||||
7399539, 7437681, 7475823, 7513965, 7552106, 7590248, 7628390, 7666532, 7704674, 7742816,
|
||||
7780958, 7819100, 7857242, 7895384, 7933526, 7971668, 8009810, 8047952, 8086094, 8124236,
|
||||
8162378, 8200520, 8238662, 8276804, 8314946, 8353087, 8391229, 8429371, 8467513, 8505655,
|
||||
8543797, 8581939, 8620081, 8658223, 8696365, 8734507, 8772649, 8810791, 8848933, 8887075,
|
||||
8925217, 8963359, 9001501, 9039643, 9077785, 9115927,
|
||||
-610270, -572128, -533986, -495844, -457702, -419560, -381419, -343277,
|
||||
-305135, -266993, -228851, -190709, -152567, -114425, -76283, -38141, 0,
|
||||
38142, 76284, 114426, 152568, 190710, 228852, 266994, 305136, 343278,
|
||||
381420, 419561, 457703, 495845, 533987, 572129, 610271, 648413, 686555,
|
||||
724697, 762839, 800981, 839123, 877265, 915407, 953549, 991691, 1029833,
|
||||
1067975, 1106117, 1144259, 1182401, 1220542, 1258684, 1296826, 1334968,
|
||||
1373110, 1411252, 1449394, 1487536, 1525678, 1563820, 1601962, 1640104,
|
||||
1678246, 1716388, 1754530, 1792672, 1830814, 1868956, 1907098, 1945240,
|
||||
1983382, 2021523, 2059665, 2097807, 2135949, 2174091, 2212233, 2250375,
|
||||
2288517, 2326659, 2364801, 2402943, 2441085, 2479227, 2517369, 2555511,
|
||||
2593653, 2631795, 2669937, 2708079, 2746221, 2784362, 2822504, 2860646,
|
||||
2898788, 2936930, 2975072, 3013214, 3051356, 3089498, 3127640, 3165782,
|
||||
3203924, 3242066, 3280208, 3318350, 3356492, 3394634, 3432776, 3470918,
|
||||
3509060, 3547202, 3585343, 3623485, 3661627, 3699769, 3737911, 3776053,
|
||||
3814195, 3852337, 3890479, 3928621, 3966763, 4004905, 4043047, 4081189,
|
||||
4119331, 4157473, 4195615, 4233757, 4271899, 4310041, 4348183, 4386324,
|
||||
4424466, 4462608, 4500750, 4538892, 4577034, 4615176, 4653318, 4691460,
|
||||
4729602, 4767744, 4805886, 4844028, 4882170, 4920312, 4958454, 4996596,
|
||||
5034738, 5072880, 5111022, 5149164, 5187305, 5225447, 5263589, 5301731,
|
||||
5339873, 5378015, 5416157, 5454299, 5492441, 5530583, 5568725, 5606867,
|
||||
5645009, 5683151, 5721293, 5759435, 5797577, 5835719, 5873861, 5912003,
|
||||
5950145, 5988286, 6026428, 6064570, 6102712, 6140854, 6178996, 6217138,
|
||||
6255280, 6293422, 6331564, 6369706, 6407848, 6445990, 6484132, 6522274,
|
||||
6560416, 6598558, 6636700, 6674842, 6712984, 6751126, 6789267, 6827409,
|
||||
6865551, 6903693, 6941835, 6979977, 7018119, 7056261, 7094403, 7132545,
|
||||
7170687, 7208829, 7246971, 7285113, 7323255, 7361397, 7399539, 7437681,
|
||||
7475823, 7513965, 7552106, 7590248, 7628390, 7666532, 7704674, 7742816,
|
||||
7780958, 7819100, 7857242, 7895384, 7933526, 7971668, 8009810, 8047952,
|
||||
8086094, 8124236, 8162378, 8200520, 8238662, 8276804, 8314946, 8353087,
|
||||
8391229, 8429371, 8467513, 8505655, 8543797, 8581939, 8620081, 8658223,
|
||||
8696365, 8734507, 8772649, 8810791, 8848933, 8887075, 8925217, 8963359,
|
||||
9001501, 9039643, 9077785, 9115927,
|
||||
};
|
||||
|
||||
const uint32 Rsat[704] = {
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x010000, 0x020000, 0x030000, 0x040000, 0x050000, 0x060000, 0x070000, 0x080000, 0x090000,
|
||||
0x0a0000, 0x0b0000, 0x0c0000, 0x0d0000, 0x0e0000, 0x0f0000, 0x100000, 0x110000, 0x120000, 0x130000,
|
||||
0x140000, 0x150000, 0x160000, 0x170000, 0x180000, 0x190000, 0x1a0000, 0x1b0000, 0x1c0000, 0x1d0000,
|
||||
0x1e0000, 0x1f0000, 0x200000, 0x210000, 0x220000, 0x230000, 0x240000, 0x250000, 0x260000, 0x270000,
|
||||
0x280000, 0x290000, 0x2a0000, 0x2b0000, 0x2c0000, 0x2d0000, 0x2e0000, 0x2f0000, 0x300000, 0x310000,
|
||||
0x320000, 0x330000, 0x340000, 0x350000, 0x360000, 0x370000, 0x380000, 0x390000, 0x3a0000, 0x3b0000,
|
||||
0x3c0000, 0x3d0000, 0x3e0000, 0x3f0000, 0x400000, 0x410000, 0x420000, 0x430000, 0x440000, 0x450000,
|
||||
0x460000, 0x470000, 0x480000, 0x490000, 0x4a0000, 0x4b0000, 0x4c0000, 0x4d0000, 0x4e0000, 0x4f0000,
|
||||
0x500000, 0x510000, 0x520000, 0x530000, 0x540000, 0x550000, 0x560000, 0x570000, 0x580000, 0x590000,
|
||||
0x5a0000, 0x5b0000, 0x5c0000, 0x5d0000, 0x5e0000, 0x5f0000, 0x600000, 0x610000, 0x620000, 0x630000,
|
||||
0x640000, 0x650000, 0x660000, 0x670000, 0x680000, 0x690000, 0x6a0000, 0x6b0000, 0x6c0000, 0x6d0000,
|
||||
0x6e0000, 0x6f0000, 0x700000, 0x710000, 0x720000, 0x730000, 0x740000, 0x750000, 0x760000, 0x770000,
|
||||
0x780000, 0x790000, 0x7a0000, 0x7b0000, 0x7c0000, 0x7d0000, 0x7e0000, 0x7f0000, 0x800000, 0x810000,
|
||||
0x820000, 0x830000, 0x840000, 0x850000, 0x860000, 0x870000, 0x880000, 0x890000, 0x8a0000, 0x8b0000,
|
||||
0x8c0000, 0x8d0000, 0x8e0000, 0x8f0000, 0x900000, 0x910000, 0x920000, 0x930000, 0x940000, 0x950000,
|
||||
0x960000, 0x970000, 0x980000, 0x990000, 0x9a0000, 0x9b0000, 0x9c0000, 0x9d0000, 0x9e0000, 0x9f0000,
|
||||
0xa00000, 0xa10000, 0xa20000, 0xa30000, 0xa40000, 0xa50000, 0xa60000, 0xa70000, 0xa80000, 0xa90000,
|
||||
0xaa0000, 0xab0000, 0xac0000, 0xad0000, 0xae0000, 0xaf0000, 0xb00000, 0xb10000, 0xb20000, 0xb30000,
|
||||
0xb40000, 0xb50000, 0xb60000, 0xb70000, 0xb80000, 0xb90000, 0xba0000, 0xbb0000, 0xbc0000, 0xbd0000,
|
||||
0xbe0000, 0xbf0000, 0xc00000, 0xc10000, 0xc20000, 0xc30000, 0xc40000, 0xc50000, 0xc60000, 0xc70000,
|
||||
0xc80000, 0xc90000, 0xca0000, 0xcb0000, 0xcc0000, 0xcd0000, 0xce0000, 0xcf0000, 0xd00000, 0xd10000,
|
||||
0xd20000, 0xd30000, 0xd40000, 0xd50000, 0xd60000, 0xd70000, 0xd80000, 0xd90000, 0xda0000, 0xdb0000,
|
||||
0xdc0000, 0xdd0000, 0xde0000, 0xdf0000, 0xe00000, 0xe10000, 0xe20000, 0xe30000, 0xe40000, 0xe50000,
|
||||
0xe60000, 0xe70000, 0xe80000, 0xe90000, 0xea0000, 0xeb0000, 0xec0000, 0xed0000, 0xee0000, 0xef0000,
|
||||
0xf00000, 0xf10000, 0xf20000, 0xf30000, 0xf40000, 0xf50000, 0xf60000, 0xf70000, 0xf80000, 0xf90000,
|
||||
0xfa0000, 0xfb0000, 0xfc0000, 0xfd0000, 0xfe0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x010000, 0x020000, 0x030000, 0x040000, 0x050000, 0x060000, 0x070000,
|
||||
0x080000, 0x090000, 0x0a0000, 0x0b0000, 0x0c0000, 0x0d0000, 0x0e0000,
|
||||
0x0f0000, 0x100000, 0x110000, 0x120000, 0x130000, 0x140000, 0x150000,
|
||||
0x160000, 0x170000, 0x180000, 0x190000, 0x1a0000, 0x1b0000, 0x1c0000,
|
||||
0x1d0000, 0x1e0000, 0x1f0000, 0x200000, 0x210000, 0x220000, 0x230000,
|
||||
0x240000, 0x250000, 0x260000, 0x270000, 0x280000, 0x290000, 0x2a0000,
|
||||
0x2b0000, 0x2c0000, 0x2d0000, 0x2e0000, 0x2f0000, 0x300000, 0x310000,
|
||||
0x320000, 0x330000, 0x340000, 0x350000, 0x360000, 0x370000, 0x380000,
|
||||
0x390000, 0x3a0000, 0x3b0000, 0x3c0000, 0x3d0000, 0x3e0000, 0x3f0000,
|
||||
0x400000, 0x410000, 0x420000, 0x430000, 0x440000, 0x450000, 0x460000,
|
||||
0x470000, 0x480000, 0x490000, 0x4a0000, 0x4b0000, 0x4c0000, 0x4d0000,
|
||||
0x4e0000, 0x4f0000, 0x500000, 0x510000, 0x520000, 0x530000, 0x540000,
|
||||
0x550000, 0x560000, 0x570000, 0x580000, 0x590000, 0x5a0000, 0x5b0000,
|
||||
0x5c0000, 0x5d0000, 0x5e0000, 0x5f0000, 0x600000, 0x610000, 0x620000,
|
||||
0x630000, 0x640000, 0x650000, 0x660000, 0x670000, 0x680000, 0x690000,
|
||||
0x6a0000, 0x6b0000, 0x6c0000, 0x6d0000, 0x6e0000, 0x6f0000, 0x700000,
|
||||
0x710000, 0x720000, 0x730000, 0x740000, 0x750000, 0x760000, 0x770000,
|
||||
0x780000, 0x790000, 0x7a0000, 0x7b0000, 0x7c0000, 0x7d0000, 0x7e0000,
|
||||
0x7f0000, 0x800000, 0x810000, 0x820000, 0x830000, 0x840000, 0x850000,
|
||||
0x860000, 0x870000, 0x880000, 0x890000, 0x8a0000, 0x8b0000, 0x8c0000,
|
||||
0x8d0000, 0x8e0000, 0x8f0000, 0x900000, 0x910000, 0x920000, 0x930000,
|
||||
0x940000, 0x950000, 0x960000, 0x970000, 0x980000, 0x990000, 0x9a0000,
|
||||
0x9b0000, 0x9c0000, 0x9d0000, 0x9e0000, 0x9f0000, 0xa00000, 0xa10000,
|
||||
0xa20000, 0xa30000, 0xa40000, 0xa50000, 0xa60000, 0xa70000, 0xa80000,
|
||||
0xa90000, 0xaa0000, 0xab0000, 0xac0000, 0xad0000, 0xae0000, 0xaf0000,
|
||||
0xb00000, 0xb10000, 0xb20000, 0xb30000, 0xb40000, 0xb50000, 0xb60000,
|
||||
0xb70000, 0xb80000, 0xb90000, 0xba0000, 0xbb0000, 0xbc0000, 0xbd0000,
|
||||
0xbe0000, 0xbf0000, 0xc00000, 0xc10000, 0xc20000, 0xc30000, 0xc40000,
|
||||
0xc50000, 0xc60000, 0xc70000, 0xc80000, 0xc90000, 0xca0000, 0xcb0000,
|
||||
0xcc0000, 0xcd0000, 0xce0000, 0xcf0000, 0xd00000, 0xd10000, 0xd20000,
|
||||
0xd30000, 0xd40000, 0xd50000, 0xd60000, 0xd70000, 0xd80000, 0xd90000,
|
||||
0xda0000, 0xdb0000, 0xdc0000, 0xdd0000, 0xde0000, 0xdf0000, 0xe00000,
|
||||
0xe10000, 0xe20000, 0xe30000, 0xe40000, 0xe50000, 0xe60000, 0xe70000,
|
||||
0xe80000, 0xe90000, 0xea0000, 0xeb0000, 0xec0000, 0xed0000, 0xee0000,
|
||||
0xef0000, 0xf00000, 0xf10000, 0xf20000, 0xf30000, 0xf40000, 0xf50000,
|
||||
0xf60000, 0xf70000, 0xf80000, 0xf90000, 0xfa0000, 0xfb0000, 0xfc0000,
|
||||
0xfd0000, 0xfe0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
0xff0000, 0xff0000, 0xff0000, 0xff0000,
|
||||
};
|
||||
const uint32 *Rtab = &Rsat[223];
|
||||
|
||||
const uint32* Rtab = &Rsat[223];
|
||||
|
||||
const uint32 Gsat[605] = {
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000,
|
||||
0x000000, 0x000100, 0x000200, 0x000300, 0x000400, 0x000500, 0x000600, 0x000700, 0x000800, 0x000900,
|
||||
0x000a00, 0x000b00, 0x000c00, 0x000d00, 0x000e00, 0x000f00, 0x001000, 0x001100, 0x001200, 0x001300,
|
||||
0x001400, 0x001500, 0x001600, 0x001700, 0x001800, 0x001900, 0x001a00, 0x001b00, 0x001c00, 0x001d00,
|
||||
0x001e00, 0x001f00, 0x002000, 0x002100, 0x002200, 0x002300, 0x002400, 0x002500, 0x002600, 0x002700,
|
||||
0x002800, 0x002900, 0x002a00, 0x002b00, 0x002c00, 0x002d00, 0x002e00, 0x002f00, 0x003000, 0x003100,
|
||||
0x003200, 0x003300, 0x003400, 0x003500, 0x003600, 0x003700, 0x003800, 0x003900, 0x003a00, 0x003b00,
|
||||
0x003c00, 0x003d00, 0x003e00, 0x003f00, 0x004000, 0x004100, 0x004200, 0x004300, 0x004400, 0x004500,
|
||||
0x004600, 0x004700, 0x004800, 0x004900, 0x004a00, 0x004b00, 0x004c00, 0x004d00, 0x004e00, 0x004f00,
|
||||
0x005000, 0x005100, 0x005200, 0x005300, 0x005400, 0x005500, 0x005600, 0x005700, 0x005800, 0x005900,
|
||||
0x005a00, 0x005b00, 0x005c00, 0x005d00, 0x005e00, 0x005f00, 0x006000, 0x006100, 0x006200, 0x006300,
|
||||
0x006400, 0x006500, 0x006600, 0x006700, 0x006800, 0x006900, 0x006a00, 0x006b00, 0x006c00, 0x006d00,
|
||||
0x006e00, 0x006f00, 0x007000, 0x007100, 0x007200, 0x007300, 0x007400, 0x007500, 0x007600, 0x007700,
|
||||
0x007800, 0x007900, 0x007a00, 0x007b00, 0x007c00, 0x007d00, 0x007e00, 0x007f00, 0x008000, 0x008100,
|
||||
0x008200, 0x008300, 0x008400, 0x008500, 0x008600, 0x008700, 0x008800, 0x008900, 0x008a00, 0x008b00,
|
||||
0x008c00, 0x008d00, 0x008e00, 0x008f00, 0x009000, 0x009100, 0x009200, 0x009300, 0x009400, 0x009500,
|
||||
0x009600, 0x009700, 0x009800, 0x009900, 0x009a00, 0x009b00, 0x009c00, 0x009d00, 0x009e00, 0x009f00,
|
||||
0x00a000, 0x00a100, 0x00a200, 0x00a300, 0x00a400, 0x00a500, 0x00a600, 0x00a700, 0x00a800, 0x00a900,
|
||||
0x00aa00, 0x00ab00, 0x00ac00, 0x00ad00, 0x00ae00, 0x00af00, 0x00b000, 0x00b100, 0x00b200, 0x00b300,
|
||||
0x00b400, 0x00b500, 0x00b600, 0x00b700, 0x00b800, 0x00b900, 0x00ba00, 0x00bb00, 0x00bc00, 0x00bd00,
|
||||
0x00be00, 0x00bf00, 0x00c000, 0x00c100, 0x00c200, 0x00c300, 0x00c400, 0x00c500, 0x00c600, 0x00c700,
|
||||
0x00c800, 0x00c900, 0x00ca00, 0x00cb00, 0x00cc00, 0x00cd00, 0x00ce00, 0x00cf00, 0x00d000, 0x00d100,
|
||||
0x00d200, 0x00d300, 0x00d400, 0x00d500, 0x00d600, 0x00d700, 0x00d800, 0x00d900, 0x00da00, 0x00db00,
|
||||
0x00dc00, 0x00dd00, 0x00de00, 0x00df00, 0x00e000, 0x00e100, 0x00e200, 0x00e300, 0x00e400, 0x00e500,
|
||||
0x00e600, 0x00e700, 0x00e800, 0x00e900, 0x00ea00, 0x00eb00, 0x00ec00, 0x00ed00, 0x00ee00, 0x00ef00,
|
||||
0x00f000, 0x00f100, 0x00f200, 0x00f300, 0x00f400, 0x00f500, 0x00f600, 0x00f700, 0x00f800, 0x00f900,
|
||||
0x00fa00, 0x00fb00, 0x00fc00, 0x00fd00, 0x00fe00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000100, 0x000200,
|
||||
0x000300, 0x000400, 0x000500, 0x000600, 0x000700, 0x000800, 0x000900,
|
||||
0x000a00, 0x000b00, 0x000c00, 0x000d00, 0x000e00, 0x000f00, 0x001000,
|
||||
0x001100, 0x001200, 0x001300, 0x001400, 0x001500, 0x001600, 0x001700,
|
||||
0x001800, 0x001900, 0x001a00, 0x001b00, 0x001c00, 0x001d00, 0x001e00,
|
||||
0x001f00, 0x002000, 0x002100, 0x002200, 0x002300, 0x002400, 0x002500,
|
||||
0x002600, 0x002700, 0x002800, 0x002900, 0x002a00, 0x002b00, 0x002c00,
|
||||
0x002d00, 0x002e00, 0x002f00, 0x003000, 0x003100, 0x003200, 0x003300,
|
||||
0x003400, 0x003500, 0x003600, 0x003700, 0x003800, 0x003900, 0x003a00,
|
||||
0x003b00, 0x003c00, 0x003d00, 0x003e00, 0x003f00, 0x004000, 0x004100,
|
||||
0x004200, 0x004300, 0x004400, 0x004500, 0x004600, 0x004700, 0x004800,
|
||||
0x004900, 0x004a00, 0x004b00, 0x004c00, 0x004d00, 0x004e00, 0x004f00,
|
||||
0x005000, 0x005100, 0x005200, 0x005300, 0x005400, 0x005500, 0x005600,
|
||||
0x005700, 0x005800, 0x005900, 0x005a00, 0x005b00, 0x005c00, 0x005d00,
|
||||
0x005e00, 0x005f00, 0x006000, 0x006100, 0x006200, 0x006300, 0x006400,
|
||||
0x006500, 0x006600, 0x006700, 0x006800, 0x006900, 0x006a00, 0x006b00,
|
||||
0x006c00, 0x006d00, 0x006e00, 0x006f00, 0x007000, 0x007100, 0x007200,
|
||||
0x007300, 0x007400, 0x007500, 0x007600, 0x007700, 0x007800, 0x007900,
|
||||
0x007a00, 0x007b00, 0x007c00, 0x007d00, 0x007e00, 0x007f00, 0x008000,
|
||||
0x008100, 0x008200, 0x008300, 0x008400, 0x008500, 0x008600, 0x008700,
|
||||
0x008800, 0x008900, 0x008a00, 0x008b00, 0x008c00, 0x008d00, 0x008e00,
|
||||
0x008f00, 0x009000, 0x009100, 0x009200, 0x009300, 0x009400, 0x009500,
|
||||
0x009600, 0x009700, 0x009800, 0x009900, 0x009a00, 0x009b00, 0x009c00,
|
||||
0x009d00, 0x009e00, 0x009f00, 0x00a000, 0x00a100, 0x00a200, 0x00a300,
|
||||
0x00a400, 0x00a500, 0x00a600, 0x00a700, 0x00a800, 0x00a900, 0x00aa00,
|
||||
0x00ab00, 0x00ac00, 0x00ad00, 0x00ae00, 0x00af00, 0x00b000, 0x00b100,
|
||||
0x00b200, 0x00b300, 0x00b400, 0x00b500, 0x00b600, 0x00b700, 0x00b800,
|
||||
0x00b900, 0x00ba00, 0x00bb00, 0x00bc00, 0x00bd00, 0x00be00, 0x00bf00,
|
||||
0x00c000, 0x00c100, 0x00c200, 0x00c300, 0x00c400, 0x00c500, 0x00c600,
|
||||
0x00c700, 0x00c800, 0x00c900, 0x00ca00, 0x00cb00, 0x00cc00, 0x00cd00,
|
||||
0x00ce00, 0x00cf00, 0x00d000, 0x00d100, 0x00d200, 0x00d300, 0x00d400,
|
||||
0x00d500, 0x00d600, 0x00d700, 0x00d800, 0x00d900, 0x00da00, 0x00db00,
|
||||
0x00dc00, 0x00dd00, 0x00de00, 0x00df00, 0x00e000, 0x00e100, 0x00e200,
|
||||
0x00e300, 0x00e400, 0x00e500, 0x00e600, 0x00e700, 0x00e800, 0x00e900,
|
||||
0x00ea00, 0x00eb00, 0x00ec00, 0x00ed00, 0x00ee00, 0x00ef00, 0x00f000,
|
||||
0x00f100, 0x00f200, 0x00f300, 0x00f400, 0x00f500, 0x00f600, 0x00f700,
|
||||
0x00f800, 0x00f900, 0x00fa00, 0x00fb00, 0x00fc00, 0x00fd00, 0x00fe00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00, 0x00ff00,
|
||||
0x00ff00, 0x00ff00, 0x00ff00,
|
||||
};
|
||||
const uint32 *Gtab = &Gsat[172];
|
||||
const uint32* Gtab = &Gsat[172];
|
||||
|
||||
const uint32 Bsat[812] = {
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000001, 0x000002, 0x000003, 0x000004, 0x000005, 0x000006, 0x000007, 0x000008, 0x000009,
|
||||
0x00000a, 0x00000b, 0x00000c, 0x00000d, 0x00000e, 0x00000f, 0x000010, 0x000011, 0x000012, 0x000013,
|
||||
0x000014, 0x000015, 0x000016, 0x000017, 0x000018, 0x000019, 0x00001a, 0x00001b, 0x00001c, 0x00001d,
|
||||
0x00001e, 0x00001f, 0x000020, 0x000021, 0x000022, 0x000023, 0x000024, 0x000025, 0x000026, 0x000027,
|
||||
0x000028, 0x000029, 0x00002a, 0x00002b, 0x00002c, 0x00002d, 0x00002e, 0x00002f, 0x000030, 0x000031,
|
||||
0x000032, 0x000033, 0x000034, 0x000035, 0x000036, 0x000037, 0x000038, 0x000039, 0x00003a, 0x00003b,
|
||||
0x00003c, 0x00003d, 0x00003e, 0x00003f, 0x000040, 0x000041, 0x000042, 0x000043, 0x000044, 0x000045,
|
||||
0x000046, 0x000047, 0x000048, 0x000049, 0x00004a, 0x00004b, 0x00004c, 0x00004d, 0x00004e, 0x00004f,
|
||||
0x000050, 0x000051, 0x000052, 0x000053, 0x000054, 0x000055, 0x000056, 0x000057, 0x000058, 0x000059,
|
||||
0x00005a, 0x00005b, 0x00005c, 0x00005d, 0x00005e, 0x00005f, 0x000060, 0x000061, 0x000062, 0x000063,
|
||||
0x000064, 0x000065, 0x000066, 0x000067, 0x000068, 0x000069, 0x00006a, 0x00006b, 0x00006c, 0x00006d,
|
||||
0x00006e, 0x00006f, 0x000070, 0x000071, 0x000072, 0x000073, 0x000074, 0x000075, 0x000076, 0x000077,
|
||||
0x000078, 0x000079, 0x00007a, 0x00007b, 0x00007c, 0x00007d, 0x00007e, 0x00007f, 0x000080, 0x000081,
|
||||
0x000082, 0x000083, 0x000084, 0x000085, 0x000086, 0x000087, 0x000088, 0x000089, 0x00008a, 0x00008b,
|
||||
0x00008c, 0x00008d, 0x00008e, 0x00008f, 0x000090, 0x000091, 0x000092, 0x000093, 0x000094, 0x000095,
|
||||
0x000096, 0x000097, 0x000098, 0x000099, 0x00009a, 0x00009b, 0x00009c, 0x00009d, 0x00009e, 0x00009f,
|
||||
0x0000a0, 0x0000a1, 0x0000a2, 0x0000a3, 0x0000a4, 0x0000a5, 0x0000a6, 0x0000a7, 0x0000a8, 0x0000a9,
|
||||
0x0000aa, 0x0000ab, 0x0000ac, 0x0000ad, 0x0000ae, 0x0000af, 0x0000b0, 0x0000b1, 0x0000b2, 0x0000b3,
|
||||
0x0000b4, 0x0000b5, 0x0000b6, 0x0000b7, 0x0000b8, 0x0000b9, 0x0000ba, 0x0000bb, 0x0000bc, 0x0000bd,
|
||||
0x0000be, 0x0000bf, 0x0000c0, 0x0000c1, 0x0000c2, 0x0000c3, 0x0000c4, 0x0000c5, 0x0000c6, 0x0000c7,
|
||||
0x0000c8, 0x0000c9, 0x0000ca, 0x0000cb, 0x0000cc, 0x0000cd, 0x0000ce, 0x0000cf, 0x0000d0, 0x0000d1,
|
||||
0x0000d2, 0x0000d3, 0x0000d4, 0x0000d5, 0x0000d6, 0x0000d7, 0x0000d8, 0x0000d9, 0x0000da, 0x0000db,
|
||||
0x0000dc, 0x0000dd, 0x0000de, 0x0000df, 0x0000e0, 0x0000e1, 0x0000e2, 0x0000e3, 0x0000e4, 0x0000e5,
|
||||
0x0000e6, 0x0000e7, 0x0000e8, 0x0000e9, 0x0000ea, 0x0000eb, 0x0000ec, 0x0000ed, 0x0000ee, 0x0000ef,
|
||||
0x0000f0, 0x0000f1, 0x0000f2, 0x0000f3, 0x0000f4, 0x0000f5, 0x0000f6, 0x0000f7, 0x0000f8, 0x0000f9,
|
||||
0x0000fa, 0x0000fb, 0x0000fc, 0x0000fd, 0x0000fe, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
|
||||
0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000001, 0x000002,
|
||||
0x000003, 0x000004, 0x000005, 0x000006, 0x000007, 0x000008, 0x000009,
|
||||
0x00000a, 0x00000b, 0x00000c, 0x00000d, 0x00000e, 0x00000f, 0x000010,
|
||||
0x000011, 0x000012, 0x000013, 0x000014, 0x000015, 0x000016, 0x000017,
|
||||
0x000018, 0x000019, 0x00001a, 0x00001b, 0x00001c, 0x00001d, 0x00001e,
|
||||
0x00001f, 0x000020, 0x000021, 0x000022, 0x000023, 0x000024, 0x000025,
|
||||
0x000026, 0x000027, 0x000028, 0x000029, 0x00002a, 0x00002b, 0x00002c,
|
||||
0x00002d, 0x00002e, 0x00002f, 0x000030, 0x000031, 0x000032, 0x000033,
|
||||
0x000034, 0x000035, 0x000036, 0x000037, 0x000038, 0x000039, 0x00003a,
|
||||
0x00003b, 0x00003c, 0x00003d, 0x00003e, 0x00003f, 0x000040, 0x000041,
|
||||
0x000042, 0x000043, 0x000044, 0x000045, 0x000046, 0x000047, 0x000048,
|
||||
0x000049, 0x00004a, 0x00004b, 0x00004c, 0x00004d, 0x00004e, 0x00004f,
|
||||
0x000050, 0x000051, 0x000052, 0x000053, 0x000054, 0x000055, 0x000056,
|
||||
0x000057, 0x000058, 0x000059, 0x00005a, 0x00005b, 0x00005c, 0x00005d,
|
||||
0x00005e, 0x00005f, 0x000060, 0x000061, 0x000062, 0x000063, 0x000064,
|
||||
0x000065, 0x000066, 0x000067, 0x000068, 0x000069, 0x00006a, 0x00006b,
|
||||
0x00006c, 0x00006d, 0x00006e, 0x00006f, 0x000070, 0x000071, 0x000072,
|
||||
0x000073, 0x000074, 0x000075, 0x000076, 0x000077, 0x000078, 0x000079,
|
||||
0x00007a, 0x00007b, 0x00007c, 0x00007d, 0x00007e, 0x00007f, 0x000080,
|
||||
0x000081, 0x000082, 0x000083, 0x000084, 0x000085, 0x000086, 0x000087,
|
||||
0x000088, 0x000089, 0x00008a, 0x00008b, 0x00008c, 0x00008d, 0x00008e,
|
||||
0x00008f, 0x000090, 0x000091, 0x000092, 0x000093, 0x000094, 0x000095,
|
||||
0x000096, 0x000097, 0x000098, 0x000099, 0x00009a, 0x00009b, 0x00009c,
|
||||
0x00009d, 0x00009e, 0x00009f, 0x0000a0, 0x0000a1, 0x0000a2, 0x0000a3,
|
||||
0x0000a4, 0x0000a5, 0x0000a6, 0x0000a7, 0x0000a8, 0x0000a9, 0x0000aa,
|
||||
0x0000ab, 0x0000ac, 0x0000ad, 0x0000ae, 0x0000af, 0x0000b0, 0x0000b1,
|
||||
0x0000b2, 0x0000b3, 0x0000b4, 0x0000b5, 0x0000b6, 0x0000b7, 0x0000b8,
|
||||
0x0000b9, 0x0000ba, 0x0000bb, 0x0000bc, 0x0000bd, 0x0000be, 0x0000bf,
|
||||
0x0000c0, 0x0000c1, 0x0000c2, 0x0000c3, 0x0000c4, 0x0000c5, 0x0000c6,
|
||||
0x0000c7, 0x0000c8, 0x0000c9, 0x0000ca, 0x0000cb, 0x0000cc, 0x0000cd,
|
||||
0x0000ce, 0x0000cf, 0x0000d0, 0x0000d1, 0x0000d2, 0x0000d3, 0x0000d4,
|
||||
0x0000d5, 0x0000d6, 0x0000d7, 0x0000d8, 0x0000d9, 0x0000da, 0x0000db,
|
||||
0x0000dc, 0x0000dd, 0x0000de, 0x0000df, 0x0000e0, 0x0000e1, 0x0000e2,
|
||||
0x0000e3, 0x0000e4, 0x0000e5, 0x0000e6, 0x0000e7, 0x0000e8, 0x0000e9,
|
||||
0x0000ea, 0x0000eb, 0x0000ec, 0x0000ed, 0x0000ee, 0x0000ef, 0x0000f0,
|
||||
0x0000f1, 0x0000f2, 0x0000f3, 0x0000f4, 0x0000f5, 0x0000f6, 0x0000f7,
|
||||
0x0000f8, 0x0000f9, 0x0000fa, 0x0000fb, 0x0000fc, 0x0000fd, 0x0000fe,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff, 0x0000ff,
|
||||
};
|
||||
const uint32 *Btab = &Bsat[277];
|
||||
|
||||
const uint32* Btab = &Bsat[277];
|
||||
|
@ -1,14 +1,16 @@
|
||||
#include "gfx_util.h"
|
||||
|
||||
#include <strings.h>
|
||||
#include <stdio.h>
|
||||
#include "gfx_util.h"
|
||||
|
||||
#include "CpuCapabilities.h"
|
||||
#include "gfx_conv_c.h"
|
||||
#include "gfx_conv_mmx.h"
|
||||
#include "CpuCapabilities.h"
|
||||
|
||||
/*
|
||||
* ref docs
|
||||
* http://www.joemaller.com/fcp/fxscript_yuv_color.shtml
|
||||
*/
|
||||
|
||||
// ref docs
|
||||
// http://www.joemaller.com/fcp/fxscript_yuv_color.shtml
|
||||
|
||||
|
||||
#if 1
|
||||
#define TRACE(a...) printf(a)
|
||||
@ -16,14 +18,16 @@
|
||||
#define TRACE(a...)
|
||||
#endif
|
||||
|
||||
// this function will try to find the best colorspaces for both the ff-codec and
|
||||
// the Media Kit sides.
|
||||
gfx_convert_func resolve_colorspace(color_space colorSpace, PixelFormat pixelFormat, int width, int height)
|
||||
{
|
||||
CPUCapabilities cpu;
|
||||
|
||||
switch (colorSpace)
|
||||
{
|
||||
//! This function will try to find the best colorspaces for both the ff-codec
|
||||
// and the Media Kit sides.
|
||||
gfx_convert_func
|
||||
resolve_colorspace(color_space colorSpace, PixelFormat pixelFormat, int width,
|
||||
int height)
|
||||
{
|
||||
CPUCapabilities cpu;
|
||||
|
||||
switch (colorSpace) {
|
||||
case B_RGB32:
|
||||
if (pixelFormat == PIX_FMT_YUV410P) {
|
||||
// if (cpu.HasMMX()) {
|
||||
@ -45,11 +49,14 @@ CPUCapabilities cpu;
|
||||
// }
|
||||
}
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV420P || pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
if (pixelFormat == PIX_FMT_YUV420P
|
||||
|| pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
if (cpu.HasSSE2() && width % 8 == 0 && height % 2 == 0) {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv420p_rgba32_sse2\n");
|
||||
TRACE("resolve_colorspace: "
|
||||
"gfx_conv_yuv420p_rgba32_sse2\n");
|
||||
return gfx_conv_yuv420p_rgba32_sse2;
|
||||
} else if (cpu.HasSSE1() && width % 4 == 0 && height % 2 == 0) {
|
||||
} else if (cpu.HasSSE1() && width % 4 == 0
|
||||
&& height % 2 == 0) {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv420p_rgba32_sse\n");
|
||||
return gfx_conv_yuv420p_rgba32_sse;
|
||||
} else {
|
||||
@ -58,32 +65,36 @@ CPUCapabilities cpu;
|
||||
}
|
||||
}
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV422P || pixelFormat == PIX_FMT_YUVJ422P) {
|
||||
if (cpu.HasSSE2() && width % 8 == 0) {
|
||||
if (pixelFormat == PIX_FMT_YUV422P
|
||||
|| pixelFormat == PIX_FMT_YUVJ422P) {
|
||||
if (cpu.HasSSE2() && width % 8 == 0)
|
||||
return gfx_conv_yuv422p_rgba32_sse2;
|
||||
} else if (cpu.HasSSE1() && width % 4 == 0) {
|
||||
else if (cpu.HasSSE1() && width % 4 == 0)
|
||||
return gfx_conv_yuv422p_rgba32_sse;
|
||||
} else {
|
||||
else
|
||||
return gfx_conv_YCbCr422_RGB32_c;
|
||||
}
|
||||
}
|
||||
|
||||
TRACE("resolve_colorspace: %s => B_RGB32: NULL\n", pixfmt_to_string(pixelFormat));
|
||||
TRACE("resolve_colorspace: %s => B_RGB32: NULL\n",
|
||||
pixfmt_to_string(pixelFormat));
|
||||
return NULL;
|
||||
|
||||
case B_RGB24_BIG:
|
||||
TRACE("resolve_colorspace: %s => B_RGB24_BIG: NULL\n", pixfmt_to_string(pixelFormat));
|
||||
TRACE("resolve_colorspace: %s => B_RGB24_BIG: NULL\n",
|
||||
pixfmt_to_string(pixelFormat));
|
||||
return NULL;
|
||||
|
||||
case B_RGB24:
|
||||
TRACE("resolve_colorspace: %s => B_RGB24: NULL\n", pixfmt_to_string(pixelFormat));
|
||||
TRACE("resolve_colorspace: %s => B_RGB24: NULL\n",
|
||||
pixfmt_to_string(pixelFormat));
|
||||
return NULL;
|
||||
|
||||
case B_YCbCr422:
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV410P) {
|
||||
// if (cpu.HasMMX()) {
|
||||
// TRACE("resolve_colorspace: gfx_conv_yuv410p_ycbcr422_mmx\n");
|
||||
// TRACE("resolve_colorspace: "
|
||||
// "gfx_conv_yuv410p_ycbcr422_mmx\n");
|
||||
// return gfx_conv_yuv410p_ycbcr422_mmx;
|
||||
// } else {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv410p_ycbcr422_c\n");
|
||||
@ -93,7 +104,8 @@ CPUCapabilities cpu;
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV411P) {
|
||||
// if (cpu.HasMMX()) {
|
||||
// TRACE("resolve_colorspace: gfx_conv_yuv411p_ycbcr422_mmx\n");
|
||||
// TRACE("resolve_colorspace: "
|
||||
// "gfx_conv_yuv411p_ycbcr422_mmx\n");
|
||||
// return gfx_conv_yuv411p_ycbcr422_mmx;
|
||||
// } else {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv411p_ycbcr422_c\n");
|
||||
@ -101,9 +113,11 @@ CPUCapabilities cpu;
|
||||
// }
|
||||
}
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUV420P || pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
if (pixelFormat == PIX_FMT_YUV420P
|
||||
|| pixelFormat == PIX_FMT_YUVJ420P) {
|
||||
// if (cpu.HasMMX()) {
|
||||
// TRACE("resolve_colorspace: gfx_conv_yuv420p_ycbcr422_mmx\n");
|
||||
// TRACE("resolve_colorspace: "
|
||||
// "gfx_conv_yuv420p_ycbcr422_mmx\n");
|
||||
// return gfx_conv_yuv420p_ycbcr422_mmx;
|
||||
// } else {
|
||||
TRACE("resolve_colorspace: gfx_conv_yuv420p_ycbcr422_c\n");
|
||||
@ -113,142 +127,308 @@ CPUCapabilities cpu;
|
||||
|
||||
if (pixelFormat == PIX_FMT_YUYV422) {
|
||||
// if (cpu.HasMMX()) {
|
||||
// TRACE("resolve_colorspace: PIX_FMT_YUV422 => B_YCbCr422: gfx_conv_null_mmx\n");
|
||||
// TRACE("resolve_colorspace: PIX_FMT_YUV422 => B_YCbCr422: "
|
||||
// "gfx_conv_null_mmx\n");
|
||||
// return gfx_conv_null_mmx;
|
||||
// } else {
|
||||
TRACE("resolve_colorspace: PIX_FMT_YUV422 => B_YCbCr422: gfx_conv_null_c\n");
|
||||
TRACE("resolve_colorspace: PIX_FMT_YUV422 => B_YCbCr422: "
|
||||
"gfx_conv_null_c\n");
|
||||
return gfx_conv_null_c;
|
||||
// }
|
||||
}
|
||||
|
||||
TRACE("resolve_colorspace: %s => B_YCbCr422: NULL\n", pixfmt_to_string(pixelFormat));
|
||||
TRACE("resolve_colorspace: %s => B_YCbCr422: NULL\n",
|
||||
pixfmt_to_string(pixelFormat));
|
||||
return gfx_conv_null_c;
|
||||
|
||||
default:
|
||||
TRACE("resolve_colorspace: default: NULL !!!\n");
|
||||
TRACE("resolve_colorspace: default: NULL!!!\n");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const char*
|
||||
pixfmt_to_string(int p)
|
||||
pixfmt_to_string(int pixFormat)
|
||||
{
|
||||
switch(p) {
|
||||
case PIX_FMT_NONE: return "PIX_FMT_NONE";
|
||||
case PIX_FMT_YUV420P: return "PIX_FMT_YUV420P"; ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
|
||||
case PIX_FMT_YUYV422: return "PIX_FMT_YUYV422"; ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
|
||||
case PIX_FMT_RGB24: return "PIX_FMT_RGB24"; ///< packed RGB 8:8:8, 24bpp, RGBRGB...
|
||||
case PIX_FMT_BGR24: return "PIX_FMT_BGR24"; ///< packed RGB 8:8:8, 24bpp, BGRBGR...
|
||||
case PIX_FMT_YUV422P: return "PIX_FMT_YUV422P"; ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
|
||||
case PIX_FMT_YUV444P: return "PIX_FMT_YUV444P"; ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
|
||||
case PIX_FMT_RGB32: return "PIX_FMT_RGB32"; ///< packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in CPU endianness
|
||||
case PIX_FMT_YUV410P: return "PIX_FMT_YUV410P"; ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
|
||||
case PIX_FMT_YUV411P: return "PIX_FMT_YUV411P"; ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
|
||||
case PIX_FMT_RGB565: return "PIX_FMT_RGB565"; ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), in CPU endianness
|
||||
case PIX_FMT_RGB555: return "PIX_FMT_RGB555"; ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), in CPU endianness, most significant bit to 0
|
||||
case PIX_FMT_GRAY8: return "PIX_FMT_GRAY8"; ///< Y , 8bpp
|
||||
case PIX_FMT_MONOWHITE: return "PIX_FMT_MONOWHITE"; ///< Y , 1bpp, 0 is white, 1 is black
|
||||
case PIX_FMT_MONOBLACK: return "PIX_FMT_MONOBLACK"; ///< Y , 1bpp, 0 is black, 1 is white
|
||||
case PIX_FMT_PAL8: return "PIX_FMT_PAL8"; ///< 8 bit with PIX_FMT_RGB32 palette
|
||||
case PIX_FMT_YUVJ420P: return "PIX_FMT_YUVJ420P - YUV420P (Jpeg)"; ///< planar YUV 4:2:0, 12bpp, full scale (JPEG)
|
||||
case PIX_FMT_YUVJ422P: return "PIX_FMT_YUVJ422P - YUV422P (Jpeg)"; ///< planar YUV 4:2:2, 16bpp, full scale (JPEG)
|
||||
case PIX_FMT_YUVJ444P: return "PIX_FMT_YUVJ444P"; ///< planar YUV 4:4:4, 24bpp, full scale (JPEG)
|
||||
case PIX_FMT_XVMC_MPEG2_MC: return "PIX_FMT_XVMC_MPEG2_MC";///< XVideo Motion Acceleration via common packet passing
|
||||
case PIX_FMT_XVMC_MPEG2_IDCT: return "PIX_FMT_XVMC_MPEG2_IDCT";
|
||||
case PIX_FMT_UYVY422: return "PIX_FMT_UYVY422"; ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
|
||||
case PIX_FMT_UYYVYY411: return "PIX_FMT_UYYVYY411"; ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
|
||||
case PIX_FMT_BGR32: return "PIX_FMT_BGR32"; ///< packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in CPU endianness
|
||||
case PIX_FMT_BGR565: return "PIX_FMT_BGR565"; ///< packed RGB 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), in CPU endianness
|
||||
case PIX_FMT_BGR555: return "PIX_FMT_BGR555"; ///< packed RGB 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), in CPU endianness, most significant bit to 1
|
||||
case PIX_FMT_BGR8: return "PIX_FMT_BGR8"; ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
|
||||
case PIX_FMT_BGR4: return "PIX_FMT_BGR4"; ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
|
||||
case PIX_FMT_BGR4_BYTE: return "PIX_FMT_BGR4_BYTE"; ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
|
||||
case PIX_FMT_RGB8: return "PIX_FMT_RGB8"; ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
|
||||
case PIX_FMT_RGB4: return "PIX_FMT_RGB4"; ///< packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
|
||||
case PIX_FMT_RGB4_BYTE: return "PIX_FMT_RGB4_BYTE"; ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
|
||||
case PIX_FMT_NV12: return "PIX_FMT_NV12"; ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
|
||||
case PIX_FMT_NV21: return "PIX_FMT_NV21"; ///< as above, but U and V bytes are swapped
|
||||
case PIX_FMT_RGB32_1: return "PIX_FMT_RGB32_1"; ///< packed RGB 8:8:8, 32bpp, (msb)8R 8G 8B 8A(lsb), in CPU endianness
|
||||
case PIX_FMT_BGR32_1: return "PIX_FMT_BGR32_1"; ///< packed RGB 8:8:8, 32bpp, (msb)8B 8G 8R 8A(lsb), in CPU endianness
|
||||
case PIX_FMT_GRAY16BE: return "PIX_FMT_GRAY16BE"; ///< Y , 16bpp, big-endian
|
||||
case PIX_FMT_GRAY16LE: return "PIX_FMT_GRAY16LE"; ///< Y , 16bpp, little-endian
|
||||
case PIX_FMT_YUV440P: return "PIX_FMT_YUV440P"; ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
|
||||
case PIX_FMT_YUVJ440P: return "PIX_FMT_YUVJ440P - YUV440P (Jpeg)"; ///< planar YUV 4:4:0 full scale (JPEG)
|
||||
case PIX_FMT_YUVA420P: return "PIX_FMT_YUVA420P - YUV420P (Alpha)"; ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
|
||||
case PIX_FMT_VDPAU_H264: return "PIX_FMT_VDPAU_H264";///< H.264 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
case PIX_FMT_VDPAU_MPEG1: return "PIX_FMT_VDPAU_MPEG1";///< MPEG-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
case PIX_FMT_VDPAU_MPEG2: return "PIX_FMT_VDPAU_MPEG2";///< MPEG-2 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
case PIX_FMT_VDPAU_WMV3: return "PIX_FMT_VDPAU_WMV3";///< WMV3 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
case PIX_FMT_VDPAU_VC1: return "PIX_FMT_VDPAU_VC1"; ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
case PIX_FMT_RGB48BE: return "PIX_FMT_RGB48BE"; ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, big-endian
|
||||
case PIX_FMT_RGB48LE: return "PIX_FMT_RGB48LE"; ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, little-endian
|
||||
case PIX_FMT_VAAPI_MOCO: return "PIX_FMT_VAAPI_MOCO"; ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[0] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
|
||||
case PIX_FMT_VAAPI_IDCT: return "PIX_FMT_VAAPI_IDCT"; ///< HW acceleration through VA API at IDCT entry-point, Picture.data[0] contains a vaapi_render_state struct which contains fields extracted from headers
|
||||
case PIX_FMT_VAAPI_VLD: return "PIX_FMT_VAAPI_VLD"; ///< HW decoding through VA API, Picture.data[0] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
default:
|
||||
return "(unknown)";
|
||||
switch (pixFormat) {
|
||||
case PIX_FMT_NONE:
|
||||
return "PIX_FMT_NONE";
|
||||
|
||||
case PIX_FMT_YUV420P:
|
||||
// planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
|
||||
return "PIX_FMT_YUV420P";
|
||||
|
||||
case PIX_FMT_YUYV422:
|
||||
// packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
|
||||
return "PIX_FMT_YUYV422";
|
||||
|
||||
case PIX_FMT_RGB24:
|
||||
// packed RGB 8:8:8, 24bpp, RGBRGB...
|
||||
return "PIX_FMT_RGB24";
|
||||
|
||||
case PIX_FMT_BGR24:
|
||||
// packed RGB 8:8:8, 24bpp, BGRBGR...
|
||||
return "PIX_FMT_BGR24";
|
||||
|
||||
case PIX_FMT_YUV422P:
|
||||
// planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
|
||||
return "PIX_FMT_YUV422P";
|
||||
|
||||
case PIX_FMT_YUV444P:
|
||||
// planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
|
||||
return "PIX_FMT_YUV444P";
|
||||
|
||||
case PIX_FMT_RGB32:
|
||||
// packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in CPU
|
||||
// endianness
|
||||
return "PIX_FMT_RGB32";
|
||||
|
||||
case PIX_FMT_YUV410P:
|
||||
// planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
|
||||
return "PIX_FMT_YUV410P";
|
||||
|
||||
case PIX_FMT_YUV411P:
|
||||
// planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
|
||||
return "PIX_FMT_YUV411P";
|
||||
|
||||
case PIX_FMT_RGB565:
|
||||
// packed RGB 5:6:5, 16bpp, (msb)5R 6G 5B(lsb), in CPU endianness
|
||||
return "PIX_FMT_RGB565";
|
||||
|
||||
case PIX_FMT_RGB555:
|
||||
// packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), in CPU
|
||||
// endianness, most significant bit to 0
|
||||
return "PIX_FMT_RGB555";
|
||||
|
||||
case PIX_FMT_GRAY8:
|
||||
// Y, 8bpp
|
||||
return "PIX_FMT_GRAY8";
|
||||
|
||||
case PIX_FMT_MONOWHITE:
|
||||
// Y, 1bpp, 0 is white, 1 is black
|
||||
return "PIX_FMT_MONOWHITE";
|
||||
|
||||
case PIX_FMT_MONOBLACK:
|
||||
// Y, 1bpp, 0 is black, 1 is white
|
||||
return "PIX_FMT_MONOBLACK";
|
||||
|
||||
case PIX_FMT_PAL8:
|
||||
// 8 bit with PIX_FMT_RGB32 palette
|
||||
return "PIX_FMT_PAL8";
|
||||
|
||||
case PIX_FMT_YUVJ420P:
|
||||
// planar YUV 4:2:0, 12bpp, full scale (JPEG)
|
||||
return "PIX_FMT_YUVJ420P - YUV420P (Jpeg)";
|
||||
|
||||
case PIX_FMT_YUVJ422P:
|
||||
// planar YUV 4:2:2, 16bpp, full scale (JPEG)
|
||||
return "PIX_FMT_YUVJ422P - YUV422P (Jpeg)";
|
||||
|
||||
case PIX_FMT_YUVJ444P:
|
||||
// planar YUV 4:4:4, 24bpp, full scale (JPEG)
|
||||
return "PIX_FMT_YUVJ444P";
|
||||
|
||||
case PIX_FMT_XVMC_MPEG2_MC:
|
||||
// XVideo Motion Acceleration via common packet passing
|
||||
return "PIX_FMT_XVMC_MPEG2_MC";
|
||||
|
||||
case PIX_FMT_XVMC_MPEG2_IDCT:
|
||||
return "PIX_FMT_XVMC_MPEG2_IDCT";
|
||||
case PIX_FMT_UYVY422:
|
||||
// packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
|
||||
return "PIX_FMT_UYVY422";
|
||||
|
||||
case PIX_FMT_UYYVYY411:
|
||||
// packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
|
||||
return "PIX_FMT_UYYVYY411";
|
||||
|
||||
case PIX_FMT_BGR32:
|
||||
// packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in CPU
|
||||
// endianness
|
||||
return "PIX_FMT_BGR32";
|
||||
|
||||
case PIX_FMT_BGR565:
|
||||
// packed RGB 5:6:5, 16bpp, (msb)5B 6G 5R(lsb), in CPU endianness
|
||||
return "PIX_FMT_BGR565";
|
||||
|
||||
case PIX_FMT_BGR555:
|
||||
// packed RGB 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), in CPU
|
||||
// endianness, most significant bit to 1
|
||||
return "PIX_FMT_BGR555";
|
||||
|
||||
case PIX_FMT_BGR8:
|
||||
// packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
|
||||
return "PIX_FMT_BGR8";
|
||||
|
||||
case PIX_FMT_BGR4:
|
||||
// packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
|
||||
return "PIX_FMT_BGR4";
|
||||
|
||||
case PIX_FMT_BGR4_BYTE:
|
||||
// packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
|
||||
return "PIX_FMT_BGR4_BYTE";
|
||||
|
||||
case PIX_FMT_RGB8:
|
||||
// packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
|
||||
return "PIX_FMT_RGB8";
|
||||
|
||||
case PIX_FMT_RGB4:
|
||||
// packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
|
||||
return "PIX_FMT_RGB4";
|
||||
|
||||
case PIX_FMT_RGB4_BYTE:
|
||||
// packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
|
||||
return "PIX_FMT_RGB4_BYTE";
|
||||
|
||||
case PIX_FMT_NV12:
|
||||
// planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
|
||||
return "PIX_FMT_NV12";
|
||||
|
||||
case PIX_FMT_NV21:
|
||||
// as above, but U and V bytes are swapped
|
||||
return "PIX_FMT_NV21";
|
||||
|
||||
case PIX_FMT_RGB32_1:
|
||||
// packed RGB 8:8:8, 32bpp, (msb)8R 8G 8B 8A(lsb), in CPU
|
||||
// endianness
|
||||
return "PIX_FMT_RGB32_1";
|
||||
|
||||
case PIX_FMT_BGR32_1:
|
||||
// packed RGB 8:8:8, 32bpp, (msb)8B 8G 8R 8A(lsb), in CPU
|
||||
// endianness
|
||||
return "PIX_FMT_BGR32_1";
|
||||
|
||||
case PIX_FMT_GRAY16BE:
|
||||
// Y, 16bpp, big-endian
|
||||
return "PIX_FMT_GRAY16BE";
|
||||
|
||||
case PIX_FMT_GRAY16LE:
|
||||
// Y, 16bpp, little-endian
|
||||
return "PIX_FMT_GRAY16LE";
|
||||
|
||||
case PIX_FMT_YUV440P:
|
||||
// planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
|
||||
return "PIX_FMT_YUV440P";
|
||||
|
||||
case PIX_FMT_YUVJ440P:
|
||||
// planar YUV 4:4:0 full scale (JPEG)
|
||||
return "PIX_FMT_YUVJ440P - YUV440P (Jpeg)";
|
||||
|
||||
case PIX_FMT_YUVA420P:
|
||||
// planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A
|
||||
// samples)
|
||||
return "PIX_FMT_YUVA420P - YUV420P (Alpha)";
|
||||
|
||||
case PIX_FMT_VDPAU_H264:
|
||||
// H.264 HW decoding with VDPAU, data[0] contains a
|
||||
// vdpau_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VDPAU_H264";
|
||||
|
||||
case PIX_FMT_VDPAU_MPEG1:
|
||||
// MPEG-1 HW decoding with VDPAU, data[0] contains a
|
||||
// vdpau_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VDPAU_MPEG1";
|
||||
|
||||
case PIX_FMT_VDPAU_MPEG2:
|
||||
// MPEG-2 HW decoding with VDPAU, data[0] contains a
|
||||
// vdpau_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VDPAU_MPEG2";
|
||||
|
||||
case PIX_FMT_VDPAU_WMV3:
|
||||
// WMV3 HW decoding with VDPAU, data[0] contains a
|
||||
// vdpau_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VDPAU_WMV3";
|
||||
|
||||
case PIX_FMT_VDPAU_VC1:
|
||||
// VC-1 HW decoding with VDPAU, data[0] contains a
|
||||
// vdpau_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VDPAU_VC1";
|
||||
|
||||
case PIX_FMT_RGB48BE:
|
||||
// packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, big-endian
|
||||
return "PIX_FMT_RGB48BE";
|
||||
|
||||
case PIX_FMT_RGB48LE:
|
||||
// packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, little-endian
|
||||
return "PIX_FMT_RGB48LE";
|
||||
|
||||
case PIX_FMT_VAAPI_MOCO:
|
||||
// HW acceleration through VA API at motion compensation
|
||||
// entry-point, Picture.data[0] contains a vaapi_render_state
|
||||
// struct which contains macroblocks as well as various fields
|
||||
// extracted from headers
|
||||
return "PIX_FMT_VAAPI_MOCO";
|
||||
|
||||
case PIX_FMT_VAAPI_IDCT:
|
||||
// HW acceleration through VA API at IDCT entry-point,
|
||||
// Picture.data[0] contains a vaapi_render_state struct which
|
||||
// contains fields extracted from headers
|
||||
return "PIX_FMT_VAAPI_IDCT";
|
||||
|
||||
case PIX_FMT_VAAPI_VLD:
|
||||
// HW decoding through VA API, Picture.data[0] contains a
|
||||
// vaapi_render_state struct which contains the bitstream of the
|
||||
// slices as well as various fields extracted from headers
|
||||
return "PIX_FMT_VAAPI_VLD";
|
||||
|
||||
default:
|
||||
return "(unknown)";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
color_space
|
||||
pixfmt_to_colorspace(int p)
|
||||
pixfmt_to_colorspace(int pixFormat)
|
||||
{
|
||||
switch(p) {
|
||||
default:
|
||||
case PIX_FMT_NONE:
|
||||
return B_NO_COLOR_SPACE;
|
||||
|
||||
case PIX_FMT_YUV420P: return B_YUV420; ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
|
||||
case PIX_FMT_YUYV422: return B_YUV422; ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
|
||||
case PIX_FMT_RGB24: return B_RGB24_BIG; ///< packed RGB 8:8:8, 24bpp, RGBRGB...
|
||||
case PIX_FMT_BGR24: return B_RGB24; ///< packed RGB 8:8:8, 24bpp, BGRBGR...
|
||||
case PIX_FMT_YUV422P: return B_YUV422; ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
|
||||
case PIX_FMT_YUV444P: return B_YUV444; ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
|
||||
case PIX_FMT_RGB32: return B_RGBA32_BIG; ///< packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in CPU endianness
|
||||
case PIX_FMT_YUV410P: return B_YUV9; ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
|
||||
case PIX_FMT_YUV411P: return B_YUV12; ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
|
||||
case PIX_FMT_RGB565: return B_RGB16_BIG; ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), in CPU endianness
|
||||
case PIX_FMT_RGB555: return B_RGB15_BIG; ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), in CPU endianness, most significant bit to 0
|
||||
case PIX_FMT_GRAY8: return B_GRAY8; ///< Y , 8bpp
|
||||
// case PIX_FMT_MONOWHITE: return B_GRAY1; ///< Y , 1bpp, 0 is white, 1 is black
|
||||
case PIX_FMT_MONOBLACK: return B_GRAY1; ///< Y , 1bpp, 0 is black, 1 is white
|
||||
case PIX_FMT_PAL8: return B_CMAP8; ///< 8 bit with PIX_FMT_RGB32 palette
|
||||
// case PIX_FMT_YUVJ420P: return "PIX_FMT_YUVJ420P - YUV420P (Jpeg)"; ///< planar YUV 4:2:0, 12bpp, full scale (JPEG)
|
||||
// case PIX_FMT_YUVJ422P: return "PIX_FMT_YUVJ422P - YUV422P (Jpeg)"; ///< planar YUV 4:2:2, 16bpp, full scale (JPEG)
|
||||
// case PIX_FMT_YUVJ444P: return "PIX_FMT_YUVJ444P"; ///< planar YUV 4:4:4, 24bpp, full scale (JPEG)
|
||||
// case PIX_FMT_XVMC_MPEG2_MC: return "PIX_FMT_XVMC_MPEG2_MC";///< XVideo Motion Acceleration via common packet passing
|
||||
// case PIX_FMT_XVMC_MPEG2_IDCT: return "PIX_FMT_XVMC_MPEG2_IDCT";
|
||||
// case PIX_FMT_UYVY422: return "PIX_FMT_UYVY422"; ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
|
||||
// case PIX_FMT_UYYVYY411: return "PIX_FMT_UYYVYY411"; ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
|
||||
case PIX_FMT_BGR32: return B_RGB32; ///< packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in CPU endianness
|
||||
case PIX_FMT_BGR565: return B_RGB16; ///< packed RGB 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), in CPU endianness
|
||||
case PIX_FMT_BGR555: return B_RGB15; ///< packed RGB 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), in CPU endianness, most significant bit to 1
|
||||
// case PIX_FMT_BGR8: return "PIX_FMT_BGR8"; ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
|
||||
// case PIX_FMT_BGR4: return "PIX_FMT_BGR4"; ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
|
||||
// case PIX_FMT_BGR4_BYTE: return "PIX_FMT_BGR4_BYTE"; ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
|
||||
// case PIX_FMT_RGB8: return "PIX_FMT_RGB8"; ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
|
||||
// case PIX_FMT_RGB4: return "PIX_FMT_RGB4"; ///< packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
|
||||
// case PIX_FMT_RGB4_BYTE: return "PIX_FMT_RGB4_BYTE"; ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
|
||||
// case PIX_FMT_NV12: return "PIX_FMT_NV12"; ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
|
||||
// case PIX_FMT_NV21: return "PIX_FMT_NV21"; ///< as above, but U and V bytes are swapped
|
||||
// case PIX_FMT_RGB32_1: return "PIX_FMT_RGB32_1"; ///< packed RGB 8:8:8, 32bpp, (msb)8R 8G 8B 8A(lsb), in CPU endianness
|
||||
// case PIX_FMT_BGR32_1: return "PIX_FMT_BGR32_1"; ///< packed RGB 8:8:8, 32bpp, (msb)8B 8G 8R 8A(lsb), in CPU endianness
|
||||
// case PIX_FMT_GRAY16BE: return "PIX_FMT_GRAY16BE"; ///< Y , 16bpp, big-endian
|
||||
// case PIX_FMT_GRAY16LE: return "PIX_FMT_GRAY16LE"; ///< Y , 16bpp, little-endian
|
||||
// case PIX_FMT_YUV440P: return "PIX_FMT_YUV440P"; ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
|
||||
// case PIX_FMT_YUVJ440P: return "PIX_FMT_YUVJ440P - YUV440P (Jpeg)"; ///< planar YUV 4:4:0 full scale (JPEG)
|
||||
// case PIX_FMT_YUVA420P: return "PIX_FMT_YUVA420P - YUV420P (Alpha)"; ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
|
||||
// case PIX_FMT_VDPAU_H264: return "PIX_FMT_VDPAU_H264";///< H.264 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
// case PIX_FMT_VDPAU_MPEG1: return "PIX_FMT_VDPAU_MPEG1";///< MPEG-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
// case PIX_FMT_VDPAU_MPEG2: return "PIX_FMT_VDPAU_MPEG2";///< MPEG-2 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
// case PIX_FMT_VDPAU_WMV3: return "PIX_FMT_VDPAU_WMV3";///< WMV3 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
// case PIX_FMT_VDPAU_VC1: return "PIX_FMT_VDPAU_VC1"; ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
// case PIX_FMT_RGB48BE: return "PIX_FMT_RGB48BE"; ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, big-endian
|
||||
// case PIX_FMT_RGB48LE: return "PIX_FMT_RGB48LE"; ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, little-endian
|
||||
// case PIX_FMT_VAAPI_MOCO: return "PIX_FMT_VAAPI_MOCO"; ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[0] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
|
||||
// case PIX_FMT_VAAPI_IDCT: return "PIX_FMT_VAAPI_IDCT"; ///< HW acceleration through VA API at IDCT entry-point, Picture.data[0] contains a vaapi_render_state struct which contains fields extracted from headers
|
||||
// case PIX_FMT_VAAPI_VLD: return "PIX_FMT_VAAPI_VLD"; ///< HW decoding through VA API, Picture.data[0] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
|
||||
switch(pixFormat) {
|
||||
default:
|
||||
TRACE("No BE API colorspace definition for pixel format "
|
||||
"\"%s\".\n", pixfmt_to_string(pixFormat));
|
||||
// Supposed to fall through.
|
||||
case PIX_FMT_NONE:
|
||||
return B_NO_COLOR_SPACE;
|
||||
|
||||
// NOTE: See pixfmt_to_colorspace() for what these are.
|
||||
case PIX_FMT_YUV420P:
|
||||
return B_YUV420;
|
||||
case PIX_FMT_YUYV422:
|
||||
return B_YUV422;
|
||||
case PIX_FMT_RGB24:
|
||||
return B_RGB24_BIG;
|
||||
case PIX_FMT_BGR24:
|
||||
return B_RGB24;
|
||||
case PIX_FMT_YUV422P:
|
||||
return B_YUV422;
|
||||
case PIX_FMT_YUV444P:
|
||||
return B_YUV444;
|
||||
case PIX_FMT_RGB32:
|
||||
return B_RGBA32_BIG;
|
||||
case PIX_FMT_YUV410P:
|
||||
return B_YUV9;
|
||||
case PIX_FMT_YUV411P:
|
||||
return B_YUV12;
|
||||
case PIX_FMT_RGB565:
|
||||
return B_RGB16_BIG;
|
||||
case PIX_FMT_RGB555:
|
||||
return B_RGB15_BIG;
|
||||
case PIX_FMT_GRAY8:
|
||||
return B_GRAY8;
|
||||
case PIX_FMT_MONOBLACK:
|
||||
return B_GRAY1;
|
||||
case PIX_FMT_PAL8:
|
||||
return B_CMAP8;
|
||||
case PIX_FMT_BGR32:
|
||||
return B_RGB32;
|
||||
case PIX_FMT_BGR565:
|
||||
return B_RGB16;
|
||||
case PIX_FMT_BGR555:
|
||||
return B_RGB15;
|
||||
}
|
||||
}
|
||||
|
||||
@ -304,10 +484,13 @@ colorspace_to_pixfmt(color_space format)
|
||||
#define BEGIN_TAG "\033[31m"
|
||||
#define END_TAG "\033[0m"
|
||||
|
||||
void dump_ffframe(AVFrame *frame, const char *name)
|
||||
void
|
||||
dump_ffframe(AVFrame* frame, const char* name)
|
||||
{
|
||||
const char *picttypes[] = {"no pict type", "intra", "predicted", "bidir pre", "s(gmc)-vop"};
|
||||
printf(BEGIN_TAG"AVFrame(%s) pts:%-10lld cnum:%-5d dnum:%-5d %s%s, ]\n"END_TAG,
|
||||
const char* picttypes[] = {"no pict type", "intra", "predicted",
|
||||
"bidir pre", "s(gmc)-vop"};
|
||||
printf(BEGIN_TAG"AVFrame(%s) pts:%-10lld cnum:%-5d dnum:%-5d %s%s, "
|
||||
" ]\n"END_TAG,
|
||||
name,
|
||||
frame->pts,
|
||||
frame->coded_picture_number,
|
||||
@ -315,6 +498,8 @@ void dump_ffframe(AVFrame *frame, const char *name)
|
||||
// frame->quality,
|
||||
frame->key_frame?"keyframe, ":"",
|
||||
picttypes[frame->pict_type]);
|
||||
// printf(BEGIN_TAG"\t\tlinesize[] = {%ld, %ld, %ld, %ld}\n"END_TAG, frame->linesize[0], frame->linesize[1], frame->linesize[2], frame->linesize[3]);
|
||||
// printf(BEGIN_TAG"\t\tlinesize[] = {%ld, %ld, %ld, %ld}\n"END_TAG,
|
||||
// frame->linesize[0], frame->linesize[1], frame->linesize[2],
|
||||
// frame->linesize[3]);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user