1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-08-10 06:10:52 +02:00

avfilter/af_loudnorm: simplify query_formats()

This commit is contained in:
Paul B Mahol
2022-11-17 10:55:31 +01:00
parent cc6312dd3b
commit 24cd4c9661

View File

@@ -730,35 +730,26 @@ static int activate(AVFilterContext *ctx)
static int query_formats(AVFilterContext *ctx) static int query_formats(AVFilterContext *ctx)
{ {
LoudNormContext *s = ctx->priv; LoudNormContext *s = ctx->priv;
AVFilterFormats *formats; AVFilterFormats *formats = NULL;
AVFilterLink *inlink = ctx->inputs[0];
AVFilterLink *outlink = ctx->outputs[0];
static const int input_srate[] = {192000, -1}; static const int input_srate[] = {192000, -1};
static const enum AVSampleFormat sample_fmts[] = {
AV_SAMPLE_FMT_DBL,
AV_SAMPLE_FMT_NONE
};
int ret = ff_set_common_all_channel_counts(ctx); int ret = ff_set_common_all_channel_counts(ctx);
if (ret < 0) if (ret < 0)
return ret; return ret;
ret = ff_set_common_formats_from_list(ctx, sample_fmts); ret = ff_add_format(&formats, AV_SAMPLE_FMT_DBL);
if (ret < 0) if (ret)
return ret;
ret = ff_set_common_formats(ctx, formats);
if (ret)
return ret; return ret;
if (s->frame_type != LINEAR_MODE) { if (s->frame_type != LINEAR_MODE) {
formats = ff_make_format_list(input_srate); formats = ff_make_format_list(input_srate);
if (!formats) } else {
return AVERROR(ENOMEM); formats = ff_all_samplerates();
ret = ff_formats_ref(formats, &inlink->outcfg.samplerates);
if (ret < 0)
return ret;
ret = ff_formats_ref(formats, &outlink->incfg.samplerates);
if (ret < 0)
return ret;
} }
return 0; return ff_set_common_samplerates(ctx, formats);
} }
static int config_input(AVFilterLink *inlink) static int config_input(AVFilterLink *inlink)