EBML
Sayfanın mevcut sürümü henüz deneyimli katılımcılar tarafından incelenmemiştir ve 23 Mart 2017'de incelenen sürümden önemli ölçüde farklı olabilir ; kontroller 3 düzenleme gerektirir .
EBML ( İngilizce Genişletilebilir İkili Meta Dili - genişletilebilir ikili meta dili), oluşturulması sırasında görevin ikili veriler için bir XML analogu oluşturmak olduğu bir ikili dosya biçimidir. Başlangıçta WebM'de kullanılan Matroska medya kabı için oluşturulmuştur .
Genel yapı
Biçimin çok önemli bir özelliği, birçok öğe için "varsayılan değerlerin" varlığıdır, bu, tüm (dosyadan dosyaya tekrar eden) parametrelerin ayrıntılı bir açıklaması olmadan bir dosya oluşturmanıza olanak tanır.
Veri türleri
- Signed Integer - imzalı bir tamsayı, büyük endian bayt sırası , 1 ila 8 bayt arasında isteğe bağlı boyut.
- İşaretsiz Tamsayı - işaretsiz tamsayı, büyük endian bayt sırası, 1 ila 8 bayt arasında isteğe bağlı boyut.
- Float , kayan noktalı bir sayı, büyük endian bayt sırası, 4 veya 8 bayt boyutudur.
- Dize , bir ASCII metin dizesidir ( ASCII karakterleri , 32 - 127 arası kodlar). Sonlandırıcı bir boş değerin varlığı isteğe bağlıdır ve ayrıştırıcının gereksinimlerine bağlıdır.
- UTF-8 , UTF-8 biçiminde bir Unicode dizesidir . Sonlandırıcı bir boş değerin varlığı isteğe bağlıdır ve ayrıştırıcının gereksinimlerine bağlıdır.
- Tarih - nanosaniye cinsinden saat, işaretli tam sayı, 64 bit. 0, 01/01/2001 00:00:00.000000000 UTC üçüncü binyılın başlangıcı anlamına gelir.
- ana öğe , diğer (alt düzey) EBML öğeleri için bir kapsayıcıdır.
- İkili - ayrıştırıcı tarafından yorumlanmayan veriler.
Değişken boyut sayıları
Formatın özelliklerinden biri değişken boyuttaki sayılardır. Sayı kodlaması UTF-8 karakter kodlamasına benzer , sayının boyutu sıfır bit sayısıyla belirlenir (daha doğrusu, sıfır olmayan ilk bitin konumu). Maksimum sayı 2 -2 bit olarak hesaplanır .
| bir | 2 | 3 | dört | 5 | 6 | 7 | sekiz | bit | kodlanmış aralık |
|---|---|---|---|---|---|---|---|---|---|
| 1××××××× | 7 | [0;126] | |||||||
| 01×××××× | ×××××××× | on dört | [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] |
Ayrıca
Bağlantılar
- EBML RFC (Taslak) (İngilizce) - EBML standardının taslağı
- EBML Ana Sayfası - açık kaynaklı Genişletilebilir İkili Meta Dil