[Ffmpeg-devel] [PATCH] support for VP6 and FLASHSV in the flv muxer

Aurelien Jacobs aurel
Sat Dec 16 20:13:58 CET 2006


On Sat, 16 Dec 2006 01:30:01 +0100
Michael Niedermayer <michaelni at gmx.at> wrote:

> Hi
> 
> On Fri, Dec 15, 2006 at 11:45:43PM +0100, Benjamin Larsson wrote:
> [...]
> > Revised patch.
> > 
> > [...]
> > 
> > -    put_be24(pb,size+1); // include flags
> > +    if (enc->codec_id == CODEC_ID_VP6)
> > +        put_be24(pb,size+2); // include the extra byte needed for VP6 in flv and flags
> > +    else
> > +        put_be24(pb,size+1); // include flags
> >      put_be24(pb,pkt->pts);
> >      put_be32(pb,flv->reserved);
> >      put_byte(pb,flags);
> > +    if (enc->codec_id == CODEC_ID_VP6)
> > +        put_byte(pb,0);
> 
> shouldnt that rather be extradata[0] ?

Not for CODEC_ID_VP6. Only for VP6F and only when extradata is present.
So IMO, something like this should be added:

+    if (enc->codec_id == CODEC_ID_VP6F)
+        put_byte(pb, extradata_size ? extradata[0] : 0);

Also note that if you mux CODEC_ID_VP6 in flv, it will be flipped
upside-down. (There is no other way if you streamcopy from avi to flv).

Aurel




More information about the ffmpeg-devel mailing list