mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-26 01:02:33 +00:00
lavfi/blend: merge config_input_top into config_output
Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
parent
990b13806d
commit
a64c9afe3d
@ -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",
|
||||||
|
Loading…
Reference in New Issue
Block a user