Назад к блогу

SRT vs VTT vs ASS: какой формат субтитров выбрать в 2026 году?

SRT, VTT и ASS: что несёт каждый формат субтитров, где именно он даёт сбой и какой выбрать для YouTube, веба, оформленных субтитров и архивного видео.

11 сентября 2026 г.
Sablate Team

SRT — правильный ответ примерно в девяти случаях из десяти. VTT — ответ, когда файл проигрывается веб-страницей. ASS — ответ, когда субтитры не просто показываются, а именно оформляются как часть дизайна. Всё остальное в этом сравнении — детали, но именно из-за деталей файлы отклоняются, оформление незаметно пропадает, а тайминг сдвигается на округление.

Далее — что на самом деле содержит каждый формат и в какой именно момент он перестаёт хватать.

Сравнение в одной таблице

SRTVTTASS
Полное названиеSubRipWebVTTAdvanced SubStation Alpha
Формальная спецификацияНет, только соглашениеДа, W3CНет, документация сообщества
Таймкод00:00:01,000 (запятая)00:00:01.000 (точка)0:00:01.00 (сантисекунды)
ОформлениеБазовые теги, поддержка непостояннаCSS через ::cueПолная таблица стилей плюс переопределения для отдельных строк
ПозиционированиеНетДа, настройки репликиДа, попиксельно
Караоке / тайминг по словамНетНетДа
Встроенные или вложенные шрифтыНетНетДа, при мультиплексировании в MKV
Веб-элемент trackНетДа, обязателенНет
YouTube, Vimeo, LinkedInДаДаОформление не отображается
VLC, mpv, медиацентрыДаДаДа
Типичное применениеВсё подрядВеб-плеерыОформленные субтитры, аниме, караоке

SRT: формат, который работает везде

Реплика SRT — это четыре строки: номер, временной диапазон, текст и пустая строка:

1
00:00:01,000 --> 00:00:04,120
This is the first subtitle.

Это и есть весь формат. У SRT нет официальной спецификации — это соглашение, которое все согласились реализовать одинаково, и именно поэтому он работает везде.

У этого соглашения нечёткие края. Большинство плееров понимают теги <i>, <b> и <u> внутри текста, многие понимают тег font с атрибутом цвета, но ничего из этого не гарантировано, и плеер, не понимающий тег, может показать его как обычный текст. Кодировка — другая классическая ловушка: SRT появился раньше любых правил кодировки, поэтому файл, сохранённый в Windows-1254 или Latin-1, превращает символы с диакритикой и нелатинские буквы в кашу в плеере, который ожидает UTF-8. Сохраняйте SRT в UTF-8 — и большинство жалоб вида «мои субтитры битые» просто не возникнет.

Используйте SRT, когда загружаете файл на платформу, отправляете его клиенту или просто хотите, чтобы он корректно открылся и через пятнадцать лет.

VTT: тот же SRT для веба, но с запасом на рост

WebVTT — это то, что требует элемент track в HTML5. Если субтитры проигрываются внутри веб-страницы, браузеру нужен именно VTT и ничего другого.

WEBVTT

intro
00:00:01.000 --> 00:00:04.120 line:90% align:center
This is the first subtitle.

Стоит запомнить четыре отличия от SRT:

  • Заголовок. Файл обязан начинаться с WEBVTT. Файл без него отклоняется сразу же, и это самая частая причина, по которой переименованный SRT не работает в браузере.
  • Пунктуация. После миллисекунд стоит точка, а не запятая. Если просто переименовать .srt в .vtt без этой правки, файл загрузится, но ничего не покажет.
  • Настройки реплики. Каждая реплика может нести line, position, align, size и vertical, чтобы сместить текст с нижнего центра, — полезно, когда это место занято вшитым текстом или логотипом.
  • Настоящее оформление и структура. VTT поддерживает блоки STYLE с CSS-селектором ::cue, комментарии NOTE, определения REGION и необязательные имена реплик. К тому же он всегда в UTF-8, что полностью убирает ловушку с кодировкой.

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

ASS: когда субтитры — часть дизайна

Advanced SubStation Alpha — это файл совершенно другого рода. SRT и VTT описывают что сказано и когда. ASS описывает как это нарисовано.

Файл ASS состоит из секций. [Script Info] задаёт виртуальный холст через PlayResX и PlayResY, поэтому позиции и размеры шрифта остаются пропорциональными при любом разрешении видео. [V4+ Styles] хранит именованные стили со шрифтом, размером, основным цветом и цветом контура, типом обводки, толщиной контура и тени, выравниванием и отступами. [Events] хранит строки диалогов, и каждая из них может переопределить что угодно из своего стиля прямо в тексте: \pos — для точного размещения, \an — для привязки, \fad — для затуханий, \t — для анимированных трансформаций и \k — для караоке-тайминга, слово за словом.

Одна деталь ловит всех в первый раз: цвета в ASS записываются как &HBBGGRR, в обратном порядке байт. Цвет, который выглядит как обычный RGB hex, на деле не он — скопируйте фирменный цвет напрямую, и получите его «двойника» с перепутанными каналами.

Это же формат, который делает возможной оформленную доставку сразу на нескольких языках. MKV может хранить по дорожке ASS на каждый язык и вложенный файл шрифта, поэтому оформление отображается одинаково даже на машине, которая никогда не видела этого шрифта.

Используйте ASS, когда нужны караоке или подсветка по словам, размещение субтитров не по центру внизу, своя типографика для каждого языка или единый файл, хранящий несколько оформленных языковых дорожек.

Что переживает конвертацию

Конвертация между этими форматами безопасна только в одну сторону.

КонвертацияРезультат
SRT в VTTПрактически без потерь — заголовок и смена пунктуации
VTT в SRTТекст и тайминг сохраняются; позиционирование, регионы и CSS отбрасываются
ASS в SRTТекст и тайминг сохраняются; всё оформление, позиционирование и караоке теряются
ASS в VTTТекст и тайминг сохраняются; часть позиционирования можно приблизительно передать
SRT в ASSРаботает, но даёт обычное стандартное оформление — вы добавляете контейнер, а не дизайн

Практическое правило: храните самую «богатую» версию как мастер-файл и генерируйте из неё более простые. В обратную сторону ничего не восстанавливается.

Так что же в итоге отправлять?

Куда отправляетсяФорматПочему
YouTube, Vimeo, LinkedInSRTУниверсален, а плеер всё равно переоформит по-своему
Веб-страница с HTML5-плееромVTTТребуется элементом track
Платформы онлайн-курсовVTTЧасто требуется по названию в спецификации загрузки
Переводчик или клиентSRTОткрывается в любом редакторе субтитров на свете
Архив или локальное воспроизведениеASS внутри MKVСохраняет оформление и все языковые дорожки в одном файле
TikTok, Reels, ShortsНикакой — вшивайтеЭти платформы вообще не читают файлы субтитров

Последнюю строку люди обычно узнают позже всех. У вертикальных соцплатформ вообще нет загрузки субтитров; там субтитры — это пиксели в видео, а значит, задача рендера, а не выбора формата файла. Как вшить субтитры в видео рассказывает, как сделать это без потери качества.

Как это устроено в Sablate

Sablate экспортирует .srt, .vtt и .txt на любом тарифе, а .ass и .mkv с мягкими субтитрами — на Pro. Важно знать: оформление, которое вы настраиваете в панели стилей редактора, — не приблизительный предпросмотр. Экспорт .ass, вшитый .mp4 и дорожки внутри .mkv рендерятся через libass из одного и того же описания стиля, поэтому все три результата в точности совпадают друг с другом.

Если вы делаете несколько языков из одной записи, выбор формата напрямую связан с выбором способа доставки — работа с несколькими языками разбирает оба вопроса вместе. Pro — это один платёж $29; полный разбор — на странице тарифов.

Коротко

Отправляйте SRT, если что-то конкретное не требует иного. Отправляйте VTT, когда браузер или платформа курсов запрашивают его по названию. Берите ASS, когда субтитры оформляются как дизайн — караоке, позиционирование, типографика под каждый язык, — и храните этот файл ASS как мастер-версию, потому что ничего из того, во что вы его конвертируете, не конвертируется обратно.