1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

fixed a bug which caused horizontal lines

Originally committed as revision 2268 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
This commit is contained in:
Michael Niedermayer 2001-10-19 00:21:07 +00:00
parent 783e9cc9af
commit cd4102261f
2 changed files with 4 additions and 4 deletions

View File

@ -254,9 +254,9 @@ canMMX2BeUsed= (s_xinc <= 0x10000 && (dstw&31)==0) ? 1 : 0;
// points to the dst Pixels center in the source (0 is the center of pixel 0,0 in src) // points to the dst Pixels center in the source (0 is the center of pixel 0,0 in src)
int srcuvpos= s_srcypos + s_yinc/2 - 0x8000; int srcuvpos= s_srcypos + s_yinc/2 - 0x8000;
int y1=(srcuvpos + 0x1FFFF)>>17; // first chrominance source line number below the dst line int y1=(srcuvpos + 0x1FFFF)>>17; // first chrominance source line number below the dst line
int yalpha=(s_srcypos&0xFFFF)>>7; int yalpha=((s_srcypos-1)&0xFFFF)>>7;
int yalpha1=yalpha^511; int yalpha1=yalpha^511;
int uvalpha=(srcuvpos&0x1FFFF)>>8; int uvalpha=((srcuvpos-1)&0x1FFFF)>>8;
int uvalpha1=uvalpha^511; int uvalpha1=uvalpha^511;
uint16_t *buf0=pix_buf_y[y0&1]; // top line of the interpolated slice uint16_t *buf0=pix_buf_y[y0&1]; // top line of the interpolated slice
uint16_t *buf1=pix_buf_y[((y0+1)&1)]; // bottom line of the interpolated slice uint16_t *buf1=pix_buf_y[((y0+1)&1)]; // bottom line of the interpolated slice

View File

@ -254,9 +254,9 @@ canMMX2BeUsed= (s_xinc <= 0x10000 && (dstw&31)==0) ? 1 : 0;
// points to the dst Pixels center in the source (0 is the center of pixel 0,0 in src) // points to the dst Pixels center in the source (0 is the center of pixel 0,0 in src)
int srcuvpos= s_srcypos + s_yinc/2 - 0x8000; int srcuvpos= s_srcypos + s_yinc/2 - 0x8000;
int y1=(srcuvpos + 0x1FFFF)>>17; // first chrominance source line number below the dst line int y1=(srcuvpos + 0x1FFFF)>>17; // first chrominance source line number below the dst line
int yalpha=(s_srcypos&0xFFFF)>>7; int yalpha=((s_srcypos-1)&0xFFFF)>>7;
int yalpha1=yalpha^511; int yalpha1=yalpha^511;
int uvalpha=(srcuvpos&0x1FFFF)>>8; int uvalpha=((srcuvpos-1)&0x1FFFF)>>8;
int uvalpha1=uvalpha^511; int uvalpha1=uvalpha^511;
uint16_t *buf0=pix_buf_y[y0&1]; // top line of the interpolated slice uint16_t *buf0=pix_buf_y[y0&1]; // top line of the interpolated slice
uint16_t *buf1=pix_buf_y[((y0+1)&1)]; // bottom line of the interpolated slice uint16_t *buf1=pix_buf_y[((y0+1)&1)]; // bottom line of the interpolated slice