Субтитры WebVTT (.vtt)
Рекомендация СтандартWeb Video Text Tracks (WebVTT) - это официальный веб-стандарт W3C для подрисуночных подписей, субтитров и описаний глав, нативно интегрированный в теги HTML5 video (<track>) и современный HTTP Live Streaming (HLS).
Конвертировать из SRT в VTT
Бесплатный конвертер из SRT в VTT прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы WebVTT по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы WebVTT по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
57 45 42 56 54 54ПРЕДСТАВЛЕНИЕ ASCII: WEBVTT
Стандартизация: Рекомендация W3C WebVTT
Технические спецификации
| Архитектура контейнера | Текстовый файл 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' на 1-й строке | Заголовок не требуется | Секция [Script Info] | Заголовок не требуется |
Типичные режимы повреждения и руководство по восстановлению в HEX
Ошибка в консоли браузера: 'Malformed WebVTT file: Missing WEBVTT signature'.
Первопричина: Отсутствует строка 'WEBVTT' на 1-й строке или имеются пустые строки перед заголовком.
Восстановление: Добавьте 'WEBVTT\n\n' в начало файла с помощью конвертера субтитров File2File.
Анализ безопасности и векторы атак на парсер
Анализаторы WebVTT в веб-браузерах обрабатывают ненадежные реплики, что может привести к межсайтовому скриптингу (XSS), если они рендерятся в DOM без очистки.
Известные векторы атак
- XSS-инъекция через неочищенное содержимое HTML-реплик, вставленное в DOM веб-видеоплеера.
- Подделка запросов на стороне сервера (SSRF) при автоматической генерации миниатюр субтитров на сервере.
- Отказ в обслуживании (DoS) через некорректные селекторы реплик CSS.
Защитные лучшие практики: Полагайтесь на нативный рендеринг браузера через элемент <track> и очищайте полезную нагрузку реплик перед ручной вставкой в DOM.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Нативный веб-стандарт 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' на первой строке, после него идет пустая строка, а ваш веб-сервер отдает файл с заголовком 'Content-Type: text/vtt'.
Связанные пары конвертации WebVTT
Конвертация файлов SubRip Text в формат WebVTT преобразует простые текстовые субтитры в современные таймлайны, совместимые с HTML5 для веб-видеоплееров.
Конвертация файлов WebVTT в SubRip Text обеспечивает бесперебойное воспроизведение субтитров HTML5-видео в старых настольных медиаплеерах и устаревшем оборудовании для монтажа.