[MPlayer-dev-eng] [PATCH] CoreAVC [4/5] - Mov support

Alan Nisota alannisota at gmail.com
Thu Oct 5 18:02:12 CEST 2006


On 10/5/06, Reimar Döffinger  wrote:
> Hello,
> On Wed, Oct 04, 2006 at 11:19:14PM -0700, Alan Nisota wrote:
> > This is the 4th of 5 patches to support the CoreAVC.
> > This patch fixes a couple of bugs in how the .mov (QT) container is
> > parsed when containing h264 streams. I believe it should be generally
> > correct, regardless of whether CoreAVC is in use or not
>
> Have you tested how -demuxer lavf bahaves?
Both work equally well (with this patch applied)  I'll have to trace
what is being passed in by laf and will get back to you.

>
> > -               sh->bih->biPlanes=0;
> > +               sh->bih->biPlanes=1;
> >                 sh->bih->biBitCount=depth;
> >                 sh->bih->biCompression=trak->fourcc;
> > -               sh->bih->biSizeImage=sh->bih->biWidth*sh->bih->biHeight;
> > +               sh->bih->biSizeImage=sh->bih->biWidth*sh->bih->biHeight * 2;
>
> I would have to check the MSDN documentation again, but I think this was
> already suggested before but rejected because it is wrong (IIRC there
> should be a bugzilla entry about it, I think it was about the AVI muxer)...
from http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_1rw2.asp:
biPlanes
    Specifies the number of planes for the target device. This value
must be set to 1.
biSizeImage
    Specifies the size, in bytes, of the image. This may be set to
zero for BI_RGB bitmaps.

    Windows 98/Me, Windows 2000/XP: If biCompression is BI_JPEG or
BI_PNG, biSizeImage indicates the size of the JPEG or PNG image
buffer, respectively.

So my biPlanes change looks ok.  The image size is not clear, but I
suppose this should be width*height*bits-per-pixel/8

Regardless, I'm having other issues with QT videos on CoreAVC at the
moment (they work with 0.0.4 but not with 1.1.0.5).  Once I have that
debugged I'll resend the patch as appropriate.



More information about the MPlayer-dev-eng mailing list