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

avfilter/vf_alphamerge: add timeline support

parent a8d82cc2
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include <string.h> #include <string.h>
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "libavutil/opt.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "avfilter.h" #include "avfilter.h"
#include "drawutils.h" #include "drawutils.h"
...@@ -154,7 +155,8 @@ static int activate(AVFilterContext *ctx) ...@@ -154,7 +155,8 @@ static int activate(AVFilterContext *ctx)
} }
if (s->main_frame && s->alpha_frame) { if (s->main_frame && s->alpha_frame) {
draw_frame(ctx, s->main_frame, s->alpha_frame); if (!ctx->is_disabled)
draw_frame(ctx, s->main_frame, s->alpha_frame);
ret = ff_filter_frame(outlink, s->main_frame); ret = ff_filter_frame(outlink, s->main_frame);
av_frame_free(&s->alpha_frame); av_frame_free(&s->alpha_frame);
s->main_frame = NULL; s->main_frame = NULL;
...@@ -203,13 +205,21 @@ static const AVFilterPad alphamerge_outputs[] = { ...@@ -203,13 +205,21 @@ static const AVFilterPad alphamerge_outputs[] = {
{ NULL } { NULL }
}; };
static const AVOption alphamerge_options[] = {
{ NULL }
};
AVFILTER_DEFINE_CLASS(alphamerge);
AVFilter ff_vf_alphamerge = { AVFilter ff_vf_alphamerge = {
.name = "alphamerge", .name = "alphamerge",
.description = NULL_IF_CONFIG_SMALL("Copy the luma value of the second " .description = NULL_IF_CONFIG_SMALL("Copy the luma value of the second "
"input into the alpha channel of the first input."), "input into the alpha channel of the first input."),
.priv_size = sizeof(AlphaMergeContext), .priv_size = sizeof(AlphaMergeContext),
.priv_class = &alphamerge_class,
.query_formats = query_formats, .query_formats = query_formats,
.inputs = alphamerge_inputs, .inputs = alphamerge_inputs,
.outputs = alphamerge_outputs, .outputs = alphamerge_outputs,
.activate = activate, .activate = activate,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
}; };
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