WebVTT субтитри (.vtt)
W3C СтандартWeb Video Text Tracks (WebVTT) е официалният уеб стандарт на W3C за надписи, субтитри и описания на глави, интегриран нативно в HTML5 видео елементите (<track>) и съвременното поточно предаване по HTTP (HLS).
Конвертиране от SRT към VTT
Безплатен конвертор от SRT към VTT в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Проверка и метаданни
Операционните системи и файловите анализатори идентифицират WebVTT файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на заглавката (сигнатурни байтове)
Операционните системи и файловите анализатори идентифицират WebVTT файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
57 45 42 56 54 54ASCII ПРЕДСТАВЯНЕ: WEBVTT
Стандартизация: W3C WebVTT Recommendation
Технически спецификации
| Контейнерна архитектура | UTF-8 текстов файл, започващ със сигнатурата 'WEBVTT', последвана от незадължителни блокове STYLE и NOTE и последователни блокове със субтитри |
| Компресия | Некомпресиран обикновен текст (обикновено се компресира по HTTP с Gzip или Brotli) |
| Поредност на байтовете (Endianness) | Текстов поток UTF-8 |
| Цветови пространства | Пълна поддръжка на цветовете от CSS Color Module Level 4 в стиловете на субтитрите |
| Канали и структура | Реплики с времеви маркери, увереност на разпознаването на реч, CSS стилове и настройки за позиция на екрана |
| Максимални размери | Неограничен брой последователни реплики |
| Прозрачност | Пълна поддръжка на CSS непрозрачност и алфа прозрачност чрез псевдоелемента '::cue' |
| Поточно предаване и прогресивно зареждане | Нативно поточно предаване в HTML5 елементите <video> и манифести за видео на живо HLS / DASH |
Техническа сравнителна матрица: WebVTT спрямо конкуренти
| Технически атрибут | WebVTT (Текущ) | SRT | ASS | SUB |
|---|---|---|---|---|
| HTML5 уеб интеграция | 100% вграден стандарт (<track>) | Изисква JS конвертиране | Изисква WebAssembly | Изисква конвертиране |
| CSS стилизиране | Пълно вградено стилизиране с CSS (::cue) | Само основни HTML тагове | Проприетарни тагове за презапис | Няма |
| HLS / DASH стрийминг | WebVTT се използва за текстови пътечки във видео в браузър и в някои поточни плейлисти; поддръжката зависи от формата на предаване и плейъра. | Поддържа се чрез муксиране | Ограничена поддръжка за стрийминг | Няма |
| Изискване за хедър | Задължителен точен текст 'WEBVTT' на ред 1 | Не се изисква хедър | Секция [Script Info] | Не се изисква хедър |
Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни
Грешка в конзолата на браузъра: 'Malformed WebVTT file: Missing WEBVTT signature'.
Първопричина: Липсващ низ 'WEBVTT' на ред 1 или празни редове преди заглавния ред.
Възстановяване: Добавете 'WEBVTT\n\n' в началото на файла с помощта на File2File.app Subtitle Converter.
Анализ на сигурността и вектори на атака към парсера
Парсерите на WebVTT в уеб браузърите обработват недоверени субтитри, което може да доведе до Cross-Site Scripting (XSS), ако бъдат визуализирани без саниране в DOM.
Известни вектори на атака
- XSS инжекция чрез несанирано съдържание на HTML реплики, вмъкнато в DOM на уеб видеоплейъра.
- Server-Side Request Forgery (SSRF) по време на автоматизирано генериране на миниатюри за субтитри от страна на сървъра.
- Отказ от услуга (Denial of Service) чрез деформирани CSS селектори за субтитри.
Най-добри практики за защита: Разчитайте на вграденото визуализиране чрез <track> в браузъра и санирайте полезния товар на субтитрите преди ръчно вмъкване в DOM.
Исторически произход и етапи
Основни предимства
- HTML елементът <track> използва WebVTT за субтитри и надписи. Браузърите показват времето и стила на репликите през видеоплейъра, като поддържаните функции може да се различават.
- Широки възможности за стилизиране с CSS: персонализиране на цветове, шрифтове, фон и позиции с помощта на нативния CSS псевдоелемент '::cue'.
- Услугите HLS и MPEG-DASH могат да предават пътечки със субтитри WebVTT заедно с видео сегментите. Проверете дали целевият плейър поддържа опаковането на субтитри в плейлиста и езиковите пътечки.
Технически ограничения и минуси
- Стриктно изискване за заглавен ред: файлът трябва да започва с точния текст '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 видео субтитри в по-стари настолни медийни плейъри и наследен хардуер за редактиране.