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

Конвертер LRC в ASS

Конвертация форматовТекст песни (LRC)
Или вставьте текст субтитров

Параметры

Используется, когда в источнике нет времени окончания (простой текст, LRC). Таймлайн в результате строится здесь, а не преобразуется, поэтому вы получите именно это число.

Что меняет эта конвертация

1 пункт теряется или требует решения

  • Тайминг

    время окончания реплик — источник его не хранит, поэтому в результате оно будет построено, а не преобразовано

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

Конвертер LRC в ASS нужен, когда плеер или платформа принимает только второй формат: LRC здесь — формат текстов песен, где у каждой строки есть только момент начала, ASS — формат с полной системой оформления, который используют фансаб и монтаж. LRC хранит только начало строки вида [00:01.00], а ASS требует полный интервал, поэтому конец каждой реплики сайт вычисляет по следующей строке. Обе шкалы хранят сотые доли секунды, поэтому значения времени переносятся без округления.

Сайт перечисляет потери до запуска — исходные концы реплик; LRC знает только момент начала строки, поэтому концы реплик в ASS будут вычислены по следующей строке, а не перенесены из файла.

Сервер не участвует: файл читается и записывается в браузере, поэтому можно обрабатывать пакеты и прерывать очередь в любой момент.

Примеры

Обычный файл LRC, переведённый в ASS

Вход

[ti:Sample Song]
[ar:Some Artist]
[length:00:41.00]
[offset:+250]
[00:12.00]First line of the song.
[00:15.30]Second line.
[00:15.30]Second line, translated.
[00:18.00]
[00:21.50]Final line.

Выход

[Script Info]
Title: Sample Song
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:12.00,0:00:15.30,Default,,0,0,0,,First line of the song.
Dialogue: 0,0:00:15.30,0:00:18.00,Default,,0,0,0,,Second line.\NSecond line, translated.
Dialogue: 0,0:00:18.00,0:00:21.50,Default,,0,0,0,,
Dialogue: 0,0:00:21.50,0:00:23.50,Default,,0,0,0,,Final line.

Сравните две стороны: LRC хранит только начало строки ([00:01.00]), а ASS требует полный интервал, поэтому конец каждой реплики сайт выводит из следующей строки.

Тот же перевод на неаккуратном файле LRC

Вход

[ar:Some Artist]
[0:05.5]Leading zero omitted, one decimal.
[00:07]Second with no centiseconds.
[00:03.00]Out of order.
[00:07.00][00:09.00]Repeated chorus line.
[00:12.00]

Выход

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:03.00,0:00:05.50,Default,,0,0,0,,Out of order.
Dialogue: 0,0:00:05.50,0:00:07.00,Default,,0,0,0,,Leading zero omitted, one decimal.
Dialogue: 0,0:00:07.00,0:00:09.00,Default,,0,0,0,,Second with no centiseconds.\NRepeated chorus line.
Dialogue: 0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Repeated chorus line.
Dialogue: 0,0:00:12.00,0:00:14.00,Default,,0,0,0,,

Второй файл намеренно неровный: BOM, переводы строк CRLF. LRC читает его без падения, а ASS записывается заново, поэтому часть дефектов исчезает, но пропущенные блоки не возвращаются.

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

Как будут выглядеть таймкоды LRC после перевода в ASS?

LRC хранит только начало строки вида [00:01.00], а ASS требует полный интервал, поэтому конец каждой реплики сайт вычисляет по следующей строке. Обе шкалы хранят сотые доли секунды, поэтому значения времени переносятся без округления.

Чем придётся пожертвовать при экспорте LRC в ASS?

LRC знает только момент начала строки, поэтому концы реплик в ASS будут вычислены по следующей строке, а не перенесены из файла. Это полный список потерь для пары LRC → ASS; сайт показывает его до запуска.

Как переносится оформление LRC в стили ASS?

ASS хранит полную таблицу стилей: шрифт, размер, цвет, обводку, тень и выравнивание. Из LRC сайт переносит то, что там есть; чего нет, получает стиль Default с параметрами по умолчанию, а время округляется до сотых.

Сохранятся ли переносы строк и порядок реплик при переводе LRC в ASS?

LRC хранит строки, а не многострочные реплики, поэтому ASS получит по реплике на строку; порядок сохраняется.

В какой кодировке сохраняется ASS и какое у него расширение при переводе из LRC?

Файл ASS записывается в UTF-8 без BOM с переводами строк LF и расширением .ass; при чтении LRC сайт сам определяет BOM и стиль переводов строк и нормализует их. Кириллица и другие алфавиты сохраняются без замены символов.

Что произойдёт с концом реплики LRC при переводе в ASS?

LRC знает только начало ([00:01.00]); конца в файле нет. ASS требует полный интервал, поэтому сайт вычисляет конец по началу следующей строки, а для последней берёт 2 000 мс. Исходная длительность не восстанавливается.

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