aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Bœsch2013-03-13 04:21:53 +0100
committerClément Bœsch2013-03-13 19:00:10 +0100
commitde3e0ab35f5e14870e8d14a7e796172b36aba101 (patch)
treece5f36ced2ee2454a17135b7cf8e39f1ea85b652
parent20dab078e6ea69c381070eb45600109d4dacac70 (diff)
lavfi/delogo: remove sscanf and rely on av_opt_set_from_string() only.
-rw-r--r--libavfilter/vf_delogo.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/libavfilter/vf_delogo.c b/libavfilter/vf_delogo.c
index 10dbc14120..946008e614 100644
--- a/libavfilter/vf_delogo.c
+++ b/libavfilter/vf_delogo.c
@@ -172,17 +172,12 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
{
DelogoContext *delogo = ctx->priv;
int ret = 0;
+ static const char *shorthand[] = { "x", "y", "w", "h", "band" };
delogo->class = &delogo_class;
av_opt_set_defaults(delogo);
- if (args)
- ret = sscanf(args, "%d:%d:%d:%d:%d",
- &delogo->x, &delogo->y, &delogo->w, &delogo->h, &delogo->band);
- if (ret == 5) {
- if (delogo->band < 0)
- delogo->show = 1;
- } else if ((ret = (av_set_options_string(delogo, args, "=", ":"))) < 0)
+ if ((ret = av_opt_set_from_string(delogo, args, shorthand, "=", ":")) < 0)
return ret;
#define CHECK_UNSET_OPT(opt) \
@@ -195,8 +190,10 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
CHECK_UNSET_OPT(w);
CHECK_UNSET_OPT(h);
- if (delogo->show)
+ if (delogo->band < 0 || delogo->show) {
+ delogo->show = 1;
delogo->band = 4;
+ }
av_log(ctx, AV_LOG_VERBOSE, "x:%d y:%d, w:%d h:%d band:%d show:%d\n",
delogo->x, delogo->y, delogo->w, delogo->h, delogo->band, delogo->show);