summaryrefslogtreecommitdiff
path: root/libavcodec/vc1.c
diff options
context:
space:
mode:
authorKostya Shishkov <kostya.shishkov@gmail.com>2006-12-01 07:24:56 +0000
committerKostya Shishkov <kostya.shishkov@gmail.com>2006-12-01 07:24:56 +0000
commit98ba1cfaf7674c27134b9354d3ceee3134c99779 (patch)
tree2c6a2b7ddceb90d4041b7a42505eca8465aee3a8 /libavcodec/vc1.c
parentf7f8af46f7a0ae7754c5b20e55550a3554384162 (diff)
100l FastUVMC rounding was incorrect.
This should also improve quality on WMV9Drifting.asf Originally committed as revision 7190 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/vc1.c')
-rw-r--r--libavcodec/vc1.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c
index db1a5fa9d5..cd3c0c2d6a 100644
--- a/libavcodec/vc1.c
+++ b/libavcodec/vc1.c
@@ -879,8 +879,8 @@ static void vc1_mc_1mv(VC1Context *v, int dir)
}
if(v->fastuvmc) {
- uvmx = uvmx + ((uvmx<0)?(uvmx&1):-(uvmx&1));
- uvmy = uvmy + ((uvmy<0)?(uvmy&1):-(uvmy&1));
+ uvmx = uvmx + ((uvmx<0)?-(uvmx&1):(uvmx&1));
+ uvmy = uvmy + ((uvmy<0)?-(uvmy&1):(uvmy&1));
}
if(s->mspel) {
@@ -1103,8 +1103,8 @@ static void vc1_mc_4mv_chroma(VC1Context *v)
}
if(v->fastuvmc) {
- uvmx = uvmx + ((uvmx<0)?(uvmx&1):-(uvmx&1));
- uvmy = uvmy + ((uvmy<0)?(uvmy&1):-(uvmy&1));
+ uvmx = uvmx + ((uvmx<0)?-(uvmx&1):(uvmx&1));
+ uvmy = uvmy + ((uvmy<0)?-(uvmy&1):(uvmy&1));
}
/* Chroma MC always uses qpel bilinear */
@@ -2124,8 +2124,8 @@ static void vc1_interp_mc(VC1Context *v)
}
if(v->fastuvmc) {
- uvmx = uvmx + ((uvmx<0)?(uvmx&1):-(uvmx&1));
- uvmy = uvmy + ((uvmy<0)?(uvmy&1):-(uvmy&1));
+ uvmx = uvmx + ((uvmx<0)?-(uvmx&1):(uvmx&1));
+ uvmy = uvmy + ((uvmy<0)?-(uvmy&1):(uvmy&1));
}
mx >>= 1;