lavfi/blend: merge config_input_top into config_output

Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
Paul B Mahol 2013-05-02 12:15:39 +00:00
parent 990b13806d
commit a64c9afe3d

View File

@ -295,13 +295,15 @@ static int config_output(AVFilterLink *outlink)
AVFilterContext *ctx = outlink->src; AVFilterContext *ctx = outlink->src;
AVFilterLink *toplink = ctx->inputs[TOP]; AVFilterLink *toplink = ctx->inputs[TOP];
AVFilterLink *bottomlink = ctx->inputs[BOTTOM]; AVFilterLink *bottomlink = ctx->inputs[BOTTOM];
BlendContext *b = ctx->priv;
const AVPixFmtDescriptor *pix_desc = av_pix_fmt_desc_get(toplink->format);
if (toplink->format != bottomlink->format) { if (toplink->format != bottomlink->format) {
av_log(ctx, AV_LOG_ERROR, "inputs must be of same pixel format\n"); av_log(ctx, AV_LOG_ERROR, "inputs must be of same pixel format\n");
return AVERROR(EINVAL); return AVERROR(EINVAL);
} }
if (toplink->w != bottomlink->w || if (toplink->w != bottomlink->w ||
toplink->h != bottomlink->h || toplink->h != bottomlink->h ||
toplink->sample_aspect_ratio.num != bottomlink->sample_aspect_ratio.num || toplink->sample_aspect_ratio.num != bottomlink->sample_aspect_ratio.num ||
toplink->sample_aspect_ratio.den != bottomlink->sample_aspect_ratio.den) { toplink->sample_aspect_ratio.den != bottomlink->sample_aspect_ratio.den) {
av_log(ctx, AV_LOG_ERROR, "First input link %s parameters " av_log(ctx, AV_LOG_ERROR, "First input link %s parameters "
@ -317,21 +319,15 @@ static int config_output(AVFilterLink *outlink)
} }
outlink->w = toplink->w; outlink->w = toplink->w;
outlink->h = bottomlink->h; outlink->h = toplink->h;
outlink->time_base = toplink->time_base; outlink->time_base = toplink->time_base;
outlink->sample_aspect_ratio = toplink->sample_aspect_ratio; outlink->sample_aspect_ratio = toplink->sample_aspect_ratio;
outlink->frame_rate = toplink->frame_rate; outlink->frame_rate = toplink->frame_rate;
return 0;
}
static int config_input_top(AVFilterLink *inlink)
{
BlendContext *b = inlink->dst->priv;
const AVPixFmtDescriptor *pix_desc = av_pix_fmt_desc_get(inlink->format);
b->hsub = pix_desc->log2_chroma_w; b->hsub = pix_desc->log2_chroma_w;
b->vsub = pix_desc->log2_chroma_h; b->vsub = pix_desc->log2_chroma_h;
b->nb_planes = av_pix_fmt_count_planes(inlink->format); b->nb_planes = av_pix_fmt_count_planes(toplink->format);
return 0; return 0;
} }
@ -435,7 +431,6 @@ static const AVFilterPad blend_inputs[] = {
{ {
.name = "top", .name = "top",
.type = AVMEDIA_TYPE_VIDEO, .type = AVMEDIA_TYPE_VIDEO,
.config_props = config_input_top,
.filter_frame = filter_frame, .filter_frame = filter_frame,
},{ },{
.name = "bottom", .name = "bottom",