Skip to content

자막 파일 포맷

자막 파일은 영상 콘텐츠에 텍스트 정보를 동기화하여 표시하는 파일 형식이다. SRT, SBV, VTT, SMI 네 가지 주요 포맷이 널리 사용되며, 각각의 특성과 용도가 다르다.

가장 범용적으로 사용되는 자막 포맷이다. 텍스트 기반의 단순한 구조로 거의 모든 미디어 플레이어에서 지원한다.

  • 구조: 자막 번호, 타임코드, 텍스트, 빈 줄로 구성된다

    • 시간 형식: HH:MM:SS,mmm --> HH:MM:SS,mmm
    • 자막 번호를 통해 순서 관리가 명확하다
    1
    00:00:01,000 --> 00:00:04,000
    안녕하세요, 여러분.
    2
    00:00:04,500 --> 00:00:06,500
    오늘은 자막 파일 형식에 대해 설명한다.
  • 호환성: 대부분의 미디어 플레이어와 편집 도구에서 지원한다

  • 서식: 볼드, 이탤릭, 색상 등 기본 서식을 지원하나 플레이어에 따라 인식 여부가 다르다

  • 편집: 일반 텍스트 에디터로 쉽게 수정할 수 있다

범용적인 자막이 필요한 경우 SRT를 우선 선택하는 것이 좋다.

YouTube에서 주로 사용하는 간소화된 자막 포맷이다. SRT보다 단순한 구조를 가진다.

  • 구조: 타임코드와 텍스트만으로 구성된다

    • 시간 형식: H:MM:SS.mmm,H:MM:SS.mmm
    • 자막 번호가 없어 파일 크기가 작다
    0:00:01.000,0:00:04.000
    안녕하세요, 여러분.
    0:00:04.500,0:00:06.500
    오늘은 자막 파일 형식에 대해 설명한다.
  • 호환성: YouTube 업로드에 최적화되어 있다

  • 서식: 제한적인 서식 기능만 제공한다

YouTube 콘텐츠 제작 시 SBV를 사용하면 업로드 과정이 간편하다.

HTML5 비디오를 위한 W3C 표준 자막 포맷이다. 웹 환경에서 강력한 기능을 제공한다.

  • 구조: WEBVTT 헤더와 타임코드, 텍스트로 구성된다

    • 파일 첫 줄에 WEBVTT 선언이 필수다
    • 스타일과 메타데이터를 포함할 수 있다
    WEBVTT
    00:00:01.000 --> 00:00:04.000
    안녕하세요, 여러분.
    00:00:04.500 --> 00:00:06.500
    오늘은 자막 파일 형식에 대해 설명한다.
  • 고급 기능: 자막 위치, 정렬, 크기, 색상 등을 세밀하게 제어할 수 있다

    • CSS 스타일을 적용할 수 있다
    • 메타데이터와 챕터 정보를 포함할 수 있다
    WEBVTT
    STYLE
    ::cue {
    background-color: rgba(0,0,0,0.8);
    color: white;
    }
    00:00:01.000 --> 00:00:04.000 align:start position:10%
    안녕하세요, 여러분.
  • 호환성: HTML5 <video> 태그와 웹 기반 플레이어에서 네이티브로 지원한다

  • 다국어: 여러 언어를 효과적으로 관리할 수 있다

웹 기반 비디오 서비스를 개발하거나 고급 자막 스타일링이 필요한 경우 VTT를 사용하는 것이 적합하다.

SMI (Synchronized Multimedia Integration Language)

Section titled “SMI (Synchronized Multimedia Integration Language)”

HTML 기반의 자막 포맷으로, 한국에서 특히 많이 사용되었다. 다국어 자막을 하나의 파일에 포함할 수 있다.

  • 구조: HTML과 유사한 태그 기반 구조다

    • <SAMI>, <HEAD>, <BODY> 태그로 구성된다
    • <SYNC> 태그로 타임코드를 지정한다
    • 시간 단위는 밀리초다
    <SAMI>
    <HEAD>
    <STYLE TYPE="text/css">
    P { font-family: Arial; font-weight: normal; color: white; }
    .KRCC { Name: Korean; lang: ko-KR; }
    .ENCC { Name: English; lang: en-US; }
    </STYLE>
    </HEAD>
    <BODY>
    <SYNC Start=1000>
    <P Class=KRCC>안녕하세요, 여러분.</P>
    <P Class=ENCC>Hello, everyone.</P>
    </SYNC>
    <SYNC Start=4500>
    <P Class=KRCC>오늘은 자막 파일 형식에 대해 설명한다.</P>
    <P Class=ENCC>Today I'll explain subtitle file formats.</P>
    </SYNC>
    </BODY>
    </SAMI>
  • 다국어: 하나의 파일에 여러 언어를 포함할 수 있다

    • 언어별 클래스를 정의하여 선택적으로 표시한다
  • 서식: HTML/CSS를 활용한 강력한 스타일링이 가능하다

  • 호환성: 국내 미디어 플레이어와 레거시 시스템에서 잘 지원된다

다국어 자막을 단일 파일로 관리해야 하거나, 레거시 시스템과의 호환성이 중요한 경우 SMI가 유용하다.

  • FFmpeg: 자막 포맷 간 변환을 지원한다

    Terminal window
    ffmpeg -i input.srt output.vtt

최신 웹 환경에서는 VTT를, 범용성이 필요한 경우 SRT를 사용하는 것을 권장한다.