VTT를 JSON으로 변환
또는 자막 텍스트를 붙여넣으세요
이 변환에서 달라지는 것
1가지가 버려지거나 결정이 필요합니다
- 형식 고유 내용
원본 형식이 자막 블록 밖에 두는 내용(자막 블록이 아닌 구획, 머리말 텍스트, 자막 블록별 설정, 주석 처리된 이벤트) — 대상 형식에는 들어갈 자리가 없습니다
이 목록은 불러온 특정 파일이 아니라 두 형식의 기능 행렬에서 나옵니다. 어떤 파일은 형식이 허용하지만 행렬이 모델링하지 않는 기능을 쓰고 있다면 더 많이 잃을 수 있습니다.
이 페이지는 WebVTT를 이 사이트의 JSON 스키마로 바꿉니다. version 1과 cues 배열, 큐마다 선택적 id·정수 밀리초 start·end·lines가 들어갑니다. 스크립트와 파이프라인이 읽기 좋은 형태입니다.
VTT의 intro 같은 식별자는 id 필드로 그대로 남고, <i>·<b>는 tags 배열의 구간이 됩니다. 시간은 00:00:01.234가 1234가 되며 반올림이 없습니다.
사라지는 것은 cue 모델 밖의 구성입니다. WEBVTT 헤더와 그 주석, NOTE·STYLE·REGION 블록, align·position 같은 큐 설정이 스키마에 자리가 없습니다. 큐의 글자·식별자·시간은 온전히 남습니다.
여러 파일을 넣으면 순서대로 처리되고 중간에 취소할 수 있으며 ZIP 하나로 내려옵니다. 브라우저 안에서 변환되어 업로드가 없습니다.
JSON은 자막을 데이터로 다루는 쪽에 맞춘 형식입니다. VTT의 큐 식별자가 id로 남고, 인라인 태그는 구간으로 구조화되어 스크립트에서 다루기 쉽습니다. 큐 밖의 블록은 스키마에 없어 손실로 보고됩니다.
예시
전형적인 WebVTT 파일을 JSON으로 변환
입력
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>.
결과물
{
"version": 1,
"cues": [
{
"id": "intro",
"start": 1000,
"end": 4000,
"lines": [
"Hello there."
]
},
{
"start": 4500,
"end": 8000,
"lines": [
{
"text": "Second line with italics.",
"tags": [
{
"kind": "italic",
"start": 17,
"end": 24
}
]
}
]
}
]
}
이 출력에서 빠진 것: 형식 고유 구성. 나머지는 줄 단위로 일치합니다.
같은 변환을 지저분한 입력으로
입력
a stray comment line
cue-id-1
00:00:01.000 --> 00:00:02.000
No header, two lines before the timecode.
결과물
{
"version": 1,
"cues": [
{
"start": 1000,
"end": 2000,
"lines": [
"No header, two lines before the timecode."
]
}
]
}
실제 파일에 흔한 손상입니다. 줄 바꿈이 섞이고, 공백이 남고, 필드가 비어 있습니다. 위의 깔끔한 예와 비교해 해석기가 무엇을 용서하는지 보세요.
자주 묻는 질문
JSON은 어떤 모양인가요?
version 1과 cues 배열입니다. 각 큐는 선택적 id, 정수 밀리초 start·end, lines 배열을 가지고, 줄은 문자열이거나 text와 tags를 가진 객체입니다. 해석할 시간 코드도, 조심할 1/100초 단위도 없습니다.
VTT를 JSON으로 바꿀 때 손실 목록이 짧은 이유는 무엇인가요?
스키마가 변환기의 큐 모델이 담는 것을 모두 담도록 만들어져 VTT의 거의 전부를 덮기 때문입니다. 남는 것은 큐 밖의 재료, 즉 헤더와 그 주석, NOTE·STYLE·REGION 블록, 큐별 설정입니다.
VTT의 큐 식별자는 JSON에서 유지되나요?
네. VTT의 intro나 sign-1 같은 자유 형식 식별자를 이 스키마가 id 필드로 받습니다. 대신 SRT로 바꾸면 식별자가 숫자여야 하므로 1·2·3으로 다시 매겨집니다.
VTT를 JSON으로 바꾸면 시간이 조금이라도 바뀌나요?
아니요. 양쪽 모두 정수 밀리초로 다루므로 00:00:01.234는 1234가 되고, 되돌려도 반올림이나 이동이 없습니다.
기밀 VTT 전사를 이 페이지에서 JSON으로 바꿔도 안전한가요?
안전합니다. 읽기와 쓰기가 브라우저 안에서 일어나 파일이 서버로 전송되지 않습니다. JSON은 스크립트나 파이프라인이 소비하는 형식이라, 건물 밖으로 나갈 수 없는 전사에 특히 중요합니다.