mirror of https://git.ffmpeg.org/ffmpeg.git
lavfi/src_movie: switch to query_func2()
This commit is contained in:
parent
55c99fb9c4
commit
014a4214a9
|
@ -411,34 +411,36 @@ static av_cold void movie_uninit(AVFilterContext *ctx)
|
||||||
avformat_close_input(&movie->format_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 };
|
int list[] = { 0, -1 };
|
||||||
AVChannelLayout list64[] = { { 0 }, { 0 } };
|
AVChannelLayout list64[] = { { 0 }, { 0 } };
|
||||||
int i, ret;
|
int i, ret;
|
||||||
|
|
||||||
for (i = 0; i < ctx->nb_outputs; i++) {
|
for (i = 0; i < ctx->nb_outputs; i++) {
|
||||||
MovieStream *st = &movie->st[i];
|
const MovieStream *st = &movie->st[i];
|
||||||
AVCodecParameters *c = st->st->codecpar;
|
const AVCodecParameters *c = st->st->codecpar;
|
||||||
AVFilterLink *outlink = ctx->outputs[i];
|
AVFilterFormatsConfig *cfg = cfg_out[i];
|
||||||
|
|
||||||
switch (c->codec_type) {
|
switch (c->codec_type) {
|
||||||
case AVMEDIA_TYPE_VIDEO:
|
case AVMEDIA_TYPE_VIDEO:
|
||||||
list[0] = c->format;
|
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;
|
return ret;
|
||||||
break;
|
break;
|
||||||
case AVMEDIA_TYPE_AUDIO:
|
case AVMEDIA_TYPE_AUDIO:
|
||||||
list[0] = c->format;
|
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;
|
return ret;
|
||||||
list[0] = c->sample_rate;
|
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;
|
return ret;
|
||||||
list64[0] = c->ch_layout;
|
list64[0] = c->ch_layout;
|
||||||
if ((ret = ff_channel_layouts_ref(ff_make_channel_layout_list(list64),
|
if ((ret = ff_channel_layouts_ref(ff_make_channel_layout_list(list64),
|
||||||
&outlink->incfg.channel_layouts)) < 0)
|
&cfg->channel_layouts)) < 0)
|
||||||
return ret;
|
return ret;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -681,7 +683,7 @@ const AVFilter ff_avsrc_movie = {
|
||||||
.init = movie_common_init,
|
.init = movie_common_init,
|
||||||
.activate = activate,
|
.activate = activate,
|
||||||
.uninit = movie_uninit,
|
.uninit = movie_uninit,
|
||||||
FILTER_QUERY_FUNC(movie_query_formats),
|
FILTER_QUERY_FUNC2(movie_query_formats),
|
||||||
|
|
||||||
.inputs = NULL,
|
.inputs = NULL,
|
||||||
.outputs = NULL,
|
.outputs = NULL,
|
||||||
|
@ -701,7 +703,7 @@ const AVFilter ff_avsrc_amovie = {
|
||||||
.init = movie_common_init,
|
.init = movie_common_init,
|
||||||
.activate = activate,
|
.activate = activate,
|
||||||
.uninit = movie_uninit,
|
.uninit = movie_uninit,
|
||||||
FILTER_QUERY_FUNC(movie_query_formats),
|
FILTER_QUERY_FUNC2(movie_query_formats),
|
||||||
|
|
||||||
.inputs = NULL,
|
.inputs = NULL,
|
||||||
.outputs = NULL,
|
.outputs = NULL,
|
||||||
|
|
Loading…
Reference in New Issue