자막 싱크 맞추는 법

자막이 영상과 어긋나는 이유는 둘뿐입니다. 어느 쪽인지만 가려내면 고치는 건 30초면 끝납니다.

먼저 이것부터 구분하세요. 영상 초반과 후반에서 어긋난 정도가 같으면 → 통째로 밀기. 후반으로 갈수록 커지면 → 프레임률 변환. 이 둘을 섞으면 영원히 안 맞습니다.

어느 쪽인지 가려내기

영상을 열고 초반 자막 하나와 후반(끝에서 10분쯤 전) 자막 하나에서 각각 몇 초 어긋나는지 봅니다.

초반후반원인고치는 법
2초 늦음2초 늦음 시작점이 다름 통째로 밀기 -2
거의 맞음20초 늦음 프레임률이 다름 프레임률 변환
3초 늦음25초 늦음 둘 다 프레임률 먼저, 그다음 밀기

차이가 일정하면 평행 이동입니다. 자막은 맞게 만들어졌는데 영상 판본의 앞부분 길이가 다른 것입니다 — 배급사 로고가 붙었거나, 극장판/감독판이거나, 방송용으로 앞이 잘렸거나.

차이가 점점 벌어지면 시간의 흐름 자체가 다른 것입니다. 자막은 초당 23.976 프레임으로 도는 영상에 맞춰 만들었는데 가진 영상은 25 프레임으로 돈다면, 같은 "10분"이 서로 다른 길이가 됩니다. 이건 아무리 밀어도 안 맞습니다.

경우 1 — 통째로 밀기

몇 초를 밀어야 하나

첫 대사를 기준으로 재는 게 가장 쉽습니다. 영상에서 첫 대사가 들리는 시각과 자막 파일의 첫 자막 시각을 비교하면 됩니다.

  1. 플레이어에서 영상의 첫 대사가 들리는 시각을 봅니다. 예: 00:01:12
  2. 자막 파일을 메모장으로 열어 첫 자막 시각을 봅니다. 예: 00:01:14,500
  3. 자막이 2.5초 늦게 나오는 상황입니다 → 앞으로 당겨야 하므로 -2.5

부호가 헷갈릴 때. "자막을 어느 쪽으로 옮길까"로 생각하세요. 자막이 먼저 나오면 뒤로 늦춰야 하니 양수, 자막이 늦게 나오면 앞으로 당겨야 하니 음수입니다.

변환기에서

  1. 자막 변환기에 자막 파일을 끌어다 놓습니다.
  2. 자막 싱크 → 통째로 밀기에 초를 적습니다. 소수점도 됩니다 (-2.5).
  3. 전체 변환 → 저장.

한 번에 안 맞으면 원본으로 돌아가서 값을 바꿔 다시 하세요. 이미 민 파일을 또 밀면 값이 누적돼 헷갈립니다. 변환기는 원본을 그대로 들고 있으므로 입력칸 숫자만 고치고 다시 변환하면 됩니다.

앞으로 너무 당기면

-5 처럼 크게 당기면 0초보다 앞으로 밀려나는 자막이 생깁니다. 화면에 띄울 방법이 없으므로 그런 자막은 버립니다. 대신 몇 개를 버렸는지 행에 1개 빠짐 처럼 적어 둡니다 — 조용히 사라지면 안 되니까요. 0초에 걸친 자막은 시작만 0으로 자르고 살립니다. 당긴 결과 남는 자막이 하나도 없으면 파일을 아예 건드리지 않습니다.

경우 2 — 프레임률 변환

왜 프레임률이 다른가

같은 영화라도 어디에 맞춰 만든 판본이냐에 따라 초당 프레임 수가 다릅니다. 이게 섞이면 자막이 갈수록 벌어집니다.

프레임률어디서 오나
23.976 영화 필름(24fps)을 NTSC 방식에 맞추느라 0.1% 느리게 돌린 값. 미국·일본·한국의 블루레이와 웹 배포본 대부분이 이것입니다.
24 극장 필름 원래 속도. 일부 블루레이가 이대로 담깁니다.
25 PAL 방송 규격. 유럽 DVD·TV 판본. 24fps 필름을 그냥 4% 빠르게 돌려 만듭니다.
29.97 NTSC 방송 규격. 미국·한국·일본의 옛 TV 녹화본과 DVD.

가장 흔한 사고는 유럽 DVD 용 자막(25fps)을 블루레이(23.976fps)에 쓰는 것, 그리고 그 반대입니다. 25 / 23.976 = 약 1.0427 이므로 4.3% 씩 어긋납니다. 2시간짜리 영화라면 끝에 가서 5분 넘게 벌어집니다.

어느 짝을 고를까

자막이 점점 늦어지면 자막의 시간이 영상보다 느리게 가는 것이니 늘려야 합니다 (25 → 23.976). 점점 빨라지면 줄여야 합니다 (23.976 → 25). 어느 쪽인지 모르겠으면 둘 다 해 보고 맞는 쪽을 쓰면 됩니다 — 잘못 골라도 원본은 그대로입니다.

영상의 실제 프레임률은 플레이어의 미디어 정보에서 볼 수 있습니다 (VLC 는 도구 → 미디어 정보 → 코덱, 곰플레이어는 재생 중 Tab). 거기 적힌 값이 영상 쪽 숫자이고, 자막은 그 짝의 반대쪽에서 온 것입니다.

변환기에서

  1. 자막 파일을 올립니다.
  2. 자막 싱크 → 프레임률 변환에서 원본 → 대상 짝을 고릅니다. 23.976 · 24 · 25 · 29.97 사이 흔한 조합 8가지가 있습니다.
  3. 전체 변환.

경우 3 — 둘 다 걸린 경우

프레임률도 다르고 시작점도 다른 경우가 실제로 흔합니다. 이때는 프레임률을 먼저 맞추고, 그다음 밀어야 합니다. 순서가 바뀌면 민 값까지 비율에 곱해져 엉뚱한 결과가 나옵니다.

변환기는 두 칸을 같이 채워 두면 알아서 그 순서로 처리합니다 (t' = t × 비율 + 밀기). 따로 두 번 돌릴 필요가 없습니다.

값을 재는 순서는 이렇습니다. 먼저 프레임률 짝만 골라 변환해 보고, 그 결과로 초반과 후반의 어긋남이 같아졌는지 확인합니다. 같아졌으면 프레임률은 맞은 것이니 그 남은 차이만큼을 밀기 칸에 적습니다.

자막 변환기 열기

플레이어의 싱크 조절과 뭐가 다른가

대부분의 플레이어에 재생 중 자막을 밀 수 있는 단축키가 있습니다 (VLC 는 G / H, 곰플레이어는 < / >). 급할 때는 그게 빠릅니다. 다만 차이가 있습니다.

플레이어 단축키파일을 고치기
남는가대개 그 재생만. 다시 열면 초기화파일에 저장됨
다른 기기안 따라감TV·휴대폰·셋톱박스 어디서나 맞음
프레임률못 고침 — 미는 것만 됨비율을 곱해 고침
여러 파일하나씩한 번에 전부

특히 프레임률 문제는 플레이어 단축키로 못 고칩니다. 밀어서 한 장면을 맞춰 놓으면 다른 장면이 틀어집니다. 갈수록 벌어지는 증상이면 파일을 고치는 수밖에 없습니다.

드라마 한 시즌처럼 여러 편을 한꺼번에 맞출 때도 파일 쪽이 낫습니다. 변환기에 폴더째 끌어다 놓으면 전부 같은 값으로 처리하고 ZIP 하나로 받습니다.

그래도 안 맞을 때

중간부터 갑자기 어긋난다

영상 중간에 광고가 잘려 나갔거나 판본이 다른 부분이 이어 붙은 경우입니다. 어긋남이 계단처럼 한 번에 바뀌므로 통째로 밀기로는 안 맞습니다. 이럴 때는 자막 파일을 텍스트 편집기로 열어 그 지점 이후의 시각만 따로 손봐야 합니다.

자막 개수가 0 으로 뜬다

싱크 이전의 문제입니다. 원본 인코딩을 잘못 읽어 파일 내용을 아예 못 읽고 있는 것입니다. 목록의 행에서 인코딩을 직접 골라 주세요 — 자막 글자가 깨질 때를 보시면 됩니다.

자막이 아예 안 뜬다

싱크가 아니라 포맷 문제일 수 있습니다. SMI 같은 포맷은 요즘 플레이어가 아예 못 엽니다. SMI 를 SRT 로 바꾸는 법을 보세요.

소수점 단위로 계속 안 맞는다

ASS 포맷은 1/100초까지만 적을 수 있어 밀리초 단위 미세 조정이 보존되지 않습니다. 그 정도 차이는 사람 눈에 보이지 않으므로 신경 쓰지 않아도 됩니다. SRT·WebVTT·SMI 는 1/1000초까지 적습니다.

더 읽을 거리