{"id":1466,"date":"2013-07-20T16:25:06","date_gmt":"2013-07-20T14:25:06","guid":{"rendered":"https:\/\/alax.info\/blog\/?p=1466"},"modified":"2014-02-09T18:54:52","modified_gmt":"2014-02-09T16:54:52","slug":"breaking-windows-update-of-windows-media-video-9-decoder","status":"publish","type":"post","link":"https:\/\/alax.info\/blog\/1466","title":{"rendered":"Breaking Windows Update of Windows Media Video 9 Decoder"},"content":{"rendered":"<p>One of the recent updates delivered via automatic Windows Update is breaking video decoding for Windows Media Video streams (four character code <code>WMV3<\/code>). It&#8217;s hard to trace things back, however the most likely issue is the update of <code>WMVDECOD.DLL<\/code> file which is dated 6 May 2013 delivered with <a href=\"http:\/\/support.microsoft.com\/kb\/2803821\">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<\/a>, and it could be one or more versions before as well. The breaking update also affects Windows XP systems.<\/p>\n<p>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.<\/p>\n<p><a href=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image002.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1467\" alt=\"Broken WM Video Decoding\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image002-800x563.png\" width=\"800\" height=\"563\" srcset=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image002-800x563.png 800w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image002-320x225.png 320w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image002.png 839w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><\/p>\n<p>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.<\/p>\n<p>The problem is easy to repeat and it is only necessary to force the feed to decode into 32-bit RGB, for instance using <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/dd377544%28v=vs.85%29.aspx\">Sample Grabber Filter<\/a>:<\/p>\n<p><a href=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image0011.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1469\" alt=\"Filter Graph\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image0011-800x575.png\" width=\"800\" height=\"575\" srcset=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image0011-800x575.png 800w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image0011-320x230.png 320w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2013\/07\/Image0011.png 1042w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><\/p>\n<p>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 <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ff819079%28v=vs.85%29.aspx\">Color Converter DSP<\/a>.<\/p>\n<h3>Links<\/h3>\n<ul>\n<li>Source Code: <a href=\"https:\/\/www.alax.info\/trac\/public\/browser\/trunk\/Utilities\/Miscellaneous\/RenderWmvVideo\">Trac<\/a>\/<a href=\"https:\/\/www.alax.info\/svn\/public\/trunk\/Utilities\/Miscellaneous\/RenderWmvVideo\/\">Subversion<\/a><\/li>\n<li><a href=\"https:\/\/connect.microsoft.com\/VisualStudio\/feedback\/details\/794627\/windows-media-video-9-decoder-wmv3-incorrectly-decodes-video-into-32-bit-rgb-format#details\">Windows Media Video 9 decoder (WMV3) incorrectly decodes video into 32-bit RGB format<\/a> on MS Connect<\/li>\n<li><a href=\"http:\/\/social.msdn.microsoft.com\/Forums\/windowsdesktop\/en-US\/96464565-6138-4a5a-978a-df2d8e421285\/wmv-decoder-regression-due-to-hotfix\">WMV Decoder Regression due to hotfix<\/a> on MSDN Forums<\/li>\n<li><a href=\"http:\/\/superuser.com\/questions\/618086\/why-is-wmv-playback-cut-off-half-black\">Why is WMV playback cut off (half black)?<\/a> on SuperUser<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>One of the recent updates delivered via automatic Windows Update is breaking video decoding for Windows Media Video streams (four character code WMV3). It&#8217;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&hellip; <\/p>\n<p><a class=\"moretag\" href=\"https:\/\/alax.info\/blog\/1466\">Read the full article<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13,10],"tags":[63,78,271,486,457],"class_list":["post-1466","post","type-post","status-publish","format-standard","hentry","category-source","category-video","tag-bug","tag-directshow","tag-media","tag-video","tag-windows-update"],"_links":{"self":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/1466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/comments?post=1466"}],"version-history":[{"count":0,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/1466\/revisions"}],"wp:attachment":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/media?parent=1466"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/categories?post=1466"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/tags?post=1466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}