Формат субтитров SSA
Что умеет этот формат
- Оформление текста
- Шрифты, цвет, обводка, тень
- Положение на экране
- Да
- Тайминг караоке
- Да
- Переносы строк внутри реплики
- Да
- Таймлайн
- Начало и конец для каждой реплики
- Точность тайминга
- 10 мс
- Тайминг хранится в номерах кадров
- Нет
- Текст справа налево
- Да
Примеры
Типичный файл SSA и то, что сайт из него читает
Файл
[Script Info]
Title: Example SSA
ScriptType: v4.00
Collisions: Normal
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\i1}Italic{\i0} line.
Dialogue: Marked=0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Two\Nlines
Что в нём
3 cues, 4 lines of text
0:00:01.00 → 0:00:04.00
Hello there.
[Default]
0:00:05.00 → 0:00:08.00
Italic line. [italic ×1]
[Default]
0:00:09.00 → 0:00:12.00
Two
lines
[Default]
Outside the cues:
sections [Script Info], [V4 Styles], [Events]
style table 1 — Default (Arial 20)Правая колонка — не результат конвертации, а то, что сайт извлекает из левого файла: реплики, интервалы, оформление и всё, что осталось за пределами реплик.
Неаккуратный файл SSA: что всё равно читается
Файл
[Script Info]
Title: Dirty SSA
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: Marked=0,0:00:00.00,0:00:01.00,Default,,0,0,0,,not a subtitle
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,{\b1}Bold{\b0} and {\u1}underlined{\u0}.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,A soft\nbreak and a {\p1}mystery{\p0} code.Что в нём
2 cues, 3 lines of text
0:00:01.00 → 0:00:04.00
Bold and underlined. [bold ×1, underline ×1]
[Default]
0:00:05.00 → 0:00:08.00
A soft
break and a {\p1}mystery{\p0} code.
[Default]
Outside the cues:
sections [Script Info], [V4 Styles], [Events]
style table 1 — Default (Arial 20)
events 1 Comment: line — stored, never displayedВторой файл намеренно неаккуратный: BOM, смешанные переводы строк и пустые поля. Сайт всё равно дочитывает его до конца, а пропущенные фрагменты перечисляет в отчёте.
Конвертировать SubStation Alpha (SSA) в другой формат
Каждая страница работает целиком в вашем браузере. Подписи говорят, чего стоит это направление, ещё до того, как вы его откроете.
В этом направлении ничего не теряется — у каждой возможности исходного формата есть куда перейти в целевом.
- Оформление
- Позиционирование
- Караоке
- Содержимое формата
- Содержимое формата
- Тайминг
- Оформление
- Позиционирование
- Караоке
- Содержимое формата
- Оформление
- Позиционирование
- Караоке
- Частота кадров
- Содержимое формата
- Оформление
- Позиционирование
- Караоке
- Содержимое формата
- Оформление
- Караоке
- Содержимое формата
- Оформление
- Позиционирование
- Караоке
- Содержимое формата
- Караоке
- Содержимое формата
- Тайминг
- Оформление
- Позиционирование
- Караоке
- Переносы строк
- Содержимое формата
- Оформление
- Позиционирование
- Караоке
- Содержимое формата
Конвертация в этот формат
- SubRip (SRT) → SubStation Alpha (SSA)
- WebVTT (VTT) → SubStation Alpha (SSA)
- Advanced SubStation Alpha (ASS) → SubStation Alpha (SSA)
- YouTube SBV → SubStation Alpha (SSA)
- SAMI (SMI) → SubStation Alpha (SSA)
- LRC Lyrics → SubStation Alpha (SSA)
- MicroDVD → SubStation Alpha (SSA)
- TTML (Timed Text) → SubStation Alpha (SSA)
- SubtitleMatrix JSON → SubStation Alpha (SSA)
- Plain Text (TXT) → SubStation Alpha (SSA)
- CSV Spreadsheet → SubStation Alpha (SSA)
SSA — старый диалект SubStation Alpha с той же системой оформления, что у ASS. Внутри файла — разделы Script Info, V4 Styles и Events с репликами в строках Dialogue; время записывается как 0:00:01.00, то есть сотые доли секунды, часы не дополняются нулём.
SSA — старый диалект SubStation Alpha с полной системой стилей, позиционированием и караоке; от ASS он отличается прежде всего разделом V4 Styles. Всё выполняется локально в браузере, поэтому можно обрабатывать целые серии пакетом.
Частые вопросы
Что хранит SSA помимо текста реплик?
Структура SSA: разделы Script Info, V4 Styles и Events с репликами в строках Dialogue. Дополнительно: раздел Script Info, встроенные шрифты и графика, строки Comment. Оформление — полная система: шрифт, размер, цвет, обводка, тень, выравнивание и караоке.
Как SSA записывает начало и конец реплики?
SSA пишет время как 0:00:01.00 (сотые доли секунды, часы не дополняются нулём). Полный интервал выглядит так: 0:00:01.00 → 0:00:03.50.
Насколько богатое оформление поддерживает SSA?
Оформление SSA — полная система: шрифт, размер, цвет, обводка, тень, выравнивание и караоке. Сильнее всего это заметно при сравнении с ASS: там есть шрифт, цвет, обводка, тень и караоке, а SSA такие поля либо не хранит, либо записывает упрощённо.
Что теряется при переводе SSA в более простой формат?
При переводе SSA в ASS потерь нет, а в SRT или VTT теряются стили, позиция, караоке и служебные разделы; в TXT остаётся только текст.
Можно ли перевести SSA в другие форматы в браузере?
Да: на сайте открыто 11 направлений перевода из SSA — в SRT, VTT, ASS, SBV, SMI, LRC, MicroDVD, TTML, JSON, TXT, CSV. Файл разбирается и записывается в текущей вкладке, не отправляется на сервер, а пакет можно скачать одним архивом.
Как SSA читает повреждённый файл?
SSA читается построчно: незнакомые поля стилей сохраняются, а строки Dialogue с нечитаемым временем пропускаются и учитываются в отчёте.