1
0
mirror of https://github.com/mpv-player/mpv synced 2025-01-05 06:30:06 +00:00
mpv/video/out
wm4 f3c84a322d vo_opengl: fix display of ARGB ith color management enabled
PNG uses a different component order from GL_RGBA, so we upload the
surface using the "wrong" order, and then fix it in the shader. This
breaks if a sRGB texture (GL_SRGB) is used: the hardware will not touch
the alpha channel, which means that the B component is not adjusted,
leading to incorrect output.

Just remove the use of sRGB textures completely. It might lead to a
slight slow down when playing RGB with color management enabled, but
with this combination of obscure use case with minor performance impact
it's not a meaningful disadvantage.

Unfortunately this also means that alpha is handled incorrectly with our
own color management, but alpha isn't so important and can be fixed
later. (0.0 and 1.0 are unchanged by the transfer function, so it
"mostly" works.)

Fixes #1530.
2015-01-28 13:36:07 +01:00
..
cocoa cocoa: fix build on 10.9 2015-01-02 20:54:09 +01:00
wayland
aspect.c
aspect.h
bitmap_packer.c
bitmap_packer.h
cocoa_common.h cocoa: move the gl function loader to gl_cocoa.c 2014-12-28 19:10:44 +01:00
cocoa_common.m video/out: cosmetics: rename VO_EVENT_ICC_PROFILE_PATH_CHANGED 2015-01-26 02:21:00 +01:00
d3d_shader_yuv.h
d3d_shader_yuv.hlsl
dither.c
dither.h
filter_kernels.c vo_opengl: simplify radius initialization 2015-01-26 01:56:19 +01:00
filter_kernels.h filter_kernels: improve a comment 2015-01-22 20:08:47 +01:00
gl_cocoa.c cocoa: fix fallback for OpenGL 2.1 hardware [2] 2015-01-24 16:54:24 +01:00
gl_common.c vo_opengl: fix display of ARGB ith color management enabled 2015-01-28 13:36:07 +01:00
gl_common.h vo_opengl: fix display of ARGB ith color management enabled 2015-01-28 13:36:07 +01:00
gl_header_fixes.h cocoa: remove support for systems without gl3.h header 2015-01-22 08:27:03 +01:00
gl_hwdec_vaglx.c video: have a generic context struct for hwdec backends 2015-01-22 15:32:23 +01:00
gl_hwdec_vda.c video: handle hwdec screenshots differently 2015-01-22 18:18:23 +01:00
gl_hwdec_vdpau.c video: have a generic context struct for hwdec backends 2015-01-22 15:32:23 +01:00
gl_hwdec.c video: have a generic context struct for hwdec backends 2015-01-22 15:32:23 +01:00
gl_hwdec.h vo_opengl: update a comment 2015-01-26 02:06:18 +01:00
gl_lcms.c vo_opengl: minor changes to ICC update code 2015-01-26 02:11:14 +01:00
gl_lcms.h vo_opengl: gl_lcms: implement change detection for memory profiles 2015-01-08 01:03:09 +01:00
gl_osd.c vo_opengl: cleanups after vo_opengl_old removal 2015-01-21 20:32:42 +01:00
gl_osd.h vo_opengl: cleanups after vo_opengl_old removal 2015-01-21 20:32:42 +01:00
gl_video_shaders.glsl vo_opengl: change the way unaligned chroma size is handled 2015-01-27 18:09:03 +01:00
gl_video.c vo_opengl: fix display of ARGB ith color management enabled 2015-01-28 13:36:07 +01:00
gl_video.h vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
gl_w32.c vo_opengl: remove remnants of dropped stereo buffer support 2015-01-24 23:29:54 +01:00
gl_wayland.c vo_opengl: remove pointless glFinish calls 2014-12-19 23:50:12 +01:00
gl_x11.c vo_opengl: remove remnants of dropped stereo buffer support 2015-01-24 23:29:54 +01:00
gl_x11egl.c vo_opengl: add GLES 2 support 2014-12-19 01:21:19 +01:00
vo_caca.c video: remove vfcap.h 2015-01-21 22:08:24 +01:00
vo_direct3d.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_image.c video: remove vfcap.h 2015-01-21 22:08:24 +01:00
vo_lavc.c video: remove vfcap.h 2015-01-21 22:08:24 +01:00
vo_null.c video: remove vfcap.h 2015-01-21 22:08:24 +01:00
vo_opengl_cb.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_opengl.c video/out: cosmetics: rename VO_EVENT_ICC_PROFILE_PATH_CHANGED 2015-01-26 02:21:00 +01:00
vo_sdl.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_vaapi.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_vdpau.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_wayland.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_x11.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo_xv.c vo: simplify VOs by adding generic screenshot support 2015-01-24 23:16:27 +01:00
vo.c vo: handle very long frame durations with smoothmotion enabled 2015-01-26 12:06:45 +01:00
vo.h video/out: cosmetics: rename VO_EVENT_ICC_PROFILE_PATH_CHANGED 2015-01-26 02:21:00 +01:00
w32_common.c command: unify handling of fullscreen and other VO flags 2015-01-16 23:07:13 +01:00
w32_common.h
wayland_common.c command: unify handling of fullscreen and other VO flags 2015-01-16 23:07:13 +01:00
wayland_common.h
win_state.c player: add --autofit-smaller option 2015-01-16 22:30:41 +01:00
win_state.h
x11_common.c video/out: cosmetics: rename VO_EVENT_ICC_PROFILE_PATH_CHANGED 2015-01-26 02:21:00 +01:00
x11_common.h vo_opengl, x11: implement icc-profile-auto 2015-01-26 02:18:47 +01:00
x11_icon.bin