[Matroska-devel] Re: Element order in EBML/libebml
paul at msn.com
Fri Oct 17 16:58:50 CEST 2003
"Cyrius" <suiryc at yahoo.com> wrote...
> > Bad! Order sensetive data is a nono in EBML.
Sorry, I meant to say, Matroska. EBML doesn't have anything inherently that
cares in the specs.
> Some of you will say "Simple, just order them thanks
> to the timecodes". Yes .. but no, what do you do with
> native MPEG4 streams where frames are stored
> out-of-order ? Someone knowing the MPEG4 specs would
> say "Just take into account the type of the frame -
> IBP - and their timecode and you can sort them too".
> True, but then what do you do with (future) codecs
> that would store the frame in yet another order or use
> other kind of frames ? You would say "Oh sorry, I
> don't know in which order the frames are stored, I
> can't reorder them, you will have to wait for an
> upgrade of the program to take into account this new
> codec" ? If so you can already remove the lines in all
> the docs about Matroska mentioning that this container
> is great because applications can edit Matroska files
> without having to know what is inside.
You could still edit them because you would be able to tell what frames were
still needed by references. Reorganizing the frames for a specific codec type
should be fine, as long as you are ABLE to.
> Last but not least. Let's consider why a new ordering
> element (KaxContentEncoding) has been asked :
> > Bad! Order sensitive data is a nono in EBML.
> I don't think that's really true. Ebml by itself
> introduce order (when you read an EBML stream,
> elements have been written in a certain order).
Right, its was my booboo.
More information about the Matroska-devel