[MPlayer-dev-eng] [PATCH] make lavf demuxer and mplayer demuxerreturn same format extradata.
elupus
elupus at ecce.se
Sun Nov 5 14:15:45 CET 2006
>
> Attached a minimal patch (based on your code) to fix your sample, and
> all other RV20 files (except for rv20errors.rm). This was
> broken mainly
> by fixing the biSize value passed by real demuxer.
>
> This patch does not pass the cmsg24 data to lavc RV20 codec,
> it was not
> done even before RV20 got broken (the diff2 patch does it in case
> anybody wants to experiment with it, but rv20errors still has broken
> size).
>
I noted something else on that cmsg24 data.
if (bih->biCompression <= 0x30335652 && type2 >= 0x20200002)
{
/* read secondary WxH for the cmsg24[] (see vd_realvid.c) */
((unsigned short *)(bih+1))[4] = 4 * (unsigned short) src[0];
((unsigned short *)(bih+1))[5] = 4 * (unsigned short) src[1];
}
else
memset(&dst[8], 0, 4);
track->realmedia = 1;
That is in demux_mkv.c, and then vd_realvid.c it uses that extradata for
cmsg24 and once again multiplies it with 4. Thus the final change would be
8.
/Joakim
More information about the MPlayer-dev-eng
mailing list