mpv/video
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
..
decode build: add preliminary LGPL mode 2017-09-21 13:56:27 +02:00
filter build: add preliminary LGPL mode 2017-09-21 13:56:27 +02:00
out vo_opengl: refactor into vo_gpu 2017-09-21 15:00:55 +02:00
csputils.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
csputils.h video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
fmt-conversion.c vo_direct3d: remove non-working nv12 shader support 2017-06-30 18:13:01 +02:00
fmt-conversion.h video/fmt-conversion, img_format: change license to LGPL 2017-06-18 15:15:07 +02:00
gpu_memcpy.c
gpu_memcpy.h
hwdec.c
hwdec.h hwdec: fix 2 comments 2017-05-24 14:32:23 +02:00
image_loader.c x11: load icon differently 2017-07-01 15:56:12 +02:00
image_loader.h x11: load icon differently 2017-07-01 15:56:12 +02:00
image_writer.c Replace remaining avcodec_close() calls 2017-07-16 12:51:48 +02:00
image_writer.h image_writer, vo_image: change license to LGPL 2017-06-18 15:45:24 +02:00
img_format.c img_format: #if -> #ifdef 2017-08-16 11:15:52 +02:00
img_format.h vo_opengl: support float pixel formats 2017-08-15 17:00:35 +02:00
mp_image.c build: add preliminary LGPL mode 2017-09-21 13:56:27 +02:00
mp_image.h build: add preliminary LGPL mode 2017-09-21 13:56:27 +02:00
mp_image_pool.c Revert "mp_image_pool: disallow adding read only frames" 2017-08-08 16:16:55 +02:00
mp_image_pool.h
sws_utils.c build: add preliminary LGPL mode 2017-09-21 13:56:27 +02:00
sws_utils.h video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vaapi.c video: get rid of swapped packed YUV 2017-06-30 18:01:29 +02:00
vaapi.h
vdpau.c vo_opengl: separate hwdec context and mapping, port it to use ra 2017-08-10 21:24:31 +02:00
vdpau.h
vdpau_functions.inc
vdpau_mixer.c video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vdpau_mixer.h video: redo video equalizer option handling 2017-08-22 17:01:35 +02:00
vt.c
vt.h