summaryrefslogtreecommitdiff
path: root/libavfilter
Commit message (Collapse)AuthorAge
...
* avfilter/vf_guided: Remove always-false format checkAndreas Rheinhardt2021-09-21
| | | | | | | This filter uses ff_set_common_formats_from_list(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_displace: Remove always-false format checkAndreas Rheinhardt2021-09-21
| | | | | | | This filter uses ff_set_common_formats_from_list(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_convolve: Remove always-false format checkAndreas Rheinhardt2021-09-21
| | | | | | | These filters use ff_set_common_formats_from_list(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_bm3d: Remove always-false format checkAndreas Rheinhardt2021-09-21
| | | | | | | This filter uses ff_set_common_formats_from_list(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_blend: Remove always-false format checkAndreas Rheinhardt2021-09-21
| | | | | | | This filter uses ff_set_common_formats_from_list(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_sidechaincompress: Remove always-false samplerate checkAndreas Rheinhardt2021-09-21
| | | | | | | | | | This filter uses ff_set_common_all_samplerates(). Also don't overwrite outlink->sample_rate in config_output; it is harmless, because it is overwritten with the value it already had, but it is an API violation. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_amerge: Remove always-false samplerate checkAndreas Rheinhardt2021-09-21
| | | | | | | | | | This filter uses ff_set_common_all_samplerates(). Also don't overwrite outlink->sample_rate in config_output; it is harmless, because it is overwritten with the value it already had, but it is an API violation. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_agate: Remove always-false samplerate checkAndreas Rheinhardt2021-09-21
| | | | | | | | | | This filter uses ff_set_common_all_samplerates(). Also don't overwrite outlink->sample_rate in config_output; it is harmless, because it is overwritten with the value it already had, but it is an API violation. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_sidechaincompress: Honour query_formats API, fix segfaultAndreas Rheinhardt2021-09-21
| | | | | | | | | | | | | | | | | | | | Just like the sidechaingate filter, the sidechaincompress filter overwrote the channel layout and channel count of its output in its config_output callback to match the channel layout of its main input instead of linking the main input and its output together in its query_formats callback. This is an API violation that can lead to segfaults, as in the following filtergraph, where stereotools rightly expects stereo, yet receives only mono: [in]aformat=channel_layouts=mono,aformat=channel_layouts=stereo|mono[out];\ [out][in2]sidechaincompress,stereotools Fix this by linking the channel layouts of the main input and the output in query_formats and remove the code overwriting it in config_output. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_agate: Honour query_formats API, fix segfaultAndreas Rheinhardt2021-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sidechaingate filter wants its main input and its (only) output to have the same channel layout and number of channels; yet it does not link them in its query_formats callback. Instead it sets the outlink to only accept the first offered choice for the main input's channel layout and then sets both inputs to independently accept any channel counts. The config_output callback then overwrote the outlink's channel layout and channels properties with the main input's, even though they may differ in case the first offered choice for the main input's channel layout turns out not to be the final one. Consider e.g. the following filtergraph: [in]aformat=channel_layouts=mono,aformat=channel_layouts=stereo|mono[out];\ [out][in2]sidechaingate,stereotools The two aformats ensure that the first offered channel layout (stereo) will not be chosen for the input; yet it is the only offered channel layout for the output of sidechaingate and will therefore be chosen by the query_formats framework. Because the sidechaingate outputs interleaved doubles which stereotools expects the output of sidechaingate appears to be suitable as input for stereotools without further conversions. Yet stereotools actually only receives a mono frame and therefore overreads its input buffer which leads to segfaults; it can also lead to heap corruption because there can be writes beyond the end of the buffer, too. Fix this by linking the channel layouts of the main input and the output in query_formats and remove the code overwriting it in config_output. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_afade: Remove redundant checks and assignmentsAndreas Rheinhardt2021-09-21
| | | | | | | | | The acrossfade filter uses the ff_set_common_* functions in its query_formats(), so that the formats, the sample rates as well as the channel layouts and counts of all links coincide. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/avf_showspectrum: rewrite frequency log axis/bin scalingPaul B Mahol2021-09-20
|
* avcodec/elbg: Add persistent ELBGContextAndreas Rheinhardt2021-09-20
| | | | | | | | It will be used in future commits to avoid having to allocate and free all the buffers used. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_elbg: Rename ELBGContext->ELBGFilterContextAndreas Rheinhardt2021-09-20
| | | | | | | The former name will be used for a context for avpriv_do_elbg(). Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/elbg: Merge avpriv_init_elbg() into avpriv_do_elbg()Andreas Rheinhardt2021-09-20
| | | | | | | | | These functions are always called directly after another with the exact same arguments. This avoids exporting a symbol; it also avoids having to perform two calls for every caller. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* Replace all occurences of av_mallocz_array() by av_calloc()Andreas Rheinhardt2021-09-20
| | | | | | | They do the same. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_subtitles, fftools/ffmpeg: Don't set sub_text_formatAndreas Rheinhardt2021-09-20
| | | | | | | | | Unnecessary since 1f63665ca567fbc49fa80166d468a822c2999efa, because the value the option is set to coincides with the default value. Found-by: Soft Works <softworkz@hotmail.com> Reviewed-by: Soft Works <softworkz@hotmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/avf_avectorscope: fix zoom 0 mode with nonlinear scalePaul B Mahol2021-09-19
|
* avfilter/avf_avectorscope: add support for commandsPaul B Mahol2021-09-19
|
* avfilter/avf_avectorscope: add slice threading for fade functionPaul B Mahol2021-09-19
|
* avfilter/avf_avectorscope: add ultra fast path when slow fading is disabledPaul B Mahol2021-09-19
|
* avfilter/vf_hflip: Don't call av_pix_fmt_desc_get() twiceAndreas Rheinhardt2021-09-19
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_zscale: Use init instead of init_dictAndreas Rheinhardt2021-09-19
| | | | | | The AVDictionary was unused. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_spp: Add dummy element to array to avoid shiftAndreas Rheinhardt2021-09-19
| | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_spp: Use preinit instead of init_dictAndreas Rheinhardt2021-09-19
| | | | | | | | | | | | | | | | | | By using preinit, the AVDCT already exists directly after allocating the filter, so that the filter's AVClass's child_next becomes usable for setting options with the AV_OPT_SEARCH_CHILDREN search flag. This means that it is no longer necessary to use the init_dict callback for this filter. Furthermore, the earlier code did not abide by the documentation of the init_dict callback at all: Instead of only returning the options that have not been recognized it always returned all options on any av_opt_set() error and errored out in this case, even if it is just an unrecognized option. This behaviour has been inherited by avfilter_init_dict(), contradicting its documentation. This is also fixed in this commit. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_aresample: Use preinit instead of init_dictAndreas Rheinhardt2021-09-19
| | | | | | | | | | | | | | | | | | | | | By using preinit, the SwrContext already exists directly after allocating the filter, so that the filter's AVClass's child_next becomes usable for setting options with the AV_OPT_SEARCH_CHILDREN search flag. This means that it is no longer necessary to use the init_dict callback for this filter. Furthermore, the earlier code did not abide by the documentation of the init_dict callback at all: Instead of only returning the options that have not been recognized it always returned all options on any av_opt_set() error and errored out in this case; yet if the error was just caused by an unrecognized option, it should not error out at all and instead return said option. This behaviour has been inherited by avfilter_init_dict(), contradicting its documentation. This is also fixed by this commit. Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_readeia608: Use av_dict_set_int()Andreas Rheinhardt2021-09-19
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_scale: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vsrc_testsrc: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | | Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_weave: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_stack: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_premultiply: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_neighbor: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_maskedminmax: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_lut: Remove empty init functionAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_lut: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_format: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/vf_blend: Don't redefine options nameAndreas Rheinhardt2021-09-19
| | | | | | Use AVFILTER_DEFINE_CLASS_EXT instead. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/src_movie: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/split: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_zmq: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_streamselect: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_sendcmd: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_realtime: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_perms: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_graphmonitor: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_drawgraph: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/f_cue: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_sidechaincompress: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avfilter/af_biquads: Deduplicate AVClassesAndreas Rheinhardt2021-09-19
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>