diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2001-10-19 00:21:07 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2001-10-19 00:21:07 +0000 |
commit | cd4102261f610a4e63220413be8bd297731a0cac (patch) | |
tree | dd514630f3cd8baf3708d209123269804b9cacc1 /postproc | |
parent | 783e9cc9af091dca768a9b6103af4e528ea2406e (diff) | |
download | ffmpeg-cd4102261f610a4e63220413be8bd297731a0cac.tar.gz |
fixed a bug which caused horizontal lines
Originally committed as revision 2268 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
Diffstat (limited to 'postproc')
-rw-r--r-- | postproc/swscale.c | 4 | ||||
-rw-r--r-- | postproc/swscale_template.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/postproc/swscale.c b/postproc/swscale.c index 049099abcb..368c84cc1e 100644 --- a/postproc/swscale.c +++ b/postproc/swscale.c @@ -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) int srcuvpos= s_srcypos + s_yinc/2 - 0x8000; 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 uvalpha=(srcuvpos&0x1FFFF)>>8; + int uvalpha=((srcuvpos-1)&0x1FFFF)>>8; int uvalpha1=uvalpha^511; 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 diff --git a/postproc/swscale_template.c b/postproc/swscale_template.c index 049099abcb..368c84cc1e 100644 --- a/postproc/swscale_template.c +++ b/postproc/swscale_template.c @@ -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) int srcuvpos= s_srcypos + s_yinc/2 - 0x8000; 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 uvalpha=(srcuvpos&0x1FFFF)>>8; + int uvalpha=((srcuvpos-1)&0x1FFFF)>>8; int uvalpha1=uvalpha^511; 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 |