[Mplayer-users] MPlayer on sparc,

Juergen Keil jk at tools.de
Sat Aug 11 19:03:08 CEST 2001


> > Actually it's not at all a problem... but you are right. Compile of
> > current ffmpeg just finished:
> > 
> > Forcing video codec: [ffdivx] drv:5 (FFmpeg DivX ;-) (MS MPEG-4 v3))
> > vo: X11 running at 800x600 depth: 32 ("mathsun17:201.0"
> > => remote display)
> > libavcodec.size: 720 x 416
> > incorrect codes
> > 
> > So "somebody" broke ffdivx for Solaris into pieces.
> > 
> > Who's going to fix it?
> Someone :)
> 
> I think it's enough to check every day CVS version after aug 3,
> and find which cvs commit broke the code. then check cvslog and
> report it to ffmpeg list. then another someone :) will fix it :)


It's a problem I fixed in MPlayer's CVS (when libavcodec was included in
MPlayer's CVS); the fix apparently never made it to the ffmpeg people.


init_vlc is called with an array of 64 elements
(``UINT16 table_mb_intra[64][2]''),  but the array size passed to init_vlc for
that array is 128   8-)    Thus init_vlc accesses random data - with some luck
this works on x86 machines - but on a sparc this problem is detected inside
init_vlc and the program aborts with the "incorrect codes" error message.


The following patch for libavcodec should fix the problem:

% cvs diff
Index: msmpeg4.c
===================================================================
RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/msmpeg4.c,v
retrieving revision 1.4
diff -u -B -r1.4 msmpeg4.c
--- msmpeg4.c   2001/08/06 00:47:50     1.4
+++ msmpeg4.c   2001/08/11 16:49:26
@@ -592,7 +592,7 @@
     init_vlc(&mb_non_intra_vlc, 9, 128, 
              &table_mb_non_intra[0][1], 8, 4,
              &table_mb_non_intra[0][0], 8, 4);
-    init_vlc(&mb_intra_vlc, 9, 128, 
+    init_vlc(&mb_intra_vlc, 9, 64, 
              &table_mb_intra[0][1], 4, 2,
              &table_mb_intra[0][0], 4, 2);

--
Jürgen Keil          		jk at tools.de
Tools GmbH			+49 (228) 9858011


_______________________________________________
Mplayer-users mailing list
Mplayer-users at lists.sourceforge.net
http://lists.sourceforge.net/lists/listinfo/mplayer-users



More information about the MPlayer-users mailing list