diff options
author | Clément Bœsch <ubitux@gmail.com> | 2013-03-13 04:21:53 +0100 |
---|---|---|
committer | Clément Bœsch <ubitux@gmail.com> | 2013-03-13 19:00:10 +0100 |
commit | de3e0ab35f5e14870e8d14a7e796172b36aba101 (patch) | |
tree | ce5f36ced2ee2454a17135b7cf8e39f1ea85b652 /libavfilter | |
parent | 20dab078e6ea69c381070eb45600109d4dacac70 (diff) | |
download | ffmpeg-de3e0ab35f5e14870e8d14a7e796172b36aba101.tar.gz |
lavfi/delogo: remove sscanf and rely on av_opt_set_from_string() only.
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/vf_delogo.c | 13 |
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); |