[Matroska-devel] EBML specification component for review - Element Data Size

Erik Piil piil.erik at gmail.com
Thu Apr 30 21:03:48 CEST 2015


This discussion relates to the “Element Data Size” portion of the earlier
EBML RFC Draft for revision/incorporation into the final EBML
specification.

>From the RFC Draft:

Element Data Size

The EBML element data size is encoded as a variable size integer with, by
default, widths up to 8. Another maximum width value can be set by setting
another value to EBMLMaxSizeWidth in the EBML header. See section 5.1.
There is a range overlap between all different widths, so that 1 encoded
with width 1 is semantically equal to 1 encoded with width 8. This allows
for the element data to shrink without having to shrink the width of the
size descriptor.

Values with all data bits set to 1 means size unknown, which allows for
dynamically generated EBML streams where the final size isn't known
beforehand. The element with unknown size MUST be an element with an
element list as data payload. The end of the element list is determined by
the ID of the element. When an element that isn't a sub-element of the
element with unknown size arrives, the element list is ended.

Since the highest value is used for unknown size the effective maximum data
size is 2^56-2, using variable size integer width 8.


Any thoughts are most appreciated.


Best,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.matroska.org/pipermail/matroska-devel/attachments/20150430/0b5a3f57/attachment.html>


More information about the Matroska-devel mailing list