Перейти к основному содержимому
SubtitleMatrix

Разделить двуязычные субтитры

Текст и оформлениеРазделение двуязычного файла на две дорожки
Или вставьте текст субтитров

Параметры

Двуязычный файл обычно содержит две письменности — латиницу над китайским, японский над корейским, — и именно это читает значение по умолчанию: буквы каждой строки решают, в какой файл она попадёт, а язык, встретившийся первым, становится первым файлом. Это догадка о письменности, а не о смысле, поэтому она никогда не путает стороны, увидев первую строку. Чего она не может — различить два языка с общей азбукой. Английский файл против испанского или русский против украинского читаются как одна письменность — как и обычный одноязычный файл, длинные строки которого перенесены на вторую строку; это частый случай и причина, по которой чтение намеренно осторожно. Когда каждая строка каждой реплики читается как одна и та же письменность, ничего не выходит: файл проходит без изменений, а запуск сообщает, что ничего не изменилось. Это сигнал выбрать позицию строки. Выбор позиции делает правило всеобщим: первая строка каждой реплики уходит в первый файл, остальные — во второй. Это подходит файлу, где два языка всегда на одних и тех же строках, и это единственный способ разделить пару с общей азбукой, — но на файле с переменным порядком он разделит не те строки и, в отличие от значения по умолчанию, ничего об этом не скажет.

В какой частоте кадров считается тайминг. На страницах форматов это то, что нужно MicroDVD: он хранит время в номерах кадров. На страницах частоты кадров это частота, по которой файл был рассчитан, — версия, для которой делались субтитры, — а второе поле страницы принимает частоту видео, с которым вы будете их использовать. Обычные значения: 23,976, 24, 25, 29,97, 30, 50, 59,94 и 60. Ошибка сдвигает весь таймлайн, а на страницах частоты кадров — на коэффициент, а не на фиксированную величину.

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

Оба файла выходят вместе, одним архивом: браузер разрешает только одно скачивание на клик, поэтому две кнопки сохранения означали бы, что второй файл молча не придёт; имена образуются из вашего имени с языковой пометкой перед расширением, то есть film.srt превращается в film.srt и film.cjk.srt внутри film.zip. Время и номера реплик сохраняются в обоих файлах, поэтому в первом файле номера могут идти 1, 3, 4 — пропуск означает, что реплика принадлежит второму языку, а не потеряна.

Две письменности с одним алфавитом, например английский с испанским, по буквам не различить: в этом случае ничего не выходит, отчёт говорит, что ничего не изменилось, и единственное решение — переключить правило на position, где первая строка реплики уходит в первый файл, а остальные во второй. Принимаются десять форматов, включая MicroDVD с общей частотой кадров, LRC и обычный текст — нет, и ничего не отправляется на сервер.

Примеры

Английский над китайским, два файла

Вход

1
00:00:01,000 --> 00:00:03,000
Good morning.
早上好。

2
00:00:05,000 --> 00:00:07,000
How are you?
你好吗?

Выход

First file (film.srt):
1
00:00:01,000 --> 00:00:03,000
Good morning.

2
00:00:05,000 --> 00:00:07,000
How are you?


Second file (film.cjk.srt):
1
00:00:01,000 --> 00:00:03,000
早上好。

2
00:00:05,000 --> 00:00:07,000
你好吗?

Обычный случай. Каждая строка читается сама по себе, поэтому неважно, что китайская строка в каждой реплике вторая, — решают буквы. Оба файла сохраняют исходные тайминги и исходные номера реплик, и именно поэтому два файла потом можно положить рядом и сверять друг с другом.

Реплика, которая есть только в одном языке

Вход

1
00:00:01,000 --> 00:00:03,000
Good morning.
早上好。

2
00:00:05,000 --> 00:00:07,000
(敲门声)

3
00:00:09,000 --> 00:00:11,000
See you soon.
再见。

Выход

First file (film.srt):
1
00:00:01,000 --> 00:00:03,000
Good morning.

3
00:00:09,000 --> 00:00:11,000
See you soon.


Second file (film.cjk.srt):
1
00:00:01,000 --> 00:00:03,000
早上好。

2
00:00:05,000 --> 00:00:07,000
(敲门声)

3
00:00:09,000 --> 00:00:11,000
再见。

Средняя реплика — звук, записанный только в переводе, делить в ней нечего: реплика целиком уходит во второй файл, и в первом номера прыгают с 1 на 3. Этот пропуск намеренный: это единственный видимый знак того, что реплика принадлежит другому языку, и он исчезнет, если файл перенумеровать.

Английский с испанским, которые правило по умолчанию не различает

Вход

1
00:00:01,000 --> 00:00:03,000
Good morning.
Buenos días.

2
00:00:05,000 --> 00:00:07,000
How are you?
¿Cómo estás?

Выход

With the split set to line position (film.srt):
1
00:00:01,000 --> 00:00:03,000
Good morning.

2
00:00:05,000 --> 00:00:07,000
How are you?


With the split set to line position (film.latin.srt):
1
00:00:01,000 --> 00:00:03,000
Buenos días.

2
00:00:05,000 --> 00:00:07,000
¿Cómo estás?

Два языка, один алфавит, поэтому правило по буквам их не разделит — вот почему запуск ничего не делает, пока правило не переключено на position. Здесь оно срабатывает, потому что оба языка всегда стоят на своей строке в одном и том же порядке. Если в вашем файле порядок меняется от реплики к реплике, position разрежет не те строки и, в отличие от значения по умолчанию, не скажет об этом после запуска.

Частые вопросы

Как страница определяет, какой строке какой язык?

По письменности каждой строки, буква за буквой: латиница, китайские иероглифы, японская кана, корейский хангыль, кириллица, арабский, иврит, греческий и деванагари различаются, а китайский с японским считаются одной стороной, потому что японский файл смешивает обе. Язык, который встречается в файле раньше, становится первым из двух файлов, поэтому файл «английский над китайским» возвращается как английский плюс китайский. Цифры, знаки препинания, пометки и ноты не считаются языком: внутри двуязычной реплики они остаются в первом файле и никогда не заставляют делить реплику.

Я разделил английский с испанским и получил тот же файл. Почему?

Потому что на уровне букв это одна письменность, и однозначный файл с переносами длинных строк на вторую строку выглядит точно так же. Инструмент, который стал бы угадывать, взял бы самый распространённый файл субтитров и вернул два файла, в каждом по половине фразы, поэтому страница отказывается угадывать и сообщает, что ничего не изменилось. Переключите правило на position и запустите снова: первая строка каждой реплики уйдёт в первый файл, остальные во второй. Это единственное правило, разделяющее языки с одним алфавитом, и оно требует, чтобы порядок языков в файле был одинаковым сверху донизу.

Я получу один файл с двумя языками или два файла?

Два файла, упакованные вместе в архив с вашим именем: film.srt превращается в film.srt и film.cjk.srt внутри film.zip, языковая пометка ставится перед расширением. Две кнопки сохранения не сработали бы, потому что браузер разрешает одно скачивание на клик, и второй файл тихо не пришёл бы. Если вам нужен один файл с двумя языками, оригинал над переводом, — это страница объединения, она делает обратное.

Какой из двух файлов считается оригиналом?

Ни один. Страница не может знать, какой язык исходный, а какой перевод, и не притворяется: первым файлом становится тот, в котором язык встречается во входном файле раньше, а во всём остальном файлы равны — в архиве, в списке результатов и в именах, которые различаются только языковой пометкой. Если нужен именно оригинал, посмотрите, в каком файле на первой строке первой реплики оказался ожидаемый вами язык.

Меняет ли разделение тайминг и теряет ли что-нибудь?

Нет. Оба файла сохраняют начало, конец и номера реплик исходного файла, поэтому реплика в первом файле стоит ровно на том моменте, на котором была. Читать стоит только отчёт после запуска: в обычном случае он пуст, а иногда называет число реплик, которые пришлось делить по номеру строки, потому что в них не было ни одной буквы, — музыкальные пометки и звуки в скобках. Такие реплики оставляют первую строку в первом файле, а остальные во втором, поэтому звук не теряет ни один файл, но место разреза выбрано догадкой, и отчёт об этом говорит.

Какие форматы можно так разделить и загружаются ли файлы?

SRT, WebVTT, ASS, SSA, SBV, SAMI, TTML, JSON и CSV, а также MicroDVD, где номера кадров читаются и записываются с заданной вами частотой кадров: двуязычная реплика там — одна строка с двумя языками через вертикальную черту. LRC и обычный текст не принимаются: в LRC нет времени окончания, а в тексте нет таймингов, поэтому делить нечего. Ничего не загружается: файл читается, делится и записывается обратно в этой вкладке браузера.

Похожие инструменты