mirror of https://git.ffmpeg.org/ffmpeg.git
lavfi: implement ff_query_formats_all().
This commit is contained in:
parent
7bb98b753b
commit
b6b2f3433c
|
@ -516,7 +516,8 @@ void ff_set_common_formats(AVFilterContext *ctx, AVFilterFormats *formats)
|
|||
ff_formats_ref, formats);
|
||||
}
|
||||
|
||||
int ff_default_query_formats(AVFilterContext *ctx)
|
||||
static int default_query_formats_common(AVFilterContext *ctx,
|
||||
AVFilterChannelLayouts *(layouts)(void))
|
||||
{
|
||||
enum AVMediaType type = ctx->inputs && ctx->inputs [0] ? ctx->inputs [0]->type :
|
||||
ctx->outputs && ctx->outputs[0] ? ctx->outputs[0]->type :
|
||||
|
@ -524,13 +525,23 @@ int ff_default_query_formats(AVFilterContext *ctx)
|
|||
|
||||
ff_set_common_formats(ctx, ff_all_formats(type));
|
||||
if (type == AVMEDIA_TYPE_AUDIO) {
|
||||
ff_set_common_channel_layouts(ctx, ff_all_channel_layouts());
|
||||
ff_set_common_channel_layouts(ctx, layouts());
|
||||
ff_set_common_samplerates(ctx, ff_all_samplerates());
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ff_default_query_formats(AVFilterContext *ctx)
|
||||
{
|
||||
return default_query_formats_common(ctx, ff_all_channel_layouts);
|
||||
}
|
||||
|
||||
int ff_query_formats_all(AVFilterContext *ctx)
|
||||
{
|
||||
return default_query_formats_common(ctx, ff_all_channel_counts);
|
||||
}
|
||||
|
||||
/* internal functions for parsing audio format arguments */
|
||||
|
||||
int ff_parse_pixel_format(enum AVPixelFormat *ret, const char *arg, void *log_ctx)
|
||||
|
|
|
@ -172,6 +172,14 @@ void ff_channel_layouts_changeref(AVFilterChannelLayouts **oldref,
|
|||
|
||||
int ff_default_query_formats(AVFilterContext *ctx);
|
||||
|
||||
/**
|
||||
* Set the formats list to all existing formats.
|
||||
* This function behaves like ff_default_query_formats(), except it also
|
||||
* accepts channel layouts with unknown disposition. It should only be used
|
||||
* with audio filters.
|
||||
*/
|
||||
int ff_query_formats_all(AVFilterContext *ctx);
|
||||
|
||||
|
||||
/**
|
||||
* Create a list of supported formats. This is intended for use in
|
||||
|
|
Loading…
Reference in New Issue