[vlc-commits] direct3d11: support RGBA64 playback
Steve Lhomme
git at videolan.org
Thu Feb 7 09:43:19 CET 2019
vlc/vlc-3.0 | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Fri Aug 3 08:03:11 2018 +0200| [348ed1e4f1f77e5da91e2a57821f78e621ac8fdf] | committer: Steve Lhomme
direct3d11: support RGBA64 playback
This is the best option to display software RGB sources above 8 bits.
Ref #19563 which wouldn't play on 4.0 otherwise
(cherry picked from commit 24a7b990bed891f76bb1aeb1a0e6ce7c5fb43e66)
> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=348ed1e4f1f77e5da91e2a57821f78e621ac8fdf
---
modules/video_chroma/dxgi_fmt.c | 1 +
modules/video_output/win32/d3d11_shaders.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/modules/video_chroma/dxgi_fmt.c b/modules/video_chroma/dxgi_fmt.c
index a7001152fd..6adf613895 100644
--- a/modules/video_chroma/dxgi_fmt.c
+++ b/modules/video_chroma/dxgi_fmt.c
@@ -85,6 +85,7 @@ static const d3d_format_t d3d_formats[] = {
{ "R8G8B8A8", DXGI_FORMAT_R8G8B8A8_UNORM, VLC_CODEC_RGBA, 8, 1, 1, { DXGI_FORMAT_R8G8B8A8_UNORM } },
{ "VA_RGBA", DXGI_FORMAT_R8G8B8A8_UNORM, VLC_CODEC_D3D11_OPAQUE, 8, 1, 1, { DXGI_FORMAT_R8G8B8A8_UNORM } },
{ "R8G8B8X8", DXGI_FORMAT_B8G8R8X8_UNORM, VLC_CODEC_RGB32, 8, 1, 1, { DXGI_FORMAT_B8G8R8X8_UNORM } },
+ { "RGBA64", DXGI_FORMAT_R16G16B16A16_UNORM, VLC_CODEC_RGBA64, 16, 1, 1, { DXGI_FORMAT_R16G16B16A16_UNORM } },
{ "RGB10A2", DXGI_FORMAT_R10G10B10A2_UNORM, VLC_CODEC_RGBA10, 10, 1, 1, { DXGI_FORMAT_R10G10B10A2_UNORM } },
{ "AYUV", DXGI_FORMAT_AYUV, VLC_CODEC_VUYA, 8, 1, 1, { DXGI_FORMAT_R8G8B8A8_UNORM } },
{ "B5G6R5", DXGI_FORMAT_B5G6R5_UNORM, VLC_CODEC_RGB16, 5, 1, 1, { DXGI_FORMAT_B5G6R5_UNORM } },
diff --git a/modules/video_output/win32/d3d11_shaders.c b/modules/video_output/win32/d3d11_shaders.c
index 8bea3a7817..9646895773 100644
--- a/modules/video_output/win32/d3d11_shaders.c
+++ b/modules/video_output/win32/d3d11_shaders.c
@@ -246,6 +246,7 @@ HRESULT D3D11_CompilePixelShader(vlc_object_t *o, d3d11_handle_t *hd3d, bool leg
case DXGI_FORMAT_B8G8R8X8_UNORM:
case DXGI_FORMAT_B5G6R5_UNORM:
case DXGI_FORMAT_R10G10B10A2_UNORM:
+ case DXGI_FORMAT_R16G16B16A16_UNORM:
psz_sampler =
"sample = shaderTexture[0].Sample(samplerState, coords);";
break;
More information about the vlc-commits
mailing list