본문으로 바로 가기
SubtitleMatrix

LRC를 SSA로 변환

형식 변환가사 (LRC)
또는 자막 텍스트를 붙여넣으세요

옵션

원본에 종료 시간이 없을 때(일반 텍스트, LRC) 사용합니다. 결과물의 시간축은 변환되는 것이 아니라 여기서 새로 만들어지므로, 이 숫자가 그대로 결과가 됩니다.

이 변환에서 달라지는 것

1가지가 버려지거나 결정이 필요합니다

  • 타이밍

    자막 블록 종료 시간 — 원본이 기록하지 않아 결과물의 종료 시간은 변환된 것이 아니라 새로 만들어집니다

이 목록은 불러온 특정 파일이 아니라 두 형식의 기능 행렬에서 나옵니다. 어떤 파일은 형식이 허용하지만 행렬이 모델링하지 않는 기능을 쓰고 있다면 더 많이 잃을 수 있습니다.

LRC를 SSA로 바꾸는 페이지입니다. SSA는 ASS와 같은 Dialogue 구조를 쓰는 이전 세대 형식입니다. LRC에는 끝 시각이 없으므로 다음 줄의 시작을 앞 줄의 끝으로 삼고, 마지막 줄만 기본 길이를 받습니다.

LRC는 `[00:04.12]`, SSA는 `0:00:04.12`를 씁니다. 두 형식 모두 100분의 1초 단위라 시각 값이 반올림 없이 그대로 옮겨집니다. 출력 앞부분에는 `[Script Info]`와 `[V4 Styles]`가 오고 자막은 `[Events]`의 `Dialogue:` 줄로 적힙니다.

LRC의 `[ti:]` 제목은 `[Script Info]`의 `Title:`로 남습니다. 가수와 길이, offset은 대응하는 자리가 없어 남지 않습니다. 같은 타임스탬프의 LRC 줄은 한 Dialogue 줄 안에서 `\N`으로 이어지고, 타임스탬프만 있는 줄은 텍스트가 빈 줄이 됩니다.

파일은 업로드되지 않고 브라우저 안에서 처리됩니다. 여러 파일을 한 번에 넣으면 순서대로 변환되어 ZIP 하나로 받습니다. ZIP은 파일별 하위 폴더 없이 풀립니다.

예시

전형적인 LRC 파일을 SSA로 변환

입력

[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, 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: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를 SSA로 바꿀 때

입력

[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, 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: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, 윈도우 줄바꿈, 한 자리 소수, 순서가 뒤섞인 줄이 있어도 읽을 수 있는 가사는 모두 Dialogue 줄이 됩니다.

자주 묻는 질문

LRC를 SSA로 옮길 때 각 줄의 끝은 어떻게 계산되나요?

다음 LRC 줄의 시작 시각이 앞 줄의 끝이 됩니다. 마지막 줄은 다음 시작이 없어 기본 2초를 받습니다. SSA의 Dialogue 줄은 시작과 끝을 모두 요구하므로 이 계산이 필요합니다.

LRC의 제목은 SSA의 어느 구역에 남나요?

`[Script Info]`의 `Title:` 줄에 남습니다. `[ti:Sample Song]`의 값이 들어가고, 가수와 길이는 대응하는 필드가 없어 남지 않습니다.

LRC를 SSA로 바꾸면 결과 파일은 어떤 구조인가요?

`[Script Info]`, `[V4 Styles]`, `[Events]` 세 구역을 가진 SSA 문서입니다. 자막마다 `Dialogue:` 줄이 하나씩 생기고, SRT의 번호 자리에는 `Marked` 필드가 옵니다.

같은 타임스탬프의 LRC 줄은 SSA에서 어떻게 표시되나요?

한 Dialogue 줄 안에서 `\N`으로 이어집니다. 같은 시각의 두 줄이 SSA의 강제 줄바꿈으로 합쳐지고, 플레이어는 두 줄을 함께 표시합니다.

LRC의 빈 타임스탬프는 SSA에서 어떻게 되나요?

텍스트가 빈 Dialogue 줄이 됩니다. 시작과 끝은 계산되지만 표시할 글자가 없습니다. 빈 줄을 없애려면 변환 뒤 QC 도구로 걸러야 합니다.

SSA를 다시 LRC로 바꾸면 무엇이 사라지나요?

SSA의 끝 시각, 스타일, 화면 위치, 가라오케, 형식 고유 구성이 LRC에 자리가 없어 사라집니다. 지금 방향인 LRC→SSA에서는 타이밍만 잃습니다.

LRC를 SSA로 저장하면 인코딩은 무엇인가요?

출력은 UTF-8, 유닉스 줄바꿈, BOM 없음입니다. 원본 LRC가 UTF-16이나 윈도우 단일 바이트 인코딩이면 읽는 단계에서 해독되고, 결과 패널이 그 사실을 알려 줍니다.

관련 도구