lavfi/src_movie: switch to query_func2()

This commit is contained in:
Anton Khirnov 2024-10-01 12:02:29 +02:00
parent 55c99fb9c4
commit 014a4214a9

View File

@ -411,34 +411,36 @@ static av_cold void movie_uninit(AVFilterContext *ctx)
avformat_close_input(&movie->format_ctx);
}
static int movie_query_formats(AVFilterContext *ctx)
static int movie_query_formats(const AVFilterContext *ctx,
AVFilterFormatsConfig **cfg_in,
AVFilterFormatsConfig **cfg_out)
{
MovieContext *movie = ctx->priv;
const MovieContext *movie = ctx->priv;
int list[] = { 0, -1 };
AVChannelLayout list64[] = { { 0 }, { 0 } };
int i, ret;
for (i = 0; i < ctx->nb_outputs; i++) {
MovieStream *st = &movie->st[i];
AVCodecParameters *c = st->st->codecpar;
AVFilterLink *outlink = ctx->outputs[i];
const MovieStream *st = &movie->st[i];
const AVCodecParameters *c = st->st->codecpar;
AVFilterFormatsConfig *cfg = cfg_out[i];
switch (c->codec_type) {
case AVMEDIA_TYPE_VIDEO:
list[0] = c->format;
if ((ret = ff_formats_ref(ff_make_format_list(list), &outlink->incfg.formats)) < 0)
if ((ret = ff_formats_ref(ff_make_format_list(list), &cfg->formats)) < 0)
return ret;
break;
case AVMEDIA_TYPE_AUDIO:
list[0] = c->format;
if ((ret = ff_formats_ref(ff_make_format_list(list), &outlink->incfg.formats)) < 0)
if ((ret = ff_formats_ref(ff_make_format_list(list), &cfg->formats)) < 0)
return ret;
list[0] = c->sample_rate;
if ((ret = ff_formats_ref(ff_make_format_list(list), &outlink->incfg.samplerates)) < 0)
if ((ret = ff_formats_ref(ff_make_format_list(list), &cfg->samplerates)) < 0)
return ret;
list64[0] = c->ch_layout;
if ((ret = ff_channel_layouts_ref(ff_make_channel_layout_list(list64),
&outlink->incfg.channel_layouts)) < 0)
&cfg->channel_layouts)) < 0)
return ret;
break;
}
@ -681,7 +683,7 @@ const AVFilter ff_avsrc_movie = {
.init = movie_common_init,
.activate = activate,
.uninit = movie_uninit,
FILTER_QUERY_FUNC(movie_query_formats),
FILTER_QUERY_FUNC2(movie_query_formats),
.inputs = NULL,
.outputs = NULL,
@ -701,7 +703,7 @@ const AVFilter ff_avsrc_amovie = {
.init = movie_common_init,
.activate = activate,
.uninit = movie_uninit,
FILTER_QUERY_FUNC(movie_query_formats),
FILTER_QUERY_FUNC2(movie_query_formats),
.inputs = NULL,
.outputs = NULL,