The intermediate was rounded to an integer Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> --- libavfilter/vf_psnr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libavfilter/vf_psnr.c b/libavfilter/vf_psnr.c index f3dff62..54d4ff0 100644 --- a/libavfilter/vf_psnr.c +++ b/libavfilter/vf_psnr.c @@ -246,6 +246,7 @@ static int config_input_ref(AVFilterLink *inlink) const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format); AVFilterContext *ctx = inlink->dst; PSNRContext *s = ctx->priv; + double average_max; unsigned sum; int j; @@ -278,10 +279,12 @@ static int config_input_ref(AVFilterLink *inlink) sum = 0; for (j = 0; j < s->nb_components; j++) sum += s->planeheight[j] * s->planewidth[j]; + average_max = 0; for (j = 0; j < s->nb_components; j++) { s->planeweight[j] = (double) s->planeheight[j] * s->planewidth[j] / sum; - s->average_max += s->max[j] * s->planeweight[j]; + average_max += s->max[j] * s->planeweight[j]; } + s->average_max = lrint(average_max); s->dsp.sse_line = desc->comp[0].depth > 8 ? sse_line_16bit : sse_line_8bit; if (ARCH_X86) -- 1.7.9.5 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel