[vlc-devel] [PATCH 00/16] opengl: Abstract picture storage from renderer (part 1)
Romain Vimont
rom1v at videolabs.io
Tue Mar 17 17:26:33 CET 2020
I initially posted a big patchset:
<https://mailman.videolan.org/pipermail/vlc-devel/2020-February/131046.html>
I will now post commits from my branch in smaller patchsets, easier to review.
Here is the first part of an updated version, which mainly fixes macOS and
Windows versions.
The significant changes in this patchset concern the way the picture
coordinates are converted to texture coordinates (patch 9) and the way the
stereo mode is computed (patch 12).
Here is a branch:
https://code.videolan.org/rom1v/vlc/commits/glsampler-part1
And a "merge request" (into my own fork) with CI:
https://code.videolan.org/rom1v/vlc/-/merge_requests/5
Romain Vimont (16):
opengl: define compatibility constants
opengl: use OpenGL ES 2 on Android
opengl: factorize program creation
opengl: fix unused variable
opengl: move vtable to vlc_gl_api
opengl: pass vlc_gl_api instead of virtual table
opengl: move fields from interop to gl_api
opengl: expose npot support in gl_api
opengl: convert texture coords in fragment shader
opengl: setup coords once for all
opengl: apply orientation in fragment shader
opengl: apply stereo transform using a matrix
opengl: merge successive loops
opengl: move down vlc_gl_renderer_Prepare()
opengl: move paddings computation to _Prepare()
opengl: remove unused source format parameter
modules/video_output/Makefile.am | 3 +
modules/video_output/caopengllayer.m | 2 +-
modules/video_output/ios.m | 2 +-
modules/video_output/macosx.m | 4 +-
modules/video_output/opengl/display.c | 2 +-
.../video_output/opengl/fragment_shaders.c | 77 +--
modules/video_output/opengl/gl_api.c | 155 +++++
modules/video_output/opengl/gl_api.h | 51 ++
modules/video_output/opengl/gl_common.h | 56 ++
modules/video_output/opengl/gl_util.c | 133 ++++
modules/video_output/opengl/gl_util.h | 23 +
modules/video_output/opengl/internal.h | 2 +-
modules/video_output/opengl/interop.c | 16 +-
modules/video_output/opengl/interop.h | 11 +-
modules/video_output/opengl/interop_sw.c | 7 +-
modules/video_output/opengl/interop_vaapi.c | 3 +-
modules/video_output/opengl/interop_vdpau.c | 3 +-
modules/video_output/opengl/renderer.c | 568 +++++++++---------
modules/video_output/opengl/renderer.h | 28 +-
modules/video_output/opengl/sub_renderer.c | 184 ++----
modules/video_output/opengl/sub_renderer.h | 6 +-
modules/video_output/opengl/vout_helper.c | 164 +----
modules/video_output/opengl/vout_helper.h | 3 +-
modules/video_output/win32/glwin32.c | 2 +-
24 files changed, 842 insertions(+), 663 deletions(-)
create mode 100644 modules/video_output/opengl/gl_api.c
create mode 100644 modules/video_output/opengl/gl_api.h
create mode 100644 modules/video_output/opengl/gl_util.c
--
2.25.1
More information about the vlc-devel
mailing list