diff options
author | Uoti Urpala <uau@mplayer2.org> | 2012-03-08 05:25:33 +0200 |
---|---|---|
committer | Uoti Urpala <uau@mplayer2.org> | 2012-03-09 20:48:55 +0200 |
commit | a8168102668337f3c11619bea7e744fc245adff1 (patch) | |
tree | 5f847baf425b1e672db6e91b7f307c30f44fb6ec /libvo/csputils.h | |
parent | 2a2f8672188273831dacd58a0dc76055326e4ce2 (diff) | |
download | mpv-a8168102668337f3c11619bea7e744fc245adff1.tar.bz2 mpv-a8168102668337f3c11619bea7e744fc245adff1.tar.xz |
vo_gl: improve 10-bit YUV->RGB conversion accuracy slightly
Modify the YUV->RGB conversion matrix to take into account the
difference between the same color value being x/255 in a 8-bit texture
and x*256/65535 in a 16-bit texture (actually things are stored as
x*4/65535 for 10-bit color, but that can be ignored here). This 0.4 %
difference in the shader float value could make shades of gray in
10-bit (or generally more than 8 bit) YUV produce RGB values with
green slightly higher than red/blue.
Diffstat (limited to 'libvo/csputils.h')
-rw-r--r-- | libvo/csputils.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libvo/csputils.h b/libvo/csputils.h index 3a754a8273..434be4a9a1 100644 --- a/libvo/csputils.h +++ b/libvo/csputils.h @@ -68,7 +68,8 @@ struct mp_csp_params { float rgamma; float ggamma; float bgamma; - int input_shift; + int texture_bits; + int input_bits; }; enum mp_csp_equalizer_param { |