On 10/10/19, Limin Wang <lance.lmw...@gmail.com> wrote:
> On Thu, Oct 10, 2019 at 01:38:41PM +0200, Paul B Mahol wrote:
>> Signed-off-by: Paul B Mahol <one...@gmail.com>
>> ---
>>  libavfilter/af_anlms.c | 35 ++++++++++-------------------------
>>  1 file changed, 10 insertions(+), 25 deletions(-)
>>
>> diff --git a/libavfilter/af_anlms.c b/libavfilter/af_anlms.c
>> index 350bedaf7a..55e6946b68 100644
>> --- a/libavfilter/af_anlms.c
>> +++ b/libavfilter/af_anlms.c
>> @@ -60,17 +60,18 @@ typedef struct AudioNLMSContext {
>>
>>  #define OFFSET(x) offsetof(AudioNLMSContext, x)
>>  #define A AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
>> +#define AT
>> AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_RUNTIME_PARAM
>>
>>  static const AVOption anlms_options[] = {
>>      { "order",   "set the filter order",   OFFSET(order),
>> AV_OPT_TYPE_INT,   {.i64=256},  1, INT16_MAX, A },
>> -    { "mu",      "set the filter mu",      OFFSET(mu),
>> AV_OPT_TYPE_FLOAT, {.dbl=0.75}, 0, 2, A },
>> -    { "eps",     "set the filter eps",     OFFSET(eps),
>> AV_OPT_TYPE_FLOAT, {.dbl=1},    0, 1, A },
>> -    { "leakage", "set the filter leakage", OFFSET(leakage),
>> AV_OPT_TYPE_FLOAT, {.dbl=0},    0, 1, A },
>> -    { "out_mode", "set output mode",       OFFSET(output_mode),
>> AV_OPT_TYPE_INT, {.i64=OUT_MODE}, 0, NB_OMODES-1, A, "mode" },
>> -    {  "i", "input",                 0,          AV_OPT_TYPE_CONST,
>> {.i64=IN_MODE},      0, 0, A, "mode" },
>> -    {  "d", "desired",               0,          AV_OPT_TYPE_CONST,
>> {.i64=DESIRED_MODE}, 0, 0, A, "mode" },
>> -    {  "o", "output",                0,          AV_OPT_TYPE_CONST,
>> {.i64=OUT_MODE},     0, 0, A, "mode" },
>> -    {  "n", "noise",                 0,          AV_OPT_TYPE_CONST,
>> {.i64=NOISE_MODE},   0, 0, A, "mode" },
>> +    { "mu",      "set the filter mu",      OFFSET(mu),
>> AV_OPT_TYPE_FLOAT, {.dbl=0.75}, 0, 2, AT },
>> +    { "eps",     "set the filter eps",     OFFSET(eps),
>> AV_OPT_TYPE_FLOAT, {.dbl=1},    0, 1, AT },
>> +    { "leakage", "set the filter leakage", OFFSET(leakage),
>> AV_OPT_TYPE_FLOAT, {.dbl=0},    0, 1, AT },
>> +    { "out_mode", "set output mode",       OFFSET(output_mode),
>> AV_OPT_TYPE_INT, {.i64=OUT_MODE}, 0, NB_OMODES-1, AT, "mode" },
>> +    {  "i", "input",                 0,          AV_OPT_TYPE_CONST,
>> {.i64=IN_MODE},      0, 0, AT, "mode" },
>> +    {  "d", "desired",               0,          AV_OPT_TYPE_CONST,
>> {.i64=DESIRED_MODE}, 0, 0, AT, "mode" },
>> +    {  "o", "output",                0,          AV_OPT_TYPE_CONST,
>> {.i64=OUT_MODE},     0, 0, AT, "mode" },
>> +    {  "n", "noise",                 0,          AV_OPT_TYPE_CONST,
>> {.i64=NOISE_MODE},   0, 0, AT, "mode" },
>>      { NULL }
>>  };
>>
>> @@ -281,22 +282,6 @@ static av_cold int init(AVFilterContext *ctx)
>>      return 0;
>>  }
>>
>> -static int process_command(AVFilterContext *ctx, const char *cmd, const
>> char *args,
>> -                           char *res, int res_len, int flags)
>> -{
>> -    AudioNLMSContext *s = ctx->priv;
>> -    int ret;
>> -
>> -    if (   !strcmp(cmd, "mu") || !strcmp(cmd, "eps")
>> -        || !strcmp(cmd, "leakage") || !strcmp(cmd, "out_mode")) {
>> -        ret = av_opt_set(s, cmd, args, 0);
>> -    } else {
>> -        ret = AVERROR(ENOSYS);
>> -    }
>> -
>> -    return ret;
>> -}
>> -
>>  static av_cold void uninit(AVFilterContext *ctx)
>>  {
>>      AudioNLMSContext *s = ctx->priv;
>> @@ -341,5 +326,5 @@ AVFilter ff_af_anlms = {
>>      .inputs         = inputs,
>>      .outputs        = outputs,
>>      .flags          = AVFILTER_FLAG_SLICE_THREADS,
>> -    .process_command = process_command,
>> +    .process_command = ff_filter_process_command,
> Can we delete the line directly, if default is ff_filter_process_command,
> then we don't need to assign .process_command and make it default if the
> runtime flags is set?

No, because this is used to show which filters support commands.
With your approach that would be lost, or some other thing would need
to mark it.

>
>>  };
>> --
>> 2.17.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-requ...@ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to