Commit a27cab9e authored by Paul B Mahol's avatar Paul B Mahol

avfilter/vf_blend: add timeline support to tblend filter

Signed-off-by: 's avatarPaul B Mahol <onemda@gmail.com>
parent 1548d2a5
...@@ -626,11 +626,17 @@ AVFilter ff_vf_blend = { ...@@ -626,11 +626,17 @@ AVFilter ff_vf_blend = {
static int tblend_filter_frame(AVFilterLink *inlink, AVFrame *frame) static int tblend_filter_frame(AVFilterLink *inlink, AVFrame *frame)
{ {
BlendContext *s = inlink->dst->priv; AVFilterContext *ctx = inlink->dst;
AVFilterLink *outlink = inlink->dst->outputs[0]; BlendContext *s = ctx->priv;
AVFilterLink *outlink = ctx->outputs[0];
if (s->prev_frame) { if (s->prev_frame) {
AVFrame *out = blend_frame(inlink->dst, frame, s->prev_frame); AVFrame *out;
if (ctx->is_disabled)
out = av_frame_clone(frame);
else
out = blend_frame(ctx, frame, s->prev_frame);
av_frame_free(&s->prev_frame); av_frame_free(&s->prev_frame);
s->prev_frame = frame; s->prev_frame = frame;
return ff_filter_frame(outlink, out); return ff_filter_frame(outlink, out);
...@@ -674,7 +680,7 @@ AVFilter ff_vf_tblend = { ...@@ -674,7 +680,7 @@ AVFilter ff_vf_tblend = {
.uninit = uninit, .uninit = uninit,
.inputs = tblend_inputs, .inputs = tblend_inputs,
.outputs = tblend_outputs, .outputs = tblend_outputs,
.flags = AVFILTER_FLAG_SLICE_THREADS, .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
}; };
#endif #endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment