Fix typo that lead to averaging of the same pixel in rgb24ToUV_half().
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 11 Sep 2008 14:47:18 +0000 (14:47 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 11 Sep 2008 14:47:18 +0000 (14:47 +0000)
Originally committed as revision 27582 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale

libswscale/swscale_template.c

index a52dfd5..c7f278b 100644 (file)
@@ -2109,9 +2109,9 @@ static inline void RENAME(rgb24ToUV_half)(uint8_t *dstU, uint8_t *dstV, uint8_t
     assert(src1==src2);
     for (i=0; i<width; i++)
     {
     assert(src1==src2);
     for (i=0; i<width; i++)
     {
-        int r= src1[6*i + 0] + src1[6*i + 0];
-        int g= src1[6*i + 1] + src1[6*i + 1];
-        int b= src1[6*i + 2] + src1[6*i + 2];
+        int r= src1[6*i + 0] + src1[6*i + 3];
+        int g= src1[6*i + 1] + src1[6*i + 4];
+        int b= src1[6*i + 2] + src1[6*i + 5];
 
         dstU[i]= (RU*r + GU*g + BU*b + (257<<RGB2YUV_SHIFT))>>(RGB2YUV_SHIFT+1);
         dstV[i]= (RV*r + GV*g + BV*b + (257<<RGB2YUV_SHIFT))>>(RGB2YUV_SHIFT+1);
 
         dstU[i]= (RU*r + GU*g + BU*b + (257<<RGB2YUV_SHIFT))>>(RGB2YUV_SHIFT+1);
         dstV[i]= (RV*r + GV*g + BV*b + (257<<RGB2YUV_SHIFT))>>(RGB2YUV_SHIFT+1);