[FFmpeg-devel] [PATCH] lavfi/unsharp: extend range for amount values, to reflect the behavior of mp=unsharp

Stefano Sabatini stefasab at gmail.com
Fri Feb 15 19:15:20 CET 2013


Also update the documentation accordingly, and suggest a meaningful range.

TODO: bump micro
---
 doc/filters.texi         |   10 ++++++----
 libavfilter/vf_unsharp.c |   10 ++++++----
 2 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/doc/filters.texi b/doc/filters.texi
index 6dea243..d2f2b2e 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
- at 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
+ at option{chroma_amount}.
 @end table
 
 Some examples follow:
diff --git a/libavfilter/vf_unsharp.c b/libavfilter/vf_unsharp.c
index 455b813..9fd0588 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 <float.h> /* 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 }
 };
 
-- 
1.7.9.5



More information about the ffmpeg-devel mailing list