- double r,g,b;
- r = src[y*linex+x].r;
- g = src[y*linex+x].g;
- b = src[y*linex+x].b;
- dest[y*linex+x].y = (r*0.299 + g*0.587 + b*0.114);
- dest[y*linex+x].u = (r*-0.169 + g*-0.332 + b*0.500 + 128.0);
- dest[y*linex+x].v = (r*0.500 + g*-0.419 + b*-0.0813 + 128.0);
+ int r,g,b;
+ r = src[y*slinex+x].r;
+ g = src[y*slinex+x].g;
+ b = src[y*slinex+x].b;
+ /*dest[y*dlinex+x].y = (r*0.299 + g*0.587 + b*0.114);
+ dest[y*dlinex+x].u = (r*-0.169 + g*-0.332 + b*0.500 + 128.0);
+ dest[y*dlinex+x].v = (r*0.500 + g*-0.419 + b*-0.0813 + 128.0);*/
+ dest[y*dlinex+x].y = (r*((int)( 0.299*256)) + g*((int)( 0.587*256)) + b*((int)( 0.114 *256)))>>8;
+ dest[y*dlinex+x].u = (r*((int)(-0.169*256)) + g*((int)(-0.332*256)) + b*((int)( 0.500 *256))+ 128*256)>>8;
+ dest[y*dlinex+x].v = (r*((int)( 0.500*256)) + g*((int)(-0.419*256)) + b*((int)(-0.0813*256))+ 128*256)>>8;