EBML ( englanniksi Extensible Binary Meta Language - extensible binary metalanguage) on binääritiedostomuoto, jonka luomisen aikana tehtävänä oli luoda XML -analogi binääritiedoille. Alun perin luotu Matroska -mediasäilöä varten , käytetty WebM :ssä .
Muodon erittäin tärkeä ominaisuus on "oletusarvojen" olemassaolo monille elementeille, mikä mahdollistaa tiedoston luomisen ilman kaikkien (tiedostosta tiedostoon toistuvien) parametrien yksityiskohtaista kuvausta.
Yksi muodon ominaisuuksista on muuttuvan kokoiset numerot. Numerokoodaus on samanlainen kuin UTF-8- merkkikoodaus , numeron koon määrää nollabittien määrä (tarkemmin sanottuna ensimmäisen nollasta poikkeavan bitin sijainti). Maksimimäärä lasketaan 2-2 bitiksi .
yksi | 2 | 3 | neljä | 5 | 6 | 7 | kahdeksan | bittiä | koodattu alue |
---|---|---|---|---|---|---|---|---|---|
1 × × × × × × × | 7 | [0;126] | |||||||
01×××××× | ×××××××× | neljätoista | [0;16382] | ||||||
001 × × × × × | ×××××××× | ×××××××× | 21 | [0;2097150] | |||||
0001 × × × × | ×××××××× | ×××××××× | ×××××××× | 28 | [0;268435454] | ||||
00001 × × × | ×××××××× | ×××××××× | ×××××××× | ×××××××× | 35 | [0;34359738366] | |||
000001×× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | 42 | [0;4398046511102] | ||
0000001× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | 49 | [0;562949953421310] | |
00000001 | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | ×××××××× | 56 | [0;72057594037927934] |