[FFmpeg-devel] [PATCH] vf_psnr: always calculate MSE over full pixel range.
Paul B Mahol
onemda at gmail.com
Sat Jul 11 16:50:52 CEST 2015
Dana 11. 7. 2015. 13:23 osoba "Ronald S. Bultje" <rsbultje at gmail.com>
napisala je:
>
> This makes the output compatible with that of pretty much any other
> tool that calculates PSNR.
> ---
> libavfilter/vf_psnr.c | 31 ++++---------------------------
> 1 file changed, 4 insertions(+), 27 deletions(-)
>
> diff --git a/libavfilter/vf_psnr.c b/libavfilter/vf_psnr.c
> index 0c2c950..cc4546a 100644
> --- a/libavfilter/vf_psnr.c
> +++ b/libavfilter/vf_psnr.c
> @@ -260,33 +260,10 @@ static int config_input_ref(AVFilterLink *inlink)
> return AVERROR(EINVAL);
> }
>
> - switch (inlink->format) {
> - case AV_PIX_FMT_GRAY8:
> - case AV_PIX_FMT_GRAY16:
> - case AV_PIX_FMT_GBRP:
> - case AV_PIX_FMT_GBRP9:
> - case AV_PIX_FMT_GBRP10:
> - case AV_PIX_FMT_GBRP12:
> - case AV_PIX_FMT_GBRP14:
> - case AV_PIX_FMT_GBRP16:
> - case AV_PIX_FMT_GBRAP:
> - case AV_PIX_FMT_GBRAP16:
> - case AV_PIX_FMT_YUVJ411P:
> - case AV_PIX_FMT_YUVJ420P:
> - case AV_PIX_FMT_YUVJ422P:
> - case AV_PIX_FMT_YUVJ440P:
> - case AV_PIX_FMT_YUVJ444P:
> - s->max[0] = (1 << (desc->comp[0].depth_minus1 + 1)) - 1;
> - s->max[1] = (1 << (desc->comp[1].depth_minus1 + 1)) - 1;
> - s->max[2] = (1 << (desc->comp[2].depth_minus1 + 1)) - 1;
> - s->max[3] = (1 << (desc->comp[3].depth_minus1 + 1)) - 1;
> - break;
> - default:
> - s->max[0] = 235 * (1 << (desc->comp[0].depth_minus1 - 7));
> - s->max[1] = 240 * (1 << (desc->comp[1].depth_minus1 - 7));
> - s->max[2] = 240 * (1 << (desc->comp[2].depth_minus1 - 7));
> - s->max[3] = (1 << (desc->comp[3].depth_minus1 + 1)) - 1;
> - }
> + s->max[0] = (1 << (desc->comp[0].depth_minus1 + 1)) - 1;
> + s->max[1] = (1 << (desc->comp[1].depth_minus1 + 1)) - 1;
> + s->max[2] = (1 << (desc->comp[2].depth_minus1 + 1)) - 1;
> + s->max[3] = (1 << (desc->comp[3].depth_minus1 + 1)) - 1;
>
> s->is_rgb = ff_fill_rgba_map(s->rgba_map, inlink->format) >= 0;
> s->comps[0] = s->is_rgb ? 'r' : 'y' ;
> --
> 2.1.2
>
LGTM
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
More information about the ffmpeg-devel
mailing list