[FFmpeg-devel] [PATCH 3/4] avfilter: Deduplicate default video inputs/outputs

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Fri Aug 4 00:12:16 EEST 2023


Marvin Scholz:
> 
> 
> On 3 Aug 2023, at 16:33, Andreas Rheinhardt wrote:
> 
>> Lots of video filters use a very simple input or output:
>> An array with a single AVFilterPad whose name is "default"
>> and whose type is AVMEDIA_TYPE_VIDEO; 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 (8312B here) as well as relocations.
>>
>> *: In fact, several filters (like the filters in vf_lut.c)
>> already use the same outputs; 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 <andreas.rheinhardt at outlook.com>
>> ---
> 
> [...]
> 
>> +#include "internal.h"
>> +
>> +/* An AVFilterPad array whose only entry has name "default"
>> + * and is of type video. */
>> +extern const AVFilterPad ff_video_default_filterpad[1];
> 
> This should probably be a Doxygen comment.
> 

Changed it and the audio one in patch #1 locally to:
/**
 * An AVFilterPad array whose only entry has name "default"
 * and is of type AVMEDIA_TYPE_VIDEO.
 */

- Andreas



More information about the ffmpeg-devel mailing list