[MPlayer-dev-eng] [PATCH] Supporting DMO decoder from WMP11, multithreaded WMV3/VC1 decoding

Zhou Zongyi zhouzongyi at pset.suntec.net
Mon Jan 12 10:46:16 CET 2009


Hi all,

Here is the modified Part 1 of the patch. It is ugly but does not break audio DMO decoders.

Index: loader/dmo/dmo.c
===================================================================
--- loader/dmo/dmo.c (revision 28306)
+++ loader/dmo/dmo.c (working copy)
@@ -139,6 +139,7 @@
 */
  }
 
+ if (0!=memcmp(&GUID_NULL, &out_fmt->subtype, sizeof(GUID))){
  hr = This->m_pMedia->vt->SetOutputType(This->m_pMedia, 0, out_fmt, 0);
  if (hr)
  {
@@ -153,6 +154,7 @@
  // This->m_pMedia->vt->AllocateStreamingResources(This->m_pMedia);
  hr = This->m_pMedia->vt->GetStreamCount(This->m_pMedia, &inputs, &outputs);
  Debug printf("StreamCount r=0x%lx  %ld  %ld\n", hr, inputs, outputs);
+ }
 
         break;
     }
Index: loader/dmo/DMO_VideoDecoder.c
===================================================================
--- loader/dmo/DMO_VideoDecoder.c (revision 28306)
+++ loader/dmo/DMO_VideoDecoder.c (working copy)
@@ -152,7 +152,7 @@
 
  memset(&this->m_sDestType, 0, sizeof(this->m_sDestType));
  this->m_sDestType.majortype = MEDIATYPE_Video;
- this->m_sDestType.subtype = MEDIASUBTYPE_RGB24;
+ this->m_sDestType.subtype = GUID_NULL;
  this->m_sDestType.formattype = FORMAT_VideoInfo;
  this->m_sDestType.bFixedSizeSamples = true;
  this->m_sDestType.bTemporalCompression = false;


Zhou Zongyi


More information about the MPlayer-dev-eng mailing list