[matroska-devel] Matroska/EBML specs ??
animesh.srivastava at blr.techspan.com
Thu Feb 20 14:17:44 CET 2003
Can anyone point to a reference where I can find the "exact" specs of ebml..
I have been through the ones given on websites but i still find that someway
they dont specify the bnf type format.. one which would specify the
grammar,.. I think that matroska specs are still being worked upon and maybe
ebml too is not in the final state (if i am wrong pls correct me).. But by
exact, i mean something as clear and precise as the WBXML on
http://www.w3.org/TR/wbxml/ or better still the Binary XML Content Format
Specification (WAP-192-WBXML-20010725-a) at
The reason why I am asking this is basically the more clearer the exact
specs of EBML to us, the faster we can get the parser in place..
okay, As a first cut, the steps i have in mind is..
1. Successful build of the existing code. - Done
2. Reading the headers of a dummy matroska file using the existing test
sources. - Done
3. Understand the ebml in theory and hand-code a small XML to EBML. - Almost
Done (thats why this mail)
4. Write code to parse this handcoded EBML back to the XML. - This code is
imp and will go a long way in helpin us write the ebml parser, basically i
would suspect that our further versions will stem from this basic parser
5. While writing the above parser code, we will invariably get a feel of how
to go about the bigger project.. that is in terms of code structure, apis
and function calls.
Moritz had specifically wanted that the parser code should NOT do any file
I/O,.. but for the time being we maybe using some file I/O to read some test
ebml files and see if the parser works correctly.. later we can always knock
off the I/O layer..
As for the parser,.. as spyder we are also weighing the difference between
sax or tree.. the tree would have worse performance than the sax for big
ebml docs,... say something around 50 MB sized files,.. but somethings can
be better acheived with a sax parser, using callbacks etc,... anyone with
any ideas.. ??
Pls take time to point us to the most recent specs of EBML and of Matroska
that the developer group currently refers too.
More information about the Matroska-devel