CMS API를 사용하여 텍스트 트랙 관리

이 항목에서는 CMS API를 사용하여 비디오의 WebVTT 텍스트 트랙을 업데이트하는 방법을 배웁니다.

서문

텍스트 트랙이 인제스트되든 (정적 또는 동적) 인제스트되었든 원격 트랙이든 관계없이PATCH요청을 사용하여 텍스트 트랙과 연결된 메타데이터를 업데이트할 수 있습니다.

참고 사항

  • 이 문서에서 설명하는 방법은 동영상에 추가된 WebVTT 파일을 업데이트하는 방법입니다. Dynamic Ingest API를 사용하여 WebVTT 파일을 Video Cloud로 수집하거나 CMS API를 사용하여 비디오에 원격 WebVTT 파일을 추가 할 수 있습니다.

권한

CMS API에 대한 요청에는 액세스 토큰이 포함된 인증 헤더가 필요합니다. 클라이언트 자격 증명을 얻고 이를 사용하여 액세스 토큰을 검색하는 방법에 대한 자세한 내용은 Brightcove OAuth 개요를 참조하십시오 .

비디오 메타데이터를 업데이트하는 데 필요한 작업은video-cloud/video/update또는video-cloud/video/all입니다.

구문

전체 어레이를 얻으려면 먼저 다음 요청을 하는 것이 좋습니다.


GET
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/{video_ID}

텍스트 트랙 업데이트

텍스트 트랙을 업데이트할 때 텍스트 트랙 필드 의 일부 필드는 유형에 따라 다르게 처리될 수 있습니다.

텍스트 트랙 필드
필드 유형 원격 텍스트 트랙 정적 처리된 텍스트 트랙 동적 처리된 텍스트 트랙
id 문자열 읽기 전용 값. 업데이트해야 하는 TT를 식별하는 데 필요합니다.
account_id 스트링 이 필드에 대한 업데이트는 무시됩니다.
src 스트링 필수이며 255자로 제한됩니다. 이 필드에 대한 업데이트는 무시됩니다.
srclang 스트링 32자로 제한됩니다.
label 스트링 255자로 제한됩니다.
kind 열거형 유효한 값은 다음과 같습니다.
  • subtitles
  • captions
  • descriptions
  • chapters
  • metadata
status 열거형 유효한 값(대소문자 구분):
  • published - 시청자는 텍스트 트랙을 사용할 수 있습니다.
  • draft - 텍스트 트랙은 시청자에게 제공되지 않습니다.
  • null - (기본값) 텍스트 트랙은 시청자에게 제공됩니다.
mime_type 스트링 32자로 제한됩니다. 이 필드에 대한 업데이트는 무시됩니다.
asset_id 스트링 읽기 전용 값. 이 유형에 적용할 수 없는 필드입니다. 이 필드에 대한 업데이트는 무시됩니다.
in_band_metadata_track_dispatch_type 스트링 이 유형에 적용할 수 없는 필드입니다. 이 필드에 대한 업데이트는 무시됩니다.
sources 어레이 읽기 전용 값.
default 부울 true또는false . 인제스트된 텍스트 트랙의 필드는default원격 및 인제스트된 텍스트 트랙에 대해 동일한 동작을 갖습니다. 서로 다른 텍스트default=true트랙을 여러 개 추가할 수는 없습니다srclang .  

요청

원격, 정적 및 동적 텍스트 트랙에 적용할 수 있습니다.


PATCH
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos/{video_ID}

요청 본문 예시

원격 텍스트 트랙

요청 본문은 텍스트 트랙 배열이 포함 된 JSON 객체입니다.

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "src" :     "https://some.site.com/captions/bc_smart_ja.vtt",
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published"
    }, 
    { 
      "id" : "5678-5678-5678"
      "src" : "https://some.site.com/captions/bc_smart_es.vtt",  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published"
    } 
  ] 
}
        
      
정적 텍스트 트랙

요청 본문은 텍스트 트랙 배열이 포함 된 JSON 객체입니다.

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published"
    }, 
    { 
      "id" : "5678-5678-5678"  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published"
    } 
  ] 
}
        
      
동적 텍스트 트랙

요청 본문은 텍스트 트랙 배열이 포함 된 JSON 객체입니다.

        
          {
  "text_tracks" : 
  [ 
    { 
      "id" : "1234-1234-1234"
      "srclang" : "ja", 
      "label" : "日本人", 
      "kind" : "captions", 
      "mime_type" : null, 
      "default" : true,
      "status": "published" 
    }, 
    { 
      "id" : "5678-5678-5678"  
      "srclang" : "es", 
      "label" : "español", 
      "kind" : "descriptions",
      "mime_type" : null,
      "default" : false,
      "status": "published" 
    } 
  ] 
}