[vlc-devel] [PATCH 5/8] direct3d11: the magic value for the white point is 16/256

Rémi Denis-Courmont remi at remlab.net
Sat Jan 7 00:05:12 CET 2017


On January 7, 2017 1:32:41 AM GMT+08:00, Steve Lhomme <robux4 at videolabs.io> wrote:
>From: Steve Lhomme <slhomme at matroska.org>
>
>That's the "studio" range shifted for full range RGB.
>---
> modules/video_output/win32/direct3d11.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
>diff --git a/modules/video_output/win32/direct3d11.c
>b/modules/video_output/win32/direct3d11.c
>index bbeef9d..47e9b24 100644
>--- a/modules/video_output/win32/direct3d11.c
>+++ b/modules/video_output/win32/direct3d11.c
>@@ -1990,6 +1990,7 @@ static int AllocQuad(vout_display_t *vd, const
>video_format_t *fmt, d3d_quad_t *
>     vout_display_sys_t *sys = vd->sys;
>     D3D11_MAPPED_SUBRESOURCE mappedResource;
>     HRESULT hr;
>+    static const FLOAT FULL_TO_STUDIO_SHIFT = 16.f / 256.f;
> 
>     /* pixel shader constant buffer */
>     PS_CONSTANT_BUFFER defaultConstants = {
>@@ -2009,7 +2010,7 @@ static int AllocQuad(vout_display_t *vd, const
>video_format_t *fmt, d3d_quad_t *
>         goto error;
>     }
> 
>-    static const FLOAT WHITE_POINT_D65[4] = { -0.0625f, -0.5f, -0.5f,
>1.f };
>+    static constFLOAT WHITE_POINT_D65_TO_FULL[4] = {
>-FULL_TO_STUDIO_SHIFT, -0.5f, -0.5f, 1.f };
> 
>     static const FLOAT COLORSPACE_BT601_TO_FULL[4*4] = {
>     1.164383561643836f,                 0.f,  1.596026785714286f, 0.f,
>@@ -2052,7 +2053,7 @@ static int AllocQuad(vout_display_t *vd, const
>video_format_t *fmt, d3d_quad_t *
>             break;
>     }
>memcpy(colorspace.Colorspace, ppColorspace,
>sizeof(colorspace.Colorspace));
>-    memcpy(colorspace.WhitePoint, WHITE_POINT_D65,
>sizeof(colorspace.WhitePoint));
>+    memcpy(colorspace.WhitePoint, WHITE_POINT_D65_TO_FULL,
>sizeof(colorspace.WhitePoint));
>     constantInit.pSysMem = &colorspace;
> 
>static_assert((sizeof(PS_COLOR_TRANSFORM)%16)==0,"Constant buffers
>require 16-byte alignment");
>-- 
>2.10.2
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel

This does not look like it would compile.
-- 
Rémi Denis-Courmont


More information about the vlc-devel mailing list