mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-03-03 02:58:02 +00:00
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);
|
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 :
|
enum AVMediaType type = ctx->inputs && ctx->inputs [0] ? ctx->inputs [0]->type :
|
||||||
ctx->outputs && ctx->outputs[0] ? ctx->outputs[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));
|
ff_set_common_formats(ctx, ff_all_formats(type));
|
||||||
if (type == AVMEDIA_TYPE_AUDIO) {
|
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());
|
ff_set_common_samplerates(ctx, ff_all_samplerates());
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
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 */
|
/* internal functions for parsing audio format arguments */
|
||||||
|
|
||||||
int ff_parse_pixel_format(enum AVPixelFormat *ret, const char *arg, void *log_ctx)
|
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);
|
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
|
* Create a list of supported formats. This is intended for use in
|
||||||
|
Loading…
Reference in New Issue
Block a user