One of the recent updates delivered via automatic Windows Update is breaking video decoding for Windows Media Video streams (four character code
WMV3). It’s hard to trace things back, however the most likely issue is the update of
WMVDECOD.DLL file which is dated 6 May 2013 delivered with MS13-057: Description of the security update for Windows Media Format Runtime 9 and 9.5 (wmvdmod.dll), and for Windows Media Player 11 and 12: July 9, 2013, and it could be one or more versions before as well. The breaking update also affects Windows XP systems.
The problem is affecting both Win32 and x64 systems, and Windows XP and later, however it might be affecting them differently. While in Windows 7 the top half of the video is damaged, in Windows XP the output is totally black. There might be other factors affecting the output though.
The problem is only taking place when WM Video decoder is set to decode into 32-bit RGB format. This limits the impact to application forcing output to RGB for grabbing purposes, or use post processing in RGB domain. Decoding into YUV and 24-bit RGB formats looks correct.
The problem is easy to repeat and it is only necessary to force the feed to decode into 32-bit RGB, for instance using Sample Grabber Filter:
The workaround is not to avoid decoding into 32-bit RGB. In particular, in Windows Vista one can decode into something else and then convert to 32-bit RGB using Color Converter DSP.
- Source Code: Trac/Subversion
- Windows Media Video 9 decoder (WMV3) incorrectly decodes video into 32-bit RGB format on MS Connect
- WMV Decoder Regression due to hotfix on MSDN Forums
- Why is WMV playback cut off (half black)? on SuperUser