무료 체험
← 블로그로 돌아가기

자막 파일 지우고 다시 받기 전에, SRT 깨짐과 싱크 어긋남은 모두 고칠 수 있다

포럼과 파일 보관소를 거쳐 돌아다닌 자막은 열자마자 물음표 벽입니다. 겨우 한글이 떠도 재생이 진행될수록 자꾸 어긋납니다. 영상은 정상이고 파일도 있는데 합치면 맞지 않습니다 — SRT 자막의 이런 고장 대부분은 플레이어 탓이 아니라 파일 자체의 탓입니다. 인코딩이 잘못 읽혔거나 타임코드 줄이 망가진 상태로 쓰였고, 각각에 대응하는 고치는 법이 있습니다.

SRT 자막이 이상하면 파일부터 열어 깨짐과 싱크 어긋남을 가릅니다

메모장으로 분류하세요. 문자 줄이 안 읽히면 인코딩 병, 읽히는데 박자가 안 맞으면 타임라인 병, 두 갈래 길은 따로 갑니다.SRT는 순수 텍스트 형식으로 구조가 네 겹입니다. SubRip 형식의 통용 규약에 따르면 하나의 자막은 번호 줄, 타임코드 줄, 한 줄 이상의 텍스트 줄로 구성되고 블록 사이는 빈 줄로 나뉩니다. 타임코드 줄은 "시:분:초,밀리초 --> 시:분:초,밀리초"로 쓰이며 파일 전체의 뼈대입니다 — 나중에 고칠 단절점들은 전부 이 줄과 구분 빈 줄 위에 놓입니다. 방향을 먼저 가려야 힘이 헛되지 않습니다.

깨짐의 뿌리는 인코딩 오인, UTF-8로 다시 저장하면 대개 살아납니다

자막이 깨졌을 때 파일 안의 바이트는 멀쩡합니다 — 망가진 것은 읽는 방식입니다. 플레이어가 문자 집합을 잘못 골라 한글이 보글보글한 무늬가 됩니다.전형적인 모양새는 둘. 줄 전체가 라틴 문자 섞인 기호 더미가 되는 것은 UTF-8 내용이 한 바이트 인코딩으로 읽히고 있다는 증거이고, 페이지 가득한 물음표나 네모는 보통 반대 방향의 오인입니다. SRT 형식 자체는 인코딩을 규정하지 않습니다. 오래된 도구들은 로컬 코드 페이지(중문 환경의 GBK)로 저장해 왔기 때문에 기본으로 UTF-8을 읽는 환경에 가면 어긋납니다. 고치는 법은 메모장에서 두 번 나눠. 파일을 열고, 다른 이름으로 저장할 때 인코딩을 직접 UTF-8로 고릅니다. Windows에서는 BOM 있는 UTF-8을 권합니다 — Unicode 공식 FAQ가 설명하듯 BOM은 바로 읽는 프로그램이 인코딩을 식별하도록 돕는 표식입니다. 함정 두 개는 지나가며 피합니다. Word로 자막을 저장하지 않기 — 레이아웃 정보가 파일에 들어와 구조가 즉사합니다. 저장 대화상자의 인코딩 항목은 반드시 직접 고르기 — 오래된 시스템의 기본값은 ANSI이지 UTF-8이 아닙니다.

타임라인의 어긋남은 두 종류: 편차가 일정하면 평행이동, 갈수록 벌어지면 표류

첫머리에서 한 번 맞추고 중반과 끝에서 한 번씩 더 맞춰 확인하세요 — 처음부터 끝까지 편차가 같으면 평행이동, 점점 벌어지면 표류, 고치는 법이 완전히 다릅니다.평행이동은 자막과 영상의 버전이 다를 때 자주 옵니다. 같은 영화에서 앞부분 광고가 잘렸고 자막은 어느 고정값만큼 늦게 시작됩니다. 이런 경우 플레이어의 자막 지연 조정으로 먼저 버티고, 파일 자체를 고치려면 Subtitle Edit 같은 오픈소스 도구로 전체를 한 번에 평행이동합니다. 수십 줄의 타임코드에 손댈 필요가 없습니다. 표류는 첫머리는 맞는데 끝에서 십수 초 이상 벌어지는 것으로, 대개 프레임레이트 버전 불일치 — 영화에서 흔한 23.976과 25 fps 사이의 교체, 혹은 속도가 바뀐 영상이 원인입니다. 표류는 손고침으로 못 삽니다. 알려진 두 정합 지점을 기준으로 도구가 시간축 전체를 선형으로 다시 배율 조정하게 합니다.

화살표, 쉼표, 빈 줄: 타임코드 줄의 세 고빈도 단절점, 일괄 바꾸기로 다시 잇습니다

세 단절점 모두 메모장의 찾아 바꾸기로 처리됩니다. 다만 각 자리의 바른 모양을 알고 있어야 합니다.

  • 화살표가 망가짐: 타임코드 줄 가운데의 화살표는 언제나 하이픈 두 개에 부등호 하나입니다. 여러 손을 거치며 중문 대시+화살표가 되거나 한 글자가 빠지기 쉽습니다 — 표준 형태로 바꿔 되돌립니다;
  • 쉼표가 마침표로: 밀리초 구분자는 형식 규정상 영어 쉼표입니다. 일부 소프트웨어가 마침표로 내보내면 엄격한 플레이어는 타임코드 줄 통째로 거부합니다;
  • 빈 줄 소실: 블록 사이는 빈 줄 하나로 갈라집니다. 복사-붙여넣기에 먹히면 플레이어는 자막 두 개를 하나로 묶어 들쭉날쭉 뜁니다.

고친 뒤 표본 검사를 한 번: 처음·중간·끝에서 하나씩 골라 영상과 대조하며 표시 시점을 확인합니다. 일괄 바꾸기는 형태를 고치고 표본 검사는 결과를 검증합니다 — 둘 다 해야 고친 것이 완료됩니다.

고친 자막에 온전한 영상을 맞춘다, 원고와 본편을 같이 로컬로

자막이 자리 잡았으면 이제 본편이 부족합니다 — 원고는 출처에서 깨끗하게 가져오고 영상은 다운로드와 녹화 두 길로 채웁니다.

1단계: VidBrowser 다운로드 및 설치

VidBrowser는 Windows와 Mac에서 영상을 보고 저장하기 위해 만들어진 데스크톱 영상 브라우저로, 다운로드와 녹화 두 가지 기능이 내장되어 있습니다.

2단계: 「YouTube 자막 다운로드」로 깨끗한 원고를 받습니다

왼쪽 내비게이션에서 도구 페이지로 전환해 YouTube 자막 다운로드를 열고 영상 링크를 붙여넣으면 SRT를 저장할 수 있습니다. YouTube의 네이티브 자막 트랙은 인코딩이 정연해서 손을 거친 파일보다 훨씬 깨끗합니다. 도구의 네 걸음 사용법은 YouTube 자막 다운로드 글에 있습니다.

3단계: 영상 페이지로 돌아가 본편을 다운로드 버튼으로 저장합니다

재생 중 오른쪽 「영상 미디어 라이브러리」 패널에 주황색 다운로드 버튼이 달린 항목이 나열됩니다. 한 번 클릭으로 MP4로 저장하거나 해상도를 먼저 골라 내려받을 수도 있습니다.

4단계: 다운로드 입구가 없는 콘텐츠는 녹화로 보충합니다

마우스를 영상 화면 위에 올리면 녹화 컨트롤이 겹쳐 표시됩니다 — 녹화 속도를 고르고(1x는 실시간, 2x나 4x면 더 빨리 끝납니다) 「전체 녹화」로 영상 전체를 담으며, 왼쪽 녹화 버튼은 언제든 시작·정지할 수 있습니다. 저장 후 왼쪽 내비게이션의 시계 아이콘에서 다운로드 기록을 확인하세요. 파일이 어디에 떨어지고 시간으로 어떻게 되찾는지는 다운로드한 영상은 어디에 있을까 글에 지도가 있습니다.

요약

SRT가 고장 나면 파일을 열고 분류부터 합니다. 문자가 깨졌다면 인코딩 오인이므로 UTF-8로 다시 저장하면 살아나고, 박자가 안 맞으면 평행이동과 표류를 가려 전자는 통째로 한 번 옮기고 후자는 비율로 다시 계산합니다. 화살표, 쉼표, 빈 줄 세 단절점은 일괄 바꾸기 후 처음·중간·끝에서 하나씩 표본 검사합니다. 고쳤으면 본편을 채워 맞춥니다. 자막은 몇 KB, 영상은 수백 MB — 둘 다 손에 있어야 이 콘텐츠가 온전해집니다.

자주 묻는 질문

UTF-8로 다시 저장해도 여전히 깨져 있어요

빠뜨리기 쉬운 두 곳입니다. 저장 대화상자의 인코딩 항목은 직접 골라야 하고, 오래된 시스템의 기본값은 UTF-8이 아니라 ANSI입니다. 일부 플레이어는 자기 기본 인코딩으로 읽으므로 자막 설정에서 문자 집합을 한 번 지정해 주세요. 그리고 파일 맨 앞에 이상한 기호 몇 개가 보여도 지우지 마세요 — 그게 BOM 표식이며, 플레이어가 인코딩을 인식하도록 돕는 바로 그것입니다.

저장한 자막 확장자가 .txt인데 아직 쓸 수 있나요?

확장자는 내용에 영향을 주지 않습니다. .srt로 이름을 되돌리면 됩니다. 되돌리기 전에 메모장으로 구조를 확인하세요. 「번호 + 타임코드 + 텍스트」가 갖춰져야 쓸 수 있는 자막 파일입니다. 타임코드 줄조차 없다면 그것은 순수 필기 원고이므로 타임라인이 있는 버전을 다시 찾아야 합니다.

자막이 전체적으로 2초 늦어요. 한 줄씩 고쳐야 하나요?

그럴 필요 없습니다. 먼저 플레이어의 자막 지연 조정으로 때우고, 파일 자체를 고치려면 Subtitle Edit으로 한 번 평행이동하세요. 한 줄씩 손으로 고치는 것은 느릴 뿐 아니라 새 오류를 낳기 쉽습니다. 비율 재계산이 정말 필요한 쪽은 첫머리는 맞고 끝에서 십수 초 이상 벌어지는 표류입니다.

더 많은 블로그