[Ffmpeg-cvslog] r6213 - in trunk: Changelog MAINTAINERS doc/ffmpeg-doc.texi libavcodec/Makefile libavcodec/allcodecs.c libavcodec/avcodec.h libavcodec/vp5.c libavcodec/vp56.c libavcodec/vp56.h libavcodec/vp56data.c libavcodec/vp56data.h libavcodec/vp5data.h libavcodec/vp6.c libavcodec/vp6data.h libavformat/flvdec.c libavformat/nsvdec.c libavformat/riff.c libavformat/swf.c

Aurelien Jacobs aurel
Fri Sep 15 13:20:03 CEST 2006


On Thu, 14 Sep 2006 23:14:06 -0400
Rich Felker <dalias at aerifal.cx> wrote:

> On Fri, Sep 15, 2006 at 01:24:02AM +0200, Aurelien Jacobs wrote:
> > > A CODEC_FLAG_FLIPPED or similar would be much more generic.
> > 
> > Do you think about something like the attached patch ?
> > I'm still not sure how this could be handled in mplayer (and all other
> > player using their own demuxer)...
> > Also I wonder how we should handle the removal of CODEC_ID_VP6F ? To
> > be absolutely secure, a dummy entry should be added in the CodecID enum
> > to ensure binary compatibility.
> > 
> > Aurel
> 
> > Index: libavcodec/allcodecs.c
> > ===================================================================
> > --- libavcodec/allcodecs.c	(revision 6252)
> > +++ libavcodec/allcodecs.c	(working copy)
> > @@ -377,9 +377,6 @@
> >  #ifdef CONFIG_VP6_DECODER
> >      register_avcodec(&vp6_decoder);
> >  #endif //CONFIG_VP6_DECODER
> > -#ifdef CONFIG_VP6F_DECODER
> > -    register_avcodec(&vp6f_decoder);
> > -#endif //CONFIG_VP6F_DECODER
> >  #ifdef CONFIG_ASV1_DECODER
> >      register_avcodec(&asv1_decoder);
> >  #endif //CONFIG_ASV1_DECODER
> > Index: libavcodec/avcodec.h
> > ===================================================================
> > --- libavcodec/avcodec.h	(revision 6252)
> > +++ libavcodec/avcodec.h	(working copy)
> > @@ -141,7 +141,6 @@
> >      CODEC_ID_VMNC,
> >      CODEC_ID_VP5,
> >      CODEC_ID_VP6,
> > -    CODEC_ID_VP6F,
> >  
> >      /* various pcm "codecs" */
> >      CODEC_ID_PCM_S16LE= 0x10000,
> > @@ -360,6 +359,7 @@
> >  #define CODEC_FLAG2_BRDO          0x00000400 ///< b-frame rate-distortion optimization
> >  #define CODEC_FLAG2_INTRA_VLC     0x00000800 ///< use MPEG-2 intra VLC table
> >  #define CODEC_FLAG2_MEMC_ONLY     0x00001000 ///< only do ME/MC (I frames -> ref, P frame -> ME+MC)
> > +#define CODEC_FLAG2_FLIPPED       0x00002000 ///< frames need to be flipped upside-down
> 
> Umm, maybe I missed something important

It seems so.

> but why aren't you just negating stride??

That's exactly what I do.
The problem here is to decide when the image must be flipped or not.
VP6 is stored flipped in avi and *not* flipped in flv/swf !
So a different "parameter" must be passed to VP6 depending on the
container.

Aurel




More information about the ffmpeg-cvslog mailing list