[vlc-commits] filters: add an operations structure to set the callbacks

Alexandre Janniaux git at videolan.org
Thu Oct 8 10:28:17 CEST 2020


vlc | branch: master | Alexandre Janniaux <ajanni at videolabs.io> | Tue Aug 25 18:50:04 2020 +0200| [a353cdbc123f223bd79ee057593c70edcd8f010e] | committer: Steve Lhomme

filters: add an operations structure to set the callbacks

Generate a simple operations structure for filters generating their own filter
callback via VIDEO_FILTER_WRAPPER().

The filter chain sets a mouse handler on video filters that don't have one,
just as before, by using a local version of the ops structure of the filter and
adding the local mouse callback.

Co-authored-by: Steve Lhomme <robux4 at ycbcr.xyz>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a353cdbc123f223bd79ee057593c70edcd8f010e
---

 include/vlc_filter.h                               | 124 +++++++++++----------
 modules/access/screen/screen.c                     |   2 +-
 modules/arm_neon/chroma_yuv.c                      |  44 ++++----
 modules/arm_neon/yuv_rgb.c                         |  10 +-
 modules/audio_filter/audiobargraph_a.c             |   7 +-
 modules/audio_filter/center.c                      |   7 +-
 modules/audio_filter/channel_mixer/dolby.c         |   6 +-
 modules/audio_filter/channel_mixer/headphone.c     |   7 +-
 modules/audio_filter/channel_mixer/mono.c          |   7 +-
 modules/audio_filter/channel_mixer/remap.c         |   6 +-
 modules/audio_filter/channel_mixer/simple.c        |   8 +-
 .../audio_filter/channel_mixer/spatialaudio.cpp    |  18 ++-
 modules/audio_filter/channel_mixer/trivial.c       |  24 +++-
 modules/audio_filter/chorus_flanger.c              |  11 +-
 modules/audio_filter/compressor.c                  |   7 +-
 modules/audio_filter/converter/format.c            |  68 +++++------
 modules/audio_filter/converter/tospdif.c           |   8 +-
 modules/audio_filter/equalizer.c                   |   7 +-
 modules/audio_filter/gain.c                        |   6 +-
 modules/audio_filter/karaoke.c                     |   7 +-
 modules/audio_filter/libebur128.c                  |   7 +-
 modules/audio_filter/normvol.c                     |   6 +-
 modules/audio_filter/param_eq.c                    |  20 ++--
 modules/audio_filter/resampler/bandlimited.c       |   6 +-
 modules/audio_filter/resampler/soxr.c              |  10 +-
 modules/audio_filter/resampler/speex.c             |   6 +-
 modules/audio_filter/resampler/src.c               |   7 +-
 modules/audio_filter/resampler/ugly.c              |   6 +-
 modules/audio_filter/scaletempo.c                  |  14 ++-
 modules/audio_filter/spatializer/spatializer.cpp   |  12 +-
 modules/audio_filter/stereo_widen.c                |   6 +-
 modules/hw/d3d11/d3d11_deinterlace.c               |   7 +-
 modules/hw/d3d11/d3d11_filters.c                   |   6 +-
 modules/hw/d3d11/d3d11_surface.c                   |  20 ++--
 modules/hw/d3d9/d3d9_filters.c                     |   6 +-
 modules/hw/d3d9/dxa9.c                             |  16 ++-
 modules/hw/d3d9/dxva2_deinterlace.c                |   7 +-
 modules/hw/mmal/converter.c                        |   7 +-
 modules/hw/mmal/deinterlace.c                      |  14 ++-
 modules/hw/nvdec/chroma.c                          |   6 +-
 modules/hw/vaapi/chroma.c                          |  10 +-
 modules/hw/vaapi/filters.c                         |  24 +++-
 modules/hw/vdpau/adjust.c                          |   6 +-
 modules/hw/vdpau/chroma.c                          |  23 +++-
 modules/hw/vdpau/deinterlace.c                     |   6 +-
 modules/hw/vdpau/sharpen.c                         |   6 +-
 modules/spu/audiobargraph_v.c                      |  12 +-
 modules/spu/dynamicoverlay/dynamicoverlay.c        |   6 +-
 modules/spu/logo.c                                 |  18 +--
 modules/spu/marq.c                                 |   6 +-
 modules/spu/mosaic.c                               |   6 +-
 modules/spu/rss.c                                  |   6 +-
 modules/spu/subsdelay.c                            |   6 +-
 modules/text_renderer/freetype/freetype.c          |   7 +-
 modules/text_renderer/nsspeechsynthesizer.m        |   6 +-
 modules/text_renderer/sapi.cpp                     |  10 +-
 modules/text_renderer/svg.c                        |   6 +-
 modules/text_renderer/tdummy.c                     |   6 +-
 modules/video_chroma/chain.c                       |  15 ++-
 modules/video_chroma/cvpx.c                        |  28 +++--
 modules/video_chroma/grey_yuv.c                    |  29 +++--
 modules/video_chroma/i420_nv12.c                   |  12 +-
 modules/video_chroma/i420_rgb.c                    |  18 +--
 modules/video_chroma/i420_yuy2.c                   |  59 +++++-----
 modules/video_chroma/i422_i420.c                   |   6 +-
 modules/video_chroma/i422_yuy2.c                   |  69 ++++++------
 modules/video_chroma/omxdl.c                       |  52 ++++-----
 modules/video_chroma/rv32.c                        |   6 +-
 modules/video_chroma/swscale.c                     |   6 +-
 modules/video_chroma/yuvp.c                        |   2 +-
 modules/video_chroma/yuy2_i420.c                   |   6 +-
 modules/video_chroma/yuy2_i422.c                   |   6 +-
 modules/video_filter/adjust.c                      |  16 ++-
 modules/video_filter/alphamask.c                   |   7 +-
 modules/video_filter/anaglyph.c                    |   8 +-
 modules/video_filter/antiflicker.c                 |   7 +-
 modules/video_filter/ball.c                        |   6 +-
 modules/video_filter/blend.cpp                     |  13 ++-
 modules/video_filter/blendbench.c                  |  12 +-
 modules/video_filter/bluescreen.c                  |   7 +-
 modules/video_filter/canvas.c                      |   7 +-
 modules/video_filter/ci_filters.m                  |  14 ++-
 modules/video_filter/colorthres.c                  |  14 ++-
 modules/video_filter/croppadd.c                    |   7 +-
 modules/video_filter/deinterlace/deinterlace.c     |  12 +-
 modules/video_filter/edgedetection.c               |   7 +-
 modules/video_filter/erase.c                       |   7 +-
 modules/video_filter/extract.c                     |   7 +-
 modules/video_filter/fps.c                         |   7 +-
 modules/video_filter/freeze.c                      |   9 +-
 modules/video_filter/gaussianblur.c                |   7 +-
 modules/video_filter/gradfun.c                     |  10 +-
 modules/video_filter/gradient.c                    |   7 +-
 modules/video_filter/grain.c                       |  10 +-
 modules/video_filter/hqdn3d.c                      |   7 +-
 modules/video_filter/invert.c                      |   6 +-
 modules/video_filter/magnify.c                     |   9 +-
 modules/video_filter/mirror.c                      |   6 +-
 modules/video_filter/motionblur.c                  |   6 +-
 modules/video_filter/motiondetect.c                |   6 +-
 modules/video_filter/oldmovie.c                    |   6 +-
 modules/video_filter/opencv_example.cpp            |  12 +-
 modules/video_filter/opencv_wrapper.c              |   9 +-
 modules/video_filter/posterize.c                   |   6 +-
 modules/video_filter/postproc.c                    |   6 +-
 modules/video_filter/psychedelic.c                 |   6 +-
 modules/video_filter/puzzle.c                      |   8 +-
 modules/video_filter/ripple.c                      |   7 +-
 modules/video_filter/rotate.c                      |  14 ++-
 modules/video_filter/scale.c                       |   7 +-
 modules/video_filter/scene.c                       |   8 +-
 modules/video_filter/sepia.c                       |   6 +-
 modules/video_filter/sharpen.c                     |   6 +-
 modules/video_filter/transform.c                   |   8 +-
 modules/video_filter/vhs.c                         |   6 +-
 modules/video_filter/wave.c                        |   6 +-
 modules/visualization/glspectrum.c                 |   6 +-
 modules/visualization/goom.c                       |   8 +-
 modules/visualization/projectm.cpp                 |  10 +-
 modules/visualization/visual/visual.c              |   8 +-
 modules/visualization/vsxu.cpp                     |  10 +-
 src/audio_output/filters.c                         |   6 +-
 src/audio_output/meter.c                           |   8 +-
 src/misc/filter.c                                  |   2 +-
 src/misc/filter_chain.c                            |  10 +-
 src/misc/image.c                                   |   6 +-
 src/video_output/vout_subpictures.c                |   6 +-
 127 files changed, 1030 insertions(+), 469 deletions(-)

Diff:   http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=a353cdbc123f223bd79ee057593c70edcd8f010e


More information about the vlc-commits mailing list