[FFmpeg-devel] [PATCH 2/2] avfilter/avfilter: Add FFFilter, hide internals of AVFilter

Michael Niedermayer michael at niedermayer.cc
Sun Jan 12 02:02:07 EET 2025


On Thu, Jan 09, 2025 at 03:47:39AM +0100, Andreas Rheinhardt wrote:
> Patch attached

>  configure                           |    6 
>  libavfilter/aeval.c                 |   19 
>  libavfilter/af_aap.c                |   12 
>  libavfilter/af_acontrast.c          |    8 
>  libavfilter/af_acopy.c              |    8 
>  libavfilter/af_acrossover.c         |   14 
>  libavfilter/af_acrusher.c           |   10 
>  libavfilter/af_adeclick.c           |   20 
>  libavfilter/af_adecorrelate.c       |   12 
>  libavfilter/af_adelay.c             |   10 
>  libavfilter/af_adenorm.c            |   12 
>  libavfilter/af_aderivative.c        |   20 
>  libavfilter/af_adrc.c               |   12 
>  libavfilter/af_adynamicequalizer.c  |   12 
>  libavfilter/af_adynamicsmooth.c     |   10 
>  libavfilter/af_aecho.c              |    8 
>  libavfilter/af_aemphasis.c          |   12 
>  libavfilter/af_aexciter.c           |   10 
>  libavfilter/af_afade.c              |   18 
>  libavfilter/af_afftdn.c             |   12 
>  libavfilter/af_afftfilt.c           |   12 
>  libavfilter/af_afir.c               |   14 
>  libavfilter/af_aformat.c            |   10 
>  libavfilter/af_afreqshift.c         |   24 
>  libavfilter/af_afwtdn.c             |   12 
>  libavfilter/af_agate.c              |   20 
>  libavfilter/af_aiir.c               |   12 
>  libavfilter/af_alimiter.c           |   10 
>  libavfilter/af_amerge.c             |   12 
>  libavfilter/af_amix.c               |   12 
>  libavfilter/af_amultiply.c          |    6 
>  libavfilter/af_anequalizer.c        |   16 
>  libavfilter/af_anlmdn.c             |   12 
>  libavfilter/af_anlms.c              |   24 
>  libavfilter/af_anull.c              |    8 
>  libavfilter/af_apad.c               |   10 
>  libavfilter/af_aphaser.c            |    8 
>  libavfilter/af_apsyclip.c           |   12 
>  libavfilter/af_apulsator.c          |    8 
>  libavfilter/af_aresample.c          |    8 
>  libavfilter/af_arls.c               |   12 
>  libavfilter/af_arnndn.c             |   12 
>  libavfilter/af_asdr.c               |   36 -
>  libavfilter/af_asetnsamples.c       |   10 
>  libavfilter/af_asetrate.c           |   10 
>  libavfilter/af_ashowinfo.c          |    8 
>  libavfilter/af_asoftclip.c          |   12 
>  libavfilter/af_aspectralstats.c     |   10 
>  libavfilter/af_asr.c                |   10 
>  libavfilter/af_astats.c             |   10 
>  libavfilter/af_asubboost.c          |   12 
>  libavfilter/af_asupercut.c          |   48 -
>  libavfilter/af_atempo.c             |    8 
>  libavfilter/af_atilt.c              |   12 
>  libavfilter/af_axcorrelate.c        |    8 
>  libavfilter/af_biquads.c            |   11 
>  libavfilter/af_bs2b.c               |    8 
>  libavfilter/af_channelmap.c         |    8 
>  libavfilter/af_channelsplit.c       |   11 
>  libavfilter/af_chorus.c             |    8 
>  libavfilter/af_compand.c            |    8 
>  libavfilter/af_compensationdelay.c  |   10 
>  libavfilter/af_crossfeed.c          |   10 
>  libavfilter/af_crystalizer.c        |   12 
>  libavfilter/af_dcshift.c            |   10 
>  libavfilter/af_deesser.c            |   10 
>  libavfilter/af_dialoguenhance.c     |   10 
>  libavfilter/af_drmeter.c            |   10 
>  libavfilter/af_dynaudnorm.c         |   12 
>  libavfilter/af_earwax.c             |    6 
>  libavfilter/af_extrastereo.c        |   10 
>  libavfilter/af_firequalizer.c       |    8 
>  libavfilter/af_flanger.c            |    8 
>  libavfilter/af_haas.c               |    8 
>  libavfilter/af_hdcd.c               |    8 
>  libavfilter/af_headphone.c          |   11 
>  libavfilter/af_join.c               |   11 
>  libavfilter/af_ladspa.c             |   11 
>  libavfilter/af_loudnorm.c           |    8 
>  libavfilter/af_lv2.c                |   11 
>  libavfilter/af_mcompand.c           |    8 
>  libavfilter/af_pan.c                |    8 
>  libavfilter/af_replaygain.c         |   10 
>  libavfilter/af_rubberband.c         |    8 
>  libavfilter/af_sidechaincompress.c  |   16 
>  libavfilter/af_silencedetect.c      |   10 
>  libavfilter/af_silenceremove.c      |   10 
>  libavfilter/af_sofalizer.c          |   10 
>  libavfilter/af_speechnorm.c         |   10 
>  libavfilter/af_stereotools.c        |   10 
>  libavfilter/af_stereowiden.c        |   10 
>  libavfilter/af_superequalizer.c     |    8 
>  libavfilter/af_surround.c           |   10 
>  libavfilter/af_tremolo.c            |   10 
>  libavfilter/af_vibrato.c            |   10 
>  libavfilter/af_virtualbass.c        |   10 
>  libavfilter/af_volume.c             |   10 
>  libavfilter/af_volumedetect.c       |    8 
>  libavfilter/allfilters.c            | 1171 ++++++++++++++++++------------------
>  libavfilter/asink_anullsink.c       |    8 
>  libavfilter/asrc_afdelaysrc.c       |    9 
>  libavfilter/asrc_afirsrc.c          |   18 
>  libavfilter/asrc_anoisesrc.c        |    9 
>  libavfilter/asrc_anullsrc.c         |    9 
>  libavfilter/asrc_flite.c            |    9 
>  libavfilter/asrc_hilbert.c          |    9 
>  libavfilter/asrc_sinc.c             |    9 
>  libavfilter/asrc_sine.c             |    9 
>  libavfilter/avf_a3dscope.c          |    8 
>  libavfilter/avf_abitscope.c         |    8 
>  libavfilter/avf_ahistogram.c        |    8 
>  libavfilter/avf_aphasemeter.c       |   11 
>  libavfilter/avf_avectorscope.c      |   10 
>  libavfilter/avf_concat.c            |   14 
>  libavfilter/avf_showcqt.c           |    8 
>  libavfilter/avf_showcwt.c           |   10 
>  libavfilter/avf_showfreqs.c         |    8 
>  libavfilter/avf_showspatial.c       |   10 
>  libavfilter/avf_showspectrum.c      |   20 
>  libavfilter/avf_showvolume.c        |    8 
>  libavfilter/avf_showwaves.c         |   16 
>  libavfilter/avfilter.c              |   41 -
>  libavfilter/avfilter.h              |  204 ------
>  libavfilter/avfiltergraph.c         |   17 
>  libavfilter/buffersink.c            |   30 
>  libavfilter/buffersrc.c             |   18 
>  libavfilter/f_bench.c               |   20 
>  libavfilter/f_cue.c                 |   18 
>  libavfilter/f_drawgraph.c           |   16 
>  libavfilter/f_ebur128.c             |   12 
>  libavfilter/f_graphmonitor.c        |   16 
>  libavfilter/f_interleave.c          |   20 
>  libavfilter/f_latency.c             |   18 
>  libavfilter/f_loop.c                |   16 
>  libavfilter/f_metadata.c            |   24 
>  libavfilter/f_perms.c               |   24 
>  libavfilter/f_realtime.c            |   20 
>  libavfilter/f_reverse.c             |   12 
>  libavfilter/f_segment.c             |   22 
>  libavfilter/f_select.c              |   20 
>  libavfilter/f_sendcmd.c             |   20 
>  libavfilter/f_sidedata.c            |   24 
>  libavfilter/f_streamselect.c        |   20 
>  libavfilter/f_zmq.c                 |   16 
>  libavfilter/filters.h               |  207 ++++++
>  libavfilter/formats.c               |    2 
>  libavfilter/qrencode.c              |   20 
>  libavfilter/setpts.c                |   22 
>  libavfilter/settb.c                 |   20 
>  libavfilter/split.c                 |   22 
>  libavfilter/src_avsynctest.c        |    9 
>  libavfilter/src_movie.c             |   24 
>  libavfilter/stack_internal.c        |   10 
>  libavfilter/tests/filtfmts.c        |   10 
>  libavfilter/trim.c                  |   20 
>  libavfilter/vaf_spectrumsynth.c     |    8 
>  libavfilter/vf_addroi.c             |   12 
>  libavfilter/vf_alphamerge.c         |   10 
>  libavfilter/vf_amplify.c            |   10 
>  libavfilter/vf_aspect.c             |   20 
>  libavfilter/vf_atadenoise.c         |   10 
>  libavfilter/vf_avgblur.c            |   10 
>  libavfilter/vf_avgblur_opencl.c     |   18 
>  libavfilter/vf_avgblur_vulkan.c     |   10 
>  libavfilter/vf_backgroundkey.c      |   10 
>  libavfilter/vf_bbox.c               |   10 
>  libavfilter/vf_bilateral.c          |   12 
>  libavfilter/vf_bilateral_cuda.c     |    9 
>  libavfilter/vf_bitplanenoise.c      |   10 
>  libavfilter/vf_blackdetect.c        |   10 
>  libavfilter/vf_blackframe.c         |   10 
>  libavfilter/vf_blend.c              |   20 
>  libavfilter/vf_blend_vulkan.c       |   10 
>  libavfilter/vf_blockdetect.c        |   10 
>  libavfilter/vf_blurdetect.c         |   10 
>  libavfilter/vf_bm3d.c               |   16 
>  libavfilter/vf_boxblur.c            |   10 
>  libavfilter/vf_bwdif.c              |   10 
>  libavfilter/vf_bwdif_cuda.c         |   10 
>  libavfilter/vf_bwdif_vulkan.c       |   12 
>  libavfilter/vf_cas.c                |   10 
>  libavfilter/vf_ccrepack.c           |    8 
>  libavfilter/vf_chromaber_vulkan.c   |   10 
>  libavfilter/vf_chromakey.c          |   20 
>  libavfilter/vf_chromakey_cuda.c     |    9 
>  libavfilter/vf_chromanr.c           |   10 
>  libavfilter/vf_chromashift.c        |   20 
>  libavfilter/vf_ciescope.c           |    8 
>  libavfilter/vf_codecview.c          |   10 
>  libavfilter/vf_colorbalance.c       |   10 
>  libavfilter/vf_colorchannelmixer.c  |   10 
>  libavfilter/vf_colorconstancy.c     |   10 
>  libavfilter/vf_colorcontrast.c      |   10 
>  libavfilter/vf_colorcorrect.c       |   10 
>  libavfilter/vf_colorize.c           |   10 
>  libavfilter/vf_colorkey.c           |   20 
>  libavfilter/vf_colorkey_opencl.c    |   10 
>  libavfilter/vf_colorlevels.c        |   10 
>  libavfilter/vf_colormap.c           |   12 
>  libavfilter/vf_colormatrix.c        |   10 
>  libavfilter/vf_colorspace.c         |   10 
>  libavfilter/vf_colorspace_cuda.c    |    9 
>  libavfilter/vf_colortemperature.c   |   10 
>  libavfilter/vf_convolution.c        |   60 -
>  libavfilter/vf_convolution_opencl.c |   40 -
>  libavfilter/vf_convolve.c           |   30 
>  libavfilter/vf_copy.c               |    8 
>  libavfilter/vf_coreimage.m          |   18 
>  libavfilter/vf_corr.c               |   14 
>  libavfilter/vf_cover_rect.c         |    8 
>  libavfilter/vf_crop.c               |    8 
>  libavfilter/vf_cropdetect.c         |   10 
>  libavfilter/vf_curves.c             |   10 
>  libavfilter/vf_datascope.c          |   30 
>  libavfilter/vf_dblur.c              |   10 
>  libavfilter/vf_dctdnoiz.c           |   10 
>  libavfilter/vf_deband.c             |   10 
>  libavfilter/vf_deblock.c            |   10 
>  libavfilter/vf_decimate.c           |   10 
>  libavfilter/vf_dedot.c              |   10 
>  libavfilter/vf_deflicker.c          |    8 
>  libavfilter/vf_deinterlace_vaapi.c  |    8 
>  libavfilter/vf_dejudder.c           |    8 
>  libavfilter/vf_delogo.c             |   10 
>  libavfilter/vf_derain.c             |   10 
>  libavfilter/vf_deshake.c            |    8 
>  libavfilter/vf_deshake_opencl.c     |   10 
>  libavfilter/vf_despill.c            |   10 
>  libavfilter/vf_detelecine.c         |    8 
>  libavfilter/vf_displace.c           |   12 
>  libavfilter/vf_dnn_classify.c       |    8 
>  libavfilter/vf_dnn_detect.c         |    8 
>  libavfilter/vf_dnn_processing.c     |    8 
>  libavfilter/vf_drawbox.c            |   20 
>  libavfilter/vf_drawbox_vaapi.c      |    8 
>  libavfilter/vf_drawtext.c           |   10 
>  libavfilter/vf_edgedetect.c         |   10 
>  libavfilter/vf_elbg.c               |    8 
>  libavfilter/vf_entropy.c            |   10 
>  libavfilter/vf_epx.c                |   10 
>  libavfilter/vf_eq.c                 |   10 
>  libavfilter/vf_estdif.c             |   10 
>  libavfilter/vf_exposure.c           |   10 
>  libavfilter/vf_extractplanes.c      |   18 
>  libavfilter/vf_fade.c               |   12 
>  libavfilter/vf_feedback.c           |   10 
>  libavfilter/vf_fftdnoiz.c           |   12 
>  libavfilter/vf_fftfilt.c            |   10 
>  libavfilter/vf_field.c              |    8 
>  libavfilter/vf_fieldhint.c          |    8 
>  libavfilter/vf_fieldmatch.c         |   11 
>  libavfilter/vf_fieldorder.c         |   10 
>  libavfilter/vf_fillborders.c        |   10 
>  libavfilter/vf_find_rect.c          |   10 
>  libavfilter/vf_flip_vulkan.c        |   26 
>  libavfilter/vf_floodfill.c          |   10 
>  libavfilter/vf_format.c             |   24 
>  libavfilter/vf_fps.c                |   10 
>  libavfilter/vf_framepack.c          |    8 
>  libavfilter/vf_framerate.c          |   10 
>  libavfilter/vf_framestep.c          |   10 
>  libavfilter/vf_freezedetect.c       |   10 
>  libavfilter/vf_freezeframes.c       |    8 
>  libavfilter/vf_frei0r.c             |   20 
>  libavfilter/vf_fspp.c               |   10 
>  libavfilter/vf_fsync.c              |   10 
>  libavfilter/vf_gblur.c              |   10 
>  libavfilter/vf_gblur_vulkan.c       |   10 
>  libavfilter/vf_geq.c                |   10 
>  libavfilter/vf_gradfun.c            |   10 
>  libavfilter/vf_grayworld.c          |    8 
>  libavfilter/vf_guided.c             |   14 
>  libavfilter/vf_hflip.c              |    8 
>  libavfilter/vf_histeq.c             |   10 
>  libavfilter/vf_histogram.c          |   16 
>  libavfilter/vf_hqdn3d.c             |   10 
>  libavfilter/vf_hqx.c                |   10 
>  libavfilter/vf_hsvkey.c             |   20 
>  libavfilter/vf_hue.c                |   10 
>  libavfilter/vf_huesaturation.c      |   10 
>  libavfilter/vf_hwdownload.c         |    8 
>  libavfilter/vf_hwmap.c              |   10 
>  libavfilter/vf_hwupload.c           |   10 
>  libavfilter/vf_hwupload_cuda.c      |    9 
>  libavfilter/vf_hysteresis.c         |   10 
>  libavfilter/vf_iccdetect.c          |   10 
>  libavfilter/vf_iccgen.c             |   10 
>  libavfilter/vf_identity.c           |   28 
>  libavfilter/vf_idet.c               |   10 
>  libavfilter/vf_il.c                 |   10 
>  libavfilter/vf_kerndeint.c          |    8 
>  libavfilter/vf_lagfun.c             |   10 
>  libavfilter/vf_lcevc.c              |    6 
>  libavfilter/vf_lenscorrection.c     |   10 
>  libavfilter/vf_lensfun.c            |   10 
>  libavfilter/vf_libopencv.c          |    8 
>  libavfilter/vf_libplacebo.c         |   10 
>  libavfilter/vf_libvmaf.c            |   16 
>  libavfilter/vf_limitdiff.c          |   14 
>  libavfilter/vf_limiter.c            |   11 
>  libavfilter/vf_lumakey.c            |   11 
>  libavfilter/vf_lut.c                |   12 
>  libavfilter/vf_lut2.c               |   24 
>  libavfilter/vf_lut3d.c              |   33 -
>  libavfilter/vf_maskedclamp.c        |   11 
>  libavfilter/vf_maskedmerge.c        |   11 
>  libavfilter/vf_maskedminmax.c       |   22 
>  libavfilter/vf_maskedthreshold.c    |   11 
>  libavfilter/vf_maskfun.c            |   10 
>  libavfilter/vf_mcdeint.c            |    8 
>  libavfilter/vf_median.c             |   10 
>  libavfilter/vf_mergeplanes.c        |   12 
>  libavfilter/vf_mestimate.c          |   10 
>  libavfilter/vf_midequalizer.c       |   10 
>  libavfilter/vf_minterpolate.c       |    8 
>  libavfilter/vf_misc_vaapi.c         |   16 
>  libavfilter/vf_mix.c                |   22 
>  libavfilter/vf_monochrome.c         |   10 
>  libavfilter/vf_morpho.c             |   12 
>  libavfilter/vf_mpdecimate.c         |    8 
>  libavfilter/vf_multiply.c           |   10 
>  libavfilter/vf_negate.c             |   10 
>  libavfilter/vf_neighbor.c           |   12 
>  libavfilter/vf_neighbor_opencl.c    |   18 
>  libavfilter/vf_nlmeans.c            |   10 
>  libavfilter/vf_nlmeans_opencl.c     |   10 
>  libavfilter/vf_nlmeans_vulkan.c     |   10 
>  libavfilter/vf_nnedi.c              |   10 
>  libavfilter/vf_noise.c              |   10 
>  libavfilter/vf_normalize.c          |   10 
>  libavfilter/vf_null.c               |    8 
>  libavfilter/vf_ocr.c                |   10 
>  libavfilter/vf_overlay.c            |   12 
>  libavfilter/vf_overlay_cuda.c       |    8 
>  libavfilter/vf_overlay_opencl.c     |   10 
>  libavfilter/vf_overlay_qsv.c        |   10 
>  libavfilter/vf_overlay_vaapi.c      |    8 
>  libavfilter/vf_overlay_vulkan.c     |   10 
>  libavfilter/vf_owdenoise.c          |   10 
>  libavfilter/vf_pad.c                |    8 
>  libavfilter/vf_pad_opencl.c         |   10 
>  libavfilter/vf_pad_vaapi.c          |    8 
>  libavfilter/vf_palettegen.c         |    8 
>  libavfilter/vf_paletteuse.c         |    8 
>  libavfilter/vf_perspective.c        |   10 
>  libavfilter/vf_phase.c              |   10 
>  libavfilter/vf_photosensitivity.c   |    8 
>  libavfilter/vf_pixdesctest.c        |    6 
>  libavfilter/vf_pixelize.c           |   10 
>  libavfilter/vf_pp.c                 |   10 
>  libavfilter/vf_pp7.c                |   10 
>  libavfilter/vf_premultiply.c        |   30 
>  libavfilter/vf_procamp_vaapi.c      |    8 
>  libavfilter/vf_program_opencl.c     |   26 
>  libavfilter/vf_pseudocolor.c        |   10 
>  libavfilter/vf_psnr.c               |   14 
>  libavfilter/vf_pullup.c             |    8 
>  libavfilter/vf_qp.c                 |   12 
>  libavfilter/vf_quirc.c              |   12 
>  libavfilter/vf_random.c             |    8 
>  libavfilter/vf_readeia608.c         |   14 
>  libavfilter/vf_readvitc.c           |   10 
>  libavfilter/vf_remap.c              |   10 
>  libavfilter/vf_remap_opencl.c       |   10 
>  libavfilter/vf_removegrain.c        |   10 
>  libavfilter/vf_removelogo.c         |   10 
>  libavfilter/vf_repeatfields.c       |    6 
>  libavfilter/vf_rotate.c             |   10 
>  libavfilter/vf_sab.c                |   10 
>  libavfilter/vf_scale.c              |   39 -
>  libavfilter/vf_scale_cuda.c         |    9 
>  libavfilter/vf_scale_npp.c          |   31 
>  libavfilter/vf_scale_vaapi.c        |    8 
>  libavfilter/vf_scale_vt.c           |   10 
>  libavfilter/vf_scale_vulkan.c       |   10 
>  libavfilter/vf_scdet.c              |   10 
>  libavfilter/vf_scroll.c             |   10 
>  libavfilter/vf_selectivecolor.c     |   10 
>  libavfilter/vf_separatefields.c     |    6 
>  libavfilter/vf_setparams.c          |   30 
>  libavfilter/vf_sharpen_npp.c        |   10 
>  libavfilter/vf_shear.c              |   10 
>  libavfilter/vf_showinfo.c           |   10 
>  libavfilter/vf_showpalette.c        |    8 
>  libavfilter/vf_shuffleframes.c      |   10 
>  libavfilter/vf_shufflepixels.c      |   10 
>  libavfilter/vf_shuffleplanes.c      |   10 
>  libavfilter/vf_signalstats.c        |   10 
>  libavfilter/vf_signature.c          |   12 
>  libavfilter/vf_siti.c               |   10 
>  libavfilter/vf_smartblur.c          |   10 
>  libavfilter/vf_spp.c                |   10 
>  libavfilter/vf_sr.c                 |    8 
>  libavfilter/vf_ssim.c               |   14 
>  libavfilter/vf_ssim360.c            |    8 
>  libavfilter/vf_stack.c              |   30 
>  libavfilter/vf_stereo3d.c           |   10 
>  libavfilter/vf_subtitles.c          |   16 
>  libavfilter/vf_super2xsai.c         |    8 
>  libavfilter/vf_swaprect.c           |   10 
>  libavfilter/vf_swapuv.c             |    8 
>  libavfilter/vf_telecine.c           |    8 
>  libavfilter/vf_threshold.c          |   10 
>  libavfilter/vf_thumbnail.c          |   12 
>  libavfilter/vf_thumbnail_cuda.c     |    8 
>  libavfilter/vf_tile.c               |    8 
>  libavfilter/vf_tiltandshift.c       |    8 
>  libavfilter/vf_tinterlace.c         |   16 
>  libavfilter/vf_tmidequalizer.c      |   10 
>  libavfilter/vf_tonemap.c            |   10 
>  libavfilter/vf_tonemap_opencl.c     |   10 
>  libavfilter/vf_tonemap_vaapi.c      |    8 
>  libavfilter/vf_tpad.c               |    8 
>  libavfilter/vf_transpose.c          |   10 
>  libavfilter/vf_transpose_npp.c      |    8 
>  libavfilter/vf_transpose_opencl.c   |   10 
>  libavfilter/vf_transpose_vaapi.c    |    8 
>  libavfilter/vf_transpose_vt.c       |   10 
>  libavfilter/vf_transpose_vulkan.c   |   10 
>  libavfilter/vf_unsharp.c            |   10 
>  libavfilter/vf_unsharp_opencl.c     |   10 
>  libavfilter/vf_untile.c             |    8 
>  libavfilter/vf_uspp.c               |   10 
>  libavfilter/vf_v360.c               |   10 
>  libavfilter/vf_vaguedenoiser.c      |   10 
>  libavfilter/vf_varblur.c            |   12 
>  libavfilter/vf_vectorscope.c        |    8 
>  libavfilter/vf_vflip.c              |    8 
>  libavfilter/vf_vfrdet.c             |    8 
>  libavfilter/vf_vibrance.c           |   10 
>  libavfilter/vf_vidstabdetect.c      |   10 
>  libavfilter/vf_vidstabtransform.c   |    8 
>  libavfilter/vf_vif.c                |   14 
>  libavfilter/vf_vignette.c           |   10 
>  libavfilter/vf_vmafmotion.c         |   10 
>  libavfilter/vf_vpp_qsv.c            |   10 
>  libavfilter/vf_w3fdif.c             |   10 
>  libavfilter/vf_waveform.c           |   10 
>  libavfilter/vf_weave.c              |   20 
>  libavfilter/vf_xbr.c                |   10 
>  libavfilter/vf_xfade.c              |   10 
>  libavfilter/vf_xfade_opencl.c       |   10 
>  libavfilter/vf_xfade_vulkan.c       |   10 
>  libavfilter/vf_xmedian.c            |   22 
>  libavfilter/vf_xpsnr.c              |   10 
>  libavfilter/vf_yadif.c              |   10 
>  libavfilter/vf_yadif_cuda.c         |   10 
>  libavfilter/vf_yadif_videotoolbox.m |   10 
>  libavfilter/vf_yaepblur.c           |   10 
>  libavfilter/vf_zoompan.c            |    8 
>  libavfilter/vf_zscale.c             |   10 
>  libavfilter/vsink_nullsink.c        |    8 
>  libavfilter/vsrc_cellauto.c         |   10 
>  libavfilter/vsrc_ddagrab.c          |   12 
>  libavfilter/vsrc_gradients.c        |   12 
>  libavfilter/vsrc_life.c             |   10 
>  libavfilter/vsrc_mandelbrot.c       |   10 
>  libavfilter/vsrc_mptestsrc.c        |   10 
>  libavfilter/vsrc_perlin.c           |   10 
>  libavfilter/vsrc_sierpinski.c       |   12 
>  libavfilter/vsrc_testsrc.c          |  146 +---
>  libavfilter/vsrc_testsrc_vulkan.c   |   12 
>  462 files changed, 3595 insertions(+), 3611 deletions(-)
> 5e91db8d500a474d68dc6fa5829805f08439967c  0002-avfilter-avfilter-Add-FFFilter-hide-internals-of-AVF.patch
> From 9bfcf23977d6f6d1a5c7f8d77e2d5f69353c6112 Mon Sep 17 00:00:00 2001
> From: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> Date: Thu, 9 Jan 2025 02:42:11 +0100
> Subject: [PATCH 2/2] avfilter/avfilter: Add FFFilter, hide internals of
>  AVFilter
> 
> This patch is analogous to 20f972701806be20a77f808db332d9489343bb78:
> It hides the internal part of AVFilter by adding a new internal
> structure FFFilter (declared in filters.h) that has an AVFilter
> as its first member; the internal part of AVFilter is moved to
> this new structure.

seems to break this with enabled assertions (or something else in my tree)

In file included from libavfilter/buffersink.c:26:
libavfilter/buffersink.c: In function ‘av_buffersink_get_side_data’:
libavfilter/buffersink.c:373:27: error: ‘AVFilter’ {aka ‘const struct AVFilter’} has no member named ‘activate’
  373 |     av_assert0(ctx->filter->activate == activate);
      |                           ^~
./libavutil/avassert.h:41:11: note: in definition of macro ‘av_assert0’
   41 |     if (!(cond)) {                                                      \
      |           ^~~~

thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Republics decline into democracies and democracies degenerate into
despotisms. -- Aristotle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250112/43317275/attachment.sig>


More information about the ffmpeg-devel mailing list