mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
avfilter: Replace query_formats callback with union of list and callback
If one looks at the many query_formats callbacks in existence, one will immediately recognize that there is one type of default callback for video and a slightly different default callback for audio: It is "return ff_set_common_formats_from_list(ctx, pix_fmts);" for video with a filter-specific pix_fmts list. For audio, it is the same with a filter-specific sample_fmts list together with ff_set_common_all_samplerates() and ff_set_common_all_channel_counts(). This commit allows to remove the boilerplate query_formats callbacks by replacing said callback with a union consisting the old callback and pointers for pixel and sample format arrays. For the not uncommon case in which these lists only contain a single entry (besides the sentinel) enum AVPixelFormat and enum AVSampleFormat fields are also added to the union to store them directly in the AVFilter, thereby avoiding a relocation. The state of said union will be contained in a new, dedicated AVFilter field (the nb_inputs and nb_outputs fields have been shrunk to uint8_t in order to create a hole for this new field; this is no problem, as the maximum of all the nb_inputs is four; for nb_outputs it is only two). The state's default value coincides with the earlier default of query_formats being unset, namely that the filter accepts all formats (and also sample rates and channel counts/layouts for audio) provided that these properties agree coincide for all inputs and outputs. By using different union members for audio and video filters the type-unsafety of using the same functions for audio and video lists will furthermore be more confined to formats.c than before. When the new fields are used, they will also avoid allocations: Currently something nearly equivalent to ff_default_query_formats() is called after every successful call to a query_formats callback; yet in the common case that the newly allocated AVFilterFormats are not used at all (namely if there are no free links) these newly allocated AVFilterFormats are freed again without ever being used. Filters no longer using the callback will not exhibit this any more. Reviewed-by: Paul B Mahol <onemda@gmail.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
aa6360928e
commit
b4f5201967
@ -320,13 +320,13 @@ static const AVFilterPad aevalsrc_outputs[] = {
|
||||
const AVFilter ff_asrc_aevalsrc = {
|
||||
.name = "aevalsrc",
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate an audio signal generated by an expression."),
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.priv_size = sizeof(EvalContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(aevalsrc_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &aevalsrc_class,
|
||||
};
|
||||
|
||||
@ -466,12 +466,12 @@ static const AVFilterPad aeval_outputs[] = {
|
||||
const AVFilter ff_af_aeval = {
|
||||
.name = "aeval",
|
||||
.description = NULL_IF_CONFIG_SMALL("Filter audio signal according to a specified expression."),
|
||||
.query_formats = aeval_query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.priv_size = sizeof(EvalContext),
|
||||
FILTER_INPUTS(aeval_inputs),
|
||||
FILTER_OUTPUTS(aeval_outputs),
|
||||
FILTER_QUERY_FUNC(aeval_query_formats),
|
||||
.priv_class = &aeval_class,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
};
|
||||
|
@ -199,9 +199,9 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_acontrast = {
|
||||
.name = "acontrast",
|
||||
.description = NULL_IF_CONFIG_SMALL("Simple audio dynamic range compression/expansion filter."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioContrastContext),
|
||||
.priv_class = &acontrast_class,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -559,7 +559,7 @@ const AVFilter ff_af_acrossover = {
|
||||
.priv_class = &acrossover_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
FILTER_INPUTS(inputs),
|
||||
.outputs = NULL,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
|
||||
|
@ -357,7 +357,7 @@ const AVFilter ff_af_acrusher = {
|
||||
.priv_size = sizeof(ACrusherContext),
|
||||
.priv_class = &acrusher_class,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
FILTER_INPUTS(avfilter_af_acrusher_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_acrusher_outputs),
|
||||
.process_command = process_command,
|
||||
|
@ -753,7 +753,6 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_adeclick = {
|
||||
.name = "adeclick",
|
||||
.description = NULL_IF_CONFIG_SMALL("Remove impulsive noise from input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioDeclickContext),
|
||||
.priv_class = &adeclick_class,
|
||||
.init = init,
|
||||
@ -761,6 +760,7 @@ const AVFilter ff_af_adeclick = {
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
||||
@ -789,7 +789,6 @@ AVFILTER_DEFINE_CLASS(adeclip);
|
||||
const AVFilter ff_af_adeclip = {
|
||||
.name = "adeclip",
|
||||
.description = NULL_IF_CONFIG_SMALL("Remove clipping from input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioDeclickContext),
|
||||
.priv_class = &adeclip_class,
|
||||
.init = init,
|
||||
@ -797,5 +796,6 @@ const AVFilter ff_af_adeclip = {
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -257,12 +257,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_adecorrelate = {
|
||||
.name = "adecorrelate",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply decorrelation to input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ADecorrelateContext),
|
||||
.priv_class = &adecorrelate_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -338,12 +338,12 @@ static const AVFilterPad adelay_outputs[] = {
|
||||
const AVFilter ff_af_adelay = {
|
||||
.name = "adelay",
|
||||
.description = NULL_IF_CONFIG_SMALL("Delay one or more audio channels."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioDelayContext),
|
||||
.priv_class = &adelay_class,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(adelay_inputs),
|
||||
FILTER_OUTPUTS(adelay_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -307,10 +307,10 @@ AVFILTER_DEFINE_CLASS(adenorm);
|
||||
const AVFilter ff_af_adenorm = {
|
||||
.name = "adenorm",
|
||||
.description = NULL_IF_CONFIG_SMALL("Remedy denormals by adding extremely low-level noise."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ADenormContext),
|
||||
FILTER_INPUTS(adenorm_inputs),
|
||||
FILTER_OUTPUTS(adenorm_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &adenorm_class,
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
|
@ -175,19 +175,19 @@ static const AVFilterPad aderivative_outputs[] = {
|
||||
const AVFilter ff_af_aderivative = {
|
||||
.name = "aderivative",
|
||||
.description = NULL_IF_CONFIG_SMALL("Compute derivative of input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ADerivativeContext),
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(aderivative_inputs),
|
||||
FILTER_OUTPUTS(aderivative_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
||||
const AVFilter ff_af_aintegral = {
|
||||
.name = "aintegral",
|
||||
.description = NULL_IF_CONFIG_SMALL("Compute integral of input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ADerivativeContext),
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(aderivative_inputs),
|
||||
FILTER_OUTPUTS(aderivative_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -364,7 +364,6 @@ static const AVFilterPad aecho_outputs[] = {
|
||||
const AVFilter ff_af_aecho = {
|
||||
.name = "aecho",
|
||||
.description = NULL_IF_CONFIG_SMALL("Add echoing to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioEchoContext),
|
||||
.priv_class = &aecho_class,
|
||||
.init = init,
|
||||
@ -372,4 +371,5 @@ const AVFilter ff_af_aecho = {
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(aecho_inputs),
|
||||
FILTER_OUTPUTS(aecho_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -391,9 +391,9 @@ const AVFilter ff_af_aemphasis = {
|
||||
.priv_size = sizeof(AudioEmphasisContext),
|
||||
.priv_class = &aemphasis_class,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_aemphasis_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_aemphasis_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -294,9 +294,9 @@ const AVFilter ff_af_aexciter = {
|
||||
.priv_size = sizeof(AExciterContext),
|
||||
.priv_class = &aexciter_class,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_aexciter_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_aexciter_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -353,11 +353,11 @@ static const AVFilterPad avfilter_af_afade_outputs[] = {
|
||||
const AVFilter ff_af_afade = {
|
||||
.name = "afade",
|
||||
.description = NULL_IF_CONFIG_SMALL("Fade in/out input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioFadeContext),
|
||||
.init = init,
|
||||
FILTER_INPUTS(avfilter_af_afade_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_afade_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &afade_class,
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
@ -626,12 +626,12 @@ static const AVFilterPad avfilter_af_acrossfade_outputs[] = {
|
||||
const AVFilter ff_af_acrossfade = {
|
||||
.name = "acrossfade",
|
||||
.description = NULL_IF_CONFIG_SMALL("Cross fade two input audio streams."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioFadeContext),
|
||||
.activate = activate,
|
||||
.priv_class = &acrossfade_class,
|
||||
FILTER_INPUTS(avfilter_af_acrossfade_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_acrossfade_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
||||
#endif /* CONFIG_ACROSSFADE_FILTER */
|
||||
|
@ -1412,13 +1412,13 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_afftdn = {
|
||||
.name = "afftdn",
|
||||
.description = NULL_IF_CONFIG_SMALL("Denoise audio samples using FFT."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioFFTDeNoiseContext),
|
||||
.priv_class = &afftdn_class,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -489,8 +489,8 @@ const AVFilter ff_af_afftfilt = {
|
||||
.priv_class = &afftfilt_class,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.activate = activate,
|
||||
.query_formats = query_formats,
|
||||
.uninit = uninit,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -942,7 +942,7 @@ const AVFilter ff_af_afir = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply Finite Impulse Response filter with supplied coefficients in additional stream(s)."),
|
||||
.priv_size = sizeof(AudioFIRContext),
|
||||
.priv_class = &afir_class,
|
||||
.query_formats = query_formats,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.init = init,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
|
@ -160,9 +160,9 @@ const AVFilter ff_af_aformat = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert the input audio to one of the specified formats."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AFormatContext),
|
||||
.priv_class = &aformat_class,
|
||||
FILTER_INPUTS(avfilter_af_aformat_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_aformat_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -388,12 +388,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_afreqshift = {
|
||||
.name = "afreqshift",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply frequency shifting to input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AFreqShift),
|
||||
.priv_class = &afreqshift_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = ff_filter_process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
@ -411,12 +411,12 @@ AVFILTER_DEFINE_CLASS(aphaseshift);
|
||||
const AVFilter ff_af_aphaseshift = {
|
||||
.name = "aphaseshift",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply phase shifting to input audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AFreqShift),
|
||||
.priv_class = &aphaseshift_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = ff_filter_process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -1325,13 +1325,13 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_afwtdn = {
|
||||
.name = "afwtdn",
|
||||
.description = NULL_IF_CONFIG_SMALL("Denoise audio stream using Wavelets."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioFWTDNContext),
|
||||
.priv_class = &afwtdn_class,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -255,10 +255,10 @@ const AVFilter ff_af_agate = {
|
||||
.name = "agate",
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio gate."),
|
||||
.priv_class = &agate_sidechaingate_class,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioGateContext),
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = ff_filter_process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
};
|
||||
@ -404,11 +404,11 @@ const AVFilter ff_af_sidechaingate = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio sidechain gate."),
|
||||
.priv_class = &agate_sidechaingate_class,
|
||||
.priv_size = sizeof(AudioGateContext),
|
||||
.query_formats = scquery_formats,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(sidechaingate_inputs),
|
||||
FILTER_OUTPUTS(sidechaingate_outputs),
|
||||
FILTER_QUERY_FUNC(scquery_formats),
|
||||
.process_command = ff_filter_process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -1572,8 +1572,8 @@ const AVFilter ff_af_aiir = {
|
||||
.priv_class = &aiir_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -353,7 +353,7 @@ const AVFilter ff_af_alimiter = {
|
||||
.priv_class = &alimiter_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(alimiter_inputs),
|
||||
FILTER_OUTPUTS(alimiter_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -337,10 +337,10 @@ const AVFilter ff_af_amerge = {
|
||||
.priv_size = sizeof(AMergeContext),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.activate = activate,
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(amerge_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &amerge_class,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -639,9 +639,9 @@ const AVFilter ff_af_amix = {
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.query_formats = query_formats,
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(avfilter_af_amix_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -196,7 +196,7 @@ const AVFilter ff_af_amultiply = {
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -770,9 +770,9 @@ const AVFilter ff_af_anequalizer = {
|
||||
.priv_class = &anequalizer_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
.outputs = NULL,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
|
||||
AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
|
@ -402,12 +402,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_anlmdn = {
|
||||
.name = "anlmdn",
|
||||
.description = NULL_IF_CONFIG_SMALL("Reduce broadband noise from stream using Non-Local Means."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioNLMeansContext),
|
||||
.priv_class = &anlmdn_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -306,9 +306,9 @@ const AVFilter ff_af_anlms = {
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
.process_command = ff_filter_process_command,
|
||||
};
|
||||
|
@ -278,11 +278,11 @@ static const AVFilterPad aphaser_outputs[] = {
|
||||
const AVFilter ff_af_aphaser = {
|
||||
.name = "aphaser",
|
||||
.description = NULL_IF_CONFIG_SMALL("Add a phasing effect to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioPhaserContext),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(aphaser_inputs),
|
||||
FILTER_OUTPUTS(aphaser_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &aphaser_class,
|
||||
};
|
||||
|
@ -666,12 +666,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_apsyclip = {
|
||||
.name = "apsyclip",
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio Psychoacoustic Clipper."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioPsyClipContext),
|
||||
.priv_class = &apsyclip_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
.activate = activate,
|
||||
|
@ -249,7 +249,7 @@ const AVFilter ff_af_apulsator = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio pulsator."),
|
||||
.priv_size = sizeof(AudioPulsatorContext),
|
||||
.priv_class = &apulsator_class,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -332,9 +332,9 @@ const AVFilter ff_af_aresample = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Resample audio data."),
|
||||
.preinit = preinit,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AResampleContext),
|
||||
.priv_class = &aresample_class,
|
||||
FILTER_INPUTS(aresample_inputs),
|
||||
FILTER_OUTPUTS(aresample_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -1608,7 +1608,6 @@ AVFILTER_DEFINE_CLASS(arnndn);
|
||||
const AVFilter ff_af_arnndn = {
|
||||
.name = "arnndn",
|
||||
.description = NULL_IF_CONFIG_SMALL("Reduce noise from speech using Recurrent Neural Networks."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioRNNContext),
|
||||
.priv_class = &arnndn_class,
|
||||
.activate = activate,
|
||||
@ -1616,6 +1615,7 @@ const AVFilter ff_af_arnndn = {
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
.process_command = process_command,
|
||||
|
@ -108,9 +108,9 @@ const AVFilter ff_af_asetrate = {
|
||||
.name = "asetrate",
|
||||
.description = NULL_IF_CONFIG_SMALL("Change the sample rate without "
|
||||
"altering the data."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASetRateContext),
|
||||
FILTER_INPUTS(asetrate_inputs),
|
||||
FILTER_OUTPUTS(asetrate_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &asetrate_class,
|
||||
};
|
||||
|
@ -500,11 +500,11 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_asoftclip = {
|
||||
.name = "asoftclip",
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio Soft Clipper."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASoftClipContext),
|
||||
.priv_class = &asoftclip_class,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.uninit = uninit,
|
||||
.process_command = ff_filter_process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
|
@ -172,7 +172,7 @@ const AVFilter ff_af_asr = {
|
||||
.priv_class = &asr_class,
|
||||
.init = asr_init,
|
||||
.uninit = asr_uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(asr_inputs),
|
||||
FILTER_OUTPUTS(asr_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -863,11 +863,11 @@ static const AVFilterPad astats_outputs[] = {
|
||||
const AVFilter ff_af_astats = {
|
||||
.name = "astats",
|
||||
.description = NULL_IF_CONFIG_SMALL("Show time domain statistics about audio frames."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioStatsContext),
|
||||
.priv_class = &astats_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(astats_inputs),
|
||||
FILTER_OUTPUTS(astats_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -233,12 +233,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_asubboost = {
|
||||
.name = "asubboost",
|
||||
.description = NULL_IF_CONFIG_SMALL("Boost subwoofer frequencies."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASubBoostContext),
|
||||
.priv_class = &asubboost_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -357,12 +357,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_asupercut = {
|
||||
.name = "asupercut",
|
||||
.description = NULL_IF_CONFIG_SMALL("Cut super frequencies."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASuperCutContext),
|
||||
.priv_class = &asupercut_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
@ -380,12 +380,12 @@ AVFILTER_DEFINE_CLASS(asubcut);
|
||||
const AVFilter ff_af_asubcut = {
|
||||
.name = "asubcut",
|
||||
.description = NULL_IF_CONFIG_SMALL("Cut subwoofer frequencies."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASuperCutContext),
|
||||
.priv_class = &asubcut_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
@ -406,11 +406,11 @@ const AVFilter ff_af_asuperpass = {
|
||||
.name = "asuperpass",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply high order Butterworth band-pass filter."),
|
||||
.priv_class = &asuperpass_asuperstop_class,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASuperCutContext),
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
@ -420,11 +420,11 @@ const AVFilter ff_af_asuperstop = {
|
||||
.name = "asuperstop",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply high order Butterworth band-stop filter."),
|
||||
.priv_class = &asuperpass_asuperstop_class,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ASuperCutContext),
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -1188,10 +1188,10 @@ const AVFilter ff_af_atempo = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Adjust audio tempo."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.process_command = process_command,
|
||||
.priv_size = sizeof(ATempoContext),
|
||||
.priv_class = &atempo_class,
|
||||
FILTER_INPUTS(atempo_inputs),
|
||||
FILTER_OUTPUTS(atempo_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -275,12 +275,12 @@ static const AVFilterPad outputs[] = {
|
||||
AVFilter ff_af_atilt = {
|
||||
.name = "atilt",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply spectral tilt to audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ATiltContext),
|
||||
.priv_class = &atilt_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -354,9 +354,9 @@ const AVFilter ff_af_axcorrelate = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Cross-correlate two audio streams."),
|
||||
.priv_size = sizeof(AudioXCorrelateContext),
|
||||
.priv_class = &axcorrelate_class,
|
||||
.query_formats = query_formats,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -868,9 +868,9 @@ const AVFilter ff_af_##name_ = { \
|
||||
.priv_size = sizeof(BiquadsContext), \
|
||||
.init = name_##_init, \
|
||||
.uninit = uninit, \
|
||||
.query_formats = query_formats, \
|
||||
FILTER_INPUTS(inputs), \
|
||||
FILTER_OUTPUTS(outputs), \
|
||||
FILTER_QUERY_FUNC(query_formats), \
|
||||
.process_command = process_command, \
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, \
|
||||
}
|
||||
|
@ -205,11 +205,11 @@ static const AVFilterPad bs2b_outputs[] = {
|
||||
const AVFilter ff_af_bs2b = {
|
||||
.name = "bs2b",
|
||||
.description = NULL_IF_CONFIG_SMALL("Bauer stereo-to-binaural filter."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(Bs2bContext),
|
||||
.priv_class = &bs2b_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(bs2b_inputs),
|
||||
FILTER_OUTPUTS(bs2b_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -400,9 +400,9 @@ const AVFilter ff_af_channelmap = {
|
||||
.name = "channelmap",
|
||||
.description = NULL_IF_CONFIG_SMALL("Remap audio channels."),
|
||||
.init = channelmap_init,
|
||||
.query_formats = channelmap_query_formats,
|
||||
.priv_size = sizeof(ChannelMapContext),
|
||||
.priv_class = &channelmap_class,
|
||||
FILTER_INPUTS(avfilter_af_channelmap_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_channelmap_outputs),
|
||||
FILTER_QUERY_FUNC(channelmap_query_formats),
|
||||
};
|
||||
|
@ -172,8 +172,8 @@ const AVFilter ff_af_channelsplit = {
|
||||
.priv_size = sizeof(ChannelSplitContext),
|
||||
.priv_class = &channelsplit_class,
|
||||
.init = init,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_channelsplit_inputs),
|
||||
.outputs = NULL,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
|
||||
};
|
||||
|
@ -357,11 +357,11 @@ static const AVFilterPad chorus_outputs[] = {
|
||||
const AVFilter ff_af_chorus = {
|
||||
.name = "chorus",
|
||||
.description = NULL_IF_CONFIG_SMALL("Add a chorus effect to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ChorusContext),
|
||||
.priv_class = &chorus_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(chorus_inputs),
|
||||
FILTER_OUTPUTS(chorus_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -574,11 +574,11 @@ const AVFilter ff_af_compand = {
|
||||
.name = "compand",
|
||||
.description = NULL_IF_CONFIG_SMALL(
|
||||
"Compress or expand audio dynamic range."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(CompandContext),
|
||||
.priv_class = &compand_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(compand_inputs),
|
||||
FILTER_OUTPUTS(compand_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -174,10 +174,10 @@ static const AVFilterPad compensationdelay_outputs[] = {
|
||||
const AVFilter ff_af_compensationdelay = {
|
||||
.name = "compensationdelay",
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio Compensation Delay Line."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(CompensationDelayContext),
|
||||
.priv_class = &compensationdelay_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(compensationdelay_inputs),
|
||||
FILTER_OUTPUTS(compensationdelay_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -176,11 +176,11 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_crossfeed = {
|
||||
.name = "crossfeed",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply headphone crossfeed filter."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(CrossfeedContext),
|
||||
.priv_class = &crossfeed_class,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
.process_command = process_command,
|
||||
};
|
||||
|
@ -379,12 +379,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_crystalizer = {
|
||||
.name = "crystalizer",
|
||||
.description = NULL_IF_CONFIG_SMALL("Simple audio noise sharpening filter."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(CrystalizerContext),
|
||||
.priv_class = &crystalizer_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
|
||||
AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -148,11 +148,11 @@ static const AVFilterPad dcshift_outputs[] = {
|
||||
const AVFilter ff_af_dcshift = {
|
||||
.name = "dcshift",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply a DC shift to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(DCShiftContext),
|
||||
.priv_class = &dcshift_class,
|
||||
.init = init,
|
||||
FILTER_INPUTS(dcshift_inputs),
|
||||
FILTER_OUTPUTS(dcshift_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
};
|
||||
|
@ -220,11 +220,11 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_deesser = {
|
||||
.name = "deesser",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply de-essing to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(DeesserContext),
|
||||
.priv_class = &deesser_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -214,10 +214,10 @@ static const AVFilterPad drmeter_outputs[] = {
|
||||
const AVFilter ff_af_drmeter = {
|
||||
.name = "drmeter",
|
||||
.description = NULL_IF_CONFIG_SMALL("Measure audio dynamic range."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(DRMeterContext),
|
||||
.priv_class = &drmeter_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(drmeter_inputs),
|
||||
FILTER_OUTPUTS(drmeter_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -874,13 +874,13 @@ static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = {
|
||||
const AVFilter ff_af_dynaudnorm = {
|
||||
.name = "dynaudnorm",
|
||||
.description = NULL_IF_CONFIG_SMALL("Dynamic Audio Normalizer."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(DynamicAudioNormalizerContext),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(avfilter_af_dynaudnorm_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_dynaudnorm_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &dynaudnorm_class,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
.process_command = process_command,
|
||||
|
@ -232,9 +232,9 @@ static const AVFilterPad earwax_outputs[] = {
|
||||
const AVFilter ff_af_earwax = {
|
||||
.name = "earwax",
|
||||
.description = NULL_IF_CONFIG_SMALL("Widen the stereo image."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(EarwaxContext),
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(earwax_inputs),
|
||||
FILTER_OUTPUTS(earwax_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -120,11 +120,11 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_extrastereo = {
|
||||
.name = "extrastereo",
|
||||
.description = NULL_IF_CONFIG_SMALL("Increase difference between stereo audio channels."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ExtraStereoContext),
|
||||
.priv_class = &extrastereo_class,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
.process_command = ff_filter_process_command,
|
||||
};
|
||||
|
@ -958,10 +958,10 @@ const AVFilter ff_af_firequalizer = {
|
||||
.name = "firequalizer",
|
||||
.description = NULL_IF_CONFIG_SMALL("Finite Impulse Response Equalizer."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.process_command = process_command,
|
||||
.priv_size = sizeof(FIREqualizerContext),
|
||||
FILTER_INPUTS(firequalizer_inputs),
|
||||
FILTER_OUTPUTS(firequalizer_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &firequalizer_class,
|
||||
};
|
||||
|
@ -221,11 +221,11 @@ static const AVFilterPad flanger_outputs[] = {
|
||||
const AVFilter ff_af_flanger = {
|
||||
.name = "flanger",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply a flanging effect to the audio."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(FlangerContext),
|
||||
.priv_class = &flanger_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(flanger_inputs),
|
||||
FILTER_OUTPUTS(flanger_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -216,10 +216,10 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_haas = {
|
||||
.name = "haas",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply Haas Stereo Enhancer."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(HaasContext),
|
||||
.priv_class = &haas_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -1777,7 +1777,7 @@ const AVFilter ff_af_hdcd = {
|
||||
.priv_class = &hdcd_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_hdcd_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_hdcd_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -763,9 +763,9 @@ const AVFilter ff_af_headphone = {
|
||||
.priv_class = &headphone_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.activate = activate,
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -541,8 +541,8 @@ const AVFilter ff_af_join = {
|
||||
.init = join_init,
|
||||
.uninit = join_uninit,
|
||||
.activate = activate,
|
||||
.query_formats = join_query_formats,
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(avfilter_af_join_outputs),
|
||||
FILTER_QUERY_FUNC(join_query_formats),
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -778,9 +778,9 @@ const AVFilter ff_af_ladspa = {
|
||||
.priv_class = &ladspa_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.process_command = process_command,
|
||||
.inputs = 0,
|
||||
FILTER_OUTPUTS(ladspa_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -911,9 +911,9 @@ const AVFilter ff_af_loudnorm = {
|
||||
.description = NULL_IF_CONFIG_SMALL("EBU R128 loudness normalization"),
|
||||
.priv_size = sizeof(LoudNormContext),
|
||||
.priv_class = &loudnorm_class,
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(avfilter_af_loudnorm_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_loudnorm_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -578,8 +578,8 @@ const AVFilter ff_af_lv2 = {
|
||||
.priv_class = &lv2_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.inputs = 0,
|
||||
FILTER_OUTPUTS(lv2_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
|
||||
};
|
||||
|
@ -654,10 +654,10 @@ const AVFilter ff_af_mcompand = {
|
||||
.name = "mcompand",
|
||||
.description = NULL_IF_CONFIG_SMALL(
|
||||
"Multiband Compress or expand audio dynamic range."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(MCompandContext),
|
||||
.priv_class = &mcompand_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(mcompand_inputs),
|
||||
FILTER_OUTPUTS(mcompand_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -451,7 +451,7 @@ const AVFilter ff_af_pan = {
|
||||
.priv_class = &pan_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(pan_inputs),
|
||||
FILTER_OUTPUTS(pan_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -604,9 +604,9 @@ static const AVFilterPad replaygain_outputs[] = {
|
||||
const AVFilter ff_af_replaygain = {
|
||||
.name = "replaygain",
|
||||
.description = NULL_IF_CONFIG_SMALL("ReplayGain scanner."),
|
||||
.query_formats = query_formats,
|
||||
.uninit = uninit,
|
||||
.priv_size = sizeof(ReplayGainContext),
|
||||
FILTER_INPUTS(replaygain_inputs),
|
||||
FILTER_OUTPUTS(replaygain_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -222,12 +222,12 @@ static const AVFilterPad rubberband_outputs[] = {
|
||||
const AVFilter ff_af_rubberband = {
|
||||
.name = "rubberband",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply time-stretching and pitch-shifting."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(RubberBandContext),
|
||||
.priv_class = &rubberband_class,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(rubberband_inputs),
|
||||
FILTER_OUTPUTS(rubberband_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
};
|
||||
|
@ -366,11 +366,11 @@ const AVFilter ff_af_sidechaincompress = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Sidechain compressor."),
|
||||
.priv_class = &sidechaincompress_acompressor_class,
|
||||
.priv_size = sizeof(SidechainCompressContext),
|
||||
.query_formats = query_formats,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(sidechaincompress_inputs),
|
||||
FILTER_OUTPUTS(sidechaincompress_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
};
|
||||
#endif /* CONFIG_SIDECHAINCOMPRESS_FILTER */
|
||||
@ -444,9 +444,9 @@ const AVFilter ff_af_acompressor = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Audio compressor."),
|
||||
.priv_class = &sidechaincompress_acompressor_class,
|
||||
.priv_size = sizeof(SidechainCompressContext),
|
||||
.query_formats = acompressor_query_formats,
|
||||
FILTER_INPUTS(acompressor_inputs),
|
||||
FILTER_OUTPUTS(acompressor_outputs),
|
||||
FILTER_QUERY_FUNC(acompressor_query_formats),
|
||||
.process_command = process_command,
|
||||
};
|
||||
#endif /* CONFIG_ACOMPRESSOR_FILTER */
|
||||
|
@ -284,9 +284,9 @@ const AVFilter ff_af_silencedetect = {
|
||||
.name = "silencedetect",
|
||||
.description = NULL_IF_CONFIG_SMALL("Detect silence."),
|
||||
.priv_size = sizeof(SilenceDetectContext),
|
||||
.query_formats = query_formats,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(silencedetect_inputs),
|
||||
FILTER_OUTPUTS(silencedetect_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &silencedetect_class,
|
||||
};
|
||||
|
@ -979,7 +979,7 @@ const AVFilter ff_af_silenceremove = {
|
||||
.priv_class = &silenceremove_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(silenceremove_inputs),
|
||||
FILTER_OUTPUTS(silenceremove_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -1112,8 +1112,8 @@ const AVFilter ff_af_sofalizer = {
|
||||
.init = init,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -574,13 +574,13 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_speechnorm = {
|
||||
.name = "speechnorm",
|
||||
.description = NULL_IF_CONFIG_SMALL("Speech Normalizer."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(SpeechNormalizerContext),
|
||||
.priv_class = &speechnorm_class,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
.process_command = process_command,
|
||||
};
|
||||
|
@ -375,12 +375,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_stereotools = {
|
||||
.name = "stereotools",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply various stereo tools."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(StereoToolsContext),
|
||||
.priv_class = &stereotools_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
};
|
||||
|
@ -156,12 +156,12 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_stereowiden = {
|
||||
.name = "stereowiden",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply stereo widening effect."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(StereoWidenContext),
|
||||
.priv_class = &stereowiden_class,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
|
||||
.process_command = ff_filter_process_command,
|
||||
};
|
||||
|
@ -368,10 +368,10 @@ const AVFilter ff_af_superequalizer = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply 18 band equalization filter."),
|
||||
.priv_size = sizeof(SuperEqualizerContext),
|
||||
.priv_class = &superequalizer_class,
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(superequalizer_inputs),
|
||||
FILTER_OUTPUTS(superequalizer_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -1783,7 +1783,6 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_af_surround = {
|
||||
.name = "surround",
|
||||
.description = NULL_IF_CONFIG_SMALL("Apply audio surround upmix filter."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioSurroundContext),
|
||||
.priv_class = &surround_class,
|
||||
.init = init,
|
||||
@ -1791,5 +1790,6 @@ const AVFilter ff_af_surround = {
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -151,7 +151,7 @@ const AVFilter ff_af_tremolo = {
|
||||
.priv_size = sizeof(TremoloContext),
|
||||
.priv_class = &tremolo_class,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_tremolo_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_tremolo_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -189,7 +189,7 @@ const AVFilter ff_af_vibrato = {
|
||||
.priv_size = sizeof(VibratoContext),
|
||||
.priv_class = &vibrato_class,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
FILTER_INPUTS(avfilter_af_vibrato_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_vibrato_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -465,13 +465,13 @@ static const AVFilterPad avfilter_af_volume_outputs[] = {
|
||||
const AVFilter ff_af_volume = {
|
||||
.name = "volume",
|
||||
.description = NULL_IF_CONFIG_SMALL("Change input volume."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(VolumeContext),
|
||||
.priv_class = &volume_class,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(avfilter_af_volume_inputs),
|
||||
FILTER_OUTPUTS(avfilter_af_volume_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
|
||||
.process_command = process_command,
|
||||
};
|
||||
|
@ -147,8 +147,8 @@ const AVFilter ff_af_volumedetect = {
|
||||
.name = "volumedetect",
|
||||
.description = NULL_IF_CONFIG_SMALL("Detect audio volume."),
|
||||
.priv_size = sizeof(VolDetectContext),
|
||||
.query_formats = query_formats,
|
||||
.uninit = uninit,
|
||||
FILTER_INPUTS(volumedetect_inputs),
|
||||
FILTER_OUTPUTS(volumedetect_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -311,12 +311,12 @@ static const AVFilterPad afirsrc_outputs[] = {
|
||||
const AVFilter ff_asrc_afirsrc = {
|
||||
.name = "afirsrc",
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate a FIR coefficients audio stream."),
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.priv_size = sizeof(AudioFIRSourceContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(afirsrc_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &afirsrc_class,
|
||||
};
|
||||
|
@ -235,10 +235,10 @@ static const AVFilterPad anoisesrc_outputs[] = {
|
||||
const AVFilter ff_asrc_anoisesrc = {
|
||||
.name = "anoisesrc",
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate a noise audio signal."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ANoiseSrcContext),
|
||||
.inputs = NULL,
|
||||
.activate = activate,
|
||||
FILTER_OUTPUTS(anoisesrc_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &anoisesrc_class,
|
||||
};
|
||||
|
@ -140,10 +140,10 @@ const AVFilter ff_asrc_anullsrc = {
|
||||
.name = "anullsrc",
|
||||
.description = NULL_IF_CONFIG_SMALL("Null audio source, return empty audio frames."),
|
||||
.init = init,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ANullContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(avfilter_asrc_anullsrc_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.activate = activate,
|
||||
.priv_class = &anullsrc_class,
|
||||
};
|
||||
|
@ -276,11 +276,11 @@ static const AVFilterPad flite_outputs[] = {
|
||||
const AVFilter ff_asrc_flite = {
|
||||
.name = "flite",
|
||||
.description = NULL_IF_CONFIG_SMALL("Synthesize voice from text using libflite."),
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.priv_size = sizeof(FliteContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(flite_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &flite_class,
|
||||
};
|
||||
|
@ -181,12 +181,12 @@ static const AVFilterPad hilbert_outputs[] = {
|
||||
const AVFilter ff_asrc_hilbert = {
|
||||
.name = "hilbert",
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate a Hilbert transform FIR coefficients."),
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.priv_size = sizeof(HilbertContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(hilbert_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &hilbert_class,
|
||||
};
|
||||
|
@ -441,9 +441,9 @@ const AVFilter ff_asrc_sinc = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate a sinc kaiser-windowed low-pass, high-pass, band-pass, or band-reject FIR coefficients."),
|
||||
.priv_size = sizeof(SincContext),
|
||||
.priv_class = &sinc_class,
|
||||
.query_formats = query_formats,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(sinc_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
};
|
||||
|
@ -263,12 +263,12 @@ static const AVFilterPad sine_outputs[] = {
|
||||
const AVFilter ff_asrc_sine = {
|
||||
.name = "sine",
|
||||
.description = NULL_IF_CONFIG_SMALL("Generate sine wave audio signal."),
|
||||
.query_formats = query_formats,
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.activate = activate,
|
||||
.priv_size = sizeof(SineContext),
|
||||
.inputs = NULL,
|
||||
FILTER_OUTPUTS(sine_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &sine_class,
|
||||
};
|
||||
|
@ -261,10 +261,10 @@ static const AVFilterPad outputs[] = {
|
||||
const AVFilter ff_avf_abitscope = {
|
||||
.name = "abitscope",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to audio bit scope video output."),
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioBitScopeContext),
|
||||
FILTER_INPUTS(inputs),
|
||||
FILTER_OUTPUTS(outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.activate = activate,
|
||||
.priv_class = &abitscope_class,
|
||||
};
|
||||
|
@ -426,10 +426,10 @@ const AVFilter ff_avf_ahistogram = {
|
||||
.name = "ahistogram",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to histogram video output."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioHistogramContext),
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(ahistogram_inputs),
|
||||
FILTER_OUTPUTS(ahistogram_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &ahistogram_class,
|
||||
};
|
||||
|
@ -387,10 +387,10 @@ const AVFilter ff_avf_aphasemeter = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to phase meter video output."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioPhaseMeterContext),
|
||||
FILTER_INPUTS(inputs),
|
||||
.outputs = NULL,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &aphasemeter_class,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
|
||||
};
|
||||
|
@ -445,11 +445,11 @@ const AVFilter ff_avf_avectorscope = {
|
||||
.name = "avectorscope",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to vectorscope video output."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(AudioVectorScopeContext),
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(audiovectorscope_inputs),
|
||||
FILTER_OUTPUTS(audiovectorscope_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &avectorscope_class,
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
.process_command = ff_filter_process_command,
|
||||
|
@ -449,12 +449,12 @@ const AVFilter ff_avf_concat = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Concatenate audio and video streams."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.activate = activate,
|
||||
.priv_size = sizeof(ConcatContext),
|
||||
.inputs = NULL,
|
||||
.outputs = NULL,
|
||||
.priv_class = &concat_class,
|
||||
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS | AVFILTER_FLAG_DYNAMIC_OUTPUTS,
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.process_command = process_command,
|
||||
};
|
||||
|
@ -1593,9 +1593,9 @@ const AVFilter ff_avf_showcqt = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to a CQT (Constant/Clamped Q Transform) spectrum video output."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowCQTContext),
|
||||
FILTER_INPUTS(showcqt_inputs),
|
||||
FILTER_OUTPUTS(showcqt_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &showcqt_class,
|
||||
};
|
||||
|
@ -567,10 +567,10 @@ const AVFilter ff_avf_showfreqs = {
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to a frequencies video output."),
|
||||
.init = init,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowFreqsContext),
|
||||
.activate = activate,
|
||||
FILTER_INPUTS(showfreqs_inputs),
|
||||
FILTER_OUTPUTS(showfreqs_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &showfreqs_class,
|
||||
};
|
||||
|
@ -360,10 +360,10 @@ const AVFilter ff_avf_showspatial = {
|
||||
.name = "showspatial",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to a spatial video output."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowSpatialContext),
|
||||
FILTER_INPUTS(showspatial_inputs),
|
||||
FILTER_OUTPUTS(showspatial_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.activate = spatial_activate,
|
||||
.priv_class = &showspatial_class,
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
|
@ -1646,10 +1646,10 @@ const AVFilter ff_avf_showspectrum = {
|
||||
.name = "showspectrum",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to a spectrum video output."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowSpectrumContext),
|
||||
FILTER_INPUTS(showspectrum_inputs),
|
||||
FILTER_OUTPUTS(showspectrum_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.activate = activate,
|
||||
.priv_class = &showspectrum_class,
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
@ -1829,10 +1829,10 @@ const AVFilter ff_avf_showspectrumpic = {
|
||||
.name = "showspectrumpic",
|
||||
.description = NULL_IF_CONFIG_SMALL("Convert input audio to a spectrum video output single picture."),
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowSpectrumContext),
|
||||
FILTER_INPUTS(showspectrumpic_inputs),
|
||||
FILTER_OUTPUTS(showspectrumpic_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &showspectrumpic_class,
|
||||
.flags = AVFILTER_FLAG_SLICE_THREADS,
|
||||
};
|
||||
|
@ -502,9 +502,9 @@ const AVFilter ff_avf_showvolume = {
|
||||
.init = init,
|
||||
.activate = activate,
|
||||
.uninit = uninit,
|
||||
.query_formats = query_formats,
|
||||
.priv_size = sizeof(ShowVolumeContext),
|
||||
FILTER_INPUTS(showvolume_inputs),
|
||||
FILTER_OUTPUTS(showvolume_outputs),
|
||||
FILTER_QUERY_FUNC(query_formats),
|
||||
.priv_class = &showvolume_class,
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user