Конвертер SRT в TTML
Вещатели, стриминговые сервисы и платформы субтитров часто требуют TTML — XML-формат W3C для синхронизированного текста. Конвертируйте файл SRT в простой документ TTML 1: каждый субтитр станет абзацем со временем, переносами строк и курсивом.
Конвертируйте файл субтитров
Перетащите файлы субтитров сюда
SRT, VTT, ASS, SBV, TTML, SUB, SMI, LRC и другие · до 100 файлов
Или вставьте текст субтитров
Файл читается этой страницей прямо в вашем браузере. Он никуда не загружается.
Буквы отображаются неправильно? Выберите языковую группу, для которой создан файл.
Файлы MicroDVD и Spruce STL считают кадры видео. Выберите частоту кадров видео, к которому относятся субтитры.
Ваш результат
В предпросмотре показано начало файла. Скачанный файл содержит всё.
Как пользоваться
Откройте файл SRT
Перетащите файл .srt или целый пакет для сдачи. Файлы TTML сохраняются в UTF-8.
Проверьте предпросмотр TTML
TTML уже выбран. Каждый субтитр представлен элементом p со временем begin и end.
Скачайте и добавьте язык
Сохраните файл .ttml, а затем заполните xml:lang в элементе tt, если платформа требует указать язык.
Что содержит файл TTML
Файл начинается с объявления XML и элемента tt в пространстве имён TTML, за которыми следует body с одним div. Каждый субтитр становится элементом p со временем begin и end в часах, минутах, секундах и миллисекундах, например 00:00:01.000. Переносы строк становятся <br/>, а курсив, полужирный и подчёркивание — элементами span с tts:fontStyle, tts:fontWeight и tts:textDecoration.
Раздела head нет: нет именованных стилей, регионов разметки и частоты кадров или тиков. Где и как появляется текст, решает плеер или платформа. Символы вроде & и < записываются как & и <, как требует XML.
До и после
Два субтитра SRT и документ TTML. Курсивный субтитр становится span с tts:fontStyle="italic", перенос строки — <br/>, & — &, а время сохраняет все три знака после запятой.
1
00:00:01,000 --> 00:00:03,500
<i>Where were you last night?</i>
2
00:00:04,000 --> 00:00:06,250
At the station,
waiting for you & the kids.<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling" xml:lang="">
<body>
<div>
<p begin="00:00:01.000" end="00:00:03.500"><span tts:fontStyle="italic">Where were you last night?</span></p>
<p begin="00:00:04.000" end="00:00:06.250">At the station,<br/>waiting for you & the kids.</p>
</div>
</body>
</tt>Перед сдачей файла
Атрибут языка у элемента tt остаётся пустым: xml:lang="". Многие спецификации сдачи требуют указать язык, поэтому откройте файл в текстовом редакторе и заполните его, например xml:lang="en".
Некоторые сервисы требуют определённый профиль, например IMSC, или собственный вариант TTML с обязательными регионами, стилями или метаданными. Этот конвертер записывает простой TTML 1, поэтому прочитайте спецификацию и добавьте то, что она требует.
Предпочитаете командную строку?
Если на вашем компьютере установлен FFmpeg, эта конвертация выполняется одной командой:
ffmpeg -i input.srt output.ttmlFFmpeg 4.4 и новее умеет записывать TTML, но его модуль записи TTML сохраняет только слова и переносы строк, поэтому курсив теряется. Эта страница записывает его в виде span с tts:fontStyle.
Ничего не нужно устанавливать: откройте на этой странице до 100 файлов сразу и скачайте их все в одном ZIP.
Нужно наоборот? Используйте Конвертер TTML в SRT. Подробнее об этих форматах: XML-субтитры: TTML, DFXP и IMSC
Вопросы и ответы
TTML или DFXP: что выбрать?
Используйте тот, который требует платформа. Этот сайт записывает для обоих одинаковый XML; различается только расширение файла. Конвертер SRT в DFXP сохраняет файл .dfxp.
Сохраняются ли цвета шрифта SRT?
Нет. Как оформление TTML записываются только курсив, полужирный и подчёркивание; теги цвета шрифта удаляются.
Сохраняет ли файл TTML мои тайминги с точностью до миллисекунды?
Да. Время записывается с тремя знаками после запятой, в точности как в файле SRT.