WebVTT субтитри (.vtt)
W3C СтандартWeb Video Text Tracks (WebVTT) е официалният уеб стандарт на W3C за надписи, субтитри и описания на глави, интегриран нативнo в HTML5 видео елементите (<track>) и съвременния HTTP поточно излъчване (HLS).
Конвертиране на SRT към VTT
Безплатен конвертор от SRT към VTT в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Инспектиране и метаданни
Операционните системи и файловите анализатори идентифицират WebVTT файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на хедъра (Magic Bytes)
Операционните системи и файловите анализатори идентифицират WebVTT файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
57 45 42 56 54 54ASCII ПРЕДСТАВЯНЕ: WEBVTT
Стандартизация: W3C WebVTT Recommendation
Технически спецификации
| Контейнерна архитектура | UTF-8 text file starting with 'WEBVTT' signature, followed by optional STYLE and NOTE blocks and sequential cue blocks |
| Компресия | Uncompressed plain text (typically compressed over HTTP via Gzip or Brotli) |
| Поредност на байтовете (Endianness) | UTF-8 text stream |
| Цветови пространства | Full CSS Color Module Level 4 support in cue styles |
| Канали и структура | Timecoded cues, speech recognition confidence, CSS styling, and screen position settings |
| Максимални размери | Unbounded sequential cues |
| Прозрачност | Full CSS opacity and alpha transparency supported via '::cue' pseudo-element |
| Стрийминг и прогресивно зареждане | Native streaming in HTML5 <video> elements and HLS / DASH live video manifests |
Техническа сравнителна матрица: WebVTT спрямо конкуренти
| Технически атрибут | WebVTT (Текущ) | SRT | ASS | SUB |
|---|---|---|---|---|
| HTML5 уеб интеграция | 100% нативен стандарт (<track>) | Изисква JS конвертиране | Изисква WebAssembly | Изисква конвертиране |
| CSS стилизиране | Пълно нативно CSS стилизиране (::cue) | Само основни HTML тагове | Проприетарни тагове за презапис | Няма |
| HLS / DASH стрийминг | Универсален стандарт за стрийминг излъчване | Поддържа се чрез муксиране | Ограничена поддръжка за стрийминг | Няма |
| Изискване за хедър | Стриктен 'WEBVTT' магически текст ред 1 | Не се изисква хедър | Секция [Script Info] | Не се изисква хедър |
Често срещани режими на повреда и ръководство за хекс възстановяване
Грешка в конзолата на браузъра: 'Malformed WebVTT file: Missing WEBVTT signature'.
Първопричина: Липсващ низ 'WEBVTT' на ред 1 или празни редове преди хедъра.
Възстановяване: Добавете 'WEBVTT\n\n' в началото на файла с помощта на File2File Subtitle Converter.
Анализ на сигурността и вектори на атака към парсера
Парсерите на WebVTT в уеб браузърите обработват недоверени субтитри, което може да доведе до Cross-Site Scripting (XSS), ако бъдат визуализирани без саниране в DOM.
Известни вектори на атака
- XSS инжекция чрез несанирано съдържание на HTML субтитри, вкарано в DOM на уеб видео плейъра.
- Server-Side Request Forgery (SSRF) по време на автоматизирано генериране на миниатюри за субтитри от страна на сървъра.
- Отказ от услуга (Denial of Service) чрез деформирани CSS селектори за субтитри.
Защитни добри практики:
Исторически произход и етапи
Основни предимства и плюсове
- Нативен HTML5 уеб стандарт: поддържа се директно от всички уеб браузъри в тага <track> без външни библиотеки.
- Богата поддръжка на CSS стилове: персонализиране на цветове, шрифтове, фон и позиции с помощта на нативния CSS псевдоелемент '::cue'.
- Първокласна поддръжка на стрийминг на живо: интегриран в манифестите за стрийминг Apple HLS и MPEG-DASH за телевизионни и излъчвани субтитри.
Технически ограничения и минуси
- Стриктно изискване за хедър: файлът трябва да започва с точния текст 'WEBVTT' на самия първи ред, иначе браузърите го отхвърлят.
- Разделителят с милисекунди с точка ('00:01:20.500') изисква конвертиране от по-стари SRT файлове, разделени със запетая.
- По-старите хардуерни плейъри извън браузърите (като евтини USB мултимедийни кутии) често нямат нативна поддръжка за WebVTT.
Интересни технически факти
- Всеки валиден WebVTT файл трябва да започва с точната дума 'WEBVTT' на първия ред; всичко друго води до игнориране на файла от браузърите.
- Първоначално WebVTT се наричаше 'WebSRT', тъй като бе умишлено проектиран да изглежда почти идентично с класическите SRT субтитри.
- WebVTT може да се използва и за видео глави и интерактивни подсказки с миниатюри при задържане на мишката върху лентата за превъртане на видеото.
Често задавани технически въпроси
За какво се използва WebVTT?
WebVTT е официалният уеб стандартен формат за добавяне на субтитри, надписи, глави и описания към HTML5 <video> елементи в уебсайтове.
Как мога да конвертирам SRT субтитри във WebVTT?
Можете да конвертирате SRT файлове в чисти WebVTT файлове с едно кликване, като използвате File2File.app директно във вашия браузър.
Защо моите WebVTT субтитри не се появяват в браузъра?
Уверете се, че файлът ви започва с 'WEBVTT' на ред 1, има празен ред след него и вашият уеб сървър го предоставя с хедър 'Content-Type: text/vtt'.
Свързани двойки за конвертиране на WebVTT
Конвертирането на файлове SubRip Text във формат WebVTT преобразува обикновени текстови субтитри в съвременни съвместими с HTML5 времеви следи за уеб видео плейъри.
Конвертирането на WebVTT файлове в SubRip Text позволява безпроблемно възпроизвеждане на HTML5 видео субтитри в по-стари настолни медийни плейъри и наследен хардуер за редактиране.