From 50ea7389ecae321ea6c4c585b8f721b84bd64a1d Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Thu, 3 Aug 2023 00:59:02 +0200 Subject: avfilter: Deduplicate default audio inputs/outputs Lots of audio filters use very simple inputs or outputs: An array with a single AVFilterPad whose name is "default" and whose type is AVMEDIA_TYPE_AUDIO; everything else is unset. Given that we never use pointer equality for inputs or outputs*, we can simply use a single AVFilterPad instead of dozens; this even saves .data.rel.ro (4784B here) as well as relocations. *: In fact, several filters (like the filters in af_biquads.c) already use the same inputs; furthermore, ff_filter_alloc() duplicates the input and output pads so that we do not even work with the pads directly. Signed-off-by: Andreas Rheinhardt --- libavfilter/af_virtualbass.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'libavfilter/af_virtualbass.c') diff --git a/libavfilter/af_virtualbass.c b/libavfilter/af_virtualbass.c index 76b3f42030..fb7189d364 100644 --- a/libavfilter/af_virtualbass.c +++ b/libavfilter/af_virtualbass.c @@ -163,20 +163,13 @@ static const AVFilterPad inputs[] = { }, }; -static const AVFilterPad outputs[] = { - { - .name = "default", - .type = AVMEDIA_TYPE_AUDIO, - }, -}; - const AVFilter ff_af_virtualbass = { .name = "virtualbass", .description = NULL_IF_CONFIG_SMALL("Audio Virtual Bass."), .priv_size = sizeof(AudioVirtualBassContext), .priv_class = &virtualbass_class, FILTER_INPUTS(inputs), - FILTER_OUTPUTS(outputs), + FILTER_OUTPUTS(ff_audio_default_filterpad), FILTER_QUERY_FUNC(query_formats), .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, .process_command = ff_filter_process_command, -- cgit v1.2.3