mpv/video/out
Niklas Haas 65979986a9 vo_opengl: refactor into vo_gpu
This is done in several steps:

1. refactor MPGLContext -> struct ra_ctx
2. move GL-specific stuff in vo_opengl into opengl/context.c
3. generalize context creation to support other APIs, and add --gpu-api
4. rename all of the --opengl- options that are no longer opengl-specific
5. move all of the stuff from opengl/* that isn't GL-specific into gpu/
   (note: opengl/gl_utils.h became opengl/utils.h)
6. rename vo_opengl to vo_gpu
7. to handle window screenshots, the short-term approach was to just add
   it to ra_swchain_fns. Long term (and for vulkan) this has to be moved to
   ra itself (and vo_gpu altered to compensate), but this was a stop-gap
   measure to prevent this commit from getting too big
8. move ra->fns->flush to ra_gl_ctx instead
9. some other minor changes that I've probably already forgotten

Note: This is one half of a major refactor, the other half of which is
provided by rossy's following commit. This commit enables support for
all linux platforms, while his version enables support for all non-linux
platforms.

Note 2: vo_opengl_cb.c also re-uses ra_gl_ctx so it benefits from the
--opengl- options like --opengl-early-flush, --opengl-finish etc. Should
be a strict superset of the old functionality.

Disclaimer: Since I have no way of compiling mpv on all platforms, some
of these ports were done blindly. Specifically, the blind ports included
context_mali_fbdev.c and context_rpi.c. Since they're both based on
egl_helpers, the port should have gone smoothly without any major
changes required. But if somebody complains about a compile error on
those platforms (assuming anybody actually uses them), you know where to
complain.
2017-09-21 15:00:55 +02:00
..
cocoa input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
gpu vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
opengl vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
wayland video/out/wayland/buffer.c: Add missing free() 2017-05-26 08:52:12 +01:00
win32 droptarget: fix style and refactor 2017-03-26 00:41:16 +11:00
aspect.c aspect: change license to LGPL 2017-06-17 17:08:51 +02:00
aspect.h aspect: change license to LGPL 2017-06-17 17:08:51 +02:00
bitmap_packer.c
bitmap_packer.h
cocoa_common.h osx: change license of OSX and cocoa files to LGPL 2017-06-24 16:29:22 +02:00
cocoa_common.m input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
d3d_shader_420p.h
d3d_shader_yuv.hlsl
dither.c
dither.h
drm_common.c vo_drm: nake drm mode help output also output refresh rate 2017-06-18 20:54:44 +02:00
drm_common.h
filter_kernels.c vo_opengl: refactor scaler LUT weight packing/loading 2017-09-04 13:53:14 +02:00
filter_kernels.h vo_opengl: refactor scaler LUT weight packing/loading 2017-09-04 13:53:14 +02:00
vo.c vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
vo.h vo: avoid putting large voctrl_performance_data on stack 2017-09-11 18:20:18 +02:00
vo_caca.c input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
vo_direct3d.c vo_direct3d: fix build 2017-08-22 17:32:05 +02:00
vo_drm.c vo_drm: fallback to vo_wait_default if VT switcher is not available 2017-06-08 15:24:10 +02:00
vo_gpu.c vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
vo_image.c image_writer, vo_image: change license to LGPL 2017-06-18 15:45:24 +02:00
vo_lavc.c encode_lavc: move from GPL 2+ to LGPL 2.1+. 2017-06-13 14:22:15 -04:00
vo_null.c vo.c, vo.h, vo_null.c: change license to LGPL 2017-05-10 15:06:20 +02:00
vo_opengl_cb.c vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
vo_rpi.c vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
vo_sdl.c input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
vo_tct.c vo_tct: check ioctl result 2017-02-20 14:19:57 +01:00
vo_vaapi.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vo_vdpau.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vo_wayland.c options: remove deprecated sub-option handling for --vo and --ao 2016-11-25 21:17:25 +01:00
vo_x11.c build: make various x11 protocol extension libs mandatory 2017-04-21 07:30:03 +02:00
vo_xv.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
w32_common.c input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
w32_common.h w32_common, w32_keyboard: change license to LGPL 2017-06-24 12:54:45 +02:00
wayland_common.c input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
wayland_common.h
win_state.c win_state: change license to LGPL 2017-06-17 21:10:24 +02:00
win_state.h x11: pseudo HiDPI scaling 2017-01-19 16:31:54 +01:00
x11_common.c input: merge mouse wheel and axis keycodes 2017-09-03 20:31:44 +10:00
x11_common.h Revert "x11: use xdg-screensaver suspend/resume" 2017-08-20 09:11:07 +02:00