mirror of https://git.ffmpeg.org/ffmpeg.git
Merge commit '2ec112f71cd03ccab1b6f9a00d29199a57bcc7a5'
* commit '2ec112f71cd03ccab1b6f9a00d29199a57bcc7a5': vf_pad: fix x, y option expression evaluation Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
This commit is contained in:
commit
43266457b4
|
@ -123,12 +123,17 @@ static int config_input(AVFilterLink *inlink)
|
||||||
NULL, NULL, NULL, NULL, NULL, 0, ctx)) < 0)
|
NULL, NULL, NULL, NULL, NULL, 0, ctx)) < 0)
|
||||||
goto eval_fail;
|
goto eval_fail;
|
||||||
s->h = var_values[VAR_OUT_H] = var_values[VAR_OH] = res;
|
s->h = var_values[VAR_OUT_H] = var_values[VAR_OH] = res;
|
||||||
|
if (!s->h)
|
||||||
|
var_values[VAR_OUT_H] = var_values[VAR_OH] = s->h = inlink->h;
|
||||||
|
|
||||||
/* evaluate the width again, as it may depend on the evaluated output height */
|
/* evaluate the width again, as it may depend on the evaluated output height */
|
||||||
if ((ret = av_expr_parse_and_eval(&res, (expr = s->w_expr),
|
if ((ret = av_expr_parse_and_eval(&res, (expr = s->w_expr),
|
||||||
var_names, var_values,
|
var_names, var_values,
|
||||||
NULL, NULL, NULL, NULL, NULL, 0, ctx)) < 0)
|
NULL, NULL, NULL, NULL, NULL, 0, ctx)) < 0)
|
||||||
goto eval_fail;
|
goto eval_fail;
|
||||||
s->w = var_values[VAR_OUT_W] = var_values[VAR_OW] = res;
|
s->w = var_values[VAR_OUT_W] = var_values[VAR_OW] = res;
|
||||||
|
if (!s->w)
|
||||||
|
var_values[VAR_OUT_W] = var_values[VAR_OW] = s->w = inlink->w;
|
||||||
|
|
||||||
/* evaluate x and y */
|
/* evaluate x and y */
|
||||||
av_expr_parse_and_eval(&res, (expr = s->x_expr),
|
av_expr_parse_and_eval(&res, (expr = s->x_expr),
|
||||||
|
@ -153,11 +158,6 @@ static int config_input(AVFilterLink *inlink)
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!s->w)
|
|
||||||
s->w = inlink->w;
|
|
||||||
if (!s->h)
|
|
||||||
s->h = inlink->h;
|
|
||||||
|
|
||||||
s->w = ff_draw_round_to_sub(&s->draw, 0, -1, s->w);
|
s->w = ff_draw_round_to_sub(&s->draw, 0, -1, s->w);
|
||||||
s->h = ff_draw_round_to_sub(&s->draw, 1, -1, s->h);
|
s->h = ff_draw_round_to_sub(&s->draw, 1, -1, s->h);
|
||||||
s->x = ff_draw_round_to_sub(&s->draw, 0, -1, s->x);
|
s->x = ff_draw_round_to_sub(&s->draw, 0, -1, s->x);
|
||||||
|
|
Loading…
Reference in New Issue