支持 聯繫支持 | 系統狀況 系統狀態

添加WebVTT字幕(文本軌道)

在本主題中,您將學習如何使用 CMS API 將字幕或章節的WebVTT文本軌道添加到視頻中。

簡介

最初使用POST請求創建視頻時,無法添加WebVTT字幕(文本軌道):

  • 要吸收文本軌道 Video Cloud,曲目可以包含在“動態提取”請求中以提取視頻-請參閱 提取WebVTT文件 有關詳細信息。
  • 如果文本軌道將託管在某個遠程位置,則可以使用以下命令將它們添加到視頻中: PATCH 請求更新視頻元數據。 看到 CMS API 示例:更新視頻 有關更新請求的示例。

不論是攝取文字音軌還是遠程音軌,都可以使用 PATCH 請求更新與文本軌道關聯的元數據(例如 scrlang or label,或者文本軌道是否為 default 視頻)。

筆記

  • 當您更新Dynamic Delivery視頻上的文本軌道時,該過程是異步的,因此響應狀態代碼為 202 ACCEPTED,並且更新不會立即進行。
  • 每個視頻最多只能有1000條文字軌道。
  • 字幕的文本必須編碼為UTF-8,才能正確顯示雙字節語言(如日語和韓語)。

遠程或攝取

授權

要求 CMS API 需要包含您的訪問令牌的授權標頭。 有關如何獲取客戶端憑據並使用它們來檢索訪問令牌的詳細信息,請參閱 Brightcove OAuth概述.

您需要更新視頻元數據的操作是 video-cloud/video/update or video-cloud/video/all.

句法

要求

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

要求正文:

請求主體將是一個JSON對象,其中包含文本軌道數組:

    {"text_tracks" : [ {
      "src" : "http://learning-services-media.brightcove.com/captions/bc_smart_ja.vtt",
      "srclang" : "ja",
      "label" : "日本人",
      "kind" : "captions",
      "mime_type" : null,
      "default" : false
    }, {
      "src" : "http://learning-services-media.brightcove.com/captions/bc_smart_es.vtt",
      "srclang" : "es",
      "label" : "español",
      "kind" : "captions",
      "mime_type" : null,
      "default" : false
    }, {
      "src" : "http://learning-services-media.brightcove.com/captions/bc_smart_de.vtt",
      "srclang" : "de",
      "label" : "Deutsch",
      "kind" : "captions",
      "mime_type" : null,
      "default" : false
    }, {
      "src" : "http://learning-services-media.brightcove.com/captions/bc_smart_fr.vtt",
      "srclang" : "fr",
      "label" : "français",
      "kind" : "captions",
      "mime_type" : null,
      "default" : false
    }, {
      "src" : "http://learning-services-media.brightcove.com/captions/bc_smart.vtt",
      "srclang" : "en",
      "label" : "English",
      "kind" : "captions",
      "mime_type" : null,
      "default" : true
    }
    ]}

取代文字軌道

替換現有文本軌道(上載或遠程)的過程分為兩個步驟:

  1. 通過刪除現有的文本軌道 CMS API 更新(PATCH):

    API請求(PATCH)

        https://cms.api.brightcove.com/v1/accounts/account_id/videos/video_id

    請求正文

        {
              "text_tracks": []
          }
  2. 如果要添加遠程文本軌道,請通過另一個添加 CMS API 更新(PATCH)(可選-如果要上載文本軌道,請跳至下一步):

    API請求(PATCH)

        https://cms.api.brightcove.com/v1/accounts/account_id/videos/video_id

    請求正文

        {
            "text_tracks": [
                {
                  "src": "https://learning-services-media.brightcove.com/vtt/sample.vtt",
                  "srclang": "en",
                  "label": "EN",
                  "kind": "captions",
                  "mime_type": "text/webvtt"
                },
                {
                  "src": "https://learning-services-media.brightcove.com/vtt/sample-es.vtt",
                  "srclang": "es",
                  "label": "ES",
                  "kind": "captions",
                  "mime_type": "text/webvtt"
                }
            ]
        }
  3. 如果您要上傳新的文本軌道,請通過POST請求將其添加到 Dynamic Ingest API:

    API請求(POST)

        https://ingest.api.brightcove.com/v1/accounts/account_id/videos/video_id/ ingest請求

    請求正文

        {
            "text_tracks": [
                {
                    "url": "http://solutions.brightcove.com/bcls/assets/vtt/sample.vtt",
                    "srclang": "en",
                    "kind": "captions",
                    "label": "EN",
                    "default": true
                },
                {
                    "url": "http://solutions.brightcove.com/bcls/assets/vtt/sample-ar.vtt",
                    "srclang": "ar",
                    "kind": "captions",
                    "label": "AR",
                    "default": false
                }
            ]
        }
  4. 向GET請求 CMS API 驗證您的新文本軌道是否與視頻相關聯:
                  https://cms.api.brightcove.com/v1/accounts/account_id/videos/video_id

頁面最後更新於12年2020月XNUMX日