Captions

참고: 2024년 3월 13일 YouTube는 sync 매개변수가 지원 중단되었습니다. captions.insertcaptions.update API 엔드포인트 YouTube 크리에이터 스튜디오에서 자막 자동 동기화를 계속 사용할 수 있습니다. 자세한 내용은 API 업데이트 기록: 확인하세요.

caption 리소스는 YouTube 자막 트랙을 나타냅니다. 자막 트랙은 정확히 하나의 YouTube 동영상에 연결됩니다.

메서드

API는 captions 리소스에 다음 메서드를 지원합니다.

list
지정된 동영상과 연결된 자막 트랙 목록을 검색합니다. API 응답에는 실제 자막이 포함되어 있지 않으며 captions.download 메서드는 자막 트랙을 검색하는 기능을 제공합니다. 지금 사용해 보세요.
insert
자막 트랙을 업로드합니다.
업데이트
자막 트랙을 업데이트합니다. 자막 트랙을 업데이트할 때 트랙의 초안 상태를 변경하거나, 트랙의 새 자막 파일을 업로드하거나, 두 가지 방법 모두 수행할 수 있습니다.
삭제
지정된 자막 트랙을 삭제합니다. 지금 사용해보기
download
자막 트랙을 다운로드합니다. 요청에 tfmt 매개변수 값이 지정되지 않은 경우 자막 트랙은 원래 형식으로 반환되고, 요청에 tlang 매개변수 값이 지정되지 않은 경우 원래 언어로 반환됩니다.

리소스 표현

다음 JSON 구조는 captions 리소스의 형식을 보여줍니다.

{
  "kind": "youtube#caption",
  "etag": etag,
  "id": string,
  "snippet": {
    "videoId": string,
    "lastUpdated": datetime,
    "trackKind": string,
    "language": string,
    "name": string,
    "audioTrackType": string,
    "isCC": boolean,
    "isLarge": boolean,
    "isEasyReader": boolean,
    "isDraft": boolean,
    "isAutoSynced": boolean,
    "status": string,
    "failureReason": string
  }
}

속성

다음 표는 이 리소스에 표시되는 속성을 정의합니다.

속성
kind string
API 리소스의 유형을 식별합니다. 값은 youtube#caption입니다.
etag etag
이 리소스의 Etag입니다.
id string
YouTube가 자막 트랙을 고유하게 식별하는 데 사용하는 ID입니다.
snippet object
snippet 객체는 자막에 대한 기본 세부정보를 포함합니다.
snippet.videoId string
YouTube가 자막 트랙과 연결된 동영상을 고유하게 식별하는 데 사용하는 ID입니다.
snippet.lastUpdated datetime
자막 트랙이 마지막으로 업데이트된 날짜 및 시간입니다. 값은 ISO 8601 형식으로 지정됩니다.
snippet.trackKind string
Caption 트랙의 유형입니다.

이 속성의 유효한 값은 다음과 같습니다.
  • ASR - 자동 음성 인식을 사용하여 생성된 자막 트랙입니다.
  • forced - 플레이어에서 다른 트랙을 선택하지 않으면 재생되는 자막 트랙입니다. 예를 들어 외국어로 말하는 외계인이 나오는 동영상의 경우 외국어로 된 자막만 표시하는 강제 자막 트랙이 있을 수 있습니다.
  • standard - 일반 자막 트랙입니다. 기본값입니다.
snippet.language string
자막 트랙의 언어입니다. 속성 값은 BCP-47 언어 태그입니다.
snippet.name string
Caption 트랙의 이름입니다. 이 이름은 재생 중에 사용자에게 옵션으로 표시됩니다. 지원되는 최대 이름 길이는 150자(영문 기준)입니다.
snippet.audioTrackType string
자막 트랙과 연결된 오디오 트랙 유형입니다.

이 속성에 유효한 값은 다음과 같습니다.
  • commentary - 자막 트랙은 디렉터리 해설과 같이 해설이 포함된 대체 오디오 트랙에 해당합니다.
  • descriptive - 자막 트랙이 추가 설명 오디오가 포함된 대체 오디오 트랙에 해당합니다.
  • primary - 자막 트랙은 동영상의 기본 오디오 트랙에 해당하며 일반적으로 동영상과 연결된 오디오 트랙입니다.
  • unknown: 기본값입니다.
snippet.isCC boolean
트랙에 청각장애인 및 난청을 위한 자막이 포함되어 있는지 여부를 나타냅니다. 기본값은 false입니다.
snippet.isLarge boolean
자막 트랙에 시각 장애가 있는 사용자를 위해 큰 텍스트를 사용하는지 여부를 나타냅니다. 기본값은 false입니다.
snippet.isEasyReader boolean
자막 트랙이 '초보자'용 형식인지 나타냅니다. 즉, 언어 학습자를 위한 3학년 수준입니다. 기본값은 false입니다.
snippet.isDraft boolean
자막 트랙이 초안인지 여부를 나타냅니다. 값이 true이면 트랙이 공개적으로 표시되지 않습니다. 기본값은 false입니다.
snippet.isAutoSynced boolean
YouTube에서 자막 트랙을 동영상의 오디오 트랙에 동기화했는지 나타냅니다. 자막 트랙이 업로드될 때 동기화가 명시적으로 요청된 경우 값은 true입니다. 예를 들어 captions.insert 또는 captions.update 메서드를 호출할 때 sync 매개변수를 true로 설정하여 YouTube에 업로드된 트랙을 동영상에 동기화하도록 지시할 수 있습니다. 값이 false이면 YouTube는 업로드된 자막 트랙의 시간 코드를 사용하여 자막을 표시할 시점을 결정합니다.
snippet.status string
자막 트랙의 상태입니다.

이 속성에 유효한 값은 다음과 같습니다.
  • failed
  • serving
  • syncing
snippet.failureReason string
YouTube에서 자막 트랙을 처리하지 못한 이유입니다. 이 속성은 state 속성의 값이 failed인 경우에만 존재합니다.

이 속성에 유효한 값은 다음과 같습니다. <ph type="x-smartling-placeholder">
    </ph>
  • processingFailed – YouTube에서 업로드된 자막 트랙을 처리하지 못했습니다.
  • unknownFormat - 자막 트랙의 형식을 인식할 수 없습니다.
  • unsupportedFormat - 지원되지 않는 자막 트랙 형식입니다.