[Ffmpeg-cvslog] r7876 - trunk/libavformat/avidec.c

Michael Niedermayer michaelni
Wed Feb 7 20:27:54 CET 2007


Hi

On Wed, Feb 07, 2007 at 07:19:39PM +0100, Reimar D?ffinger wrote:
> Hello,
> On Wed, Feb 07, 2007 at 06:56:31PM +0100, michael wrote:
> > Author: michael
> > Date: Wed Feb  7 18:56:31 2007
> > New Revision: 7876
> > 
> > Modified:
> >    trunk/libavformat/avidec.c
> > 
> > Log:
> > supporting files with A,V,I,0x19  header
> > 
> > 
> > Modified: trunk/libavformat/avidec.c
> > ==============================================================================
> > --- trunk/libavformat/avidec.c	(original)
> > +++ trunk/libavformat/avidec.c	Wed Feb  7 18:56:31 2007
> > @@ -82,6 +82,9 @@
> >      avi->riff_end = get_le32(pb);   /* RIFF chunk size */
> >      avi->riff_end += url_ftell(pb); /* RIFF chunk end */
> >      tag = get_le32(pb);
> > +    if(tag == MKTAG('A', 'V', 'I', 0x19))
> > +        av_log(NULL, AV_LOG_INFO, "file has been generated with a totally broken muxer\n");
> > +    else
> 
> Are you sure it's that? I actually expected that this is some stupid
> hack to force people to install and use only a specific software.
> Somehow similar to that format where they put the whole 100 MB MPEG2
> stream into one AVI data chunk...

which too is broken and invalid

and heres the avi spec from MS:
-----
...
AVI RIFF Form

AVI files are identified by the FOURCC 'AVI ' in the RIFF header. All AVI files include two mandatory LIST chunks, which define the format of the streams and the stream data, respectively. An AVI file might also include an index chunk, which gives the location of the data chunks within the file. An AVI file with these components has the following form: 

RIFF ('AVI '
      LIST ('hdrl' ... )
      LIST ('movi' ... )
      ['idx1' (<AVI Index>) ]
     )

The 'hdrl' list defines the format of the data and is the first required LIST chunk. The 'movi' list contains the data for the AVI sequence and is the second required LIST chunk. The 'idx1' list contains the index. AVI files must keep these three components in the proper sequence. 

Note   The OpenDML extensions define another type of index, identified by the FOURCC 'indx'. 
...
-----

as you can clearly see they say 'AVI ' not 'AVI'+random byte


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

No human being will ever know the Truth, for even if they happen to say it
by chance, they would not even known they had done so. -- Xenophanes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/attachments/20070207/4c0f5498/attachment.pgp>



More information about the ffmpeg-cvslog mailing list