[MPlayer-dev-eng] [PATCH] workaround in the wmv9/dmo video decoder for a 'no video' issue

Pierre Lombard p_l at gmx.fr
Sun Sep 14 18:29:01 CEST 2003


Hi,

The (dirty) patch attached should fix the issue of no video for some
wmv9/dmo encoded files (without video)

[see reports on mplayer-advance-users list]

If someone more aware than me about theses internals would like to check
for the real cause instead of this ugly patch - please do so.

Is it ok to double this value (maybe adding some constant would be
sufficient) ?  Are we really concerned about memory usage there ?

Without this patch the ProcessOutput() returns E_INVALIDARGS error and
any ProcessInput/Output() that follows fail.


PS: I'll commit tomorrow (if nobody shouts) since I've not noticed any
drawback... yet.

-- 
Best regards,
  Pierre Lombard
-------------- next part --------------
Index: loader/dmo/DMO_VideoDecoder.c
===================================================================
RCS file: /cvsroot/mplayer/main/loader/dmo/DMO_VideoDecoder.c,v
retrieving revision 1.6
diff -u -r1.6 DMO_VideoDecoder.c
--- loader/dmo/DMO_VideoDecoder.c	24 Apr 2003 18:48:27 -0000	1.6
+++ loader/dmo/DMO_VideoDecoder.c	14 Sep 2003 14:56:53 -0000
@@ -343,7 +343,7 @@
     db.rtTimestamp = 0;
     db.rtTimelength = 0;
     db.dwStatus = 0;
-    db.pBuffer = (IMediaBuffer*) CMediaBufferCreate(this->m_sDestType.lSampleSize,
+    db.pBuffer = (IMediaBuffer*) CMediaBufferCreate(this->m_sDestType.lSampleSize * 2,
 						    imdata, 0, 0);
     result = this->m_pDMO_Filter->m_pMedia->vt->ProcessOutput(this->m_pDMO_Filter->m_pMedia,
 						   (imdata) ? 0 : DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER,


More information about the MPlayer-dev-eng mailing list