avfilter/vf_scale: apply generic options after flags.
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 8 Aug 2015 12:43:12 +0000 (14:43 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 8 Aug 2015 12:44:15 +0000 (14:44 +0200)
Otherwise the flags overwrite anything set by the generic stuff to the flags

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavfilter/vf_scale.c

index d4c0be2..ac2efe3 100644 (file)
@@ -356,15 +356,6 @@ static int config_props(AVFilterLink *outlink)
             if (!*s)
                 return AVERROR(ENOMEM);
 
-            if (scale->opts) {
-                AVDictionaryEntry *e = NULL;
-
-                while ((e = av_dict_get(scale->opts, "", e, AV_DICT_IGNORE_SUFFIX))) {
-                    if ((ret = av_opt_set(*s, e->key, e->value, 0)) < 0)
-                        return ret;
-                }
-            }
-
             av_opt_set_int(*s, "srcw", inlink ->w, 0);
             av_opt_set_int(*s, "srch", inlink ->h >> !!i, 0);
             av_opt_set_int(*s, "src_format", inlink->format, 0);
@@ -373,6 +364,13 @@ static int config_props(AVFilterLink *outlink)
             av_opt_set_int(*s, "dst_format", outfmt, 0);
             av_opt_set_int(*s, "sws_flags", scale->flags, 0);
 
+            if (scale->opts) {
+                AVDictionaryEntry *e = NULL;
+                while ((e = av_dict_get(scale->opts, "", e, AV_DICT_IGNORE_SUFFIX))) {
+                    if ((ret = av_opt_set(*s, e->key, e->value, 0)) < 0)
+                        return ret;
+                }
+            }
             /* Override YUV420P settings to have the correct (MPEG-2) chroma positions
              * MPEG-2 chroma positions are used by convention
              * XXX: support other 4:2:0 pixel formats */