vlc | branch: master | Steve Lhomme <[email protected]> | Tue Oct 15 10:14:51 2019 +0200| [51e0ca3bf05c244dd16962e9fc391d6f29d2999c] | committer: Steve Lhomme
d3d11: fix direct VLC_CODEC_I420_10L rendering The width of the custom texture is double the size of the actual video. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=51e0ca3bf05c244dd16962e9fc391d6f29d2999c --- modules/video_output/win32/d3d11_quad.c | 1 + modules/video_output/win32/d3d11_shaders.c | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/video_output/win32/d3d11_quad.c b/modules/video_output/win32/d3d11_quad.c index 8a0e367929..0f2a296a85 100644 --- a/modules/video_output/win32/d3d11_quad.c +++ b/modules/video_output/win32/d3d11_quad.c @@ -1115,6 +1115,7 @@ void D3D11_UpdateViewport(d3d_quad_t *quad, const RECT *rect, const d3d_format_t break; } /* fallthrough */ + case VLC_CODEC_I420_10L: case VLC_CODEC_I420: quad->cropViewport[1].TopLeftX = quad->cropViewport[0].TopLeftX / 2; quad->cropViewport[1].TopLeftY = quad->cropViewport[0].TopLeftY / 2; diff --git a/modules/video_output/win32/d3d11_shaders.c b/modules/video_output/win32/d3d11_shaders.c index eadf5a9234..edb74f96a6 100644 --- a/modules/video_output/win32/d3d11_shaders.c +++ b/modules/video_output/win32/d3d11_shaders.c @@ -396,9 +396,10 @@ HRESULT D3D11_CompilePixelShader(vlc_object_t *o, d3d11_handle_t *hd3d, bool leg { case VLC_CODEC_I420_10L: psz_sampler[0] = - "sample.x = shaderTexture[0].Sample(samplerState, coords).x * 64;\n" - "sample.y = shaderTexture[1].Sample(samplerState, coords).x * 64;\n" - "sample.z = shaderTexture[2].Sample(samplerState, coords).x * 64;\n" + "float3 coords_2 = float3(coords.x/2, coords.y, coords.z);\n" + "sample.x = shaderTexture[0].Sample(samplerState, coords_2).x * 64;\n" + "sample.y = shaderTexture[1].Sample(samplerState, coords_2).x * 64;\n" + "sample.z = shaderTexture[2].Sample(samplerState, coords_2).x * 64;\n" "sample.a = 1;"; break; case VLC_CODEC_I420: _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
