SSubToolDesk
ru
VTT → HTML

Конвертируйте субтитры WebVTT в автономную HTML-расшифровку

Превратите экспорт .vtt из Zoom, Teams или YouTube в аккуратную страницу .html, которую можно открыть прямо в любом браузере, разместить на хостинге или встроить куда угодно. Без тайм-кодов, без загрузки на сервер.

Обнаружено: …
Перетащите файл, вставьте текст или редактируйте напрямую
…
Локально

Ваши файлы никогда не попадают на сервер. Каждое преобразование на этой странице выполняется локально в вашем браузере с помощью JavaScript API FileReader. Ничего не загружается, не регистрируется и не сохраняется. Подходит для конфиденциальных записей Zoom/Teams, ещё не вышедшего видео и юридических интервью.

Как работает конвертация VTT в HTML

Файл WebVTT (.vtt) начинается с буквального заголовка WEBVTT, а затем перечисляет реплики как диапазон тайм-кодов, за которым следует одна-две строки текста субтитров. Это формат, который экспортируют при скачивании расшифровки большинство платформ для встреч, включая Zoom, Microsoft Teams и автоматические субтитры YouTube, — он создан для синхронизации субтитров с видео, а не для того, чтобы самостоятельно служить читаемой веб-страницей.

Конвертер VTT в HTML от SubToolDesk разбирает заголовок WEBVTT и блоки реплик локально в вашем браузере, отбрасывает заголовок, тайм-коды и любые голосовые теги, собирает фрагменты обратно в естественные абзацы и оборачивает результат в минимальный корректный HTML-документ с тегом <p> на каждый абзац — готовый к тому, чтобы открыть его прямо в браузере, разместить на сервере или добавить на статический сайт.

Как конвертировать VTT в HTML (пошагово)

  • Перетащите файл .vtt в конвертер выше или нажмите «Загрузить файл», чтобы выбрать его.
  • Убедитесь, что значок автоматически определённого формата показывает VTT.
  • Оставьте «Объединять в абзацы» включённым для связного текста или выключите, чтобы сохранить по одной реплике на строку.
  • Включите «Удалять метки говорящих», если в экспорте встречи каждая строка помечена именем (обычное дело для Zoom и Teams).
  • Нажмите «Скачать», чтобы сохранить автономный файл .html.

Зачем конвертировать WebVTT в HTML

Файл .vtt создан для синхронизации субтитров с видеоплеером, а не для того, чтобы самостоятельно служить веб-страницей. Превращение его в HTML почти всегда связано с тем, что должно произойти с расшифровкой дальше:

  • Публикация расшифровки встречи из Zoom или Teams как страницы внутренней вики, на которую команда сможет ссылаться, искать по ней и читать её, не открывая запись заново.
  • Встраивание субтитров учебной сессии в документацию как отдельную страницу без дополнительной сборки.
  • Передача расшифровки по ссылке, а не вложением .vtt, которое большинство людей просто не знает, чем открыть.
  • Оформление расшифровки в стиле интранета или сайта, поскольку обычные семантические теги <p> можно стилизовать таблицей стилей, а сырой VTT — нет.
  • Превращение видео с субтитрами в индексируемый и доступный контент в виде отдельной читаемой страницы для тех, кто предпочитает читать, а не смотреть.
  • Архивирование расшифровки встречи в виде страницы, которая по-прежнему корректно откроется в любом браузере спустя долгое время после того, как сама запись исчезнет.

Что на самом деле содержится в HTML-файле

Это полноценный минимальный HTML-документ: декларация <!DOCTYPE html>, <head> с кодировкой UTF-8 и заголовком страницы, а также <body>, содержащий один элемент <p> на каждый абзац. Ни заголовок WEBVTT, ни голосовые теги, ни параметры реплики в результат не попадают — только семантическая разметка, которую можно открыть как есть или вставить в более крупную страницу и оформить собственным CSS.

До и после: реальный пример

Короткий экспорт в стиле Zoom — с голосовыми тегами, параметрами реплики и блоком NOTE — конвертированный с включёнными «Объединять в абзацы», «Удалять метки говорящих» и «Удалять теги форматирования» (состояние по умолчанию на этой странице):

Before
WEBVTT

NOTE
Расшифровка создана Zoom

00:00:01.200 --> 00:00:03.900 align:start position:10%
<v Jordan>Всем привет, спасибо, что подключились к сегодняшнему звонку.

00:00:03.900 --> 00:00:06.450
<v Priya>Конечно! Давайте начнём.

00:00:06.450 --> 00:00:09.800
<v Jordan>Отлично, первое в повестке — дорожная карта на третий квартал.
After
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Transcript</title>
</head>
<body>
<p>Всем привет, спасибо, что подключились к сегодняшнему звонку. Конечно! Давайте начнём. Отлично, первое в повестке — дорожная карта на третий квартал.</p>
</body>
</html>

Заголовок WEBVTT, блок NOTE, каждая строка тайм-кода с параметрами реплики и оба голосовых тега <v Jordan> исчезли. Осталась корректная минимальная разметка с произнесённым текстом, обёрнутым в один элемент <p>, готовая к открытию в любом браузере.

Почему HTML, а не обычный текст?

Файл обычного текста требует ещё чего-то, чтобы открыть его осмысленно; файл HTML открывается прямо в любом браузере с уже готовым корректным межабзацным интервалом. Это важно, когда расшифровке встречи или интервью нужно жить в вебе — например, быть опубликованной во внутренней вики, на сайте документации или переданной по ссылке, а не вложением.

Приватность за счёт архитектуры, а не политики

Расшифровка встречи часто оказывается самым конфиденциальным файлом в комнате. Разбор VTT и сборка HTML-файла происходят в JavaScript, который выполняется прямо во вкладке вашего браузера. У этой функции попросту нет адреса для загрузки файлов.

Типичные сценарии использования VTT в HTML

  • Страницы внутренней вики: публикуйте расшифровку встречи из Zoom или Teams как страницу, на которую команда сможет ссылаться, искать по ней и читать её без повторного открытия исходной записи.
  • Сайты документации: превратите субтитры записанной учебной сессии в отдельную HTML-страницу, которая встраивается в папку контента статического генератора сайта.
  • Публичные архивы расшифровок: предложите читаемую, индексируемую HTML-расшифровку рядом с опубликованным видео — полезно для SEO и доступности.
  • Быстрый локальный просмотр: откройте скачанный файл прямо из файловой системы в любом браузере, без сервера.

Нестандартные случаи, которые обрабатывает парсер

Парсер отбрасывает заголовок WEBVTT и пропускает метаданные в блоках NOTE, STYLE и REGION, которые встречаются в некоторых экспортах. Символы, которые могли бы сломать корректность HTML, например буквальные &, < или >, оставшиеся в очищенном тексте диалога, экранируются автоматически, так что результат всегда остаётся корректной разметкой.

Что этот конвертер сохраняет и что удаляет

Сохраняется:

  • Каждое слово произнесённого текста диалога, в исходном порядке и с исходной пунктуацией.
  • Структура абзацев, теперь в виде настоящих элементов <p>: либо один на каждую исходную реплику, либо абзацы по предложениям, если включено «Объединять в абзацы».
  • Корректный, полноценный HTML-документ — doctype, заголовок с UTF-8 и тело, — так что файл корректно открывается в любом браузере.

Удаляется:

  • Строка заголовка WEBVTT и метаданные в блоках NOTE, STYLE и REGION.
  • Строки-идентификаторы реплик, все диапазоны тайм-кодов и параметры реплики вроде align:start position:10%.
  • Голосовые теги вроде <v Speaker Name>, если включена «Удалять теги форматирования».
  • Текстовые префиксы говорящих вроде Jordan:, если включена «Удалять метки говорящих».
  • Любые CSS, скрипты или оформление — ничего не добавляется, и ничего не переносится из исходного файла.

Частые проблемы и способы их решения

  • Скачанный файл открывается с видимыми тайм-кодами или стрелками -->: проверьте, что значок формата над конвертером показывает VTT, а не Unknown; неудачно обрезанная вставка может нарушить определение реплик.
  • Теги <v Speaker Name> по-прежнему видны внутри абзацев: включите «Удалять теги форматирования» — она выключена по умолчанию, только если вы это изменили.
  • Текстовые имена вроде Jordan: по-прежнему стоят перед строками внутри HTML: это отдельный переключатель, «Удалять метки говорящих», включите и его — он ловит другой шаблон, чем удаление голосовых тегов выше.
  • Вся расшифровка рендерится как один сплошной абзац: это ожидаемо, когда много коротких и частых реплик сливается вместе; выключите «Объединять в абзацы», чтобы получить один <p> на каждую исходную реплику.
  • Буквы с диакритикой или нелатинский текст отображаются как искажённые символы вроде é: исходный .vtt не был сохранён в кодировке UTF-8; экспортируйте или пересохраните его в UTF-8 и загрузите заново.
  • Вы хотите, чтобы расшифровка выглядела в стиле вашего сайта: конвертер намеренно не добавляет CSS; добавьте <link> на собственную таблицу стилей в <head> или вставьте абзацы <p> в уже существующую страницу.

Чего этот инструмент намеренно не делает

Он не добавляет CSS-оформление, шаблон макета или брендинг — результат намеренно минимален, чтобы аккуратно встроиться в любой уже существующий сайт или таблицу стилей. Он также не исправляет ошибки расшифровки, уже присутствующие в исходном файле субтитров: он переформатирует и оборачивает то, что есть, но не переписывает содержимое.

Часто задаваемые вопросы

Как конвертировать файл VTT в HTML-страницу?

Перетащите файл .vtt в конвертер выше или вставьте его содержимое в левую панель. Как только значок формата подтвердит VTT, нажмите «Скачать». Автономный файл .html будет сгенерирован прямо в вашем браузере и сохранён с именем, соответствующим исходному файлу.

Работает ли это с экспортами VTT из Zoom, Microsoft Teams и YouTube?

Да. Все три экспортируют стандартный WebVTT, который этот парсер читает нативно. Переключатель «Удалять метки говорящих» особенно полезен для экспортов Zoom и Teams, которые обычно добавляют имя говорящего перед каждой репликой.

Можно ли открыть скачанный HTML-файл напрямую, без сервера?

Да. Это полноценный самодостаточный HTML-документ. Дважды щёлкните по нему (или откройте через меню браузера «Файл» → «Открыть») — он отобразится сразу, без сервера и подключения к интернету.

Содержит ли HTML-файл тайм-коды или форматирование WebVTT?

Нет. Заголовок WEBVTT, тайм-коды, параметры реплики и голосовые теги полностью удаляются. В HTML-разметку оборачивается только очищенный текст диалога.

Загружается ли моя расшифровка встречи куда-либо для создания HTML?

Нет. Разбор VTT и сборка HTML-файла происходят полностью внутри JavaScript-движка вашего браузера. Ничего не отправляется на сервер — это важно для файла, который может содержать конфиденциальное содержание встречи.

Можно ли разместить или встроить скачанный HTML-файл на собственном сайте?

Да. Это полноценный автономный HTML-документ без зависимостей — загрузите его на любой веб-хостинг как есть или скопируйте его абзацы в уже существующую страницу и примените собственный CSS вашего сайта.