/*****************************************************************************\ Snes9x - Portable Super Nintendo Entertainment System (TM) emulator. This file is licensed under the Snes9x License. For further information, consult the LICENSE file in the root directory. \*****************************************************************************/ #include "snes9x.h" #include "gfx.h" #include "hq2x.h" #define Ymask 0xFF0000 #define Umask 0x00FF00 #define Vmask 0x0000FF #define trY 0x300000 #define trU 0x000700 #define trV 0x000006 #define Mask_2 SECOND_COLOR_MASK #define Mask13 FIRST_THIRD_COLOR_MASK #define Interp01(c1, c2) \ (c1 == c2) ? c1 : \ (((((c1 & Mask_2) * 3 + (c2 & Mask_2) ) >> 2) & Mask_2) + \ ((((c1 & Mask13) * 3 + (c2 & Mask13) ) >> 2) & Mask13)) #define Interp02(c1, c2, c3) \ (((((c1 & Mask_2) * 2 + (c2 & Mask_2) + (c3 & Mask_2) ) >> 2) & Mask_2) + \ ((((c1 & Mask13) * 2 + (c2 & Mask13) + (c3 & Mask13) ) >> 2) & Mask13)) #define Interp03(c1, c2) \ (c1 == c2) ? c1 : \ (((((c1 & Mask_2) * 7 + (c2 & Mask_2) ) >> 3) & Mask_2) + \ ((((c1 & Mask13) * 7 + (c2 & Mask13) ) >> 3) & Mask13)) #define Interp04(c1, c2, c3) \ (((((c1 & Mask_2) * 2 + (c2 & Mask_2) * 7 + (c3 & Mask_2) * 7) >> 4) & Mask_2) + \ ((((c1 & Mask13) * 2 + (c2 & Mask13) * 7 + (c3 & Mask13) * 7) >> 4) & Mask13)) #define Interp05(c1, c2) \ (c1 == c2) ? c1 : \ (((((c1 & Mask_2) + (c2 & Mask_2)) >> 1) & Mask_2) + \ ((((c1 & Mask13) + (c2 & Mask13)) >> 1) & Mask13)) #define Interp06(c1, c2, c3) \ (((((c1 & Mask_2) * 5 + (c2 & Mask_2) * 2 + (c3 & Mask_2) ) >> 3) & Mask_2) + \ ((((c1 & Mask13) * 5 + (c2 & Mask13) * 2 + (c3 & Mask13) ) >> 3) & Mask13)) #define Interp07(c1, c2, c3) \ (((((c1 & Mask_2) * 6 + (c2 & Mask_2) + (c3 & Mask_2) ) >> 3) & Mask_2) + \ ((((c1 & Mask13) * 6 + (c2 & Mask13) + (c3 & Mask13) ) >> 3) & Mask13)) #define Interp08(c1, c2) \ (c1 == c2) ? c1 : \ (((((c1 & Mask_2) * 5 + (c2 & Mask_2) * 3) >> 3) & Mask_2) + \ ((((c1 & Mask13) * 5 + (c2 & Mask13) * 3) >> 3) & Mask13)) #define Interp09(c1, c2, c3) \ (((((c1 & Mask_2) * 2 + (c2 & Mask_2) * 3 + (c3 & Mask_2) * 3) >> 3) & Mask_2) + \ ((((c1 & Mask13) * 2 + (c2 & Mask13) * 3 + (c3 & Mask13) * 3) >> 3) & Mask13)) #define Interp10(c1, c2, c3) \ (((((c1 & Mask_2) * 14 + (c2 & Mask_2) + (c3 & Mask_2) ) >> 4) & Mask_2) + \ ((((c1 & Mask13) * 14 + (c2 & Mask13) + (c3 & Mask13) ) >> 4) & Mask13)) #define X2PIXEL00_0 *(dp) = w5; #define X2PIXEL00_10 *(dp) = Interp01(w5, w1); #define X2PIXEL00_11 *(dp) = Interp01(w5, w4); #define X2PIXEL00_12 *(dp) = Interp01(w5, w2); #define X2PIXEL00_20 *(dp) = Interp02(w5, w4, w2); #define X2PIXEL00_21 *(dp) = Interp02(w5, w1, w2); #define X2PIXEL00_22 *(dp) = Interp02(w5, w1, w4); #define X2PIXEL00_60 *(dp) = Interp06(w5, w2, w4); #define X2PIXEL00_61 *(dp) = Interp06(w5, w4, w2); #define X2PIXEL00_70 *(dp) = Interp07(w5, w4, w2); #define X2PIXEL00_90 *(dp) = Interp09(w5, w4, w2); #define X2PIXEL00_100 *(dp) = Interp10(w5, w4, w2); #define X2PIXEL01_0 *(dp + 1) = w5; #define X2PIXEL01_10 *(dp + 1) = Interp01(w5, w3); #define X2PIXEL01_11 *(dp + 1) = Interp01(w5, w2); #define X2PIXEL01_12 *(dp + 1) = Interp01(w5, w6); #define X2PIXEL01_20 *(dp + 1) = Interp02(w5, w2, w6); #define X2PIXEL01_21 *(dp + 1) = Interp02(w5, w3, w6); #define X2PIXEL01_22 *(dp + 1) = Interp02(w5, w3, w2); #define X2PIXEL01_60 *(dp + 1) = Interp06(w5, w6, w2); #define X2PIXEL01_61 *(dp + 1) = Interp06(w5, w2, w6); #define X2PIXEL01_70 *(dp + 1) = Interp07(w5, w2, w6); #define X2PIXEL01_90 *(dp + 1) = Interp09(w5, w2, w6); #define X2PIXEL01_100 *(dp + 1) = Interp10(w5, w2, w6); #define X2PIXEL10_0 *(dp + dst1line) = w5; #define X2PIXEL10_10 *(dp + dst1line) = Interp01(w5, w7); #define X2PIXEL10_11 *(dp + dst1line) = Interp01(w5, w8); #define X2PIXEL10_12 *(dp + dst1line) = Interp01(w5, w4); #define X2PIXEL10_20 *(dp + dst1line) = Interp02(w5, w8, w4); #define X2PIXEL10_21 *(dp + dst1line) = Interp02(w5, w7, w4); #define X2PIXEL10_22 *(dp + dst1line) = Interp02(w5, w7, w8); #define X2PIXEL10_60 *(dp + dst1line) = Interp06(w5, w4, w8); #define X2PIXEL10_61 *(dp + dst1line) = Interp06(w5, w8, w4); #define X2PIXEL10_70 *(dp + dst1line) = Interp07(w5, w8, w4); #define X2PIXEL10_90 *(dp + dst1line) = Interp09(w5, w8, w4); #define X2PIXEL10_100 *(dp + dst1line) = Interp10(w5, w8, w4); #define X2PIXEL11_0 *(dp + dst1line + 1) = w5; #define X2PIXEL11_10 *(dp + dst1line + 1) = Interp01(w5, w9); #define X2PIXEL11_11 *(dp + dst1line + 1) = Interp01(w5, w6); #define X2PIXEL11_12 *(dp + dst1line + 1) = Interp01(w5, w8); #define X2PIXEL11_20 *(dp + dst1line + 1) = Interp02(w5, w6, w8); #define X2PIXEL11_21 *(dp + dst1line + 1) = Interp02(w5, w9, w8); #define X2PIXEL11_22 *(dp + dst1line + 1) = Interp02(w5, w9, w6); #define X2PIXEL11_60 *(dp + dst1line + 1) = Interp06(w5, w8, w6); #define X2PIXEL11_61 *(dp + dst1line + 1) = Interp06(w5, w6, w8); #define X2PIXEL11_70 *(dp + dst1line + 1) = Interp07(w5, w6, w8); #define X2PIXEL11_90 *(dp + dst1line + 1) = Interp09(w5, w6, w8); #define X2PIXEL11_100 *(dp + dst1line + 1) = Interp10(w5, w6, w8); #define X3PIXEL00_1M *(dp) = Interp01(w5, w1); #define X3PIXEL00_1U *(dp) = Interp01(w5, w2); #define X3PIXEL00_1L *(dp) = Interp01(w5, w4); #define X3PIXEL00_2 *(dp) = Interp02(w5, w4, w2); #define X3PIXEL00_4 *(dp) = Interp04(w5, w4, w2); #define X3PIXEL00_5 *(dp) = Interp05(w4, w2); #define X3PIXEL00_C *(dp) = w5; #define X3PIXEL01_1 *(dp + 1) = Interp01(w5, w2); #define X3PIXEL01_3 *(dp + 1) = Interp03(w5, w2); #define X3PIXEL01_6 *(dp + 1) = Interp01(w2, w5); #define X3PIXEL01_C *(dp + 1) = w5; #define X3PIXEL02_1M *(dp + 2) = Interp01(w5, w3); #define X3PIXEL02_1U *(dp + 2) = Interp01(w5, w2); #define X3PIXEL02_1R *(dp + 2) = Interp01(w5, w6); #define X3PIXEL02_2 *(dp + 2) = Interp02(w5, w2, w6); #define X3PIXEL02_4 *(dp + 2) = Interp04(w5, w2, w6); #define X3PIXEL02_5 *(dp + 2) = Interp05(w2, w6); #define X3PIXEL02_C *(dp + 2) = w5; #define X3PIXEL10_1 *(dp + dst1line) = Interp01(w5, w4); #define X3PIXEL10_3 *(dp + dst1line) = Interp03(w5, w4); #define X3PIXEL10_6 *(dp + dst1line) = Interp01(w4, w5); #define X3PIXEL10_C *(dp + dst1line) = w5; #define X3PIXEL11 *(dp + dst1line + 1) = w5; #define X3PIXEL12_1 *(dp + dst1line + 2) = Interp01(w5, w6); #define X3PIXEL12_3 *(dp + dst1line + 2) = Interp03(w5, w6); #define X3PIXEL12_6 *(dp + dst1line + 2) = Interp01(w6, w5); #define X3PIXEL12_C *(dp + dst1line + 2) = w5; #define X3PIXEL20_1M *(dp + dst1line + dst1line) = Interp01(w5, w7); #define X3PIXEL20_1D *(dp + dst1line + dst1line) = Interp01(w5, w8); #define X3PIXEL20_1L *(dp + dst1line + dst1line) = Interp01(w5, w4); #define X3PIXEL20_2 *(dp + dst1line + dst1line) = Interp02(w5, w8, w4); #define X3PIXEL20_4 *(dp + dst1line + dst1line) = Interp04(w5, w8, w4); #define X3PIXEL20_5 *(dp + dst1line + dst1line) = Interp05(w8, w4); #define X3PIXEL20_C *(dp + dst1line + dst1line) = w5; #define X3PIXEL21_1 *(dp + dst1line + dst1line + 1) = Interp01(w5, w8); #define X3PIXEL21_3 *(dp + dst1line + dst1line + 1) = Interp03(w5, w8); #define X3PIXEL21_6 *(dp + dst1line + dst1line + 1) = Interp01(w8, w5); #define X3PIXEL21_C *(dp + dst1line + dst1line + 1) = w5; #define X3PIXEL22_1M *(dp + dst1line + dst1line + 2) = Interp01(w5, w9); #define X3PIXEL22_1D *(dp + dst1line + dst1line + 2) = Interp01(w5, w8); #define X3PIXEL22_1R *(dp + dst1line + dst1line + 2) = Interp01(w5, w6); #define X3PIXEL22_2 *(dp + dst1line + dst1line + 2) = Interp02(w5, w6, w8); #define X3PIXEL22_4 *(dp + dst1line + dst1line + 2) = Interp04(w5, w6, w8); #define X3PIXEL22_5 *(dp + dst1line + dst1line + 2) = Interp05(w6, w8); #define X3PIXEL22_C *(dp + dst1line + dst1line + 2) = w5; #define X4PIXEL00_0 *(dp) = w5; #define X4PIXEL00_11 *(dp) = Interp01(w5, w4); #define X4PIXEL00_12 *(dp) = Interp01(w5, w2); #define X4PIXEL00_20 *(dp) = Interp02(w5, w2, w4); #define X4PIXEL00_50 *(dp) = Interp05(w2, w4); #define X4PIXEL00_80 *(dp) = Interp08(w5, w1); #define X4PIXEL00_81 *(dp) = Interp08(w5, w4); #define X4PIXEL00_82 *(dp) = Interp08(w5, w2); #define X4PIXEL01_0 *(dp + 1) = w5; #define X4PIXEL01_10 *(dp + 1) = Interp01(w5, w1); #define X4PIXEL01_12 *(dp + 1) = Interp01(w5, w2); #define X4PIXEL01_14 *(dp + 1) = Interp01(w2, w5); #define X4PIXEL01_21 *(dp + 1) = Interp02(w2, w5, w4); #define X4PIXEL01_31 *(dp + 1) = Interp03(w5, w4); #define X4PIXEL01_50 *(dp + 1) = Interp05(w2, w5); #define X4PIXEL01_60 *(dp + 1) = Interp06(w5, w2, w4); #define X4PIXEL01_61 *(dp + 1) = Interp06(w5, w2, w1); #define X4PIXEL01_82 *(dp + 1) = Interp08(w5, w2); #define X4PIXEL01_83 *(dp + 1) = Interp08(w2, w4); #define X4PIXEL02_0 *(dp + 2) = w5; #define X4PIXEL02_10 *(dp + 2) = Interp01(w5, w3); #define X4PIXEL02_11 *(dp + 2) = Interp01(w5, w2); #define X4PIXEL02_13 *(dp + 2) = Interp01(w2, w5); #define X4PIXEL02_21 *(dp + 2) = Interp02(w2, w5, w6); #define X4PIXEL02_32 *(dp + 2) = Interp03(w5, w6); #define X4PIXEL02_50 *(dp + 2) = Interp05(w2, w5); #define X4PIXEL02_60 *(dp + 2) = Interp06(w5, w2, w6); #define X4PIXEL02_61 *(dp + 2) = Interp06(w5, w2, w3); #define X4PIXEL02_81 *(dp + 2) = Interp08(w5, w2); #define X4PIXEL02_83 *(dp + 2) = Interp08(w2, w6); #define X4PIXEL03_0 *(dp + 3) = w5; #define X4PIXEL03_11 *(dp + 3) = Interp01(w5, w2); #define X4PIXEL03_12 *(dp + 3) = Interp01(w5, w6); #define X4PIXEL03_20 *(dp + 3) = Interp02(w5, w2, w6); #define X4PIXEL03_50 *(dp + 3) = Interp05(w2, w6); #define X4PIXEL03_80 *(dp + 3) = Interp08(w5, w3); #define X4PIXEL03_81 *(dp + 3) = Interp08(w5, w2); #define X4PIXEL03_82 *(dp + 3) = Interp08(w5, w6); #define X4PIXEL10_0 *(dp + dst1line) = w5; #define X4PIXEL10_10 *(dp + dst1line) = Interp01(w5, w1); #define X4PIXEL10_11 *(dp + dst1line) = Interp01(w5, w4); #define X4PIXEL10_13 *(dp + dst1line) = Interp01(w4, w5); #define X4PIXEL10_21 *(dp + dst1line) = Interp02(w4, w5, w2); #define X4PIXEL10_32 *(dp + dst1line) = Interp03(w5, w2); #define X4PIXEL10_50 *(dp + dst1line) = Interp05(w4, w5); #define X4PIXEL10_60 *(dp + dst1line) = Interp06(w5, w4, w2); #define X4PIXEL10_61 *(dp + dst1line) = Interp06(w5, w4, w1); #define X4PIXEL10_81 *(dp + dst1line) = Interp08(w5, w4); #define X4PIXEL10_83 *(dp + dst1line) = Interp08(w4, w2); #define X4PIXEL11_0 *(dp + dst1line + 1) = w5; #define X4PIXEL11_30 *(dp + dst1line + 1) = Interp03(w5, w1); #define X4PIXEL11_31 *(dp + dst1line + 1) = Interp03(w5, w4); #define X4PIXEL11_32 *(dp + dst1line + 1) = Interp03(w5, w2); #define X4PIXEL11_70 *(dp + dst1line + 1) = Interp07(w5, w4, w2); #define X4PIXEL12_0 *(dp + dst1line + 2) = w5; #define X4PIXEL12_30 *(dp + dst1line + 2) = Interp03(w5, w3); #define X4PIXEL12_31 *(dp + dst1line + 2) = Interp03(w5, w2); #define X4PIXEL12_32 *(dp + dst1line + 2) = Interp03(w5, w6); #define X4PIXEL12_70 *(dp + dst1line + 2) = Interp07(w5, w6, w2); #define X4PIXEL13_0 *(dp + dst1line + 3) = w5; #define X4PIXEL13_10 *(dp + dst1line + 3) = Interp01(w5, w3); #define X4PIXEL13_12 *(dp + dst1line + 3) = Interp01(w5, w6); #define X4PIXEL13_14 *(dp + dst1line + 3) = Interp01(w6, w5); #define X4PIXEL13_21 *(dp + dst1line + 3) = Interp02(w6, w5, w2); #define X4PIXEL13_31 *(dp + dst1line + 3) = Interp03(w5, w2); #define X4PIXEL13_50 *(dp + dst1line + 3) = Interp05(w6, w5); #define X4PIXEL13_60 *(dp + dst1line + 3) = Interp06(w5, w6, w2); #define X4PIXEL13_61 *(dp + dst1line + 3) = Interp06(w5, w6, w3); #define X4PIXEL13_82 *(dp + dst1line + 3) = Interp08(w5, w6); #define X4PIXEL13_83 *(dp + dst1line + 3) = Interp08(w6, w2); #define X4PIXEL20_0 *(dp + dst1line + dst1line) = w5; #define X4PIXEL20_10 *(dp + dst1line + dst1line) = Interp01(w5, w7); #define X4PIXEL20_12 *(dp + dst1line + dst1line) = Interp01(w5, w4); #define X4PIXEL20_14 *(dp + dst1line + dst1line) = Interp01(w4, w5); #define X4PIXEL20_21 *(dp + dst1line + dst1line) = Interp02(w4, w5, w8); #define X4PIXEL20_31 *(dp + dst1line + dst1line) = Interp03(w5, w8); #define X4PIXEL20_50 *(dp + dst1line + dst1line) = Interp05(w4, w5); #define X4PIXEL20_60 *(dp + dst1line + dst1line) = Interp06(w5, w4, w8); #define X4PIXEL20_61 *(dp + dst1line + dst1line) = Interp06(w5, w4, w7); #define X4PIXEL20_82 *(dp + dst1line + dst1line) = Interp08(w5, w4); #define X4PIXEL20_83 *(dp + dst1line + dst1line) = Interp08(w4, w8); #define X4PIXEL21_0 *(dp + dst1line + dst1line + 1) = w5; #define X4PIXEL21_30 *(dp + dst1line + dst1line + 1) = Interp03(w5, w7); #define X4PIXEL21_31 *(dp + dst1line + dst1line + 1) = Interp03(w5, w8); #define X4PIXEL21_32 *(dp + dst1line + dst1line + 1) = Interp03(w5, w4); #define X4PIXEL21_70 *(dp + dst1line + dst1line + 1) = Interp07(w5, w4, w8); #define X4PIXEL22_0 *(dp + dst1line + dst1line + 2) = w5; #define X4PIXEL22_30 *(dp + dst1line + dst1line + 2) = Interp03(w5, w9); #define X4PIXEL22_31 *(dp + dst1line + dst1line + 2) = Interp03(w5, w6); #define X4PIXEL22_32 *(dp + dst1line + dst1line + 2) = Interp03(w5, w8); #define X4PIXEL22_70 *(dp + dst1line + dst1line + 2) = Interp07(w5, w6, w8); #define X4PIXEL23_0 *(dp + dst1line + dst1line + 3) = w5; #define X4PIXEL23_10 *(dp + dst1line + dst1line + 3) = Interp01(w5, w9); #define X4PIXEL23_11 *(dp + dst1line + dst1line + 3) = Interp01(w5, w6); #define X4PIXEL23_13 *(dp + dst1line + dst1line + 3) = Interp01(w6, w5); #define X4PIXEL23_21 *(dp + dst1line + dst1line + 3) = Interp02(w6, w5, w8); #define X4PIXEL23_32 *(dp + dst1line + dst1line + 3) = Interp03(w5, w8); #define X4PIXEL23_50 *(dp + dst1line + dst1line + 3) = Interp05(w6, w5); #define X4PIXEL23_60 *(dp + dst1line + dst1line + 3) = Interp06(w5, w6, w8); #define X4PIXEL23_61 *(dp + dst1line + dst1line + 3) = Interp06(w5, w6, w9); #define X4PIXEL23_81 *(dp + dst1line + dst1line + 3) = Interp08(w5, w6); #define X4PIXEL23_83 *(dp + dst1line + dst1line + 3) = Interp08(w6, w8); #define X4PIXEL30_0 *(dp + dst1line + dst1line + dst1line) = w5; #define X4PIXEL30_11 *(dp + dst1line + dst1line + dst1line) = Interp01(w5, w8); #define X4PIXEL30_12 *(dp + dst1line + dst1line + dst1line) = Interp01(w5, w4); #define X4PIXEL30_20 *(dp + dst1line + dst1line + dst1line) = Interp02(w5, w8, w4); #define X4PIXEL30_50 *(dp + dst1line + dst1line + dst1line) = Interp05(w8, w4); #define X4PIXEL30_80 *(dp + dst1line + dst1line + dst1line) = Interp08(w5, w7); #define X4PIXEL30_81 *(dp + dst1line + dst1line + dst1line) = Interp08(w5, w8); #define X4PIXEL30_82 *(dp + dst1line + dst1line + dst1line) = Interp08(w5, w4); #define X4PIXEL31_0 *(dp + dst1line + dst1line + dst1line + 1) = w5; #define X4PIXEL31_10 *(dp + dst1line + dst1line + dst1line + 1) = Interp01(w5, w7); #define X4PIXEL31_11 *(dp + dst1line + dst1line + dst1line + 1) = Interp01(w5, w8); #define X4PIXEL31_13 *(dp + dst1line + dst1line + dst1line + 1) = Interp01(w8, w5); #define X4PIXEL31_21 *(dp + dst1line + dst1line + dst1line + 1) = Interp02(w8, w5, w4); #define X4PIXEL31_32 *(dp + dst1line + dst1line + dst1line + 1) = Interp03(w5, w4); #define X4PIXEL31_50 *(dp + dst1line + dst1line + dst1line + 1) = Interp05(w8, w5); #define X4PIXEL31_60 *(dp + dst1line + dst1line + dst1line + 1) = Interp06(w5, w8, w4); #define X4PIXEL31_61 *(dp + dst1line + dst1line + dst1line + 1) = Interp06(w5, w8, w7); #define X4PIXEL31_81 *(dp + dst1line + dst1line + dst1line + 1) = Interp08(w5, w8); #define X4PIXEL31_83 *(dp + dst1line + dst1line + dst1line + 1) = Interp08(w8, w4); #define X4PIXEL32_0 *(dp + dst1line + dst1line + dst1line + 2) = w5; #define X4PIXEL32_10 *(dp + dst1line + dst1line + dst1line + 2) = Interp01(w5, w9); #define X4PIXEL32_12 *(dp + dst1line + dst1line + dst1line + 2) = Interp01(w5, w8); #define X4PIXEL32_14 *(dp + dst1line + dst1line + dst1line + 2) = Interp01(w8, w5); #define X4PIXEL32_21 *(dp + dst1line + dst1line + dst1line + 2) = Interp02(w8, w5, w6); #define X4PIXEL32_31 *(dp + dst1line + dst1line + dst1line + 2) = Interp03(w5, w6); #define X4PIXEL32_50 *(dp + dst1line + dst1line + dst1line + 2) = Interp05(w8, w5); #define X4PIXEL32_60 *(dp + dst1line + dst1line + dst1line + 2) = Interp06(w5, w8, w6); #define X4PIXEL32_61 *(dp + dst1line + dst1line + dst1line + 2) = Interp06(w5, w8, w9); #define X4PIXEL32_82 *(dp + dst1line + dst1line + dst1line + 2) = Interp08(w5, w8); #define X4PIXEL32_83 *(dp + dst1line + dst1line + dst1line + 2) = Interp08(w8, w6); #define X4PIXEL33_0 *(dp + dst1line + dst1line + dst1line + 3) = w5; #define X4PIXEL33_11 *(dp + dst1line + dst1line + dst1line + 3) = Interp01(w5, w6); #define X4PIXEL33_12 *(dp + dst1line + dst1line + dst1line + 3) = Interp01(w5, w8); #define X4PIXEL33_20 *(dp + dst1line + dst1line + dst1line + 3) = Interp02(w5, w8, w6); #define X4PIXEL33_50 *(dp + dst1line + dst1line + dst1line + 3) = Interp05(w8, w6); #define X4PIXEL33_80 *(dp + dst1line + dst1line + dst1line + 3) = Interp08(w5, w9); #define X4PIXEL33_81 *(dp + dst1line + dst1line + dst1line + 3) = Interp08(w5, w6); #define X4PIXEL33_82 *(dp + dst1line + dst1line + dst1line + 3) = Interp08(w5, w8); #define Absolute(c) \ (!(c & (1 << 31)) ? c : (~c + 1)) static int *RGBtoYUV = NULL; static void InitLUTs (void); static inline bool Diff (int, int); bool8 S9xBlitHQ2xFilterInit (void) { uint32 n = 1 << ((FIRST_COLOR_MASK & 0x8000) ? 16 : 15); RGBtoYUV = new int[n]; if (!RGBtoYUV) return (FALSE); InitLUTs(); return (TRUE); } void S9xBlitHQ2xFilterDeinit (void) { if (RGBtoYUV) { delete[] RGBtoYUV; RGBtoYUV = NULL; } } static void InitLUTs (void) { uint32 r, g, b; int y, u, v; uint32 n = 1 << ((FIRST_COLOR_MASK & 0x8000) ? 16 : 15); for (uint32 c = 0 ; c < n ; c++) { DECOMPOSE_PIXEL(c, r, g, b); r <<= 3; g <<= 3; b <<= 3; y = (int) ( 0.256788f * r + 0.504129f * g + 0.097906f * b + 0.5f) + 16; u = (int) (-0.148223f * r - 0.290993f * g + 0.439216f * b + 0.5f) + 128; v = (int) ( 0.439216f * r - 0.367788f * g - 0.071427f * b + 0.5f) + 128; RGBtoYUV[c] = (y << 16) + (u << 8) + v; } } static inline bool Diff (int c1, int c2) { int c1y = (c1 & Ymask) - (c2 & Ymask); if (Absolute(c1y) > trY) return (true); int c1u = (c1 & Umask) - (c2 & Umask); if (Absolute(c1u) > trU) return (true); int c1v = (c1 & Vmask) - (c2 & Vmask); if (Absolute(c1v) > trV) return (true); return (false); } void HQ2X_16 (uint8 *srcPtr, uint32 srcPitch, uint8 *dstPtr, uint32 dstPitch, int width, int height) { int w1, w2, w3, w4, w5, w6, w7, w8, w9; uint32 src1line = srcPitch >> 1; uint32 dst1line = dstPitch >> 1; uint16 *sp = (uint16 *) srcPtr; uint16 *dp = (uint16 *) dstPtr; uint32 pattern; int l, y; while (height--) { sp--; w1 = *(sp - src1line); w4 = *(sp); w7 = *(sp + src1line); sp++; w2 = *(sp - src1line); w5 = *(sp); w8 = *(sp + src1line); for (l = width; l; l--) { sp++; w3 = *(sp - src1line); w6 = *(sp); w9 = *(sp + src1line); y = RGBtoYUV[w5]; pattern = 0; if ((w1 != w5) && (Diff(y, RGBtoYUV[w1]))) pattern |= (1 << 0); if ((w2 != w5) && (Diff(y, RGBtoYUV[w2]))) pattern |= (1 << 1); if ((w3 != w5) && (Diff(y, RGBtoYUV[w3]))) pattern |= (1 << 2); if ((w4 != w5) && (Diff(y, RGBtoYUV[w4]))) pattern |= (1 << 3); if ((w6 != w5) && (Diff(y, RGBtoYUV[w6]))) pattern |= (1 << 4); if ((w7 != w5) && (Diff(y, RGBtoYUV[w7]))) pattern |= (1 << 5); if ((w8 != w5) && (Diff(y, RGBtoYUV[w8]))) pattern |= (1 << 6); if ((w9 != w5) && (Diff(y, RGBtoYUV[w9]))) pattern |= (1 << 7); switch (pattern) { case 0: case 1: case 4: case 32: case 128: case 5: case 132: case 160: case 33: case 129: case 36: case 133: case 164: case 161: case 37: case 165: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_20 X2PIXEL11_20 break; } case 2: case 34: case 130: case 162: { X2PIXEL00_22 X2PIXEL01_21 X2PIXEL10_20 X2PIXEL11_20 break; } case 16: case 17: case 48: case 49: { X2PIXEL00_20 X2PIXEL01_22 X2PIXEL10_20 X2PIXEL11_21 break; } case 64: case 65: case 68: case 69: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_21 X2PIXEL11_22 break; } case 8: case 12: case 136: case 140: { X2PIXEL00_21 X2PIXEL01_20 X2PIXEL10_22 X2PIXEL11_20 break; } case 3: case 35: case 131: case 163: { X2PIXEL00_11 X2PIXEL01_21 X2PIXEL10_20 X2PIXEL11_20 break; } case 6: case 38: case 134: case 166: { X2PIXEL00_22 X2PIXEL01_12 X2PIXEL10_20 X2PIXEL11_20 break; } case 20: case 21: case 52: case 53: { X2PIXEL00_20 X2PIXEL01_11 X2PIXEL10_20 X2PIXEL11_21 break; } case 144: case 145: case 176: case 177: { X2PIXEL00_20 X2PIXEL01_22 X2PIXEL10_20 X2PIXEL11_12 break; } case 192: case 193: case 196: case 197: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_21 X2PIXEL11_11 break; } case 96: case 97: case 100: case 101: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_12 X2PIXEL11_22 break; } case 40: case 44: case 168: case 172: { X2PIXEL00_21 X2PIXEL01_20 X2PIXEL10_11 X2PIXEL11_20 break; } case 9: case 13: case 137: case 141: { X2PIXEL00_12 X2PIXEL01_20 X2PIXEL10_22 X2PIXEL11_20 break; } case 18: case 50: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_20 } X2PIXEL10_20 X2PIXEL11_21 break; } case 80: case 81: { X2PIXEL00_20 X2PIXEL01_22 X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_20 } break; } case 72: case 76: { X2PIXEL00_21 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 10: case 138: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_20 } X2PIXEL01_21 X2PIXEL10_22 X2PIXEL11_20 break; } case 66: { X2PIXEL00_22 X2PIXEL01_21 X2PIXEL10_21 X2PIXEL11_22 break; } case 24: { X2PIXEL00_21 X2PIXEL01_22 X2PIXEL10_22 X2PIXEL11_21 break; } case 7: case 39: case 135: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_20 X2PIXEL11_20 break; } case 148: case 149: case 180: { X2PIXEL00_20 X2PIXEL01_11 X2PIXEL10_20 X2PIXEL11_12 break; } case 224: case 228: case 225: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_12 X2PIXEL11_11 break; } case 41: case 169: case 45: { X2PIXEL00_12 X2PIXEL01_20 X2PIXEL10_11 X2PIXEL11_20 break; } case 22: case 54: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_20 X2PIXEL11_21 break; } case 208: case 209: { X2PIXEL00_20 X2PIXEL01_22 X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 104: case 108: { X2PIXEL00_21 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 11: case 139: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_21 X2PIXEL10_22 X2PIXEL11_20 break; } case 19: case 51: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL00_11 X2PIXEL01_10 } else { X2PIXEL00_60 X2PIXEL01_90 } X2PIXEL10_20 X2PIXEL11_21 break; } case 146: case 178: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 X2PIXEL11_12 } else { X2PIXEL01_90 X2PIXEL11_61 } X2PIXEL10_20 break; } case 84: case 85: { X2PIXEL00_20 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL01_11 X2PIXEL11_10 } else { X2PIXEL01_60 X2PIXEL11_90 } X2PIXEL10_21 break; } case 112: case 113: { X2PIXEL00_20 X2PIXEL01_22 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL10_12 X2PIXEL11_10 } else { X2PIXEL10_61 X2PIXEL11_90 } break; } case 200: case 204: { X2PIXEL00_21 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 X2PIXEL11_11 } else { X2PIXEL10_90 X2PIXEL11_60 } break; } case 73: case 77: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL00_12 X2PIXEL10_10 } else { X2PIXEL00_61 X2PIXEL10_90 } X2PIXEL01_20 X2PIXEL11_22 break; } case 42: case 170: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 X2PIXEL10_11 } else { X2PIXEL00_90 X2PIXEL10_60 } X2PIXEL01_21 X2PIXEL11_20 break; } case 14: case 142: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 X2PIXEL01_12 } else { X2PIXEL00_90 X2PIXEL01_61 } X2PIXEL10_22 X2PIXEL11_20 break; } case 67: { X2PIXEL00_11 X2PIXEL01_21 X2PIXEL10_21 X2PIXEL11_22 break; } case 70: { X2PIXEL00_22 X2PIXEL01_12 X2PIXEL10_21 X2PIXEL11_22 break; } case 28: { X2PIXEL00_21 X2PIXEL01_11 X2PIXEL10_22 X2PIXEL11_21 break; } case 152: { X2PIXEL00_21 X2PIXEL01_22 X2PIXEL10_22 X2PIXEL11_12 break; } case 194: { X2PIXEL00_22 X2PIXEL01_21 X2PIXEL10_21 X2PIXEL11_11 break; } case 98: { X2PIXEL00_22 X2PIXEL01_21 X2PIXEL10_12 X2PIXEL11_22 break; } case 56: { X2PIXEL00_21 X2PIXEL01_22 X2PIXEL10_11 X2PIXEL11_21 break; } case 25: { X2PIXEL00_12 X2PIXEL01_22 X2PIXEL10_22 X2PIXEL11_21 break; } case 26: case 31: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_22 X2PIXEL11_21 break; } case 82: case 214: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 88: case 248: { X2PIXEL00_21 X2PIXEL01_22 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 74: case 107: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_21 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 27: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_10 X2PIXEL10_22 X2PIXEL11_21 break; } case 86: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_21 X2PIXEL11_10 break; } case 216: { X2PIXEL00_21 X2PIXEL01_22 X2PIXEL10_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 106: { X2PIXEL00_10 X2PIXEL01_21 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 30: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_22 X2PIXEL11_21 break; } case 210: { X2PIXEL00_22 X2PIXEL01_10 X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 120: { X2PIXEL00_21 X2PIXEL01_22 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_10 break; } case 75: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_21 X2PIXEL10_10 X2PIXEL11_22 break; } case 29: { X2PIXEL00_12 X2PIXEL01_11 X2PIXEL10_22 X2PIXEL11_21 break; } case 198: { X2PIXEL00_22 X2PIXEL01_12 X2PIXEL10_21 X2PIXEL11_11 break; } case 184: { X2PIXEL00_21 X2PIXEL01_22 X2PIXEL10_11 X2PIXEL11_12 break; } case 99: { X2PIXEL00_11 X2PIXEL01_21 X2PIXEL10_12 X2PIXEL11_22 break; } case 57: { X2PIXEL00_12 X2PIXEL01_22 X2PIXEL10_11 X2PIXEL11_21 break; } case 71: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_21 X2PIXEL11_22 break; } case 156: { X2PIXEL00_21 X2PIXEL01_11 X2PIXEL10_22 X2PIXEL11_12 break; } case 226: { X2PIXEL00_22 X2PIXEL01_21 X2PIXEL10_12 X2PIXEL11_11 break; } case 60: { X2PIXEL00_21 X2PIXEL01_11 X2PIXEL10_11 X2PIXEL11_21 break; } case 195: { X2PIXEL00_11 X2PIXEL01_21 X2PIXEL10_21 X2PIXEL11_11 break; } case 102: { X2PIXEL00_22 X2PIXEL01_12 X2PIXEL10_12 X2PIXEL11_22 break; } case 153: { X2PIXEL00_12 X2PIXEL01_22 X2PIXEL10_22 X2PIXEL11_12 break; } case 58: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_11 X2PIXEL11_21 break; } case 83: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 92: { X2PIXEL00_21 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 202: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } X2PIXEL01_21 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } X2PIXEL11_11 break; } case 78: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } X2PIXEL11_22 break; } case 154: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_22 X2PIXEL11_12 break; } case 114: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 89: { X2PIXEL00_12 X2PIXEL01_22 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 90: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 55: case 23: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL00_11 X2PIXEL01_0 } else { X2PIXEL00_60 X2PIXEL01_90 } X2PIXEL10_20 X2PIXEL11_21 break; } case 182: case 150: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 X2PIXEL11_12 } else { X2PIXEL01_90 X2PIXEL11_61 } X2PIXEL10_20 break; } case 213: case 212: { X2PIXEL00_20 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL01_11 X2PIXEL11_0 } else { X2PIXEL01_60 X2PIXEL11_90 } X2PIXEL10_21 break; } case 241: case 240: { X2PIXEL00_20 X2PIXEL01_22 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL10_12 X2PIXEL11_0 } else { X2PIXEL10_61 X2PIXEL11_90 } break; } case 236: case 232: { X2PIXEL00_21 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 X2PIXEL11_11 } else { X2PIXEL10_90 X2PIXEL11_60 } break; } case 109: case 105: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL00_12 X2PIXEL10_0 } else { X2PIXEL00_61 X2PIXEL10_90 } X2PIXEL01_20 X2PIXEL11_22 break; } case 171: case 43: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 X2PIXEL10_11 } else { X2PIXEL00_90 X2PIXEL10_60 } X2PIXEL01_21 X2PIXEL11_20 break; } case 143: case 15: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 X2PIXEL01_12 } else { X2PIXEL00_90 X2PIXEL01_61 } X2PIXEL10_22 X2PIXEL11_20 break; } case 124: { X2PIXEL00_21 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_10 break; } case 203: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_21 X2PIXEL10_10 X2PIXEL11_11 break; } case 62: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_11 X2PIXEL11_21 break; } case 211: { X2PIXEL00_11 X2PIXEL01_10 X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 118: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_12 X2PIXEL11_10 break; } case 217: { X2PIXEL00_12 X2PIXEL01_22 X2PIXEL10_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 110: { X2PIXEL00_10 X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 155: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_10 X2PIXEL10_22 X2PIXEL11_12 break; } case 188: { X2PIXEL00_21 X2PIXEL01_11 X2PIXEL10_11 X2PIXEL11_12 break; } case 185: { X2PIXEL00_12 X2PIXEL01_22 X2PIXEL10_11 X2PIXEL11_12 break; } case 61: { X2PIXEL00_12 X2PIXEL01_11 X2PIXEL10_11 X2PIXEL11_21 break; } case 157: { X2PIXEL00_12 X2PIXEL01_11 X2PIXEL10_22 X2PIXEL11_12 break; } case 103: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_12 X2PIXEL11_22 break; } case 227: { X2PIXEL00_11 X2PIXEL01_21 X2PIXEL10_12 X2PIXEL11_11 break; } case 230: { X2PIXEL00_22 X2PIXEL01_12 X2PIXEL10_12 X2PIXEL11_11 break; } case 199: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_21 X2PIXEL11_11 break; } case 220: { X2PIXEL00_21 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 158: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_22 X2PIXEL11_12 break; } case 234: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } X2PIXEL01_21 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_11 break; } case 242: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 59: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_11 X2PIXEL11_21 break; } case 121: { X2PIXEL00_12 X2PIXEL01_22 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 87: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 79: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } X2PIXEL11_22 break; } case 122: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 94: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 218: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 91: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 229: { X2PIXEL00_20 X2PIXEL01_20 X2PIXEL10_12 X2PIXEL11_11 break; } case 167: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_20 X2PIXEL11_20 break; } case 173: { X2PIXEL00_12 X2PIXEL01_20 X2PIXEL10_11 X2PIXEL11_20 break; } case 181: { X2PIXEL00_20 X2PIXEL01_11 X2PIXEL10_20 X2PIXEL11_12 break; } case 186: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_11 X2PIXEL11_12 break; } case 115: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 93: { X2PIXEL00_12 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 206: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } X2PIXEL11_11 break; } case 205: case 201: { X2PIXEL00_12 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_10 } else { X2PIXEL10_70 } X2PIXEL11_11 break; } case 174: case 46: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_10 } else { X2PIXEL00_70 } X2PIXEL01_12 X2PIXEL10_11 X2PIXEL11_20 break; } case 179: case 147: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_10 } else { X2PIXEL01_70 } X2PIXEL10_20 X2PIXEL11_12 break; } case 117: case 116: { X2PIXEL00_20 X2PIXEL01_11 X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_10 } else { X2PIXEL11_70 } break; } case 189: { X2PIXEL00_12 X2PIXEL01_11 X2PIXEL10_11 X2PIXEL11_12 break; } case 231: { X2PIXEL00_11 X2PIXEL01_12 X2PIXEL10_12 X2PIXEL11_11 break; } case 126: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_10 break; } case 219: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_10 X2PIXEL10_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 125: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL00_12 X2PIXEL10_0 } else { X2PIXEL00_61 X2PIXEL10_90 } X2PIXEL01_11 X2PIXEL11_10 break; } case 221: { X2PIXEL00_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL01_11 X2PIXEL11_0 } else { X2PIXEL01_60 X2PIXEL11_90 } X2PIXEL10_10 break; } case 207: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 X2PIXEL01_12 } else { X2PIXEL00_90 X2PIXEL01_61 } X2PIXEL10_10 X2PIXEL11_11 break; } case 238: { X2PIXEL00_10 X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 X2PIXEL11_11 } else { X2PIXEL10_90 X2PIXEL11_60 } break; } case 190: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 X2PIXEL11_12 } else { X2PIXEL01_90 X2PIXEL11_61 } X2PIXEL10_11 break; } case 187: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 X2PIXEL10_11 } else { X2PIXEL00_90 X2PIXEL10_60 } X2PIXEL01_10 X2PIXEL11_12 break; } case 243: { X2PIXEL00_11 X2PIXEL01_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL10_12 X2PIXEL11_0 } else { X2PIXEL10_61 X2PIXEL11_90 } break; } case 119: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL00_11 X2PIXEL01_0 } else { X2PIXEL00_60 X2PIXEL01_90 } X2PIXEL10_12 X2PIXEL11_10 break; } case 237: case 233: { X2PIXEL00_12 X2PIXEL01_20 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } X2PIXEL11_11 break; } case 175: case 47: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } X2PIXEL01_12 X2PIXEL10_11 X2PIXEL11_20 break; } case 183: case 151: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_20 X2PIXEL11_12 break; } case 245: case 244: { X2PIXEL00_20 X2PIXEL01_11 X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 250: { X2PIXEL00_10 X2PIXEL01_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 123: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_10 break; } case 95: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_10 X2PIXEL11_10 break; } case 222: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 252: { X2PIXEL00_21 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 249: { X2PIXEL00_12 X2PIXEL01_22 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 235: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_21 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } X2PIXEL11_11 break; } case 111: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_22 break; } case 63: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_11 X2PIXEL11_21 break; } case 159: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_22 X2PIXEL11_12 break; } case 215: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_21 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 246: { X2PIXEL00_22 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 254: { X2PIXEL00_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 253: { X2PIXEL00_12 X2PIXEL01_11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 251: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } X2PIXEL01_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 239: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } X2PIXEL01_12 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } X2PIXEL11_11 break; } case 127: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_20 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_20 } X2PIXEL11_10 break; } case 191: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_11 X2PIXEL11_12 break; } case 223: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_20 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_10 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_20 } break; } case 247: { X2PIXEL00_11 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } X2PIXEL10_12 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } case 255: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X2PIXEL00_0 } else { X2PIXEL00_100 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X2PIXEL01_0 } else { X2PIXEL01_100 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X2PIXEL10_0 } else { X2PIXEL10_100 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X2PIXEL11_0 } else { X2PIXEL11_100 } break; } } w1 = w2; w4 = w5; w7 = w8; w2 = w3; w5 = w6; w8 = w9; dp += 2; } dp += (dst1line - width) * 2; sp += (src1line - width); } } void HQ3X_16 (uint8 *srcPtr, uint32 srcPitch, uint8 *dstPtr, uint32 dstPitch, int width, int height) { int w1, w2, w3, w4, w5, w6, w7, w8, w9; uint32 src1line = srcPitch >> 1; uint32 dst1line = dstPitch >> 1; uint16 *sp = (uint16 *) srcPtr; uint16 *dp = (uint16 *) dstPtr; uint32 pattern; int l, y; while (height--) { sp--; w1 = *(sp - src1line); w4 = *(sp); w7 = *(sp + src1line); sp++; w2 = *(sp - src1line); w5 = *(sp); w8 = *(sp + src1line); for (l = width; l; l--) { sp++; w3 = *(sp - src1line); w6 = *(sp); w9 = *(sp + src1line); y = RGBtoYUV[w5]; pattern = 0; if ((w1 != w5) && (Diff(y, RGBtoYUV[w1]))) pattern |= (1 << 0); if ((w2 != w5) && (Diff(y, RGBtoYUV[w2]))) pattern |= (1 << 1); if ((w3 != w5) && (Diff(y, RGBtoYUV[w3]))) pattern |= (1 << 2); if ((w4 != w5) && (Diff(y, RGBtoYUV[w4]))) pattern |= (1 << 3); if ((w6 != w5) && (Diff(y, RGBtoYUV[w6]))) pattern |= (1 << 4); if ((w7 != w5) && (Diff(y, RGBtoYUV[w7]))) pattern |= (1 << 5); if ((w8 != w5) && (Diff(y, RGBtoYUV[w8]))) pattern |= (1 << 6); if ((w9 != w5) && (Diff(y, RGBtoYUV[w9]))) pattern |= (1 << 7); switch (pattern) { case 0: case 1: case 4: case 32: case 128: case 5: case 132: case 160: case 33: case 129: case 36: case 133: case 164: case 161: case 37: case 165: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 2: case 34: case 130: case 162: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 16: case 17: case 48: case 49: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 64: case 65: case 68: case 69: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 8: case 12: case 136: case 140: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 3: case 35: case 131: case 163: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 6: case 38: case 134: case 166: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 20: case 21: case 52: case 53: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 144: case 145: case 176: case 177: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1D break; } case 192: case 193: case 196: case 197: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 96: case 97: case 100: case 101: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 40: case 44: case 168: case 172: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_2 break; } case 9: case 13: case 137: case 141: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 18: case 50: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_1M X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 80: case 81: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_1M } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 72: case 76: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_1M X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 10: case 138: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 66: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 24: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 7: case 39: case 135: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 148: case 149: case 180: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1D break; } case 224: case 228: case 225: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 41: case 169: case 45: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_2 break; } case 22: case 54: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 208: case 209: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 104: case 108: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 11: case 139: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 19: case 51: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL12_C } else { X3PIXEL00_2 X3PIXEL01_6 X3PIXEL02_5 X3PIXEL12_1 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 146: case 178: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_1M X3PIXEL12_C X3PIXEL22_1D } else { X3PIXEL01_1 X3PIXEL02_5 X3PIXEL12_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 break; } case 84: case 85: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL02_1U X3PIXEL12_C X3PIXEL21_C X3PIXEL22_1M } else { X3PIXEL02_2 X3PIXEL12_6 X3PIXEL21_1 X3PIXEL22_5 } X3PIXEL00_2 X3PIXEL01_1 X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M break; } case 112: case 113: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M } else { X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_6 X3PIXEL22_5 } X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 break; } case 200: case 204: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R } else { X3PIXEL10_1 X3PIXEL20_5 X3PIXEL21_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 break; } case 73: case 77: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL00_1U X3PIXEL10_C X3PIXEL20_1M X3PIXEL21_C } else { X3PIXEL00_2 X3PIXEL10_6 X3PIXEL20_5 X3PIXEL21_1 } X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 X3PIXEL22_1M break; } case 42: case 170: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M X3PIXEL01_C X3PIXEL10_C X3PIXEL20_1D } else { X3PIXEL00_5 X3PIXEL01_1 X3PIXEL10_6 X3PIXEL20_2 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL21_1 X3PIXEL22_2 break; } case 14: case 142: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C } else { X3PIXEL00_5 X3PIXEL01_6 X3PIXEL02_2 X3PIXEL10_1 } X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 67: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 70: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 28: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 152: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 194: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 98: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 56: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 25: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 26: case 31: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL10_3 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL11 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 82: case 214: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C } else { X3PIXEL01_3 X3PIXEL02_4 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL21_3 X3PIXEL22_4 } break; } case 88: case 248: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C } else { X3PIXEL10_3 X3PIXEL20_4 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL22_4 } break; } case 74: case 107: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C } else { X3PIXEL00_4 X3PIXEL01_3 } X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 27: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 86: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 216: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 106: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 30: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_C X3PIXEL11 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 210: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 120: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 75: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 29: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1M break; } case 198: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 184: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 99: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 57: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 71: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 156: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 226: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 60: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 195: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 102: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 153: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 58: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 83: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 92: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 202: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 78: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1M break; } case 154: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 114: { X3PIXEL00_1M X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 89: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 90: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 55: case 23: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL00_2 X3PIXEL01_6 X3PIXEL02_5 X3PIXEL12_1 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1M break; } case 182: case 150: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C X3PIXEL22_1D } else { X3PIXEL01_1 X3PIXEL02_5 X3PIXEL12_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_2 X3PIXEL21_1 break; } case 213: case 212: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL02_1U X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL02_2 X3PIXEL12_6 X3PIXEL21_1 X3PIXEL22_5 } X3PIXEL00_2 X3PIXEL01_1 X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M break; } case 241: case 240: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_6 X3PIXEL22_5 } X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 break; } case 236: case 232: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C X3PIXEL22_1R } else { X3PIXEL10_1 X3PIXEL20_5 X3PIXEL21_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 break; } case 109: case 105: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL00_1U X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL00_2 X3PIXEL10_6 X3PIXEL20_5 X3PIXEL21_1 } X3PIXEL01_1 X3PIXEL02_2 X3PIXEL11 X3PIXEL12_1 X3PIXEL22_1M break; } case 171: case 43: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C X3PIXEL20_1D } else { X3PIXEL00_5 X3PIXEL01_1 X3PIXEL10_6 X3PIXEL20_2 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL21_1 X3PIXEL22_2 break; } case 143: case 15: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C } else { X3PIXEL00_5 X3PIXEL01_6 X3PIXEL02_2 X3PIXEL10_1 } X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_2 break; } case 124: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 203: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 62: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_C X3PIXEL11 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 211: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 118: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 217: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 110: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 155: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 188: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 185: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 61: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 157: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 103: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 227: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 230: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 199: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 220: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 158: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_C X3PIXEL11 X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 234: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1M X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1R break; } case 242: { X3PIXEL00_1M X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1L if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 59: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 121: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 87: { X3PIXEL00_1L if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1M X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 79: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1R X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1M break; } case 122: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 94: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_C X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 218: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 91: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 229: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 167: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_2 break; } case 173: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_2 break; } case 181: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1D break; } case 186: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 115: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 93: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 206: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 205: case 201: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_1M } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 174: case 46: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_1M } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_2 break; } case 179: case 147: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_1M } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1D break; } case 117: case 116: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_1M } else { X3PIXEL22_2 } break; } case 189: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 231: { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_1 X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1R break; } case 126: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 219: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL01_3 X3PIXEL10_3 } X3PIXEL02_1M X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_4 } break; } case 125: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL00_1U X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL00_2 X3PIXEL10_6 X3PIXEL20_5 X3PIXEL21_1 } X3PIXEL01_1 X3PIXEL02_1U X3PIXEL11 X3PIXEL12_C X3PIXEL22_1M break; } case 221: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL02_1U X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL02_2 X3PIXEL12_6 X3PIXEL21_1 X3PIXEL22_5 } X3PIXEL00_1U X3PIXEL01_1 X3PIXEL10_C X3PIXEL11 X3PIXEL20_1M break; } case 207: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C } else { X3PIXEL00_5 X3PIXEL01_6 X3PIXEL02_2 X3PIXEL10_1 } X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1R break; } case 238: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C X3PIXEL22_1R } else { X3PIXEL10_1 X3PIXEL20_5 X3PIXEL21_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1R X3PIXEL11 X3PIXEL12_1 break; } case 190: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C X3PIXEL22_1D } else { X3PIXEL01_1 X3PIXEL02_5 X3PIXEL12_6 X3PIXEL22_2 } X3PIXEL00_1M X3PIXEL10_C X3PIXEL11 X3PIXEL20_1D X3PIXEL21_1 break; } case 187: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C X3PIXEL20_1D } else { X3PIXEL00_5 X3PIXEL01_1 X3PIXEL10_6 X3PIXEL20_2 } X3PIXEL02_1M X3PIXEL11 X3PIXEL12_C X3PIXEL21_1 X3PIXEL22_1D break; } case 243: { if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_1 X3PIXEL20_2 X3PIXEL21_6 X3PIXEL22_5 } X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_1M X3PIXEL10_1 X3PIXEL11 break; } case 119: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL00_1L X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL00_2 X3PIXEL01_6 X3PIXEL02_5 X3PIXEL12_1 } X3PIXEL10_1 X3PIXEL11 X3PIXEL20_1L X3PIXEL21_C X3PIXEL22_1M break; } case 237: case 233: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_2 X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 175: case 47: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_2 break; } case 183: case 151: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_2 X3PIXEL21_1 X3PIXEL22_1D break; } case 245: case 244: { X3PIXEL00_2 X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } case 250: { X3PIXEL00_1M X3PIXEL01_C X3PIXEL02_1M X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C } else { X3PIXEL10_3 X3PIXEL20_4 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL22_4 } break; } case 123: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C } else { X3PIXEL00_4 X3PIXEL01_3 } X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 95: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL10_3 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL11 X3PIXEL20_1M X3PIXEL21_C X3PIXEL22_1M break; } case 222: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C } else { X3PIXEL01_3 X3PIXEL02_4 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL21_3 X3PIXEL22_4 } break; } case 252: { X3PIXEL00_1M X3PIXEL01_1 X3PIXEL02_1U X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C } else { X3PIXEL10_3 X3PIXEL20_4 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } case 249: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL22_4 } break; } case 235: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C } else { X3PIXEL00_4 X3PIXEL01_3 } X3PIXEL02_1M X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 111: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 63: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL10_C X3PIXEL11 X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1M break; } case 159: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL10_3 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M X3PIXEL21_1 X3PIXEL22_1D break; } case 215: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL21_3 X3PIXEL22_4 } break; } case 246: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C } else { X3PIXEL01_3 X3PIXEL02_4 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } case 254: { X3PIXEL00_1M if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C } else { X3PIXEL01_3 X3PIXEL02_4 } X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C } else { X3PIXEL10_3 X3PIXEL20_4 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL21_3 X3PIXEL22_2 } break; } case 253: { X3PIXEL00_1U X3PIXEL01_1 X3PIXEL02_1U X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } case 251: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C } else { X3PIXEL00_4 X3PIXEL01_3 } X3PIXEL02_1M X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL10_C X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL10_3 X3PIXEL20_2 X3PIXEL21_3 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL12_C X3PIXEL22_C } else { X3PIXEL12_3 X3PIXEL22_4 } break; } case 239: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C X3PIXEL02_1R X3PIXEL10_C X3PIXEL11 X3PIXEL12_1 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C X3PIXEL22_1R break; } case 127: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL01_C X3PIXEL10_C } else { X3PIXEL00_2 X3PIXEL01_3 X3PIXEL10_3 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL02_4 X3PIXEL12_3 } X3PIXEL11 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C X3PIXEL21_C } else { X3PIXEL20_4 X3PIXEL21_3 } X3PIXEL22_1M break; } case 191: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C X3PIXEL20_1D X3PIXEL21_1 X3PIXEL22_1D break; } case 223: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C X3PIXEL10_C } else { X3PIXEL00_4 X3PIXEL10_3 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL01_C X3PIXEL02_C X3PIXEL12_C } else { X3PIXEL01_3 X3PIXEL02_2 X3PIXEL12_3 } X3PIXEL11 X3PIXEL20_1M if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL21_C X3PIXEL22_C } else { X3PIXEL21_3 X3PIXEL22_4 } break; } case 247: { X3PIXEL00_1L X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL10_1 X3PIXEL11 X3PIXEL12_C X3PIXEL20_1L X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } case 255: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X3PIXEL00_C } else { X3PIXEL00_2 } X3PIXEL01_C if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X3PIXEL02_C } else { X3PIXEL02_2 } X3PIXEL10_C X3PIXEL11 X3PIXEL12_C if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X3PIXEL20_C } else { X3PIXEL20_2 } X3PIXEL21_C if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X3PIXEL22_C } else { X3PIXEL22_2 } break; } } w1 = w2; w4 = w5; w7 = w8; w2 = w3; w5 = w6; w8 = w9; dp += 3; } dp += (dst1line - width) * 3; sp += (src1line - width); } } void HQ4X_16 (uint8 *srcPtr, uint32 srcPitch, uint8 *dstPtr, uint32 dstPitch, int width, int height) { int w1, w2, w3, w4, w5, w6, w7, w8, w9; uint32 src1line = srcPitch >> 1; uint32 dst1line = dstPitch >> 1; uint16 *sp = (uint16 *) srcPtr; uint16 *dp = (uint16 *) dstPtr; uint32 pattern; int l, y; while (height--) { sp--; w1 = *(sp - src1line); w4 = *(sp); w7 = *(sp + src1line); sp++; w2 = *(sp - src1line); w5 = *(sp); w8 = *(sp + src1line); for (l = width; l; l--) { sp++; w3 = *(sp - src1line); w6 = *(sp); w9 = *(sp + src1line); y = RGBtoYUV[w5]; pattern = 0; if ((w1 != w5) && (Diff(y, RGBtoYUV[w1]))) pattern |= (1 << 0); if ((w2 != w5) && (Diff(y, RGBtoYUV[w2]))) pattern |= (1 << 1); if ((w3 != w5) && (Diff(y, RGBtoYUV[w3]))) pattern |= (1 << 2); if ((w4 != w5) && (Diff(y, RGBtoYUV[w4]))) pattern |= (1 << 3); if ((w6 != w5) && (Diff(y, RGBtoYUV[w6]))) pattern |= (1 << 4); if ((w7 != w5) && (Diff(y, RGBtoYUV[w7]))) pattern |= (1 << 5); if ((w8 != w5) && (Diff(y, RGBtoYUV[w8]))) pattern |= (1 << 6); if ((w9 != w5) && (Diff(y, RGBtoYUV[w9]))) pattern |= (1 << 7); switch (pattern) { case 0: case 1: case 4: case 32: case 128: case 5: case 132: case 160: case 33: case 129: case 36: case 133: case 164: case 161: case 37: case 165: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 2: case 34: case 130: case 162: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 16: case 17: case 48: case 49: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 64: case 65: case 68: case 69: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 8: case 12: case 136: case 140: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 3: case 35: case 131: case 163: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 6: case 38: case 134: case 166: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 20: case 21: case 52: case 53: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 144: case 145: case 176: case 177: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 X4PIXEL33_82 break; } case 192: case 193: case 196: case 197: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 96: case 97: case 100: case 101: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 40: case 44: case 168: case 172: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 9: case 13: case 137: case 141: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 18: case 50: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL12_0 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 80: case 81: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_61 X4PIXEL21_30 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 72: case 76: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_50 X4PIXEL21_0 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 10: case 138: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 X4PIXEL11_0 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 66: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 24: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 7: case 39: case 135: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 148: case 149: case 180: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 X4PIXEL33_82 break; } case 224: case 228: case 225: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 41: case 169: case 45: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 22: case 54: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 208: case 209: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 104: case 108: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 11: case 139: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 19: case 51: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL00_12 X4PIXEL01_14 X4PIXEL02_83 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_21 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 146: case 178: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL23_32 X4PIXEL33_82 } else { X4PIXEL02_21 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_83 X4PIXEL23_13 X4PIXEL33_11 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 break; } case 84: case 85: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL03_81 X4PIXEL13_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL03_12 X4PIXEL13_14 X4PIXEL22_70 X4PIXEL23_83 X4PIXEL32_21 X4PIXEL33_50 } X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 break; } case 112: case 113: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_70 X4PIXEL23_21 X4PIXEL30_11 X4PIXEL31_13 X4PIXEL32_83 X4PIXEL33_50 } break; } case 200: case 204: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 } else { X4PIXEL20_21 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_83 X4PIXEL32_14 X4PIXEL33_12 } X4PIXEL22_31 X4PIXEL23_81 break; } case 73: case 77: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL00_82 X4PIXEL10_32 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL00_11 X4PIXEL10_13 X4PIXEL20_83 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_21 } X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 42: case 170: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL20_31 X4PIXEL30_81 } else { X4PIXEL00_50 X4PIXEL01_21 X4PIXEL10_83 X4PIXEL11_70 X4PIXEL20_14 X4PIXEL30_12 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 14: case 142: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_50 X4PIXEL01_83 X4PIXEL02_13 X4PIXEL03_11 X4PIXEL10_21 X4PIXEL11_70 } X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 67: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 70: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 28: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 152: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 194: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 98: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 56: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 25: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 26: case 31: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL11_0 X4PIXEL12_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 82: case 214: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 88: case 248: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } break; } case 74: case 107: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_61 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 27: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 86: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 216: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 106: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 30: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 210: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 120: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 75: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 29: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_61 X4PIXEL33_80 break; } case 198: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 184: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 99: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 57: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 71: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 156: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 226: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 60: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 195: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 102: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 153: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 58: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 83: { X4PIXEL00_81 X4PIXEL01_31 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_61 X4PIXEL21_30 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } X4PIXEL30_80 X4PIXEL31_10 break; } case 92: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 202: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_61 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_31 X4PIXEL23_81 X4PIXEL32_31 X4PIXEL33_81 break; } case 78: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } X4PIXEL02_32 X4PIXEL03_82 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 154: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 114: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } X4PIXEL30_82 X4PIXEL31_32 break; } case 89: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 90: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 55: case 23: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_0 X4PIXEL03_0 X4PIXEL12_0 X4PIXEL13_0 } else { X4PIXEL00_12 X4PIXEL01_14 X4PIXEL02_83 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_21 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_61 X4PIXEL33_80 break; } case 182: case 150: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL23_32 X4PIXEL33_82 } else { X4PIXEL02_21 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_83 X4PIXEL23_13 X4PIXEL33_11 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 break; } case 213: case 212: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL03_81 X4PIXEL13_31 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL03_12 X4PIXEL13_14 X4PIXEL22_70 X4PIXEL23_83 X4PIXEL32_21 X4PIXEL33_50 } X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 break; } case 241: case 240: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_0 X4PIXEL23_0 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL22_70 X4PIXEL23_21 X4PIXEL30_11 X4PIXEL31_13 X4PIXEL32_83 X4PIXEL33_50 } break; } case 236: case 232: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_70 X4PIXEL13_60 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL21_0 X4PIXEL30_0 X4PIXEL31_0 X4PIXEL32_31 X4PIXEL33_81 } else { X4PIXEL20_21 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_83 X4PIXEL32_14 X4PIXEL33_12 } X4PIXEL22_31 X4PIXEL23_81 break; } case 109: case 105: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL00_82 X4PIXEL10_32 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL00_11 X4PIXEL10_13 X4PIXEL20_83 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_21 } X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 171: case 43: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 X4PIXEL11_0 X4PIXEL20_31 X4PIXEL30_81 } else { X4PIXEL00_50 X4PIXEL01_21 X4PIXEL10_83 X4PIXEL11_70 X4PIXEL20_14 X4PIXEL30_12 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 143: case 15: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_0 X4PIXEL11_0 } else { X4PIXEL00_50 X4PIXEL01_83 X4PIXEL02_13 X4PIXEL03_11 X4PIXEL10_21 X4PIXEL11_70 } X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_60 X4PIXEL33_20 break; } case 124: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 203: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 62: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 211: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 118: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 217: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 110: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 155: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 188: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 185: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 61: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 157: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 103: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 227: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 230: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 199: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 220: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } break; } case 158: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL12_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 234: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_61 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL32_31 X4PIXEL33_81 break; } case 242: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_82 X4PIXEL31_32 break; } case 59: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL11_0 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 121: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 87: { X4PIXEL00_81 X4PIXEL01_31 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_0 X4PIXEL20_61 X4PIXEL21_30 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } X4PIXEL30_80 X4PIXEL31_10 break; } case 79: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_32 X4PIXEL03_82 X4PIXEL11_0 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 122: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 94: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL12_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 218: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } break; } case 91: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL11_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 229: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 167: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_60 X4PIXEL33_20 break; } case 173: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 181: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 X4PIXEL33_82 break; } case 186: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 115: { X4PIXEL00_81 X4PIXEL01_31 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } X4PIXEL30_82 X4PIXEL31_32 break; } case 93: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } break; } case 206: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } X4PIXEL02_32 X4PIXEL03_82 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_31 X4PIXEL23_81 X4PIXEL32_31 X4PIXEL33_81 break; } case 205: case 201: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 } else { X4PIXEL20_12 X4PIXEL21_0 X4PIXEL30_20 X4PIXEL31_11 } X4PIXEL22_31 X4PIXEL23_81 X4PIXEL32_31 X4PIXEL33_81 break; } case 174: case 46: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL10_10 X4PIXEL11_30 } else { X4PIXEL00_20 X4PIXEL01_12 X4PIXEL10_11 X4PIXEL11_0 } X4PIXEL02_32 X4PIXEL03_82 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 179: case 147: { X4PIXEL00_81 X4PIXEL01_31 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 } else { X4PIXEL02_11 X4PIXEL03_20 X4PIXEL12_0 X4PIXEL13_12 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 X4PIXEL33_82 break; } case 117: case 116: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 } else { X4PIXEL22_0 X4PIXEL23_11 X4PIXEL32_12 X4PIXEL33_20 } X4PIXEL30_82 X4PIXEL31_32 break; } case 189: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 231: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_31 X4PIXEL33_81 break; } case 126: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 219: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 125: { if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL00_82 X4PIXEL10_32 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL00_11 X4PIXEL10_13 X4PIXEL20_83 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_21 } X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 221: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL03_81 X4PIXEL13_31 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL03_12 X4PIXEL13_14 X4PIXEL22_70 X4PIXEL23_83 X4PIXEL32_21 X4PIXEL33_50 } X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL30_80 X4PIXEL31_10 break; } case 207: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_0 X4PIXEL11_0 } else { X4PIXEL00_50 X4PIXEL01_83 X4PIXEL02_13 X4PIXEL03_11 X4PIXEL10_21 X4PIXEL11_70 } X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_31 X4PIXEL23_81 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_31 X4PIXEL33_81 break; } case 238: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL21_0 X4PIXEL30_0 X4PIXEL31_0 X4PIXEL32_31 X4PIXEL33_81 } else { X4PIXEL20_21 X4PIXEL21_70 X4PIXEL30_50 X4PIXEL31_83 X4PIXEL32_14 X4PIXEL33_12 } X4PIXEL22_31 X4PIXEL23_81 break; } case 190: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL23_32 X4PIXEL33_82 } else { X4PIXEL02_21 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_83 X4PIXEL23_13 X4PIXEL33_11 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 break; } case 187: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 X4PIXEL11_0 X4PIXEL20_31 X4PIXEL30_81 } else { X4PIXEL00_50 X4PIXEL01_21 X4PIXEL10_83 X4PIXEL11_70 X4PIXEL20_14 X4PIXEL30_12 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 243: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_82 X4PIXEL21_32 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL22_0 X4PIXEL23_0 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL22_70 X4PIXEL23_21 X4PIXEL30_11 X4PIXEL31_13 X4PIXEL32_83 X4PIXEL33_50 } break; } case 119: { if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_0 X4PIXEL03_0 X4PIXEL12_0 X4PIXEL13_0 } else { X4PIXEL00_12 X4PIXEL01_14 X4PIXEL02_83 X4PIXEL03_50 X4PIXEL12_70 X4PIXEL13_21 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_10 X4PIXEL33_80 break; } case 237: case 233: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_60 X4PIXEL03_20 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_70 X4PIXEL13_60 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_31 X4PIXEL23_81 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 X4PIXEL32_31 X4PIXEL33_81 break; } case 175: case 47: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_70 X4PIXEL23_60 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_60 X4PIXEL33_20 break; } case 183: case 151: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_60 X4PIXEL21_70 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_20 X4PIXEL31_60 X4PIXEL32_82 X4PIXEL33_82 break; } case 245: case 244: { X4PIXEL00_20 X4PIXEL01_60 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_60 X4PIXEL11_70 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 250: { X4PIXEL00_80 X4PIXEL01_10 X4PIXEL02_10 X4PIXEL03_80 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } break; } case 123: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_10 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 95: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL11_0 X4PIXEL12_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_80 X4PIXEL31_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 222: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 252: { X4PIXEL00_80 X4PIXEL01_61 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_31 X4PIXEL13_31 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 249: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_61 X4PIXEL03_80 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 break; } case 235: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_61 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_31 X4PIXEL23_81 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 X4PIXEL32_31 X4PIXEL33_81 break; } case 111: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_32 X4PIXEL13_82 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_61 X4PIXEL32_10 X4PIXEL33_80 break; } case 63: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_0 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_61 X4PIXEL33_80 break; } case 159: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL11_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_80 X4PIXEL31_61 X4PIXEL32_82 X4PIXEL33_82 break; } case 215: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_61 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 246: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_61 X4PIXEL11_30 X4PIXEL12_0 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 254: { X4PIXEL00_80 X4PIXEL01_10 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_10 X4PIXEL11_30 X4PIXEL12_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 253: { X4PIXEL00_82 X4PIXEL01_82 X4PIXEL02_81 X4PIXEL03_81 X4PIXEL10_32 X4PIXEL11_32 X4PIXEL12_31 X4PIXEL13_31 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_0 X4PIXEL23_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 251: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_10 X4PIXEL03_80 X4PIXEL11_0 X4PIXEL12_30 X4PIXEL13_10 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 break; } case 239: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 X4PIXEL02_32 X4PIXEL03_82 X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_32 X4PIXEL13_82 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_31 X4PIXEL23_81 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 X4PIXEL32_31 X4PIXEL33_81 break; } case 127: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL02_0 X4PIXEL03_0 X4PIXEL13_0 } else { X4PIXEL02_50 X4PIXEL03_50 X4PIXEL13_50 } X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL20_0 X4PIXEL30_0 X4PIXEL31_0 } else { X4PIXEL20_50 X4PIXEL30_50 X4PIXEL31_50 } X4PIXEL21_0 X4PIXEL22_30 X4PIXEL23_10 X4PIXEL32_10 X4PIXEL33_80 break; } case 191: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_31 X4PIXEL21_31 X4PIXEL22_32 X4PIXEL23_32 X4PIXEL30_81 X4PIXEL31_81 X4PIXEL32_82 X4PIXEL33_82 break; } case 223: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 X4PIXEL01_0 X4PIXEL10_0 } else { X4PIXEL00_50 X4PIXEL01_50 X4PIXEL10_50 } X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL11_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_10 X4PIXEL21_30 X4PIXEL22_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL23_0 X4PIXEL32_0 X4PIXEL33_0 } else { X4PIXEL23_50 X4PIXEL32_50 X4PIXEL33_50 } X4PIXEL30_80 X4PIXEL31_10 break; } case 247: { X4PIXEL00_81 X4PIXEL01_31 X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL10_81 X4PIXEL11_31 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_82 X4PIXEL21_32 X4PIXEL22_0 X4PIXEL23_0 X4PIXEL30_82 X4PIXEL31_32 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } case 255: { if (Diff(RGBtoYUV[w4], RGBtoYUV[w2])) { X4PIXEL00_0 } else { X4PIXEL00_20 } X4PIXEL01_0 X4PIXEL02_0 if (Diff(RGBtoYUV[w2], RGBtoYUV[w6])) { X4PIXEL03_0 } else { X4PIXEL03_20 } X4PIXEL10_0 X4PIXEL11_0 X4PIXEL12_0 X4PIXEL13_0 X4PIXEL20_0 X4PIXEL21_0 X4PIXEL22_0 X4PIXEL23_0 if (Diff(RGBtoYUV[w8], RGBtoYUV[w4])) { X4PIXEL30_0 } else { X4PIXEL30_20 } X4PIXEL31_0 X4PIXEL32_0 if (Diff(RGBtoYUV[w6], RGBtoYUV[w8])) { X4PIXEL33_0 } else { X4PIXEL33_20 } break; } } w1 = w2; w4 = w5; w7 = w8; w2 = w3; w5 = w6; w8 = w9; dp += 4; } dp += (dst1line - width) * 4; sp += (src1line - width); } }