본문으로 바로 가기
SubtitleMatrix

VTT를 LRC로 변환

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

이 변환에서 달라지는 것

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

  • 타이밍

    자막 블록 종료 시간(결과 형식은 자막 블록이 시작하는 시점만 기록합니다)

  • 스타일

    모든 스타일(굵게, 기울임, 색, 외곽선, 그림자)

  • 정밀도

    타이밍 정밀도 — 결과물의 시계가 더 거칠어 모든 타임스탬프가 가장 가까운 10 ms로 반올림됩니다

  • 형식 고유 내용

    원본 형식이 자막 블록 밖에 두는 내용(자막 블록이 아닌 구획, 머리말 텍스트, 자막 블록별 설정, 주석 처리된 이벤트) — 대상 형식에는 들어갈 자리가 없습니다

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

이 페이지는 WebVTT를 LRC 가사 파일로 바꿉니다. LRC는 줄이 시작하는 시점만 기록하고 다음 줄이 시작할 때까지 유지하므로, 자막의 끝 시간이 필요 없는 가사·대사 목록에 맞는 방향입니다.

VTT의 00:00:04.126은 [00:04.13]이 됩니다. 1/1000초를 1/100초로 반올림하므로 큐마다 최대 5ms 움직이며, 이것이 precision 손실입니다. 두 줄짜리 큐는 같은 시각의 두 줄로 나옵니다.

사라지는 것은 끝 시간, 스타일, precision, cue 모델 밖의 구성입니다. 끝 시간은 기록되지 않고, 본문의 <i>·<b> 태그와 STYLE 블록, 헤더·NOTE·REGION·큐 설정이 모두 자리가 없습니다.

여러 파일을 넣으면 순서대로 처리되고 중간에 취소할 수 있으며 ZIP 하나로 내려옵니다. 변환은 브라우저 안에서 실행됩니다.

LRC는 가사 플레이어에서 널리 읽히며, 자막이 아니라 가사 한 줄씩을 다룰 때 자연스럽습니다. VTT의 끝 시간은 쓰이지 않으므로, 간격이 긴 구간은 재생기에서 자막이 오래 남을 수 있습니다.

예시

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

입력

WEBVTT

intro
00:00:01.000 --> 00:00:04.000
Hello there.

00:00:04.500 --> 00:00:08.000 align:start position:10%
Second line with <i>italics</i>.

결과물

[00:01.00]Hello there.
[00:04.50]Second line with italics.

이 출력에서 빠진 것: 타이밍, 스타일, 정밀도, 형식 고유 구성. 나머지는 줄 단위로 일치합니다.

같은 변환을 지저분한 입력으로

입력

a stray comment line
cue-id-1
00:00:01.000 --> 00:00:02.000
No header, two lines before the timecode.

결과물

[00:01.00]No header, two lines before the timecode.

실제 파일에 흔한 손상입니다. 줄 바꿈이 섞이고, 공백이 남고, 필드가 비어 있습니다. 위의 깔끔한 예와 비교해 해석기가 무엇을 용서하는지 보세요.

자주 묻는 질문

VTT 큐의 끝 시간은 어떻게 되나요?

사라집니다. LRC는 줄이 시작하는 시점만 기록하고 다음 줄이 시작할 때까지 유지합니다. VTT의 모든 끝 시간은 버려지고 시작 시간만 남습니다.

VTT에서 LRC로 가면 굵게·기울임·색은 어떻게 되나요?

전부 사라집니다. 큐 본문의 <b>·<i> 태그와 파일의 STYLE 블록이 LRC에 자리가 없어 각 줄이 일반 텍스트로 적힙니다. 글자 자체는 바뀌지 않습니다.

VTT에서 LRC로 가면 타임스탬프가 왜 달라지나요?

LRC는 [00:04.12]처럼 1/100초, VTT는 00:00:04.126처럼 1/1000초로 적습니다. 모든 시간 코드가 10ms 단위로 반올림되어 00:00:04.126은 4.13초가 되고, 큐마다 최대 5ms만 움직입니다.

VTT의 NOTE·STYLE·REGION 블록은 LRC에서 어떻게 되나요?

사라집니다. VTT는 헤더·주석·스타일 블록·영역 정의·큐 설정을 담지만 LRC에는 넣을 자리가 없습니다. 큐의 글자와 시작 시간은 온전히 넘어갑니다.

LRC 출력은 어떤 모양인가요?

큐 번호 없이 각 줄이 대괄호 타임스탬프를 가집니다. VTT 큐 하나가 LRC 줄 하나가 되고, 순서는 시작 시간을 따릅니다.

두 줄짜리 VTT 큐는 LRC에서 어떻게 나오나요?

같은 시각을 가진 두 개의 타임스탬프 줄로 나옵니다. LRC가 '이 둘은 한 묶음'이라고 말하는 방식이며, 재생기에서 두 줄이 함께 표시됩니다.

VTT 큐의 순서는 LRC에서 유지되나요?

네. 시작 시간이 빠른 순으로 정렬되고, 원본이 순서를 벗어나 있었다면 출력에서 바로잡힙니다. 내용이 아니라 구조의 변경이며 의도된 동작입니다.

LRC를 다시 VTT로 바꿀 수 있나요?

가능하지만 LRC→VTT는 타이밍을 보고합니다. LRC에는 끝 시간이 없어 큐의 표시 시간을 새로 정해야 하고, 이 페이지에서 버린 STYLE·NOTE·REGION은 기록이 없어 돌아오지 않습니다.

VTT에서 만든 LRC의 인코딩은 무엇인가요?

UTF-8, 유닉스 줄 바꿈, BOM 없음입니다. 입력 VTT의 인코딩과 무관하며, 읽을 때 디코딩이 일어나면 결과 패널이 알려 줍니다.

관련 도구