mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-23 15:53:08 +00:00
avfilter/vf_vignette: force per frame evaluation if per frame variables are used
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
828759ed9a
commit
f8fa392a2e
@ -169,15 +169,20 @@ static void update_context(VignetteContext *s, AVFilterLink *inlink, AVFrame *fr
|
||||
s->var_values[VAR_T] = TS2T(frame->pts, inlink->time_base);
|
||||
s->var_values[VAR_PTS] = TS2D(frame->pts);
|
||||
} else {
|
||||
s->var_values[VAR_N] = 0;
|
||||
s->var_values[VAR_N] = NAN;
|
||||
s->var_values[VAR_T] = NAN;
|
||||
s->var_values[VAR_PTS] = NAN;
|
||||
}
|
||||
|
||||
s->angle = av_clipf(av_expr_eval(s->angle_pexpr, s->var_values, NULL), 0, M_PI_2);
|
||||
s->angle = av_expr_eval(s->angle_pexpr, s->var_values, NULL);
|
||||
s->x0 = av_expr_eval(s->x0_pexpr, s->var_values, NULL);
|
||||
s->y0 = av_expr_eval(s->y0_pexpr, s->var_values, NULL);
|
||||
|
||||
if (isnan(s->x0) || isnan(s->y0) || isnan(s->angle))
|
||||
s->eval_mode = EVAL_MODE_FRAME;
|
||||
|
||||
s->angle = av_clipf(s->angle, 0, M_PI_2);
|
||||
|
||||
if (s->backward) {
|
||||
for (y = 0; y < inlink->h; y++) {
|
||||
for (x = 0; x < inlink->w; x++)
|
||||
|
Loading…
Reference in New Issue
Block a user