diff mbox series

[FFmpeg-devel] avfilter/guided: simplify subsampling assignment.

Message ID 20210514034310.1570-1-ffmpeg@gyani.pro
State Accepted
Commit 93ddb9b6177ab668cae92f9b117a91b05cde386f
Headers show
Series [FFmpeg-devel] avfilter/guided: simplify subsampling assignment. | expand

Checks

Context Check Description
andriy/x86_make success Make finished
andriy/x86_make_fate success Make fate finished
andriy/PPC64_make success Make finished
andriy/PPC64_make_fate success Make fate finished

Commit Message

Gyan Doshi May 14, 2021, 3:43 a.m. UTC
Reduce option ranges to effective values.
---
Will reindent after this is applied.

 libavfilter/vf_guided.c | 26 ++++++++------------------
 1 file changed, 8 insertions(+), 18 deletions(-)

Comments

Liu Steven May 14, 2021, 3:48 a.m. UTC | #1
> 2021年5月14日 上午11:43,Gyan Doshi <ffmpeg@gyani.pro> 写道:
> 
> Reduce option ranges to effective values.
> ---
> Will reindent after this is applied.
> 
> libavfilter/vf_guided.c | 26 ++++++++------------------
> 1 file changed, 8 insertions(+), 18 deletions(-)
> 
> diff --git a/libavfilter/vf_guided.c b/libavfilter/vf_guided.c
> index e7c689e7be..88bae5ab19 100644
> --- a/libavfilter/vf_guided.c
> +++ b/libavfilter/vf_guided.c
> @@ -61,10 +61,10 @@ typedef struct GuidedContext {
> static const AVOption guided_options[] = {
>     { "radius", "set the box radius",                               OFFSET(radius), AV_OPT_TYPE_INT,   {.i64 = 3    },   1,           20, FLAGS },
>     { "eps",    "set the regularization parameter (with square)",   OFFSET(eps),    AV_OPT_TYPE_FLOAT, {.dbl = 0.01 }, 0.0,            1, FLAGS },
> -    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC},   0, NB_MODES - 1, FLAGS, "mode" },
> +    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC}, BASIC, NB_MODES - 1, FLAGS, "mode" },
>     { "basic",  "basic guided filter",                              0,              AV_OPT_TYPE_CONST, {.i64 = BASIC},   0,            0, FLAGS, "mode" },
>     { "fast",   "fast guided filter",                               0,              AV_OPT_TYPE_CONST, {.i64 = FAST },   0,            0, FLAGS, "mode" },
> -    { "sub",    "subsampling ratio",                                OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 1    },   1,           64, FLAGS },
> +    { "sub",    "subsampling ratio for fast mode",                  OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 4    },   2,           64, FLAGS },
>     { "planes", "set planes to filter",                             OFFSET(planes), AV_OPT_TYPE_INT,   {.i64=1      },   0,          0xF, FLAGS },
>     { NULL }
> };
> @@ -160,24 +160,14 @@ static int config_input(AVFilterLink *inlink)
>     }
> 
>     if (s->mode == BASIC) {
> -        if (s->sub != 1) {
> -            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is 1 in basic mode.\n");
> -            s->sub = 1;
> -        }
> +        s->sub = 1;
>     }
>     else if (s->mode == FAST) {
> -        if (s->sub == 1) {
> -            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is larger than 1 in fast mode.\n");
> -            s->sub = 4;
> -        }
> -        if (s->radius >= s->sub)
> -            s->radius = s->radius / s->sub;
> -        else {
> -            s->radius = 1;
> -        }
> -    }
> -    else {
> -        return AVERROR_BUG;
> +       if (s->radius >= s->sub)
> +           s->radius = s->radius / s->sub;
> +       else {
> +           s->radius = 1;
> +       }
>     }
> 
>     s->depth = desc->comp[0].depth;
> -- 
> 2.30.1
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe”.
> 
> 
> 
lgtm

Thanks

Steven Liu
Gyan Doshi May 14, 2021, 10:55 a.m. UTC | #2
On 2021-05-14 09:18, Steven Liu wrote:
>
>> 2021年5月14日 上午11:43,Gyan Doshi <ffmpeg@gyani.pro> 写道:
>>
>> Reduce option ranges to effective values.
>> ---
>> Will reindent after this is applied.
>>
>> libavfilter/vf_guided.c | 26 ++++++++------------------
>> 1 file changed, 8 insertions(+), 18 deletions(-)
>>
>> diff --git a/libavfilter/vf_guided.c b/libavfilter/vf_guided.c
>> index e7c689e7be..88bae5ab19 100644
>> --- a/libavfilter/vf_guided.c
>> +++ b/libavfilter/vf_guided.c
>> @@ -61,10 +61,10 @@ typedef struct GuidedContext {
>> static const AVOption guided_options[] = {
>>      { "radius", "set the box radius",                               OFFSET(radius), AV_OPT_TYPE_INT,   {.i64 = 3    },   1,           20, FLAGS },
>>      { "eps",    "set the regularization parameter (with square)",   OFFSET(eps),    AV_OPT_TYPE_FLOAT, {.dbl = 0.01 }, 0.0,            1, FLAGS },
>> -    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC},   0, NB_MODES - 1, FLAGS, "mode" },
>> +    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC}, BASIC, NB_MODES - 1, FLAGS, "mode" },
>>      { "basic",  "basic guided filter",                              0,              AV_OPT_TYPE_CONST, {.i64 = BASIC},   0,            0, FLAGS, "mode" },
>>      { "fast",   "fast guided filter",                               0,              AV_OPT_TYPE_CONST, {.i64 = FAST },   0,            0, FLAGS, "mode" },
>> -    { "sub",    "subsampling ratio",                                OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 1    },   1,           64, FLAGS },
>> +    { "sub",    "subsampling ratio for fast mode",                  OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 4    },   2,           64, FLAGS },
>>      { "planes", "set planes to filter",                             OFFSET(planes), AV_OPT_TYPE_INT,   {.i64=1      },   0,          0xF, FLAGS },
>>      { NULL }
>> };
>> @@ -160,24 +160,14 @@ static int config_input(AVFilterLink *inlink)
>>      }
>>
>>      if (s->mode == BASIC) {
>> -        if (s->sub != 1) {
>> -            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is 1 in basic mode.\n");
>> -            s->sub = 1;
>> -        }
>> +        s->sub = 1;
>>      }
>>      else if (s->mode == FAST) {
>> -        if (s->sub == 1) {
>> -            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is larger than 1 in fast mode.\n");
>> -            s->sub = 4;
>> -        }
>> -        if (s->radius >= s->sub)
>> -            s->radius = s->radius / s->sub;
>> -        else {
>> -            s->radius = 1;
>> -        }
>> -    }
>> -    else {
>> -        return AVERROR_BUG;
>> +       if (s->radius >= s->sub)
>> +           s->radius = s->radius / s->sub;
>> +       else {
>> +           s->radius = 1;
>> +       }
>>      }
>>
>>      s->depth = desc->comp[0].depth;
>> -- 
>> 2.30.1
>>
>> _______________________________________________
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>
>> To unsubscribe, visit link above, or email
>> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe”.
>>
>>
>>
> lgtm

Applied as 93ddb9b6177ab668cae92f9b117a91b05cde386f

Thanks,
Gyan
diff mbox series

Patch

diff --git a/libavfilter/vf_guided.c b/libavfilter/vf_guided.c
index e7c689e7be..88bae5ab19 100644
--- a/libavfilter/vf_guided.c
+++ b/libavfilter/vf_guided.c
@@ -61,10 +61,10 @@  typedef struct GuidedContext {
 static const AVOption guided_options[] = {
     { "radius", "set the box radius",                               OFFSET(radius), AV_OPT_TYPE_INT,   {.i64 = 3    },   1,           20, FLAGS },
     { "eps",    "set the regularization parameter (with square)",   OFFSET(eps),    AV_OPT_TYPE_FLOAT, {.dbl = 0.01 }, 0.0,            1, FLAGS },
-    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC},   0, NB_MODES - 1, FLAGS, "mode" },
+    { "mode",   "set filtering mode (0: basic mode; 1: fast mode)", OFFSET(mode),   AV_OPT_TYPE_INT,   {.i64 = BASIC}, BASIC, NB_MODES - 1, FLAGS, "mode" },
     { "basic",  "basic guided filter",                              0,              AV_OPT_TYPE_CONST, {.i64 = BASIC},   0,            0, FLAGS, "mode" },
     { "fast",   "fast guided filter",                               0,              AV_OPT_TYPE_CONST, {.i64 = FAST },   0,            0, FLAGS, "mode" },
-    { "sub",    "subsampling ratio",                                OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 1    },   1,           64, FLAGS },
+    { "sub",    "subsampling ratio for fast mode",                  OFFSET(sub),    AV_OPT_TYPE_INT,   {.i64 = 4    },   2,           64, FLAGS },
     { "planes", "set planes to filter",                             OFFSET(planes), AV_OPT_TYPE_INT,   {.i64=1      },   0,          0xF, FLAGS },
     { NULL }
 };
@@ -160,24 +160,14 @@  static int config_input(AVFilterLink *inlink)
     }
 
     if (s->mode == BASIC) {
-        if (s->sub != 1) {
-            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is 1 in basic mode.\n");
-            s->sub = 1;
-        }
+        s->sub = 1;
     }
     else if (s->mode == FAST) {
-        if (s->sub == 1) {
-            av_log(ctx, AV_LOG_WARNING, "Subsampling ratio is larger than 1 in fast mode.\n");
-            s->sub = 4;
-        }
-        if (s->radius >= s->sub)
-            s->radius = s->radius / s->sub;
-        else {
-            s->radius = 1;
-        }
-    }
-    else {
-        return AVERROR_BUG;
+       if (s->radius >= s->sub)
+           s->radius = s->radius / s->sub;
+       else {
+           s->radius = 1;
+       }
     }
 
     s->depth = desc->comp[0].depth;