From 2042cd37699f306cea011993e406e6e8d02b6897 Mon Sep 17 00:00:00 2001 From: Stefano Sabatini Date: Fri, 15 Feb 2013 14:06:05 +0100 Subject: [PATCH] lavfi/unsharp: extend range for amount values, to reflect the behavior of mp=unsharp Also update the documentation accordingly, and suggest a meaningful range. --- doc/filters.texi | 10 ++++++---- libavfilter/version.h | 2 +- libavfilter/vf_unsharp.c | 10 ++++++---- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/doc/filters.texi b/doc/filters.texi index 6dea243199..d2f2b2e8ef 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -4936,12 +4936,14 @@ Set the luma/chroma matrix vertical size. It can be an integer between @item luma_amount, la @item chroma_amount, ca -Set the luma/chroma effect strength. It can be a float number between --2.0 and 5.0. Default value is 1.0 for @option{luma_amount}, 0.0 for -@option{chroma_amount}. +Set the luma/chroma effect strength. It can be a float number, +reasonable values lay between -1.5 and 1.5. Negative values will blur the input video, while positive values will -sharpen. +sharpen it, a value of zero will disable the effect. + +Default value is 1.0 for @option{luma_amount}, 0.0 for +@option{chroma_amount}. @end table Some examples follow: diff --git a/libavfilter/version.h b/libavfilter/version.h index d6d9ec3af2..02008cfcdd 100644 --- a/libavfilter/version.h +++ b/libavfilter/version.h @@ -30,7 +30,7 @@ #define LIBAVFILTER_VERSION_MAJOR 3 #define LIBAVFILTER_VERSION_MINOR 37 -#define LIBAVFILTER_VERSION_MICRO 102 +#define LIBAVFILTER_VERSION_MICRO 103 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ LIBAVFILTER_VERSION_MINOR, \ diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c index cf2d37a3cb..2170d651e7 100644 --- a/libavfilter/vf_unsharp.c +++ b/libavfilter/vf_unsharp.c @@ -36,6 +36,8 @@ * http://www.engin.umd.umich.edu/~jwvm/ece581/21_GBlur.pdf */ +#include /* DBL_MAX */ + #include "avfilter.h" #include "formats.h" #include "internal.h" @@ -78,15 +80,15 @@ static const AVOption unsharp_options[] = { { "lx", "set luma matrix x size", OFFSET(luma_msize_x), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, { "luma_msize_y", "set luma matrix y size", OFFSET(luma_msize_y), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, { "ly", "set luma matrix y size", OFFSET(luma_msize_y), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, - { "luma_amount", "set luma effect amount", OFFSET(luma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=1.0}, -2.0, 5.0 }, - { "la", "set luma effect amount", OFFSET(luma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=1.0}, -2.0, 5.0 }, + { "luma_amount", "set luma effect amount", OFFSET(luma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=1.0}, -DBL_MAX, DBL_MAX }, + { "la", "set luma effect amount", OFFSET(luma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=1.0}, -DBL_MAX, DBL_MAX }, { "chroma_msize_x", "set chroma matrix x size", OFFSET(chroma_msize_x), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, { "cx", "set chroma matrix x size", OFFSET(chroma_msize_x), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, { "chroma_msize_y", "set chroma matrix y size", OFFSET(chroma_msize_y), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, { "cy" , "set chroma matrix y size", OFFSET(chroma_msize_y), AV_OPT_TYPE_INT, {.i64=5}, 3, 63 }, - { "chroma_amount", "set chroma effect strenght", OFFSET(chroma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=0.0}, -2.0, 5.0 }, - { "ca", "set chroma effect strenght", OFFSET(chroma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=0.0}, -2.0, 5.0 }, + { "chroma_amount", "set chroma effect strenght", OFFSET(chroma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=0.0}, -DBL_MAX, DBL_MAX }, + { "ca", "set chroma effect strenght", OFFSET(chroma_amount), AV_OPT_TYPE_DOUBLE, {.dbl=0.0}, -DBL_MAX, DBL_MAX }, { NULL } };