From 90f65dc6cf65d1c849a9fa372ac2dda427a258e2 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Mon, 9 Apr 2012 06:05:50 +0200 Subject: vf_scale: support named constants for sws flags. --- libavfilter/vf_scale.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'libavfilter/vf_scale.c') diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c index a4da088936..85095b78d7 100644 --- a/libavfilter/vf_scale.c +++ b/libavfilter/vf_scale.c @@ -27,6 +27,7 @@ #include "libavutil/avstring.h" #include "libavutil/eval.h" #include "libavutil/mathematics.h" +#include "libavutil/opt.h" #include "libavutil/pixdesc.h" #include "libswscale/swscale.h" @@ -91,7 +92,15 @@ static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque) if (args) { sscanf(args, "%255[^:]:%255[^:]", scale->w_expr, scale->h_expr); p = strstr(args,"flags="); - if (p) scale->flags = strtoul(p+6, NULL, 0); + if (p) { + const AVClass *class = sws_get_class(); + const AVOption *o = av_opt_find(&class, "sws_flags", NULL, 0, + AV_OPT_SEARCH_FAKE_OBJ); + int ret = av_opt_eval_flags(&class, o, p + 6, &scale->flags); + + if (ret < 0) + return ret; + } } return 0; -- cgit v1.2.3