diff options
author | Anton Khirnov <anton@khirnov.net> | 2022-10-10 17:39:04 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2022-10-13 10:19:13 +0200 |
commit | 62bfcc340fbd8abe74973fe29b6d6da262306509 (patch) | |
tree | 80ac6fb148c96037d1aa4dc00d48e718be1ed8d6 | |
parent | 2feeb6d10307a7172b11568bf8bd605416759886 (diff) | |
download | ffmpeg-62bfcc340fbd8abe74973fe29b6d6da262306509.tar.gz |
lavfi/vf_estdif: drop a redundant context variable
It is only used in filter() and always set immediately before filter()
is called, so it can be passed as a parameter instead.
-rw-r--r-- | libavfilter/vf_estdif.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/libavfilter/vf_estdif.c b/libavfilter/vf_estdif.c index 9a3195fefb..9e826fd424 100644 --- a/libavfilter/vf_estdif.c +++ b/libavfilter/vf_estdif.c @@ -48,7 +48,6 @@ typedef struct ESTDIFContext { int max; int nb_planes; int nb_threads; - int64_t pts; AVFrame *prev; void (*interpolate)(struct ESTDIFContext *s, uint8_t *dst, @@ -433,7 +432,7 @@ static int deinterlace_slice(AVFilterContext *ctx, void *arg, return 0; } -static int filter(AVFilterContext *ctx, AVFrame *in) +static int filter(AVFilterContext *ctx, AVFrame *in, int64_t pts) { ESTDIFContext *s = ctx->priv; AVFilterLink *outlink = ctx->outputs[0]; @@ -445,7 +444,7 @@ static int filter(AVFilterContext *ctx, AVFrame *in) return AVERROR(ENOMEM); av_frame_copy_props(out, in); out->interlaced_frame = 0; - out->pts = s->pts; + out->pts = pts; td.out = out; td.in = in; ff_filter_execute(ctx, deinterlace_slice, &td, NULL, @@ -509,16 +508,14 @@ static int config_input(AVFilterLink *inlink) return ret; } - s->pts = s->prev->pts * 2; - ret = filter(ctx, s->prev); + ret = filter(ctx, s->prev, s->prev->pts * 2); if (ret < 0 || s->mode == 0) { av_frame_free(&s->prev); s->prev = in; return ret; } - s->pts = s->prev->pts + in->pts; - ret = filter(ctx, s->prev); + ret = filter(ctx, s->prev, s->prev->pts + in->pts); av_frame_free(&s->prev); s->prev = in; return ret; |