diff options
Diffstat (limited to 'libavfilter/af_aformat.c')
-rw-r--r-- | libavfilter/af_aformat.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/libavfilter/af_aformat.c b/libavfilter/af_aformat.c index 5fd0308d79..4fdcb09d2d 100644 --- a/libavfilter/af_aformat.c +++ b/libavfilter/af_aformat.c @@ -108,15 +108,18 @@ static av_cold int init(AVFilterContext *ctx) static int query_formats(AVFilterContext *ctx) { AFormatContext *s = ctx->priv; + int ret; - ff_set_common_formats(ctx, s->formats ? s->formats : + ret = ff_set_common_formats(ctx, s->formats ? s->formats : ff_all_formats(AVMEDIA_TYPE_AUDIO)); - ff_set_common_samplerates(ctx, s->sample_rates ? s->sample_rates : + if (ret < 0) + return ret; + ret = ff_set_common_samplerates(ctx, s->sample_rates ? s->sample_rates : ff_all_samplerates()); - ff_set_common_channel_layouts(ctx, s->channel_layouts ? s->channel_layouts : + if (ret < 0) + return ret; + return ff_set_common_channel_layouts(ctx, s->channel_layouts ? s->channel_layouts : ff_all_channel_counts()); - - return 0; } static const AVFilterPad avfilter_af_aformat_inputs[] = { |