{"id":1502,"date":"2014-02-08T10:42:27","date_gmt":"2014-02-08T08:42:27","guid":{"rendered":"https:\/\/alax.info\/blog\/?p=1502"},"modified":"2014-02-08T21:58:16","modified_gmt":"2014-02-08T19:58:16","slug":"something-went-terribly-wrong-in-x64-build-of-windows-media-video-9-decoder","status":"publish","type":"post","link":"https:\/\/alax.info\/blog\/1502","title":{"rendered":"Something went terribly wrong in x64 build of Windows Media Video 9 Decoder"},"content":{"rendered":"<div>\n<p>Unfortunately, 64-bit version of\u00c2\u00a0<a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ff819504\" target=\"_blank\">Windows Media Video 9 Decoder<\/a>\u00c2\u00a0is not as good as its 32-bit sister. 32-bit version is user an order of magnitude more frequently and does not give troubles, nevertheless 64-bit version offers similar feature set it is pretty hard to see it in action since it takes a 64-bit media application to host it and most of media applications are 32-bit (there is often a good reason for this), and even Windows SDK 7.0\u00c2\u00a0<code>topoedit<\/code>\u00c2\u00a0comes pre-built as Win32 application only (provided with source code though, so one can built x64 peer &#8211; after fixing buildability issues and adding\u00c2\u00a0<code>x64<\/code> configuration manually).<\/p>\n<p>Decoder is available as dual\u00c2\u00a0<a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/dd406926\" target=\"_blank\">DMO<\/a>\/<a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms696260\" target=\"_blank\">MFT<\/a>\u00c2\u00a0which enabled it for both DirectShow and Media Foundation APIs and similarly exposes the problem in both as well.<\/p>\n<p>Once in a while, 64-bit version of the decoder might be producing incorrect output, adding white dots where they are not supposed to be.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1503\" alt=\"02\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/02-565x600.png\" width=\"565\" height=\"600\" srcset=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/02-565x600.png 565w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/02-301x320.png 301w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/02-624x661.png 624w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/02.png 644w\" sizes=\"auto, (max-width: 565px) 100vw, 565px\" \/><\/p>\n<p>Because the problem resides supposedly in the decoder itself, it affects everything decoding Windows Media Video of this flavor, including<\/p>\n<ul>\n<li>Windows Media Player 64-bit<\/li>\n<li>GraphEdit x64 from Windows SDK<\/li>\n<li>TopoEdit x64 from Windows SDK (built manually)<\/li>\n<\/ul>\n<p>The only exception is DXVA-accelerated decoding where bug is worked around by hardware assisted decoding and the output is correct.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1504\" alt=\"Image002\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/Image002.png\" width=\"656\" height=\"518\" srcset=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/Image002.png 656w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/Image002-320x252.png 320w, https:\/\/alax.info\/blog\/wp-content\/uploads\/2014\/02\/Image002-624x492.png 624w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/p>\n<p>One of the ways to easily see and reproduce the problem in action is to re-encode the content in 64-bit version of GraphEdit into anything else: video decoder there will decode in software and burn the artifacts in.<\/p>\n<p>See also:<\/p>\n<ul>\n<li><a href=\"https:\/\/connect.microsoft.com\/VisualStudio\/feedback\/details\/816126\/x64-version-of-windows-media-video-decoder-produces-incorrect-video-with-white-sand-artifacts\" target=\"_blank\">x64 version of Windows Media Video decoder produces incorrect video with &#8220;white sand&#8221; artifacts<\/a>\u00c2\u00a0on Microsoft Connect (including media sample)<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Unfortunately, 64-bit version of\u00c2\u00a0Windows Media Video 9 Decoder\u00c2\u00a0is not as good as its 32-bit sister. 32-bit version is user an order of magnitude more frequently and does not give troubles, nevertheless 64-bit version offers similar feature set it is pretty hard to see it in action since it takes a 64-bit media application to host&hellip; <\/p>\n<p><a class=\"moretag\" href=\"https:\/\/alax.info\/blog\/1502\">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":[10],"tags":[283,469,467,63,424,59,486,466,468,284],"class_list":["post-1502","post","type-post","status-publish","format-standard","hentry","category-video","tag-64-bit","tag-artifact","tag-asf","tag-bug","tag-media-foundation","tag-microsoft","tag-video","tag-wmv","tag-wmv3","tag-x64"],"_links":{"self":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/1502","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=1502"}],"version-history":[{"count":0,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/1502\/revisions"}],"wp:attachment":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/media?parent=1502"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/categories?post=1502"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/tags?post=1502"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}