Unified · Split
| @@ -121,9 +121,11 @@ static av_cold int init(AVFilterContext *ctx) · 120 unmodified lines | |||
| 121 | return 0; | 121 | return 0; |
| 122 | } | 122 | } |
| 123 | 123 | ||
| 124 | static int query_formats(AVFilterContext *ctx) | 124 | static int query_formats(const AVFilterContext *ctx, |
| 125 | AVFilterFormatsConfig **cfg_in, | ||
| 126 | AVFilterFormatsConfig **cfg_out) | ||
| 125 | { | 127 | { |
| 126 | MergePlanesContext *s = ctx->priv; | 128 | const MergePlanesContext *s = ctx->priv; |
| 127 | AVFilterFormats *formats = NULL; | 129 | AVFilterFormats *formats = NULL; |
| 128 | int i, ret; | 130 | int i, ret; |
| 129 | 131 | ||
| @@ -137,12 +139,12 @@ static int query_formats(AVFilterContext *ctx) · 7 unmodified lines | |||
| 137 | } | 139 | } |
| 138 | 140 | ||
| 139 | for (i = 0; i < s->nb_inputs; i++) | 141 | for (i = 0; i < s->nb_inputs; i++) |
| 140 | if ((ret = ff_formats_ref(formats, &ctx->inputs[i]->outcfg.formats)) < 0) | 142 | if ((ret = ff_formats_ref(formats, &cfg_in[i]->formats)) < 0) |
| 141 | return ret; | 143 | return ret; |
| 142 | 144 | ||
| 143 | formats = NULL; | 145 | formats = NULL; |
| 144 | if ((ret = ff_add_format(&formats, s->out_fmt)) < 0 || | 146 | if ((ret = ff_add_format(&formats, s->out_fmt)) < 0 || |
| 145 | (ret = ff_formats_ref(formats, &ctx->outputs[0]->incfg.formats)) < 0) | 147 | (ret = ff_formats_ref(formats, &cfg_out[0]->formats)) < 0) |
| 146 | return ret; | 148 | return ret; |
| 147 | 149 | ||
| 148 | return 0; | 150 | return 0; |
| @@ -318,6 +320,6 @@ const AVFilter ff_vf_mergeplanes = { · 169 unmodified lines | |||
| 318 | .activate = activate, | 320 | .activate = activate, |
| 319 | .inputs = NULL, | 321 | .inputs = NULL, |
| 320 | FILTER_OUTPUTS(mergeplanes_outputs), | 322 | FILTER_OUTPUTS(mergeplanes_outputs), |
| 321 | FILTER_QUERY_FUNC(query_formats), | 323 | FILTER_QUERY_FUNC2(query_formats), |
| 322 | .flags = AVFILTER_FLAG_DYNAMIC_INPUTS, | 324 | .flags = AVFILTER_FLAG_DYNAMIC_INPUTS, |
| 323 | }; | 325 | }; |