Субтитры WebVTT (.vtt)

Рекомендация Стандарт

Web Video Text Tracks (WebVTT) - это официальный веб-стандарт W3C для подрисуночных подписей, субтитров и описаний глав, нативно интегрированный в теги HTML5 video (<track>) и современный HTTP Live Streaming (HLS).

Конвертировать из SRT в VTT

Бесплатный конвертер из SRT в VTT прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.

Анализ и метаданные

Операционные системы и анализаторы файлов идентифицируют файлы WebVTT по начальной двоичной последовательности байтов:

Выберите или перетащите файлы сюда

100% конфиденциальное преобразование в браузере - файлы никогда не покидают ваше устройство

или вставьте Ctrl+V
Гарантия конфиденциальности без передачи по сети: 0 байт загружено на внешние серверы. Вся обработка выполняется локально в песочнице вашего браузера.

Сигнатура заголовка на уровне байтов (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 (Текущий)SRTASSSUB
Интеграция с HTML5100% нативный стандарт (<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.

Исторические истоки и вехи

2019W3C официально продвигает стандарт WebVTT: The Web Video Text Tracks Format к статусу предлагаемой рекомендации.
2011Переименован из WebSRT в WebVTT для создания отдельного стандарта W3C, независимого от классического SubRip.
2010WHATWG представляет WebVTT для решения проблемы нативных субтитров для тега HTML5 <video>.

Ключевые преимущества и плюсы

  • Нативный веб-стандарт 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'.