avfilter/avfilter: Add numbers of (in|out)pads directly to AVFilter

Up until now, an AVFilter's lists of input and output AVFilterPads
were terminated by a sentinel and the only way to get the length
of these lists was by using avfilter_pad_count(). This has two
drawbacks: first, sizeof(AVFilterPad) is not negligible
(i.e. 64B on 64bit systems); second, getting the size involves
a function call instead of just reading the data.

This commit therefore changes this. The sentinels are removed and new
private fields nb_inputs and nb_outputs are added to AVFilter that
contain the number of elements of the respective AVFilterPad array.

Given that AVFilter.(in|out)puts are the only arrays of zero-terminated
AVFilterPads an API user has access to (AVFilterContext.(in|out)put_pads
are not zero-terminated and they already have a size field) the argument
to avfilter_pad_count() is always one of these lists, so it just has to
find the filter the list belongs to and read said number. This is slower
than before, but a replacement function that just reads the internal numbers
that users are expected to switch to will be added soon; and furthermore,
avfilter_pad_count() is probably never called in hot loops anyway.

This saves about 49KiB from the binary; notice that these sentinels are
not in .bss despite being zeroed: they are in .data.rel.ro due to the
non-sentinels.

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
Andreas Rheinhardt 2021-08-12 13:05:31 +02:00
parent d53d48c799
commit 8be701d9f7
389 changed files with 906 additions and 1696 deletions

View File

@ -307,7 +307,6 @@ static const AVFilterPad aevalsrc_outputs[] = {
.config_props = config_props,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_asrc_aevalsrc = {
@ -318,7 +317,7 @@ const AVFilter ff_asrc_aevalsrc = {
.uninit = uninit,
.priv_size = sizeof(EvalContext),
.inputs = NULL,
.outputs = aevalsrc_outputs,
FILTER_OUTPUTS(aevalsrc_outputs),
.priv_class = &aevalsrc_class,
};
@ -445,7 +444,6 @@ static const AVFilterPad aeval_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad aeval_outputs[] = {
@ -454,7 +452,6 @@ static const AVFilterPad aeval_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = aeval_config_output,
},
{ NULL }
};
const AVFilter ff_af_aeval = {
@ -464,8 +461,8 @@ const AVFilter ff_af_aeval = {
.init = init,
.uninit = uninit,
.priv_size = sizeof(EvalContext),
.inputs = aeval_inputs,
.outputs = aeval_outputs,
FILTER_INPUTS(aeval_inputs),
FILTER_OUTPUTS(aeval_outputs),
.priv_class = &aeval_class,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
};

View File

@ -187,7 +187,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -195,7 +194,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_acontrast = {
@ -204,6 +202,6 @@ const AVFilter ff_af_acontrast = {
.query_formats = query_formats,
.priv_size = sizeof(AudioContrastContext),
.priv_class = &acontrast_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -51,7 +51,6 @@ static const AVFilterPad acopy_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad acopy_outputs[] = {
@ -59,12 +58,11 @@ static const AVFilterPad acopy_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_acopy = {
.name = "acopy",
.description = NULL_IF_CONFIG_SMALL("Copy the input audio unchanged to the output."),
.inputs = acopy_inputs,
.outputs = acopy_outputs,
FILTER_INPUTS(acopy_inputs),
FILTER_OUTPUTS(acopy_outputs),
};

View File

@ -555,7 +555,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
const AVFilter ff_af_acrossover = {
@ -566,7 +565,7 @@ const AVFilter ff_af_acrossover = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = inputs,
FILTER_INPUTS(inputs),
.outputs = NULL,
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -342,7 +342,6 @@ static const AVFilterPad avfilter_af_acrusher_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_acrusher_outputs[] = {
@ -350,7 +349,6 @@ static const AVFilterPad avfilter_af_acrusher_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_acrusher = {
@ -360,7 +358,7 @@ const AVFilter ff_af_acrusher = {
.priv_class = &acrusher_class,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_acrusher_inputs,
.outputs = avfilter_af_acrusher_outputs,
FILTER_INPUTS(avfilter_af_acrusher_inputs),
FILTER_OUTPUTS(avfilter_af_acrusher_outputs),
.process_command = process_command,
};

View File

@ -741,7 +741,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -749,7 +748,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_adeclick = {
@ -761,8 +759,8 @@ const AVFilter ff_af_adeclick = {
.init = init,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};
@ -797,7 +795,7 @@ const AVFilter ff_af_adeclip = {
.init = init,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -326,7 +326,6 @@ static const AVFilterPad adelay_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad adelay_outputs[] = {
@ -334,7 +333,6 @@ static const AVFilterPad adelay_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_adelay = {
@ -345,7 +343,7 @@ const AVFilter ff_af_adelay = {
.priv_class = &adelay_class,
.activate = activate,
.uninit = uninit,
.inputs = adelay_inputs,
.outputs = adelay_outputs,
FILTER_INPUTS(adelay_inputs),
FILTER_OUTPUTS(adelay_outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -279,7 +279,6 @@ static const AVFilterPad adenorm_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad adenorm_outputs[] = {
@ -288,7 +287,6 @@ static const AVFilterPad adenorm_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
#define OFFSET(x) offsetof(ADenormContext, x)
@ -311,8 +309,8 @@ const AVFilter ff_af_adenorm = {
.description = NULL_IF_CONFIG_SMALL("Remedy denormals by adding extremely low-level noise."),
.query_formats = query_formats,
.priv_size = sizeof(ADenormContext),
.inputs = adenorm_inputs,
.outputs = adenorm_outputs,
FILTER_INPUTS(adenorm_inputs),
FILTER_OUTPUTS(adenorm_outputs),
.priv_class = &adenorm_class,
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |

View File

@ -163,7 +163,6 @@ static const AVFilterPad aderivative_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad aderivative_outputs[] = {
@ -171,7 +170,6 @@ static const AVFilterPad aderivative_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_aderivative = {
@ -180,8 +178,8 @@ const AVFilter ff_af_aderivative = {
.query_formats = query_formats,
.priv_size = sizeof(ADerivativeContext),
.uninit = uninit,
.inputs = aderivative_inputs,
.outputs = aderivative_outputs,
FILTER_INPUTS(aderivative_inputs),
FILTER_OUTPUTS(aderivative_outputs),
};
const AVFilter ff_af_aintegral = {
@ -190,6 +188,6 @@ const AVFilter ff_af_aintegral = {
.query_formats = query_formats,
.priv_size = sizeof(ADerivativeContext),
.uninit = uninit,
.inputs = aderivative_inputs,
.outputs = aderivative_outputs,
FILTER_INPUTS(aderivative_inputs),
FILTER_OUTPUTS(aderivative_outputs),
};

View File

@ -351,7 +351,6 @@ static const AVFilterPad aecho_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad aecho_outputs[] = {
@ -360,7 +359,6 @@ static const AVFilterPad aecho_outputs[] = {
.config_props = config_output,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_aecho = {
@ -372,6 +370,6 @@ const AVFilter ff_af_aecho = {
.init = init,
.activate = activate,
.uninit = uninit,
.inputs = aecho_inputs,
.outputs = aecho_outputs,
FILTER_INPUTS(aecho_inputs),
FILTER_OUTPUTS(aecho_outputs),
};

View File

@ -376,7 +376,6 @@ static const AVFilterPad avfilter_af_aemphasis_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_aemphasis_outputs[] = {
@ -384,7 +383,6 @@ static const AVFilterPad avfilter_af_aemphasis_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_aemphasis = {
@ -394,8 +392,8 @@ const AVFilter ff_af_aemphasis = {
.priv_class = &aemphasis_class,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_aemphasis_inputs,
.outputs = avfilter_af_aemphasis_outputs,
FILTER_INPUTS(avfilter_af_aemphasis_inputs),
FILTER_OUTPUTS(avfilter_af_aemphasis_outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -279,7 +279,6 @@ static const AVFilterPad avfilter_af_aexciter_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_aexciter_outputs[] = {
@ -287,7 +286,6 @@ static const AVFilterPad avfilter_af_aexciter_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_aexciter = {
@ -297,8 +295,8 @@ const AVFilter ff_af_aexciter = {
.priv_class = &aexciter_class,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_aexciter_inputs,
.outputs = avfilter_af_aexciter_outputs,
FILTER_INPUTS(avfilter_af_aexciter_inputs),
FILTER_OUTPUTS(avfilter_af_aexciter_outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -340,7 +340,6 @@ static const AVFilterPad avfilter_af_afade_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_afade_outputs[] = {
@ -349,7 +348,6 @@ static const AVFilterPad avfilter_af_afade_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_afade = {
@ -358,8 +356,8 @@ const AVFilter ff_af_afade = {
.query_formats = query_formats,
.priv_size = sizeof(AudioFadeContext),
.init = init,
.inputs = avfilter_af_afade_inputs,
.outputs = avfilter_af_afade_outputs,
FILTER_INPUTS(avfilter_af_afade_inputs),
FILTER_OUTPUTS(avfilter_af_afade_outputs),
.priv_class = &afade_class,
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
@ -628,7 +626,6 @@ static const AVFilterPad avfilter_af_acrossfade_inputs[] = {
.name = "crossfade1",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad avfilter_af_acrossfade_outputs[] = {
@ -637,7 +634,6 @@ static const AVFilterPad avfilter_af_acrossfade_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = acrossfade_config_output,
},
{ NULL }
};
const AVFilter ff_af_acrossfade = {
@ -647,8 +643,8 @@ const AVFilter ff_af_acrossfade = {
.priv_size = sizeof(AudioFadeContext),
.activate = activate,
.priv_class = &acrossfade_class,
.inputs = avfilter_af_acrossfade_inputs,
.outputs = avfilter_af_acrossfade_outputs,
FILTER_INPUTS(avfilter_af_acrossfade_inputs),
FILTER_OUTPUTS(avfilter_af_acrossfade_outputs),
};
#endif /* CONFIG_ACROSSFADE_FILTER */

View File

@ -1400,7 +1400,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -1408,7 +1407,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_afftdn = {
@ -1419,8 +1417,8 @@ const AVFilter ff_af_afftdn = {
.priv_class = &afftdn_class,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -466,7 +466,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -474,7 +473,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_afftfilt = {
@ -482,8 +480,8 @@ const AVFilter ff_af_afftfilt = {
.description = NULL_IF_CONFIG_SMALL("Apply arbitrary expressions to samples in frequency domain."),
.priv_size = sizeof(AFFTFiltContext),
.priv_class = &afftfilt_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.activate = activate,
.query_formats = query_formats,
.uninit = uninit,

View File

@ -146,7 +146,6 @@ static const AVFilterPad avfilter_af_aformat_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad avfilter_af_aformat_outputs[] = {
@ -154,7 +153,6 @@ static const AVFilterPad avfilter_af_aformat_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO
},
{ NULL }
};
const AVFilter ff_af_aformat = {
@ -165,6 +163,6 @@ const AVFilter ff_af_aformat = {
.query_formats = query_formats,
.priv_size = sizeof(AFormatContext),
.priv_class = &aformat_class,
.inputs = avfilter_af_aformat_inputs,
.outputs = avfilter_af_aformat_outputs,
FILTER_INPUTS(avfilter_af_aformat_inputs),
FILTER_OUTPUTS(avfilter_af_aformat_outputs),
};

View File

@ -367,7 +367,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -375,7 +374,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_afreqshift = {
@ -385,8 +383,8 @@ const AVFilter ff_af_afreqshift = {
.priv_size = sizeof(AFreqShift),
.priv_class = &afreqshift_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = ff_filter_process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,
@ -407,8 +405,8 @@ const AVFilter ff_af_aphaseshift = {
.priv_size = sizeof(AFreqShift),
.priv_class = &aphaseshift_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = ff_filter_process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -1311,7 +1311,6 @@ static const AVFilterPad inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -1320,7 +1319,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_afwtdn = {
@ -1331,8 +1329,8 @@ const AVFilter ff_af_afwtdn = {
.priv_class = &afwtdn_class,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SLICE_THREADS,
};

View File

@ -240,7 +240,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = agate_config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -248,7 +247,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_agate = {
@ -257,8 +255,8 @@ const AVFilter ff_af_agate = {
.query_formats = query_formats,
.priv_size = sizeof(AudioGateContext),
.priv_class = &agate_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = ff_filter_process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
};
@ -413,7 +411,6 @@ static const AVFilterPad sidechaingate_inputs[] = {
.name = "sidechain",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad sidechaingate_outputs[] = {
@ -422,7 +419,6 @@ static const AVFilterPad sidechaingate_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = scconfig_output,
},
{ NULL }
};
const AVFilter ff_af_sidechaingate = {
@ -433,8 +429,8 @@ const AVFilter ff_af_sidechaingate = {
.query_formats = scquery_formats,
.activate = activate,
.uninit = uninit,
.inputs = sidechaingate_inputs,
.outputs = sidechaingate_outputs,
FILTER_INPUTS(sidechaingate_inputs),
FILTER_OUTPUTS(sidechaingate_outputs),
.process_command = ff_filter_process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
};

View File

@ -1518,7 +1518,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
#define OFFSET(x) offsetof(AudioIIRContext, x)
@ -1574,7 +1573,7 @@ const AVFilter ff_af_aiir = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = inputs,
FILTER_INPUTS(inputs),
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
AVFILTER_FLAG_SLICE_THREADS,
};

View File

@ -337,7 +337,6 @@ static const AVFilterPad alimiter_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad alimiter_outputs[] = {
@ -345,7 +344,6 @@ static const AVFilterPad alimiter_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_alimiter = {
@ -356,6 +354,6 @@ const AVFilter ff_af_alimiter = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = alimiter_inputs,
.outputs = alimiter_outputs,
FILTER_INPUTS(alimiter_inputs),
FILTER_OUTPUTS(alimiter_outputs),
};

View File

@ -342,7 +342,6 @@ static const AVFilterPad amerge_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_amerge = {
@ -355,7 +354,7 @@ const AVFilter ff_af_amerge = {
.query_formats = query_formats,
.activate = activate,
.inputs = NULL,
.outputs = amerge_outputs,
FILTER_OUTPUTS(amerge_outputs),
.priv_class = &amerge_class,
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -634,7 +634,6 @@ static const AVFilterPad avfilter_af_amix_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_amix = {
@ -647,7 +646,7 @@ const AVFilter ff_af_amix = {
.activate = activate,
.query_formats = query_formats,
.inputs = NULL,
.outputs = avfilter_af_amix_outputs,
FILTER_OUTPUTS(avfilter_af_amix_outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -179,7 +179,6 @@ static const AVFilterPad inputs[] = {
.name = "multiply1",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -188,7 +187,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_amultiply = {
@ -199,6 +197,6 @@ const AVFilter ff_af_amultiply = {
.uninit = uninit,
.activate = activate,
.query_formats = query_formats,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -761,7 +761,6 @@ static const AVFilterPad inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
const AVFilter ff_af_anequalizer = {
@ -772,7 +771,7 @@ const AVFilter ff_af_anequalizer = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = inputs,
FILTER_INPUTS(inputs),
.outputs = NULL,
.process_command = process_command,
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |

View File

@ -388,7 +388,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -398,7 +397,6 @@ static const AVFilterPad outputs[] = {
.config_props = config_output,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_af_anlmdn = {
@ -408,8 +406,8 @@ const AVFilter ff_af_anlmdn = {
.priv_size = sizeof(AudioNLMeansContext),
.priv_class = &anlmdn_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -288,7 +288,6 @@ static const AVFilterPad inputs[] = {
.name = "desired",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -297,7 +296,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_anlms = {
@ -309,8 +307,8 @@ const AVFilter ff_af_anlms = {
.uninit = uninit,
.activate = activate,
.query_formats = query_formats,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS,
.process_command = ff_filter_process_command,
};

View File

@ -32,7 +32,6 @@ static const AVFilterPad avfilter_af_anull_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad avfilter_af_anull_outputs[] = {
@ -40,12 +39,11 @@ static const AVFilterPad avfilter_af_anull_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_anull = {
.name = "anull",
.description = NULL_IF_CONFIG_SMALL("Pass the source unchanged to the output."),
.inputs = avfilter_af_anull_inputs,
.outputs = avfilter_af_anull_outputs,
FILTER_INPUTS(avfilter_af_anull_inputs),
FILTER_OUTPUTS(avfilter_af_anull_outputs),
};

View File

@ -155,7 +155,6 @@ static const AVFilterPad apad_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad apad_outputs[] = {
@ -165,7 +164,6 @@ static const AVFilterPad apad_outputs[] = {
.config_props = config_output,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_apad = {
@ -173,8 +171,8 @@ const AVFilter ff_af_apad = {
.description = NULL_IF_CONFIG_SMALL("Pad audio with silence."),
.init = init,
.priv_size = sizeof(APadContext),
.inputs = apad_inputs,
.outputs = apad_outputs,
FILTER_INPUTS(apad_inputs),
FILTER_OUTPUTS(apad_outputs),
.priv_class = &apad_class,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -265,7 +265,6 @@ static const AVFilterPad aphaser_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad aphaser_outputs[] = {
@ -274,7 +273,6 @@ static const AVFilterPad aphaser_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_aphaser = {
@ -284,7 +282,7 @@ const AVFilter ff_af_aphaser = {
.priv_size = sizeof(AudioPhaserContext),
.init = init,
.uninit = uninit,
.inputs = aphaser_inputs,
.outputs = aphaser_outputs,
FILTER_INPUTS(aphaser_inputs),
FILTER_OUTPUTS(aphaser_outputs),
.priv_class = &aphaser_class,
};

View File

@ -235,7 +235,6 @@ static const AVFilterPad inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -243,7 +242,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_apulsator = {
@ -252,6 +250,6 @@ const AVFilter ff_af_apulsator = {
.priv_size = sizeof(AudioPulsatorContext),
.priv_class = &apulsator_class,
.query_formats = query_formats,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -329,7 +329,6 @@ static const AVFilterPad aresample_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad aresample_outputs[] = {
@ -339,7 +338,6 @@ static const AVFilterPad aresample_outputs[] = {
.request_frame = request_frame,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_aresample = {
@ -350,6 +348,6 @@ const AVFilter ff_af_aresample = {
.query_formats = query_formats,
.priv_size = sizeof(AResampleContext),
.priv_class = &aresample_class,
.inputs = aresample_inputs,
.outputs = aresample_outputs,
FILTER_INPUTS(aresample_inputs),
FILTER_OUTPUTS(aresample_outputs),
};

View File

@ -1584,7 +1584,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -1592,7 +1591,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
#define OFFSET(x) offsetof(AudioRNNContext, x)
@ -1616,8 +1614,8 @@ const AVFilter ff_af_arnndn = {
.activate = activate,
.init = init,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
AVFILTER_FLAG_SLICE_THREADS,
.process_command = process_command,

View File

@ -106,7 +106,6 @@ static const AVFilterPad asetnsamples_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad asetnsamples_outputs[] = {
@ -114,7 +113,6 @@ static const AVFilterPad asetnsamples_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_asetnsamples = {
@ -122,7 +120,7 @@ const AVFilter ff_af_asetnsamples = {
.description = NULL_IF_CONFIG_SMALL("Set the number of samples for each output audio frames."),
.priv_size = sizeof(ASNSContext),
.priv_class = &asetnsamples_class,
.inputs = asetnsamples_inputs,
.outputs = asetnsamples_outputs,
FILTER_INPUTS(asetnsamples_inputs),
FILTER_OUTPUTS(asetnsamples_outputs),
.activate = activate,
};

View File

@ -94,7 +94,6 @@ static const AVFilterPad asetrate_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad asetrate_outputs[] = {
@ -103,7 +102,6 @@ static const AVFilterPad asetrate_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_props,
},
{ NULL }
};
const AVFilter ff_af_asetrate = {
@ -112,7 +110,7 @@ const AVFilter ff_af_asetrate = {
"altering the data."),
.query_formats = query_formats,
.priv_size = sizeof(ASetRateContext),
.inputs = asetrate_inputs,
.outputs = asetrate_outputs,
FILTER_INPUTS(asetrate_inputs),
FILTER_OUTPUTS(asetrate_outputs),
.priv_class = &asetrate_class,
};

View File

@ -243,7 +243,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -251,7 +250,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_ashowinfo = {
@ -259,6 +257,6 @@ const AVFilter ff_af_ashowinfo = {
.description = NULL_IF_CONFIG_SMALL("Show textual information for each audio frame."),
.priv_size = sizeof(AShowInfoContext),
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -451,7 +451,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -459,7 +458,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_asoftclip = {
@ -468,8 +466,8 @@ const AVFilter ff_af_asoftclip = {
.query_formats = query_formats,
.priv_size = sizeof(ASoftClipContext),
.priv_class = &asoftclip_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.uninit = uninit,
.process_command = ff_filter_process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |

View File

@ -156,7 +156,6 @@ static const AVFilterPad asr_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad asr_outputs[] = {
@ -164,7 +163,6 @@ static const AVFilterPad asr_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_asr = {
@ -175,6 +173,6 @@ const AVFilter ff_af_asr = {
.init = asr_init,
.uninit = asr_uninit,
.query_formats = query_formats,
.inputs = asr_inputs,
.outputs = asr_outputs,
FILTER_INPUTS(asr_inputs),
FILTER_OUTPUTS(asr_outputs),
};

View File

@ -815,7 +815,6 @@ static const AVFilterPad astats_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad astats_outputs[] = {
@ -824,7 +823,6 @@ static const AVFilterPad astats_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_astats = {
@ -834,7 +832,7 @@ const AVFilter ff_af_astats = {
.priv_size = sizeof(AudioStatsContext),
.priv_class = &astats_class,
.uninit = uninit,
.inputs = astats_inputs,
.outputs = astats_outputs,
FILTER_INPUTS(astats_inputs),
FILTER_OUTPUTS(astats_outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS,
};

View File

@ -221,7 +221,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -229,7 +228,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_asubboost = {
@ -239,8 +237,8 @@ const AVFilter ff_af_asubboost = {
.priv_size = sizeof(ASubBoostContext),
.priv_class = &asubboost_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -345,7 +345,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -353,7 +352,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_asupercut = {
@ -363,8 +361,8 @@ const AVFilter ff_af_asupercut = {
.priv_size = sizeof(ASuperCutContext),
.priv_class = &asupercut_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,
@ -386,8 +384,8 @@ const AVFilter ff_af_asubcut = {
.priv_size = sizeof(ASuperCutContext),
.priv_class = &asubcut_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,
@ -411,8 +409,8 @@ const AVFilter ff_af_asuperpass = {
.priv_size = sizeof(ASuperCutContext),
.priv_class = &asuperpass_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,
@ -428,8 +426,8 @@ const AVFilter ff_af_asuperstop = {
.priv_size = sizeof(ASuperCutContext),
.priv_class = &asuperstop_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -1173,7 +1173,6 @@ static const AVFilterPad atempo_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_props,
},
{ NULL }
};
static const AVFilterPad atempo_outputs[] = {
@ -1182,7 +1181,6 @@ static const AVFilterPad atempo_outputs[] = {
.request_frame = request_frame,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_atempo = {
@ -1194,6 +1192,6 @@ const AVFilter ff_af_atempo = {
.process_command = process_command,
.priv_size = sizeof(ATempoContext),
.priv_class = &atempo_class,
.inputs = atempo_inputs,
.outputs = atempo_outputs,
FILTER_INPUTS(atempo_inputs),
FILTER_OUTPUTS(atempo_outputs),
};

View File

@ -326,7 +326,6 @@ static const AVFilterPad inputs[] = {
.name = "axcorrelate1",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -335,7 +334,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@ -359,6 +357,6 @@ const AVFilter ff_af_axcorrelate = {
.query_formats = query_formats,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -839,7 +839,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -848,7 +847,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
#define OFFSET(x) offsetof(BiquadsContext, x)
@ -871,8 +869,8 @@ const AVFilter ff_af_##name_ = { \
.init = name_##_init, \
.uninit = uninit, \
.query_formats = query_formats, \
.inputs = inputs, \
.outputs = outputs, \
FILTER_INPUTS(inputs), \
FILTER_OUTPUTS(outputs), \
.priv_class = &name_##_class, \
.process_command = process_command, \
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, \

View File

@ -192,7 +192,6 @@ static const AVFilterPad bs2b_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad bs2b_outputs[] = {
@ -201,7 +200,6 @@ static const AVFilterPad bs2b_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_bs2b = {
@ -212,6 +210,6 @@ const AVFilter ff_af_bs2b = {
.priv_class = &bs2b_class,
.init = init,
.uninit = uninit,
.inputs = bs2b_inputs,
.outputs = bs2b_outputs,
FILTER_INPUTS(bs2b_inputs),
FILTER_OUTPUTS(bs2b_outputs),
};

View File

@ -387,7 +387,6 @@ static const AVFilterPad avfilter_af_channelmap_inputs[] = {
.filter_frame = channelmap_filter_frame,
.config_props = channelmap_config_input,
},
{ NULL }
};
static const AVFilterPad avfilter_af_channelmap_outputs[] = {
@ -395,7 +394,6 @@ static const AVFilterPad avfilter_af_channelmap_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO
},
{ NULL }
};
const AVFilter ff_af_channelmap = {
@ -405,6 +403,6 @@ const AVFilter ff_af_channelmap = {
.query_formats = channelmap_query_formats,
.priv_size = sizeof(ChannelMapContext),
.priv_class = &channelmap_class,
.inputs = avfilter_af_channelmap_inputs,
.outputs = avfilter_af_channelmap_outputs,
FILTER_INPUTS(avfilter_af_channelmap_inputs),
FILTER_OUTPUTS(avfilter_af_channelmap_outputs),
};

View File

@ -164,7 +164,6 @@ static const AVFilterPad avfilter_af_channelsplit_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
const AVFilter ff_af_channelsplit = {
@ -174,7 +173,7 @@ const AVFilter ff_af_channelsplit = {
.priv_class = &channelsplit_class,
.init = init,
.query_formats = query_formats,
.inputs = avfilter_af_channelsplit_inputs,
FILTER_INPUTS(avfilter_af_channelsplit_inputs),
.outputs = NULL,
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
};

View File

@ -343,7 +343,6 @@ static const AVFilterPad chorus_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad chorus_outputs[] = {
@ -353,7 +352,6 @@ static const AVFilterPad chorus_outputs[] = {
.request_frame = request_frame,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_chorus = {
@ -364,6 +362,6 @@ const AVFilter ff_af_chorus = {
.priv_class = &chorus_class,
.init = init,
.uninit = uninit,
.inputs = chorus_inputs,
.outputs = chorus_outputs,
FILTER_INPUTS(chorus_inputs),
FILTER_OUTPUTS(chorus_outputs),
};

View File

@ -558,7 +558,6 @@ static const AVFilterPad compand_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad compand_outputs[] = {
@ -568,7 +567,6 @@ static const AVFilterPad compand_outputs[] = {
.config_props = config_output,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
@ -581,6 +579,6 @@ const AVFilter ff_af_compand = {
.priv_class = &compand_class,
.init = init,
.uninit = uninit,
.inputs = compand_inputs,
.outputs = compand_outputs,
FILTER_INPUTS(compand_inputs),
FILTER_OUTPUTS(compand_outputs),
};

View File

@ -162,7 +162,6 @@ static const AVFilterPad compensationdelay_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad compensationdelay_outputs[] = {
@ -170,7 +169,6 @@ static const AVFilterPad compensationdelay_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_compensationdelay = {
@ -180,6 +178,6 @@ const AVFilter ff_af_compensationdelay = {
.priv_size = sizeof(CompensationDelayContext),
.priv_class = &compensationdelay_class,
.uninit = uninit,
.inputs = compensationdelay_inputs,
.outputs = compensationdelay_outputs,
FILTER_INPUTS(compensationdelay_inputs),
FILTER_OUTPUTS(compensationdelay_outputs),
};

View File

@ -164,7 +164,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -172,7 +171,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_crossfeed = {
@ -181,8 +179,8 @@ const AVFilter ff_af_crossfeed = {
.query_formats = query_formats,
.priv_size = sizeof(CrossfeedContext),
.priv_class = &crossfeed_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
.process_command = process_command,
};

View File

@ -433,7 +433,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -441,7 +440,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_crystalizer = {
@ -451,8 +449,8 @@ const AVFilter ff_af_crystalizer = {
.priv_size = sizeof(CrystalizerContext),
.priv_class = &crystalizer_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
AVFILTER_FLAG_SLICE_THREADS,

View File

@ -136,7 +136,6 @@ static const AVFilterPad dcshift_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad dcshift_outputs[] = {
@ -144,7 +143,6 @@ static const AVFilterPad dcshift_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_dcshift = {
@ -154,7 +152,7 @@ const AVFilter ff_af_dcshift = {
.priv_size = sizeof(DCShiftContext),
.priv_class = &dcshift_class,
.init = init,
.inputs = dcshift_inputs,
.outputs = dcshift_outputs,
FILTER_INPUTS(dcshift_inputs),
FILTER_OUTPUTS(dcshift_outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
};

View File

@ -208,7 +208,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -216,7 +215,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_deesser = {
@ -226,7 +224,7 @@ const AVFilter ff_af_deesser = {
.priv_size = sizeof(DeesserContext),
.priv_class = &deesser_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -201,7 +201,6 @@ static const AVFilterPad drmeter_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad drmeter_outputs[] = {
@ -210,7 +209,6 @@ static const AVFilterPad drmeter_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_drmeter = {
@ -220,6 +218,6 @@ const AVFilter ff_af_drmeter = {
.priv_size = sizeof(DRMeterContext),
.priv_class = &drmeter_class,
.uninit = uninit,
.inputs = drmeter_inputs,
.outputs = drmeter_outputs,
FILTER_INPUTS(drmeter_inputs),
FILTER_OUTPUTS(drmeter_outputs),
};

View File

@ -844,7 +844,6 @@ static const AVFilterPad avfilter_af_dynaudnorm_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = {
@ -852,7 +851,6 @@ static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_dynaudnorm = {
@ -863,8 +861,8 @@ const AVFilter ff_af_dynaudnorm = {
.init = init,
.uninit = uninit,
.activate = activate,
.inputs = avfilter_af_dynaudnorm_inputs,
.outputs = avfilter_af_dynaudnorm_outputs,
FILTER_INPUTS(avfilter_af_dynaudnorm_inputs),
FILTER_OUTPUTS(avfilter_af_dynaudnorm_outputs),
.priv_class = &dynaudnorm_class,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
.process_command = process_command,

View File

@ -220,7 +220,6 @@ static const AVFilterPad earwax_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad earwax_outputs[] = {
@ -228,7 +227,6 @@ static const AVFilterPad earwax_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_earwax = {
@ -237,6 +235,6 @@ const AVFilter ff_af_earwax = {
.query_formats = query_formats,
.priv_size = sizeof(EarwaxContext),
.uninit = uninit,
.inputs = earwax_inputs,
.outputs = earwax_outputs,
FILTER_INPUTS(earwax_inputs),
FILTER_OUTPUTS(earwax_outputs),
};

View File

@ -108,7 +108,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -116,7 +115,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_extrastereo = {
@ -125,8 +123,8 @@ const AVFilter ff_af_extrastereo = {
.query_formats = query_formats,
.priv_size = sizeof(ExtraStereoContext),
.priv_class = &extrastereo_class,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
.process_command = ff_filter_process_command,
};

View File

@ -944,7 +944,6 @@ static const AVFilterPad firequalizer_inputs[] = {
.filter_frame = filter_frame,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad firequalizer_outputs[] = {
@ -953,7 +952,6 @@ static const AVFilterPad firequalizer_outputs[] = {
.request_frame = request_frame,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_firequalizer = {
@ -963,7 +961,7 @@ const AVFilter ff_af_firequalizer = {
.query_formats = query_formats,
.process_command = process_command,
.priv_size = sizeof(FIREqualizerContext),
.inputs = firequalizer_inputs,
.outputs = firequalizer_outputs,
FILTER_INPUTS(firequalizer_inputs),
FILTER_OUTPUTS(firequalizer_outputs),
.priv_class = &firequalizer_class,
};

View File

@ -209,7 +209,6 @@ static const AVFilterPad flanger_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad flanger_outputs[] = {
@ -217,7 +216,6 @@ static const AVFilterPad flanger_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_flanger = {
@ -228,6 +226,6 @@ const AVFilter ff_af_flanger = {
.priv_class = &flanger_class,
.init = init,
.uninit = uninit,
.inputs = flanger_inputs,
.outputs = flanger_outputs,
FILTER_INPUTS(flanger_inputs),
FILTER_OUTPUTS(flanger_outputs),
};

View File

@ -204,7 +204,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -212,7 +211,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_haas = {
@ -222,6 +220,6 @@ const AVFilter ff_af_haas = {
.priv_size = sizeof(HaasContext),
.priv_class = &haas_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
};

View File

@ -1761,7 +1761,6 @@ static const AVFilterPad avfilter_af_hdcd_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad avfilter_af_hdcd_outputs[] = {
@ -1769,7 +1768,6 @@ static const AVFilterPad avfilter_af_hdcd_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_hdcd = {
@ -1780,6 +1778,6 @@ const AVFilter ff_af_hdcd = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_hdcd_inputs,
.outputs = avfilter_af_hdcd_outputs,
FILTER_INPUTS(avfilter_af_hdcd_inputs),
FILTER_OUTPUTS(avfilter_af_hdcd_outputs),
};

View File

@ -759,7 +759,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_headphone = {
@ -772,6 +771,6 @@ const AVFilter ff_af_headphone = {
.query_formats = query_formats,
.activate = activate,
.inputs = NULL,
.outputs = outputs,
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -536,7 +536,6 @@ static const AVFilterPad avfilter_af_join_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = join_config_output,
},
{ NULL }
};
const AVFilter ff_af_join = {
@ -550,6 +549,6 @@ const AVFilter ff_af_join = {
.activate = activate,
.query_formats = join_query_formats,
.inputs = NULL,
.outputs = avfilter_af_join_outputs,
FILTER_OUTPUTS(avfilter_af_join_outputs),
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -774,7 +774,6 @@ static const AVFilterPad ladspa_outputs[] = {
.config_props = config_output,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_af_ladspa = {
@ -787,6 +786,6 @@ const AVFilter ff_af_ladspa = {
.query_formats = query_formats,
.process_command = process_command,
.inputs = 0,
.outputs = ladspa_outputs,
FILTER_OUTPUTS(ladspa_outputs),
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -896,7 +896,6 @@ static const AVFilterPad avfilter_af_loudnorm_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_loudnorm_outputs[] = {
@ -905,7 +904,6 @@ static const AVFilterPad avfilter_af_loudnorm_outputs[] = {
.request_frame = request_frame,
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_loudnorm = {
@ -916,6 +914,6 @@ const AVFilter ff_af_loudnorm = {
.query_formats = query_formats,
.init = init,
.uninit = uninit,
.inputs = avfilter_af_loudnorm_inputs,
.outputs = avfilter_af_loudnorm_outputs,
FILTER_INPUTS(avfilter_af_loudnorm_inputs),
FILTER_OUTPUTS(avfilter_af_loudnorm_outputs),
};

View File

@ -574,7 +574,6 @@ static const AVFilterPad lv2_outputs[] = {
.config_props = config_output,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_af_lv2 = {
@ -586,6 +585,6 @@ const AVFilter ff_af_lv2 = {
.uninit = uninit,
.query_formats = query_formats,
.inputs = 0,
.outputs = lv2_outputs,
FILTER_OUTPUTS(lv2_outputs),
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
};

View File

@ -638,7 +638,6 @@ static const AVFilterPad mcompand_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad mcompand_outputs[] = {
@ -648,7 +647,6 @@ static const AVFilterPad mcompand_outputs[] = {
.request_frame = request_frame,
.config_props = config_output,
},
{ NULL }
};
@ -660,6 +658,6 @@ const AVFilter ff_af_mcompand = {
.priv_size = sizeof(MCompandContext),
.priv_class = &mcompand_class,
.uninit = uninit,
.inputs = mcompand_inputs,
.outputs = mcompand_outputs,
FILTER_INPUTS(mcompand_inputs),
FILTER_OUTPUTS(mcompand_outputs),
};

View File

@ -435,7 +435,6 @@ static const AVFilterPad pan_inputs[] = {
.config_props = config_props,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad pan_outputs[] = {
@ -443,7 +442,6 @@ static const AVFilterPad pan_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_pan = {
@ -454,6 +452,6 @@ const AVFilter ff_af_pan = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = pan_inputs,
.outputs = pan_outputs,
FILTER_INPUTS(pan_inputs),
FILTER_OUTPUTS(pan_outputs),
};

View File

@ -592,7 +592,6 @@ static const AVFilterPad replaygain_inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad replaygain_outputs[] = {
@ -600,7 +599,6 @@ static const AVFilterPad replaygain_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_replaygain = {
@ -609,6 +607,6 @@ const AVFilter ff_af_replaygain = {
.query_formats = query_formats,
.uninit = uninit,
.priv_size = sizeof(ReplayGainContext),
.inputs = replaygain_inputs,
.outputs = replaygain_outputs,
FILTER_INPUTS(replaygain_inputs),
FILTER_OUTPUTS(replaygain_outputs),
};

View File

@ -210,7 +210,6 @@ static const AVFilterPad rubberband_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad rubberband_outputs[] = {
@ -218,7 +217,6 @@ static const AVFilterPad rubberband_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_rubberband = {
@ -229,7 +227,7 @@ const AVFilter ff_af_rubberband = {
.priv_class = &rubberband_class,
.uninit = uninit,
.activate = activate,
.inputs = rubberband_inputs,
.outputs = rubberband_outputs,
FILTER_INPUTS(rubberband_inputs),
FILTER_OUTPUTS(rubberband_outputs),
.process_command = process_command,
};

View File

@ -371,7 +371,6 @@ static const AVFilterPad sidechaincompress_inputs[] = {
.name = "sidechain",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad sidechaincompress_outputs[] = {
@ -380,7 +379,6 @@ static const AVFilterPad sidechaincompress_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_sidechaincompress = {
@ -391,8 +389,8 @@ const AVFilter ff_af_sidechaincompress = {
.query_formats = query_formats,
.activate = activate,
.uninit = uninit,
.inputs = sidechaincompress_inputs,
.outputs = sidechaincompress_outputs,
FILTER_INPUTS(sidechaincompress_inputs),
FILTER_OUTPUTS(sidechaincompress_outputs),
.process_command = process_command,
};
#endif /* CONFIG_SIDECHAINCOMPRESS_FILTER */
@ -454,7 +452,6 @@ static const AVFilterPad acompressor_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = acompressor_filter_frame,
},
{ NULL }
};
static const AVFilterPad acompressor_outputs[] = {
@ -463,7 +460,6 @@ static const AVFilterPad acompressor_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = compressor_config_output,
},
{ NULL }
};
const AVFilter ff_af_acompressor = {
@ -472,8 +468,8 @@ const AVFilter ff_af_acompressor = {
.priv_size = sizeof(SidechainCompressContext),
.priv_class = &acompressor_class,
.query_formats = acompressor_query_formats,
.inputs = acompressor_inputs,
.outputs = acompressor_outputs,
FILTER_INPUTS(acompressor_inputs),
FILTER_OUTPUTS(acompressor_outputs),
.process_command = process_command,
};
#endif /* CONFIG_ACOMPRESSOR_FILTER */

View File

@ -240,7 +240,6 @@ static const AVFilterPad silencedetect_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad silencedetect_outputs[] = {
@ -248,7 +247,6 @@ static const AVFilterPad silencedetect_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_silencedetect = {
@ -257,7 +255,7 @@ const AVFilter ff_af_silencedetect = {
.priv_size = sizeof(SilenceDetectContext),
.query_formats = query_formats,
.uninit = uninit,
.inputs = silencedetect_inputs,
.outputs = silencedetect_outputs,
FILTER_INPUTS(silencedetect_inputs),
FILTER_OUTPUTS(silencedetect_outputs),
.priv_class = &silencedetect_class,
};

View File

@ -923,7 +923,6 @@ static const AVFilterPad silenceremove_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad silenceremove_outputs[] = {
@ -932,7 +931,6 @@ static const AVFilterPad silenceremove_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_af_silenceremove = {
@ -943,6 +941,6 @@ const AVFilter ff_af_silenceremove = {
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = silenceremove_inputs,
.outputs = silenceremove_outputs,
FILTER_INPUTS(silenceremove_inputs),
FILTER_OUTPUTS(silenceremove_outputs),
};

View File

@ -1095,7 +1095,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -1103,7 +1102,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_sofalizer = {
@ -1115,7 +1113,7 @@ const AVFilter ff_af_sofalizer = {
.activate = activate,
.uninit = uninit,
.query_formats = query_formats,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS,
};

View File

@ -542,7 +542,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -550,7 +549,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_speechnorm = {
@ -561,7 +559,7 @@ const AVFilter ff_af_speechnorm = {
.priv_class = &speechnorm_class,
.activate = activate,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
};

View File

@ -363,7 +363,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -371,7 +370,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_stereotools = {
@ -381,8 +379,8 @@ const AVFilter ff_af_stereotools = {
.priv_size = sizeof(StereoToolsContext),
.priv_class = &stereotools_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.process_command = process_command,
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
};

View File

@ -144,7 +144,6 @@ static const AVFilterPad inputs[] = {
.filter_frame = filter_frame,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -152,7 +151,6 @@ static const AVFilterPad outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_stereowiden = {
@ -162,8 +160,8 @@ const AVFilter ff_af_stereowiden = {
.priv_size = sizeof(StereoWidenContext),
.priv_class = &stereowiden_class,
.uninit = uninit,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
.process_command = ff_filter_process_command,
};

View File

@ -326,7 +326,6 @@ static const AVFilterPad superequalizer_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad superequalizer_outputs[] = {
@ -335,7 +334,6 @@ static const AVFilterPad superequalizer_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@ -374,6 +372,6 @@ const AVFilter ff_af_superequalizer = {
.init = init,
.activate = activate,
.uninit = uninit,
.inputs = superequalizer_inputs,
.outputs = superequalizer_outputs,
FILTER_INPUTS(superequalizer_inputs),
FILTER_OUTPUTS(superequalizer_outputs),
};

View File

@ -1770,7 +1770,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -1779,7 +1778,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_surround = {
@ -1791,7 +1789,7 @@ const AVFilter ff_af_surround = {
.init = init,
.uninit = uninit,
.activate = activate,
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.flags = AVFILTER_FLAG_SLICE_THREADS,
};

View File

@ -136,7 +136,6 @@ static const AVFilterPad avfilter_af_tremolo_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_tremolo_outputs[] = {
@ -144,7 +143,6 @@ static const AVFilterPad avfilter_af_tremolo_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_tremolo = {
@ -154,6 +152,6 @@ const AVFilter ff_af_tremolo = {
.priv_class = &tremolo_class,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_tremolo_inputs,
.outputs = avfilter_af_tremolo_outputs,
FILTER_INPUTS(avfilter_af_tremolo_inputs),
FILTER_OUTPUTS(avfilter_af_tremolo_outputs),
};

View File

@ -174,7 +174,6 @@ static const AVFilterPad avfilter_af_vibrato_inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_vibrato_outputs[] = {
@ -182,7 +181,6 @@ static const AVFilterPad avfilter_af_vibrato_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_vibrato = {
@ -192,6 +190,6 @@ const AVFilter ff_af_vibrato = {
.priv_class = &vibrato_class,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_af_vibrato_inputs,
.outputs = avfilter_af_vibrato_outputs,
FILTER_INPUTS(avfilter_af_vibrato_inputs),
FILTER_OUTPUTS(avfilter_af_vibrato_outputs),
};

View File

@ -452,7 +452,6 @@ static const AVFilterPad avfilter_af_volume_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad avfilter_af_volume_outputs[] = {
@ -461,7 +460,6 @@ static const AVFilterPad avfilter_af_volume_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_af_volume = {
@ -472,8 +470,8 @@ const AVFilter ff_af_volume = {
.priv_class = &volume_class,
.init = init,
.uninit = uninit,
.inputs = avfilter_af_volume_inputs,
.outputs = avfilter_af_volume_outputs,
FILTER_INPUTS(avfilter_af_volume_inputs),
FILTER_OUTPUTS(avfilter_af_volume_outputs),
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
.process_command = process_command,
};

View File

@ -134,7 +134,6 @@ static const AVFilterPad volumedetect_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad volumedetect_outputs[] = {
@ -142,7 +141,6 @@ static const AVFilterPad volumedetect_outputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
const AVFilter ff_af_volumedetect = {
@ -151,6 +149,6 @@ const AVFilter ff_af_volumedetect = {
.priv_size = sizeof(VolDetectContext),
.query_formats = query_formats,
.uninit = uninit,
.inputs = volumedetect_inputs,
.outputs = volumedetect_outputs,
FILTER_INPUTS(volumedetect_inputs),
FILTER_OUTPUTS(volumedetect_outputs),
};

View File

@ -34,13 +34,12 @@ static const AVFilterPad avfilter_asink_anullsink_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = null_filter_frame,
},
{ NULL },
};
const AVFilter ff_asink_anullsink = {
.name = "anullsink",
.description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input audio."),
.priv_size = 0,
.inputs = avfilter_asink_anullsink_inputs,
FILTER_INPUTS(avfilter_asink_anullsink_inputs),
.outputs = NULL,
};

View File

@ -301,7 +301,6 @@ static const AVFilterPad afirsrc_outputs[] = {
.request_frame = request_frame,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_asrc_afirsrc = {
@ -312,6 +311,6 @@ const AVFilter ff_asrc_afirsrc = {
.uninit = uninit,
.priv_size = sizeof(AudioFIRSourceContext),
.inputs = NULL,
.outputs = afirsrc_outputs,
FILTER_OUTPUTS(afirsrc_outputs),
.priv_class = &afirsrc_class,
};

View File

@ -230,7 +230,6 @@ static const AVFilterPad anoisesrc_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_props,
},
{ NULL }
};
const AVFilter ff_asrc_anoisesrc = {
@ -240,6 +239,6 @@ const AVFilter ff_asrc_anoisesrc = {
.priv_size = sizeof(ANoiseSrcContext),
.inputs = NULL,
.activate = activate,
.outputs = anoisesrc_outputs,
FILTER_OUTPUTS(anoisesrc_outputs),
.priv_class = &anoisesrc_class,
};

View File

@ -134,7 +134,6 @@ static const AVFilterPad avfilter_asrc_anullsrc_outputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_props,
},
{ NULL }
};
const AVFilter ff_asrc_anullsrc = {
@ -144,7 +143,7 @@ const AVFilter ff_asrc_anullsrc = {
.query_formats = query_formats,
.priv_size = sizeof(ANullContext),
.inputs = NULL,
.outputs = avfilter_asrc_anullsrc_outputs,
FILTER_OUTPUTS(avfilter_asrc_anullsrc_outputs),
.activate = activate,
.priv_class = &anullsrc_class,
};

View File

@ -271,7 +271,6 @@ static const AVFilterPad flite_outputs[] = {
.config_props = config_props,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_asrc_flite = {
@ -282,6 +281,6 @@ const AVFilter ff_asrc_flite = {
.uninit = uninit,
.priv_size = sizeof(FliteContext),
.inputs = NULL,
.outputs = flite_outputs,
FILTER_OUTPUTS(flite_outputs),
.priv_class = &flite_class,
};

View File

@ -171,7 +171,6 @@ static const AVFilterPad hilbert_outputs[] = {
.request_frame = request_frame,
.config_props = config_props,
},
{ NULL }
};
const AVFilter ff_asrc_hilbert = {
@ -182,6 +181,6 @@ const AVFilter ff_asrc_hilbert = {
.uninit = uninit,
.priv_size = sizeof(HilbertContext),
.inputs = NULL,
.outputs = hilbert_outputs,
FILTER_OUTPUTS(hilbert_outputs),
.priv_class = &hilbert_class,
};

View File

@ -408,7 +408,6 @@ static const AVFilterPad sinc_outputs[] = {
.config_props = config_output,
.request_frame = request_frame,
},
{ NULL }
};
#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@ -440,5 +439,5 @@ const AVFilter ff_asrc_sinc = {
.query_formats = query_formats,
.uninit = uninit,
.inputs = NULL,
.outputs = sinc_outputs,
FILTER_OUTPUTS(sinc_outputs),
};

View File

@ -253,7 +253,6 @@ static const AVFilterPad sine_outputs[] = {
.request_frame = request_frame,
.config_props = config_props,
},
{ NULL }
};
const AVFilter ff_asrc_sine = {
@ -264,6 +263,6 @@ const AVFilter ff_asrc_sine = {
.uninit = uninit,
.priv_size = sizeof(SineContext),
.inputs = NULL,
.outputs = sine_outputs,
FILTER_OUTPUTS(sine_outputs),
.priv_class = &sine_class,
};

View File

@ -248,7 +248,6 @@ static const AVFilterPad inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad outputs[] = {
@ -257,7 +256,6 @@ static const AVFilterPad outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_abitscope = {
@ -265,8 +263,8 @@ const AVFilter ff_avf_abitscope = {
.description = NULL_IF_CONFIG_SMALL("Convert input audio to audio bit scope video output."),
.query_formats = query_formats,
.priv_size = sizeof(AudioBitScopeContext),
.inputs = inputs,
.outputs = outputs,
FILTER_INPUTS(inputs),
FILTER_OUTPUTS(outputs),
.activate = activate,
.priv_class = &abitscope_class,
};

View File

@ -412,7 +412,6 @@ static const AVFilterPad ahistogram_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad ahistogram_outputs[] = {
@ -421,7 +420,6 @@ static const AVFilterPad ahistogram_outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_ahistogram = {
@ -431,7 +429,7 @@ const AVFilter ff_avf_ahistogram = {
.query_formats = query_formats,
.priv_size = sizeof(AudioHistogramContext),
.activate = activate,
.inputs = ahistogram_inputs,
.outputs = ahistogram_outputs,
FILTER_INPUTS(ahistogram_inputs),
FILTER_OUTPUTS(ahistogram_outputs),
.priv_class = &ahistogram_class,
};

View File

@ -380,7 +380,6 @@ static const AVFilterPad inputs[] = {
.config_props = config_input,
.filter_frame = filter_frame,
},
{ NULL }
};
const AVFilter ff_avf_aphasemeter = {
@ -390,7 +389,7 @@ const AVFilter ff_avf_aphasemeter = {
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(AudioPhaseMeterContext),
.inputs = inputs,
FILTER_INPUTS(inputs),
.outputs = NULL,
.priv_class = &aphasemeter_class,
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,

View File

@ -403,7 +403,6 @@ static const AVFilterPad audiovectorscope_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.config_props = config_input,
},
{ NULL }
};
static const AVFilterPad audiovectorscope_outputs[] = {
@ -412,7 +411,6 @@ static const AVFilterPad audiovectorscope_outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_avectorscope = {
@ -422,7 +420,7 @@ const AVFilter ff_avf_avectorscope = {
.query_formats = query_formats,
.priv_size = sizeof(AudioVectorScopeContext),
.activate = activate,
.inputs = audiovectorscope_inputs,
.outputs = audiovectorscope_outputs,
FILTER_INPUTS(audiovectorscope_inputs),
FILTER_OUTPUTS(audiovectorscope_outputs),
.priv_class = &avectorscope_class,
};

View File

@ -1577,7 +1577,6 @@ static const AVFilterPad showcqt_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = filter_frame,
},
{ NULL }
};
static const AVFilterPad showcqt_outputs[] = {
@ -1587,7 +1586,6 @@ static const AVFilterPad showcqt_outputs[] = {
.config_props = config_output,
.request_frame = request_frame,
},
{ NULL }
};
const AVFilter ff_avf_showcqt = {
@ -1597,7 +1595,7 @@ const AVFilter ff_avf_showcqt = {
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(ShowCQTContext),
.inputs = showcqt_inputs,
.outputs = showcqt_outputs,
FILTER_INPUTS(showcqt_inputs),
FILTER_OUTPUTS(showcqt_outputs),
.priv_class = &showcqt_class,
};

View File

@ -552,7 +552,6 @@ static const AVFilterPad showfreqs_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad showfreqs_outputs[] = {
@ -561,7 +560,6 @@ static const AVFilterPad showfreqs_outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_showfreqs = {
@ -572,7 +570,7 @@ const AVFilter ff_avf_showfreqs = {
.query_formats = query_formats,
.priv_size = sizeof(ShowFreqsContext),
.activate = activate,
.inputs = showfreqs_inputs,
.outputs = showfreqs_outputs,
FILTER_INPUTS(showfreqs_inputs),
FILTER_OUTPUTS(showfreqs_outputs),
.priv_class = &showfreqs_class,
};

View File

@ -346,7 +346,6 @@ static const AVFilterPad showspatial_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad showspatial_outputs[] = {
@ -355,7 +354,6 @@ static const AVFilterPad showspatial_outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_showspatial = {
@ -364,8 +362,8 @@ const AVFilter ff_avf_showspatial = {
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(ShowSpatialContext),
.inputs = showspatial_inputs,
.outputs = showspatial_outputs,
FILTER_INPUTS(showspatial_inputs),
FILTER_OUTPUTS(showspatial_outputs),
.activate = spatial_activate,
.priv_class = &showspatial_class,
.flags = AVFILTER_FLAG_SLICE_THREADS,

View File

@ -1654,7 +1654,6 @@ static const AVFilterPad showspectrum_inputs[] = {
.name = "default",
.type = AVMEDIA_TYPE_AUDIO,
},
{ NULL }
};
static const AVFilterPad showspectrum_outputs[] = {
@ -1663,7 +1662,6 @@ static const AVFilterPad showspectrum_outputs[] = {
.type = AVMEDIA_TYPE_VIDEO,
.config_props = config_output,
},
{ NULL }
};
const AVFilter ff_avf_showspectrum = {
@ -1672,8 +1670,8 @@ const AVFilter ff_avf_showspectrum = {
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(ShowSpectrumContext),
.inputs = showspectrum_inputs,
.outputs = showspectrum_outputs,
FILTER_INPUTS(showspectrum_inputs),
FILTER_OUTPUTS(showspectrum_outputs),
.activate = activate,
.priv_class = &showspectrum_class,
.flags = AVFILTER_FLAG_SLICE_THREADS,
@ -1838,7 +1836,6 @@ static const AVFilterPad showspectrumpic_inputs[] = {
.type = AVMEDIA_TYPE_AUDIO,
.filter_frame = showspectrumpic_filter_frame,
},
{ NULL }
};
static const AVFilterPad showspectrumpic_outputs[] = {
@ -1848,7 +1845,6 @@ static const AVFilterPad showspectrumpic_outputs[] = {
.config_props = config_output,
.request_frame = showspectrumpic_request_frame,
},
{ NULL }
};
const AVFilter ff_avf_showspectrumpic = {
@ -1857,8 +1853,8 @@ const AVFilter ff_avf_showspectrumpic = {
.uninit = uninit,
.query_formats = query_formats,
.priv_size = sizeof(ShowSpectrumContext),
.inputs = showspectrumpic_inputs,
.outputs = showspectrumpic_outputs,
FILTER_INPUTS(showspectrumpic_inputs),
FILTER_OUTPUTS(showspectrumpic_outputs),
.priv_class = &showspectrumpic_class,
.flags = AVFILTER_FLAG_SLICE_THREADS,
};

Some files were not shown because too many files have changed in this diff Show More