[Matroska-devel] Re: r7150 - trunk/libavformat/matroska.c

Steve Lhomme steve.lhomme at free.fr
Wed Nov 22 20:19:17 CET 2006


Moritz Bunkus wrote:
> Hey,
> 
> On Wednesday 22 November 2006 10:56, Steve Lhomme wrote:
> 
>>>> Ok, so now as you know that matroska is quite braindead, you don't even
>>>> expect it to contain a proper 34 bytes extradata and normal data packets.
>>>> You may at least expect that they stored the extradata prepended to
>>>> the first data packet ?
>>>> They managed to do even worse ! They indeed pack the extradata with the
>>>> first data packet, but they store it in the extradata block !
> 
> Hmmm not really. The FLAC specs say that a STREAM consists of
> METADATA_BLOCK
> METADATA_BLOCK*
> FRAME+
> 
> mkvmerge reads as many blocks from a FLAC file until libFLAC's
> FLAC__seekable_stream_decoder_process_until_end_of_metadata returns. All
> data up to that point is stored in the Matroska file's CodecPrivate ( =
> extradata).
> 
> Meaning: mkvmerge should only store all metadata blocks in
> CodecPrivate. If there's a real frame stored in CodecPrivate as well
> then that is a bug.

Don't worry. It was a false assumption. The file is fine and contains no 
data in the extradata.

Steve



More information about the Matroska-devel mailing list