본문으로 바로 가기
SubtitleMatrix

타임코드만큼 자막 밀기

타이밍고정 오프셋으로 밀기
또는 자막 텍스트를 붙여넣으세요

옵션

옮길 양을 시계 값으로 적습니다. 00:00:02,500은 2.5초 늦게, -00:00:02,500은 2.5초 앞당깁니다. 밀리초 단위 숫자보다 기준 영상을 보며 읽어 내기 쉽습니다. 밀리초를 받는 페이지에서는 비워 두세요.

타이밍을 어떤 프레임 레이트 기준으로 세는지 정합니다. 형식 안내 페이지에서는 MicroDVD가 이 값을 필요로 합니다. 시간을 프레임 번호로 저장하기 때문입니다. 프레임 레이트 페이지에서는 이 파일이 어느 프레임 레이트를 기준으로 만들어졌는지, 즉 자막을 만든 판본의 값을 뜻하며, 페이지의 두 번째 상자에는 이 자막을 사용할 영상의 프레임 레이트를 넣습니다. 흔히 쓰는 값은 23.976, 24, 25, 29.97, 30, 50, 59.94, 60입니다. 잘못 넣으면 시간축 전체가 어긋나고, 프레임 레이트 페이지에서는 고정된 양이 아니라 비율로 어긋납니다.

이 페이지는 자막 파일을 밀리초 개수가 아니라 타임코드만큼 옮깁니다. 00:00:02,500을 넣으면 모든 cue가 2.5초 뒤로 가고, -00:00:01,000을 넣으면 1초 앞으로 갑니다. 각 cue의 두 경계가 같은 양만큼 움직이므로 길이는 그대로 유지됩니다. 밀리초 페이지와 다른 것은 오프셋을 말하는 방식뿐입니다.

이 페이지가 따로 있는 이유는 숫자가 어디서 오는지에 있습니다. 자막 파일을 기준 영상에 맞출 때, 새 타이틀 시퀀스나 삽입된 광고, 위치를 읽어 낼 수 있는 다른 타임라인을 다룰 때 손에 있는 것은 두 시각의 쌍이고 오프셋은 그 차이입니다. 그 차이를 타임코드로 적는 편이 머릿속에서 밀리초로 바꾸는 것보다 한 단계 짧고, 실수는 그 변환에서 생깁니다. 00:01:30,000은 9,000 ms가 아니라 90,000 ms입니다.

오프셋은 시계값으로 읽혀 타임라인 전체에 적용됩니다. 파일 시작보다 앞으로 밀리는 cue는 시작만 00:00:00에 고정되고 끝은 계속 움직여 짧아지며, 끝이 0 이하로 가는 cue는 삭제됩니다. 오프셋이 0이거나 타임코드로 읽을 수 없는 값이면 파일이 바이트 단위로 그대로 돌아옵니다.

소수점과 한 자리 시(hour)도 받습니다. 00:00:02,500과 00:00:02.500, 0:00:02.50은 모두 2500 ms로 같은 값입니다. SRT, WebVTT, ASS, SSA, SBV, SMI, MicroDVD, TTML, JSON, CSV를 실제 형식대로 읽고, 일반 텍스트와 LRC는 끝 시간이 없어 거부합니다. 파일은 기기 밖으로 나가지 않으며 시즌 전체를 한 번에 처리할 수 있습니다.

예시

파일을 2.5초 뒤로 밀기

입력

1
00:00:01,000 --> 00:00:03,000
Hello there.

2
00:00:05,500 --> 00:00:08,000
Second line.

결과물

1
00:00:03,500 --> 00:00:05,500
Hello there.

2
00:00:08,000 --> 00:00:10,500
Second line.

밀리초 페이지에 2500을 넣은 것과 결과가 같습니다. 모든 cue의 두 경계가 움직이고 길이는 하나도 변하지 않습니다.

빼기 부호로 파일 앞당기기

입력

1
00:00:01,000 --> 00:00:02,000
The first one starts too early.

2
00:00:05,000 --> 00:00:08,000
This one is fine.

결과물

1
00:00:00,000 --> 00:00:00,500
The first one starts too early.

2
00:00:03,500 --> 00:00:06,500
This one is fine.

첫 cue는 −500 ms에서 시작하게 되므로 시작만 0에 고정되고 그 경계만 움직입니다. 결과는 1000 ms가 아니라 500 ms짜리 cue입니다.

소수점을 쓰는 WebVTT식 타임코드

입력

1
00:00:01,000 --> 00:00:02,000
Dot instead of comma.

결과물

1
00:00:03,500 --> 00:00:04,500
Dot instead of comma.

0:00:02.500은 00:00:02,500과 같게 읽힙니다. 구분자 두 가지와 한 자리 시를 모두 받습니다. 타임코드를 만드는 도구마다 표기가 달라서입니다.

자주 묻는 질문

자막을 앞으로 옮기는 오프셋은 어떻게 적나요?

타임코드 앞에 빼기 부호를 붙입니다. -00:00:02,500은 2.5초 앞으로라는 뜻입니다. 부호가 없으면 같은 숫자가 파일을 뒤로 밀므로 두 방향의 차이는 전부 부호 하나이고 별도 방향 설정은 없습니다.

여기에는 밀리초 상자 대신 타임코드 상자가 있는 이유가 무엇인가요?

오프셋이 대개 누군가 잰 숫자보다 두 시계값의 차이로 오기 때문입니다. 파일을 기준 영상에 맞출 때 손에는 두 시각이 있고 오프셋은 그 차이, 즉 타임코드입니다. 이미 숫자가 있다면 밀리초 페이지를 쓰면 되고, 같은 오프셋이면 두 페이지의 출력은 동일합니다.

밀리초 앞에 쉼표 대신 소수점을 써도 되나요?

됩니다. 한 자리 시를 써도 됩니다. 00:00:02,500, 00:00:02.500, 0:00:02.50은 모두 2500 ms로 들어옵니다. 자막 형식마다 구분자가 달라 입력 전에 번역하게 만들 이유가 없습니다. 소수부는 적은 자릿수로 읽으므로 .5와 .500은 둘 다 0.5초입니다.

타임코드로 읽을 수 없는 값을 넣으면 어떻게 되나요?

오프셋을 무시하고 파일을 그대로 돌려줍니다. 아무것도 추측하지 않고 임의의 숫자로 대체하지 않는 신중한 쪽입니다. 다만 조용하기도 하므로 도움말이 받아들이는 표기를 직접 적어 둡니다. 2500 같은 맨숫자는 타임코드가 아니며 밀리초 페이지에 넣어야 합니다.

타임코드 오프셋은 각 cue의 두 경계를 모두 옮기나요?

네. 시작과 끝이 같은 양만큼 움직이므로 표시 시간이 변하지 않고 다른 cue와의 상대 위치도 그대로입니다. 화면에 머무는 길이를 바꾸고 싶다면 시작과 끝을 따로 미는 페이지를 써야 합니다.

관련 도구