[Matroska-devel] Re: Re: [Ffmpeg-devel] Adding matroska support toFFMPEG via libmatroska/libebml, in C++ ?
steve.lhomme at free.fr
Tue Oct 14 17:54:57 CEST 2003
>>Make the lace
>>sizes EBML style, and add a
>>bit flag for all laced frames being the same size.
> Yeah easy ;). It's true that using the EBML style for
> encoding the size of a lace would require less space
> than the current system.
> But before doing anything like that some tests should
> be made to make sure there is no (or at least not too
> important) drawback on speed: is encoding/decoding an
> EBML encoded size faster or slower than the current
> system ?
Mmm, you're starting to convince me about that "lacing2" thing. It's
true that compared to the original lacing, it would take less space, and
serve the same goal. It's strange that Xiph didn't come up with this
idea ! It would also allow lacing of bigger frames (and lacing would
still be efficient). The size of each lace could even be differential to
the preceeding. That means 100, 120, 110 is coded as : 100, 20, -10.
So I'm OK to create this new Block2. But it will require every known
matroska reader to be updated at the same time (to avoid problems). So
we should see what is in the wild and coordinate the update, so that
it's transparent to the users. (new files will not play with older
readers)... If we do add a Block2 we should also make sure some other
things don't need to be added/changed at the same time.
About the speed, I think it's equal. As the old way takes more space, it
may just take more iteration to compute+write it. So I think the new
method would be faster (maybe not the differential one).
More information about the Matroska-devel