한국어

비디오 및 자막 · 자막 툴킷

WebVTT 설명: WebSRT에서 HTML5 비디오용 W3C 캡션 형식까지

· 배경

자막 webvtt 파일 형식 브라우저 처리 중

WebVTT 헤더, 설정 및 브라우저 트랙 연결을 얻는 일반 큐 파일
원본 ToolAcre 벡터 일러스트레이션

WebVTT는 브라우저가 기본적으로 캡션을 표시할 수 있도록 만들어졌습니다. 이 게시물에서는 WebSRT의 기원, SRT과의 차이점, 사양에 추가된 내용 및 현재 사용되는 위치를 다룹니다.

브라우저에 자체 캡션 형식이 필요한 이유 — 네이티브 비디오의 도착과 표준 트랙 형식의 부재

기본 비디오는 웹 페이지에 미디어 요소를 제공했지만 시간이 지정된 텍스트에는 여전히 브라우저가 가져오고 구문 분석할 수 있는 상호 운용 가능한 파일 표현이 필요했습니다. 비공식 SRT 파일은 정의된 구문, 큐 동작 및 프레젠테이션용 후크가 필요한 브라우저 기능에 충분하지 않았습니다. WebVTT는 인식 가능한 큐 및 타임스탬프 형태를 유지하면서 웹 연결 계약을 제공합니다.

해당 브라우저 컨텍스트는 친숙성과 추가 구조를 모두 설명합니다. 최소 VTT은(는) SRT에 가깝지만 다른 확장자를 사용하면 SRT가 아닙니다. 서명, 타임스탬프 구두점 및 큐 문법은 브라우저가 WebVTT를 수신했는지 여부를 결정하는 일부입니다.

WebSRT 및 WebVTT로 이름 변경 — 초기 WHATWG 작업 및 W3C로의 이동

형식은 WebVTT(웹 비디오 텍스트 트랙)가 되기 전에 이전 WebSRT 이름으로 논의되었습니다. 해당 계보는 디자인 경로를 전달합니다. 널리 이해되는 자막 블록 모양으로 시작한 다음 웹 미디어에 필요한 추가 동작을 정의합니다. 이 기사에서는 날짜, 명명된 편집자 및 자세한 표준 본문 연대기를 피합니다. 왜냐하면 이러한 사실은 구현 주장에 사용된 저장소 자료로 확인되지 않기 때문입니다.

프런트 엔드 개발자의 경우 WebVTT가 플레이어별 규칙이 아닌 브라우저 미디어 기능에 대한 입력으로 지정된다는 지속적인 교훈을 얻을 수 있습니다. 구현은 기록 레이블에 의존하는 대신 현재 구문을 대상으로 하고 소비 플레이어에서 테스트해야 합니다.

사양이 SRT에 추가하는 것 — WEBVTT 헤더, 큐 식별자, 큐 설정 및 스타일 후크

WebVTT는 필수 WEBVTT 서명을 추가하고 숫자일 필요가 없는 큐 식별자를 허용합니다. 큐 설정은 종료 시간을 따라 정렬 및 배치를 표현할 수 있는 반면, NOTE, STYLE 및 REGION 블록은 일반 SRT 큐 목록 이상의 메타데이터 및 프레젠테이션 구조를 제공합니다. 브라우저 스타일 후크는 텍스트를 비디오에 굽지 않고도 표시된 신호를 처리할 수 있습니다.

ToolAcre는 집중된 하위 집합을 구현합니다. 종료 타임스탬프 이후에 발견된 설정을 유지하지만 큐 식별자를 삭제하고 로드 시 NOTE, STYLE 및 REGION 블록을 건너뜁니다. 일반적인 변환에는 충분하며 의도적으로 전체 WebVTT 모델에 대한 무손실 편집기는 아닙니다.

점, 헤더 및 UTF-8 — SRT 파일이 유효한 VTT 파일이 되는 것을 막는 작은 차이점

세 가지 작은 세부 사항은 최소 VTT을 SRT에서 분리합니다. 첫 번째 줄에는 WEBVTT 서명이 있어야 하고, 타임스탬프는 밀리초 전에 마침표를 사용하고, 텍스트는 UTF-8여야 합니다. ToolAcre는 선택적 바이트 순서 표시와 선행 공백을 허용하면서 서명을 테스트하여 VTT을 감지합니다. 해당 서명이 없는 텍스트의 기본값은 SRT입니다.

직렬 변환기는 소스에서 사용한 내용을 유지하는 대신 서명과 구두점을 작성합니다. 파일 입력은 UTF-8로 읽혀집니다. 따라서 레거시 인코딩된 SRT은 변환 전에 대체 문자를 표시할 수 있으며 컨테이너 구문을 변경하면 이미 잘못 디코딩된 바이트를 복구할 수 없습니다.

WebVTT가 사용되는 곳 — HTML5 트랙 요소, HLS 캡션 및 다양한 비디오 플랫폼

WebVTT는 HTML 비디오 트랙 요소와 연결된 사이드카 형식이며 시간 제한 텍스트를 사용하는 웹 전달 시스템에 나타납니다. 일부 스트리밍 및 플랫폼 워크플로도 WebVTT를 사용하지만 승인 세부 정보는 대상에 속하므로 확장에서 유추하기보다는 대상에서 확인해야 합니다. 유효한 VTT 파일은 여전히 ​​잘못된 미디어 유형으로 제공되거나 교차 출처 전달 규칙에 의해 차단될 수 있습니다.

툴킷은 파일 표현을 생성합니다. HTML 페이지, 서버 헤더 또는 스트리밍 매니페스트를 구성하지 않습니다. 전환을 전달의 한 단계로 간주하고 청중이 사용할 동일한 URL, 헤더 및 원본 관계로 실제 플레이어를 테스트하십시오.

여기서 다루지 않는 내용 — 대부분의 캡션 파일이 절대 사용하지 않는 전체 스타일 및 영역 모델

전체 스타일 및 지역 모델은 이 변환기 외부에 있습니다. 복잡한 큐 선택기, 지역 레이아웃 및 프레젠테이션 정책은 WebVTT 인식 저작 도구 및 브라우저 테스트에 적합합니다. 파서는 STYLE 및 REGION 블록을 건너뛰므로 이 경로를 통해 이러한 마스터를 보내면 눈에 보이지 않게 보존되지 않고 출력에서 ​​제거됩니다.

이 도구는 또한 SRT에 조치를 취하기 위한 정의된 메커니즘이 없더라도 큐 설정을 SRT 출력으로 전달합니다. 문서화된 제한은 배치가 중요할 때마다 원본 VTT 마스터를 유지하는 이유이지 모든 대상이 동일한 방식으로 추가 텍스트를 무시한다고 가정하는 이유는 아닙니다.

요약: 웹의 실제 표준 - Subtitle Toolkit이 이를 따르는 WebVTT를 생성하는 방법

WebVTT는 익숙한 시간 제한 텍스트 패턴을 정의된 웹 입력으로 변환합니다. 서명은 이를 식별하고 타임스탬프 문법은 표준이며 큐 모델은 일반 순차 텍스트보다 더 많은 것을 전달할 수 있습니다. Subtitle Toolkit은 시간을 전체 밀리초로 구문 분석한 다음 식별자 줄 없이 WEBVTT 헤더, 점 구분 기호 및 신호를 작성하여 SRT에서 최소 표준 파일을 생성합니다.

소스와 출력 큐 수를 비교하고 결과를 플레이어에 첨부하기 전에 모든 구문 분석 문제를 읽으십시오. 소스가 주석, 영역, 스타일 블록 또는 식별자에 의존하는 경우 해당 기능을 유지하는 작업 흐름을 선택하십시오. 집중된 변환기는 완전한 왕복 충실도를 암시하기보다는 해당 경계를 명시해야 합니다.