summaryrefslogtreecommitdiffstats
path: root/postproc
diff options
context:
space:
mode:
authormichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-10-19 15:50:44 +0000
committermichael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-10-19 15:50:44 +0000
commit0ac6fe1c4996c503de9fbca6cff4b1190205241d (patch)
treee1f56a80e40775e4abed4b71480bf6cd97ab8564 /postproc
parent1159e4e5d1bbbec7e58e2547c64a7903fd1e3622 (diff)
downloadmpv-0ac6fe1c4996c503de9fbca6cff4b1190205241d.tar.bz2
mpv-0ac6fe1c4996c503de9fbca6cff4b1190205241d.tar.xz
first line bug fixed (happend if the image was scaled down or 1:1)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2298 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'postproc')
-rw-r--r--postproc/swscale.c9
-rw-r--r--postproc/swscale_template.c9
2 files changed, 14 insertions, 4 deletions
diff --git a/postproc/swscale.c b/postproc/swscale.c
index 61b5c5480a..878c7ddc81 100644
--- a/postproc/swscale.c
+++ b/postproc/swscale.c
@@ -98,7 +98,6 @@ static int old_s_xinc= -1;
#endif
int canMMX2BeUsed=0;
-static int test=0;
int srcWidth= (dstw*s_xinc + 0x8000)>>16;
#ifdef HAVE_MMX2
@@ -119,7 +118,7 @@ s_xinc2=s_xinc>>1;
s_last_y1pos=-99;
if(y==0){
- s_srcypos= s_yinc/2 - 0x8000;
+ s_srcypos=-0x8000;
s_ypos=0;
#ifdef HAVE_MMX2
// cant downscale !!!
@@ -534,6 +533,12 @@ FUNNYUVCODE
xpos+=s_xinc2;
}
#endif
+ // if this is the line before the first line
+ if(s_srcypos == s_xinc - 0x8000)
+ {
+ s_srcypos= s_yinc/2 - 0x8000;
+ continue;
+ }
}
diff --git a/postproc/swscale_template.c b/postproc/swscale_template.c
index 61b5c5480a..878c7ddc81 100644
--- a/postproc/swscale_template.c
+++ b/postproc/swscale_template.c
@@ -98,7 +98,6 @@ static int old_s_xinc= -1;
#endif
int canMMX2BeUsed=0;
-static int test=0;
int srcWidth= (dstw*s_xinc + 0x8000)>>16;
#ifdef HAVE_MMX2
@@ -119,7 +118,7 @@ s_xinc2=s_xinc>>1;
s_last_y1pos=-99;
if(y==0){
- s_srcypos= s_yinc/2 - 0x8000;
+ s_srcypos=-0x8000;
s_ypos=0;
#ifdef HAVE_MMX2
// cant downscale !!!
@@ -534,6 +533,12 @@ FUNNYUVCODE
xpos+=s_xinc2;
}
#endif
+ // if this is the line before the first line
+ if(s_srcypos == s_xinc - 0x8000)
+ {
+ s_srcypos= s_yinc/2 - 0x8000;
+ continue;
+ }
}