SRT 자막 형식 안내
이 형식이 표현할 수 있는 것
- 텍스트 스타일
- 일반 텍스트만
- 화면 위치 지정
- 아니요
- 가라오케 타이밍
- 아니요
- 자막 블록 안의 줄 바꿈
- 예
- 시간축
- 모든 자막 블록의 시작과 종료 시간
- 타이밍 해상도
- 1 ms
- 시간을 프레임 번호로 저장
- 아니요
- 오른쪽에서 왼쪽으로 쓰는 텍스트
- 예
예시
전형적인 SRT 파일과, 이 사이트가 읽어 낸 내용
파일
1
00:00:01,000 --> 00:00:03,500
Hello there.
2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.
3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.
담긴 내용
3 cues, 4 lines of text
00:00:01,000 → 00:00:03,500
Hello there.
00:00:03,500 → 00:00:06,000
Whispering now. [italic ×1]
And a second line.
00:00:06,000 → 00:00:09,250
Bold statement. [bold ×1]
Outside the cues:
nothing — SRT stores cues and nothing else오른쪽은 변환 결과가 아니라 왼쪽 파일에서 이 사이트가 읽어 낸 것이며, 그 파일을 어떤 형식으로 바꾸든 출발점이 되는 내용입니다.
지저분한 SRT 파일과, 그래도 읽어 낸 내용
파일
# exported by some tool
5
00:00:10,000 --> 00:00:12,000
Second in the file, first in time.
2
00:00:02,000 --> 00:00:05,000
First in time, second in the file.
00:00:06,000 --> 00:00:09,500
No index line at all.
# keep this comment
3
00:00:12,000 --> 00:00:14,500 X1:100 X2:200 Y1:300 Y2:400
Positioned cue.
4
00:00:20,000 --> 00:00:19,000
Ends before it starts.
6
00:00:28,000 --> 00:00:33,000
Long one.
7
00:00:31,000 --> 00:00:32,000
Inside the long one.
담긴 내용
7 cues, 7 lines of text
00:00:02,000 → 00:00:05,000
First in time, second in the file.
00:00:06,000 → 00:00:09,500
No index line at all.
00:00:10,000 → 00:00:12,000
Second in the file, first in time.
00:00:12,000 → 00:00:14,500
Positioned cue.
00:00:20,000 → 00:00:20,001
Ends before it starts.
00:00:28,000 → 00:00:33,000
Long one.
00:00:31,000 → 00:00:32,000
Inside the long one.
Outside the cues:
nothing — SRT stores cues and nothing else
except 1 cue that had a comment line above it — that line stays attached to its cue
Reported while reading — repaired or skipped, never silently:
1 × blocks with no readable timecode (they were skipped)
1 × cues using SRT's non-standard X1/Y1 screen coordinate extensions
1 × cues whose end time was not after their start time (they were given a 1ms duration)실제 파일에는 BOM, 윈도 줄 바꿈, 시간 코드 앞의 엉뚱한 줄, 읽을 수 없는 시간 코드가 섞여 옵니다. 어느 것도 예외를 던지지 않고, 이해할 수 없는 부분은 조용히 버리지 않고 보고합니다.
SubRip (SRT) → 다른 형식으로 변환
각 페이지는 전부 브라우저 안에서 실행됩니다. 라벨은 그 방향에서 무엇을 잃는지 미리 알려 줍니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 방향에서는 아무것도 잃지 않습니다. 원본 형식의 모든 기능이 대상 형식에 갈 곳이 있습니다.
이 형식으로 변환하기
- WebVTT (VTT) → SubRip (SRT)
- Advanced SubStation Alpha (ASS) → SubRip (SRT)
- SubStation Alpha (SSA) → SubRip (SRT)
- YouTube SBV → SubRip (SRT)
- SAMI (SMI) → SubRip (SRT)
- LRC Lyrics → SubRip (SRT)
- MicroDVD → SubRip (SRT)
- TTML (Timed Text) → SubRip (SRT)
- SubtitleMatrix JSON → SubRip (SRT)
- Plain Text (TXT) → SubRip (SRT)
- CSV Spreadsheet → SubRip (SRT)
SubRip(SRT)은 거의 모든 플레이어가 읽는 자막 형식입니다. 이 페이지는 SRT가 무엇을 저장하고 무엇을 저장하지 못하는지 정리한 기준 문서이자, SRT를 다른 11개 형식으로 바꾸는 페이지들의 입구입니다.
위 표가 전부입니다. '아니요'인 행은 다른 형식에서 SRT로 들어올 때 실제로 사라지는 항목이고, 아래에 링크된 각 변환 페이지가 파일을 열기 전에 그 목록을 먼저 보여 줍니다.
SRT의 큐는 번호, 시간 코드 한 줄, 그리고 한두 줄의 텍스트로 이루어집니다. 시간은 00:00:01,000처럼 밀리초까지 쉼표로 적고, 글꼴·색·위치를 선언하는 자리는 파일 어디에도 없습니다. <b>·<i> 태그가 본문에 들어 있는 경우는 많지만 그것은 관행이지 형식의 선언이 아닙니다.
모든 변환은 브라우저 안에서 실행됩니다. 업로드도 가입도 없고, NDA 자료나 환자 기록, 방송 금지 해제 전 자료를 다룰 때 이 점이 중요합니다.
SRT는 가장 널리 읽히는 형식이라 거의 모든 플레이어와 편집기가 받습니다. 다만 스타일·위치·카라오케를 담지 못하므로, 그 셋이 필요하면 ASS나 TTML로 가야 합니다.
자주 묻는 질문
SRT 파일은 어떤 형식인가요?
.srt는 거의 모든 것이 읽는 형식입니다. VLC, mpv, 대부분의 TV 펌웨어, YouTube 자막 업로드와 그에 딸린 편집기가 읽습니다. 큐는 번호, 시간 코드 줄, 한두 줄의 텍스트로 끝입니다.
SRT는 스타일을 저장하나요?
아니요. SRT가 저장하는 것은 큐이고, 큐는 두 개의 시간이 붙은 텍스트입니다. 실제 파일에 <b>·<i>가 들어 있고 많은 플레이어가 반응하지만, 파일 어디에도 글꼴·색·위치를 선언하는 부분은 없습니다.
SRT의 모든 큐에 시작과 끝이 다 있나요?
네. SRT에서 한 시점은 00:00:04,126처럼 적고, 밀리초까지가 한계입니다. 값은 정확하며, 큐가 짧거나 길거나 다음 큐와 겹쳐도 형식이 따로 제한하지 않습니다.
SRT를 손실 없이 바꿀 수 있는 형식은 무엇인가요?
VTT, SBV, SMI, TTML, JSON, CSV입니다. SRT가 표현하는 것을 여섯 형식 모두 표현합니다. 나머지 방향은 각 페이지가 자기 손실 목록을 밝힙니다.
SRT 파일을 텍스트 편집기로 열어도 되나요?
됩니다. .srt는 번호·시간 코드 줄·텍스트가 반복되는 구조라 손으로 고치기 쉽지만, 시간 코드의 구두점은 틀리기 쉽습니다. 00:00:01,250처럼 초와 밀리초 사이에 쉼표를 써야 합니다.