aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-04-16 02:06:37 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-05-05 00:09:17 +0200
commit16a9c5ea9e68ec647b1b0411d3000ef39ffcdb50 (patch)
treeffc77145e64fd51bd2f385fc17268b2990c6164c
parent83fb31a76da133747a22e3776c1c67da3d0ffb78 (diff)
downloadffmpeg-16a9c5ea9e68ec647b1b0411d3000ef39ffcdb50.tar.gz
avfilter/vf_deshake: fix loss of precission with odd resolutions
Fixes part of Ticket3466 Found-by: Andrey_Karpov / PVS-Studio Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 73734282e0e4df92269984ee1671424e39249481) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavfilter/vf_deshake.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavfilter/vf_deshake.c b/libavfilter/vf_deshake.c
index 1d62c440a6..f77a9bd445 100644
--- a/libavfilter/vf_deshake.c
+++ b/libavfilter/vf_deshake.c
@@ -306,8 +306,8 @@ static void find_motion(DeshakeContext *deshake, uint8_t *src1, uint8_t *src2,
//av_log(NULL, AV_LOG_ERROR, "\n");
}
- p_x = (center_x - width / 2);
- p_y = (center_y - height / 2);
+ p_x = (center_x - width / 2.0);
+ p_y = (center_y - height / 2.0);
t->vector.x += (cos(t->angle)-1)*p_x - sin(t->angle)*p_y;
t->vector.y += sin(t->angle)*p_x + (cos(t->angle)-1)*p_y;