1
0
mirror of https://github.com/mpv-player/mpv synced 2025-02-20 23:07:02 +00:00
mpv/video/out
wm4 d78bde15ab vo_opengl_old: reject 9-15 bit formats if textures have less than 16 bit
For 9-15 bit material, cutting off the lower bits leads to significant
quality reduction, because these formats leave the most significant bits
unused (e.g. 10 bit padded to 16 bit, transferred as 8 bit -> only
2 bits left). 16 bit formats still can be played like this, as cutting
the lower bits merely reduces quality in this case.

This problem was encountered with the following GPU/driver combination:

OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) 915GM x86/MMX/SSE2
OpenGL version string: 1.4 Mesa 9.0.1

It appears 16 bit support is rather common on GPUs, so testing the
actual texture depth wasn't needed until now. (There are some other Mesa
GPU/driver combinations which support 16 bit only when using RG textures
instead of LUMINANCE_ALPHA. This is due to OpenGL driver bugs.)
2012-12-28 14:23:29 +01:00
..
aspect.c
aspect.h
bitmap_packer.c
bitmap_packer.h
cocoa_common.h
cocoa_common.m cocoa_common: create window in the correct screen 2012-11-21 13:42:55 +01:00
d3d_shader_yuv_2ch.h
d3d_shader_yuv.h
d3d_shader_yuv.hlsl
filter_kernels.c
filter_kernels.h
geometry.c
geometry.h
gl_common.c vo_opengl_old: reject 9-15 bit formats if textures have less than 16 bit 2012-12-28 14:23:29 +01:00
gl_common.h vo_opengl_old: reject 9-15 bit formats if textures have less than 16 bit 2012-12-28 14:23:29 +01:00
gl_header_fixes.h clang: fix all warnings except deprecations 2012-11-13 22:19:18 +01:00
gl_osd.c
gl_osd.h
osx_common.h
osx_common.m osx_common: Avoid deprecated Gestalt calls 2012-12-02 10:42:46 +01:00
pnm_loader.c
pnm_loader.h
vo_caca.c
vo_corevideo.h
vo_corevideo.m options, vo_x11: remove -zoom option, make it default 2012-11-16 21:21:14 +01:00
vo_direct3d.c options, vo_x11: remove -zoom option, make it default 2012-11-16 21:21:14 +01:00
vo_image.c video: fix bogus uses of mp_image.w/width 2012-11-21 19:58:51 +01:00
vo_lavc.c sdl, encode_lavc: fix copyright headers 2012-12-28 11:41:30 +01:00
vo_null.c
vo_opengl_old.c vo_opengl_old: reject 9-15 bit formats if textures have less than 16 bit 2012-12-28 14:23:29 +01:00
vo_opengl_shaders.glsl vo_opengl: use more precise gamma for BT.709 with color management 2012-12-28 13:43:24 +01:00
vo_opengl.c vo_opengl: use more precise gamma for BT.709 with color management 2012-12-28 13:43:24 +01:00
vo_sdl.c sdl, encode_lavc: fix copyright headers 2012-12-28 11:41:30 +01:00
vo_vdpau.c vdpau: silence a clang warning 2012-12-28 10:46:02 +01:00
vo_x11.c vo_x11: don't require framestepping to update OSD 2012-11-21 19:58:16 +01:00
vo_xv.c vo_xv: try harder to get correctly aligned pointers/strides 2012-12-03 21:08:51 +01:00
vo.c vo/ao: SDL 1.2+ audio driver, SDL 2.0+ accelerated video driver 2012-12-28 08:40:28 +01:00
vo.h core: make WAKEUP_PERIOD overridable by the vo 2012-12-19 12:58:52 +01:00
w32_common.c core: make WAKEUP_PERIOD overridable by the vo 2012-12-19 12:58:52 +01:00
w32_common.h win32: remove pointless get/release DC wrappers 2012-11-12 20:10:42 +01:00
x11_common.c options: remove --display 2012-11-16 21:21:15 +01:00
x11_common.h options: remove --display 2012-11-16 21:21:15 +01:00