AV_SAMPLE_FMT_NONE
};
AVFilterFormats *formats;
+ AVFilterChannelLayouts *layouts;
+ int ret;
if (!(formats = ff_make_format_list(sample_fmts)))
return AVERROR(ENOMEM);
+
+ layouts = ff_all_channel_counts();
+ if (!layouts)
+ return AVERROR(ENOMEM);
+ ret = ff_set_common_channel_layouts(ctx, layouts);
+ if (ret < 0)
+ return ret;
+
return ff_set_common_formats(ctx, formats);
}
{
AVFilterContext *ctx = inlink->dst;
VolDetectContext *vd = ctx->priv;
- int64_t layout = samples->channel_layout;
int nb_samples = samples->nb_samples;
- int nb_channels = av_get_channel_layout_nb_channels(layout);
+ int nb_channels = av_frame_get_channels(samples);
int nb_planes = nb_channels;
int plane, i;
int16_t *pcm;