mirror of
https://github.com/jojo61/vdr-plugin-softhdcuvid.git
synced 2023-10-10 13:37:41 +02:00
correct conversion BT709 colors to sRGB
This commit is contained in:
parent
3e649a5cea
commit
04e1b8732d
10
shaders.h
10
shaders.h
@ -361,10 +361,14 @@ static GLuint sc_generate(GLuint gl_prog, enum AVColorSpace colorspace)
|
|||||||
GLSL("// color conversion \n");
|
GLSL("// color conversion \n");
|
||||||
GLSL("color.rgb = mat3(colormatrix) * color.rgb + colormatrix_c; \n");
|
GLSL("color.rgb = mat3(colormatrix) * color.rgb + colormatrix_c; \n");
|
||||||
GLSL("color.a = 1.0; \n");
|
GLSL("color.a = 1.0; \n");
|
||||||
#ifdef GAMMA
|
|
||||||
GLSL("// delinearize gamma \n");
|
GLSL("// linearize gamma \n");
|
||||||
GLSL("color.rgb = clamp(color.rgb, 0.0, 1.0); \n"); // delinearize gamma
|
GLSL("color.rgb = clamp(color.rgb, 0.0, 1.0); \n"); // linearize gamma
|
||||||
GLSL("color.rgb = pow(color.rgb, vec3(2.4)); \n");
|
GLSL("color.rgb = pow(color.rgb, vec3(2.4)); \n");
|
||||||
|
#ifndef GAMMA
|
||||||
|
GLSL("// delinearize gamma to sRGB \n");
|
||||||
|
GLSL("color.rgb = max(color.rgb, 0.0); \n");
|
||||||
|
GLSL("color.rgb = mix(color.rgb * vec3(12.92), vec3(1.055) * pow(color.rgb, vec3(1.0/2.4)) - vec3(0.055), bvec3(lessThanEqual(vec3(0.0031308), color.rgb))); \n");
|
||||||
#endif
|
#endif
|
||||||
GLSL("// color mapping \n");
|
GLSL("// color mapping \n");
|
||||||
GLSL("out_color = color; \n");
|
GLSL("out_color = color; \n");
|
||||||
|
Loading…
Reference in New Issue
Block a user