Перейти до основного вмісту
SubtitleMatrix

Конвертер SRT у SSA

Або вставте текст субтитрів

Що змінює ця конвертація

1 річ відкидається або потребує рішення

  • Точність

    точність таймінгу — годинник результату грубший, тож кожен таймкод округлюється до найближчих 10 мс

Цей перелік походить із матриці можливостей для цих двох форматів, а не з конкретного завантаженого файлу. Певний файл може втратити більше, якщо використовує можливості, які формат дозволяє, а матриця не моделює.

Ця сторінка переписує SRT в SSA. SRT тримає лише текст і дві позначки часу на репліку, а SSA описує субтитр скриптом старішого діалекту з власною таблицею стилів. Час переходить із запису 00:00:01,250 у 0:00:01.25. Слова й порядок реплік лишаються тими самими.

Втрати тут не косметичні: точність таймкодів — SSA округлює кожну позначку до 10 мс. Список складено з можливостей форматів, а не з вашого файлу, тому він однаковий до і після завантаження.

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

Приклади

Типовий файл SRT, переписаний у SSA

Вхід

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

Результат

[Script Info]
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
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,{\i1}Whispering{\i0} now.\NAnd a second line.
Dialogue: 0,0:00:06.00,0:00:09.25,Default,,0,0,0,,{\b1}Bold{\b0} statement.

У цьому вихідному файлі втрачено: точність до 10 мс. Решта збігається рядок у рядок.

Той самий перехід на неохайному файлі SRT

Вхід

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

Результат

[Script Info]
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
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,{\b1}Bold{\b0} and {\i1}italic{\i0}.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,
Dialogue: 0,0:00:08.00,0:00:09.00,Default,,0,0,0,,Last one.

Справжні файли приходять із BOM, переводами рядків Windows, зайвим рядком перед часом або часом, який взагалі не читається. Ніщо з цього не валить обробку: нерозпізнане потрапляє у звіт, а не зникає мовчки.

Часті запитання

Чим SRT відрізняється від SSA у цьому напрямку?

SRT тримає лише текст і дві позначки часу на репліку, а SSA описує субтитр скриптом старішого діалекту з власною таблицею стилів. Тому перетворення — це не зміна розширення, а переписування моделі. У SRT репліка складається з номера, рядка часу й одного чи двох рядків тексту. У SSA скрипт: заголовок [Script Info], таблиця [V4 Styles] і рядки Dialogue. Саме з цієї різниці й постає список втрат над файловим полем.

Як перевірити, що конвертація SRT в SSA нічого не зіпсувала?

Порівняйте кількість реплік, час першої та останньої і список втрат, який сайт показує до завантаження. SRT записує час як 00:00:01,250, SSA записує час як 0:00:01.25; якщо кількість і межі збігаються, а перелік втрат вас влаштовує, файл готовий.

Чи впорається конвертер із BOM і переводами рядків CRLF у файлі SRT під час перетворення в SSA?

Так. BOM і CRLF розпізнаються під час читання SRT й не потрапляють у дані; вихідний SSA пишеться зі стандартними закінченнями рядків. Битий блок із нерозпізнаним часом не валить сторінку — він потрапляє у звіт, а не зникає мовчки.

Як зміниться запис часу, коли SRT перетворити в SSA?

У SRT момент записано як 00:00:01,250, а SSA записує його як 0:00:01.25. Оскільки SSA веде час грубіше, кожну позначку округлено до 10 мс: 00:00:01,257 стане 0:00:01.25. Це єдина втрата точності в цьому напрямку. Слова й порядок реплік при цьому не змінюються.

Що саме зникне під час конвертації SRT в SSA?

Зникне точність таймкодів — SSA округлює кожну позначку до 10 мс. Це випливає з можливостей форматів, а не з конкретного файлу, тому відповідь однакова до і після завантаження. SRT тримає лише текст і дві позначки часу на репліку, а SSA описує субтитр скриптом старішого діалекту з власною таблицею стилів.

Споріднені інструменти