[vlc-devel] [PATCH v2 00/22] Add support for OpenGL filters

Romain Vimont rom1v at videolabs.io
Wed Jul 1 12:30:01 CEST 2020


Patchset v1: https://mailman.videolan.org/pipermail/vlc-devel/2020-June/134800.html

Changes:
 - reword commit messages as suggested by reviews on v1
 - fix missing "Co-authored-by" in commit messages
 - assert that p_palette is NULL on video_format_t copy (patch 5)
 - rename vlc_gl_sampler_NewDirect to vlc_gl_sampler_NewFromTexture2D (patch 6)
 - rename command-line parameter --gl-filters to --gl-filter (patch 8)
 - change the way the OpenGL version is checked for multisampling (patch 20)
 - add a single mock filter to replace all samples (patch 22)

I suggest the following command to test:

    ./vlc file.mkv --gl-filter='mock{mask,speed=1}:mock{angle=180,speed=-1}'

The MR has been updated: https://code.videolan.org/rom1v/vlc/-/merge_requests/12

Romain Vimont (22):
  opengl: introduce OpenGL filter API
  opengl: add filter private part
  opengl: add filters chain
  opengl: use modules for OpenGL filters
  opengl: store video format in sampler
  opengl: add "direct" sampler
  opengl: attach samplers to filters
  opengl: load filters from command-line arguments
  opengl: pass output size to filters
  opengl: add support for renderbuffers API
  opengl: create and bind filters framebuffers
  opengl: use default draw framebuffer
  opengl: add "draw" filter
  opengl: support "blend" filters
  opengl: lazy-load sampler
  opengl: apply viewport on filters
  opengl: pass picture date to filters
  opengl: add support for renderbuffers API
  opengl: init filters framebuffers in a second pass
  opengl: enable multisampling
  opengl: document filters implementation
  opengl: add mock filter

 modules/video_output/caopengllayer.m       |  11 +-
 modules/video_output/ios.m                 |  14 +-
 modules/video_output/macosx.m              |  11 +-
 modules/video_output/opengl/Makefile.am    |  14 +
 modules/video_output/opengl/display.c      |  14 +-
 modules/video_output/opengl/filter.c       | 128 +++++
 modules/video_output/opengl/filter.h       | 115 +++++
 modules/video_output/opengl/filter_draw.c  | 181 +++++++
 modules/video_output/opengl/filter_draw.h  |  36 ++
 modules/video_output/opengl/filter_priv.h  |  83 ++++
 modules/video_output/opengl/filters.c      | 547 +++++++++++++++++++++
 modules/video_output/opengl/filters.h      | 109 ++++
 modules/video_output/opengl/gl_api.c       |  23 +
 modules/video_output/opengl/gl_api.h       |   3 +
 modules/video_output/opengl/gl_common.h    |  35 ++
 modules/video_output/opengl/mock.c         | 398 +++++++++++++++
 modules/video_output/opengl/renderer.c     |  95 ++--
 modules/video_output/opengl/renderer.h     |  38 +-
 modules/video_output/opengl/sampler.c      | 111 ++++-
 modules/video_output/opengl/sampler.h      |   2 +-
 modules/video_output/opengl/sampler_priv.h |  42 +-
 modules/video_output/opengl/vout_helper.c  | 110 ++++-
 modules/video_output/opengl/vout_helper.h  |   6 +-
 modules/video_output/win32/glwin32.c       |  11 +-
 24 files changed, 2031 insertions(+), 106 deletions(-)
 create mode 100644 modules/video_output/opengl/filter.c
 create mode 100644 modules/video_output/opengl/filter.h
 create mode 100644 modules/video_output/opengl/filter_draw.c
 create mode 100644 modules/video_output/opengl/filter_draw.h
 create mode 100644 modules/video_output/opengl/filter_priv.h
 create mode 100644 modules/video_output/opengl/filters.c
 create mode 100644 modules/video_output/opengl/filters.h
 create mode 100644 modules/video_output/opengl/mock.c

-- 
2.27.0



More information about the vlc-devel mailing list