diff --git a/modules/video_output/win32/d3d_dynamic_shader.c b/modules/video_output/win32/d3d_dynamic_shader.c
index 4b12e5f0bf540c81e0e3f09c7dcd534e26c4943c..132160e8be9c0126d97a6274d8369239993abf9e 100644
--- a/modules/video_output/win32/d3d_dynamic_shader.c
+++ b/modules/video_output/win32/d3d_dynamic_shader.c
@@ -218,9 +218,10 @@ inline float4 sampleTexture(SamplerState samplerState, float2 coords) {\n\
     sample.z  = shaderTexture[2].Sample(samplerState, coords).x;\n\
     sample.a  = 1;\n\
 #elif (SAMPLE_TEXTURES==SAMPLE_TRIPLANAR10_TO_YUVA)\n\
-    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\
+    sample.x  = shaderTexture[0].Sample(samplerState, coords).x;\n\
+    sample.y  = shaderTexture[1].Sample(samplerState, coords).x;\n\
+    sample.z  = shaderTexture[2].Sample(samplerState, coords).x;\n\
+    sample = sample * 64;\n\
     sample.a  = 1;\n\
 #elif (SAMPLE_TEXTURES==SAMPLE_PLANAR_YUVA_TO_YUVA)\n\
     sample.x  = shaderTexture[0].Sample(samplerState, coords).x;\n\