[vlc-devel] [PATCH 0/3] opengl: Abstract picture storage from renderer (part 6: orientation)
Romain Vimont
rom1v at videolabs.io
Mon Jun 15 19:24:23 CEST 2020
The goal of this patchset is to fix the orientation matrices (done by the first
2 patches).
But fixing them broke the renderer vertical flip, which was applied on the
input coordinates, resulting in a wrong transformation order (fixed by patch 3).
Concretely, on orientation ORIENT_ROTATED_90, before this patchset, the applied
transformation was:
rotate_270 * vflip * input_coords
After this patchset, the transformation is:
vflip * rotate_90 * input_coords
The two errors cancelled each other, so in practice it still worked.
However, to apply the whole transformation from the sampler (so that the
filters are independent of the input orientation), they must be fixed.
MR: https://code.videolan.org/rom1v/vlc/-/merge_requests/11
Romain Vimont (3):
opengl: fix orientation matrices
opengl: refactor orientation matrices
opengl: apply OpenGL vflip from interop
modules/video_output/opengl/interop_android.c | 31 ----
modules/video_output/opengl/interop_cvpx.c | 6 +
modules/video_output/opengl/interop_dxva2.c | 3 +
modules/video_output/opengl/interop_sw.c | 3 +
modules/video_output/opengl/interop_vaapi.c | 3 +
modules/video_output/opengl/interop_vdpau.c | 3 +
modules/video_output/opengl/renderer.c | 51 +++---
modules/video_output/opengl/sampler.c | 170 +++++++++++++-----
8 files changed, 174 insertions(+), 96 deletions(-)
--
2.27.0
More information about the vlc-devel
mailing list