Какво е WEBM файл?
Файл с разширение .webm е видео файл, базиран на отворения, безплатен файлов формат WebM. Той е проектиран за споделяне на видео в мрежата и дефинира структурата на файловия контейнер, включително видео и аудио формати. WebM е 100% безплатна, внедрявайки високо качество, базирано на отворени технологии като HTML, HTTP и TCP/IP, които са отворени за внедряване от всеки. WebM е специално проектиран за обслужване на видео в мрежата, което го прави оптимизиран за стрийминг с нисък изчислителен отпечатък. Това го прави подходящ за възпроизвеждане на видеоклипове на всяко устройство, особено на нетбуци с ниска мощност, преносими компютри и таблети.
WEBM файлов формат
Файловата структура на WebM се основава на подмножество на файловия формат на контейнера Matroska MKV. Видео потоците, налични в WebM файл, се компресират с помощта на технологиите за компресиране VP8 или VP9, които са високоефективни при компресиране. По подобен начин аудио потоците в WebM файл се компресират с помощта на кодеците Vorbis или Opus, разработени от Xiph Foundation. Всички тези видео и аудио кодеци са безплатни и могат да се използват без никакви такси.
Следват обобщените спецификации за файловия формат WebM.
Поле | Описание |
---|---|
MIME-тип | video/webm |
Само аудио MIME тип | audio/webm |
Униформен типов идентификатор | org.webmproject.webm |
Име на видео кодек | VP8 или VP9 |
Име на аудиокодек | Vorbis или Opus |
WebM елементи
WebM, като подмножество от спецификациите на Matroska, осигурява поддръжка за някои от функционалностите на Matroska. Следва описание на поддържаните елементи.
EBML
Име | Описание |
---|---|
EBML | Задайте EBML характеристиките на данните, които да следват. Всеки EBML документ трябва да започва с това. |
EBMLVersion | Версията на EBML анализатора, използван за създаване на файла. |
EBMLReadVersion | Минималната EBML версия, която анализаторът трябва да поддържа, за да прочете този файл. |
EBMLMaxIDLength | Максималната дължина на идентификаторите, които ще намерите в този файл (4 или по-малко в Matroska). |
EBMLMaxSizeLength | Максималната дължина на размерите, които ще намерите в този файл (8 или по-малко в Matroska). Това не отменя размера на елемента, посочен в началото на елемент. Елементи, които имат указан размер, който е по-голям от позволеното от EBMLMaxSizeLength, се считат за невалидни. |
DocType | Низ, който описва типа документ, който следва този EBML хедър (“webm” в нашия случай). |
DocTypeVersion | Версията на интерпретатора на DocType, използвана за създаване на файла. |
DocTypeReadVersion | Минималната версия на DocType, която интерпретаторът трябва да поддържа, за да прочете този файл. |
Глобални елементи
В момента се поддържа само елементът Void
, който се използва за анулиране на повредени данни, за да се избегнат неочаквани поведения при използване на повредени данни. Съдържанието се изхвърля. Използва се и за резервиране на място в поделемент за по-късна употреба.
Сегмент
Този елемент съдържа всички други елементи от най-високо ниво (ниво 1). Обикновено Matroska файлът се състои от 1 сегмент.
Информация за търсене на мета
Следната информация за търсене се поддържа.
Име на елемент | Описание |
---|---|
SeekHead | Съдържа позицията на друг елемент от ниво 1. |
Seek | Съдържа единичен запис за търсене към EBML елемент. |
SeekID | Двоичният идентификатор, съответстващ на името на елемента. |
SeekPosition | Позицията на елемента в сегмента в октети (0 = първи елемент от ниво 1). |