請求自動字幕

本主題說明如何使用 Dynamic Ingest API 請求從視頻中的音軌生成字幕。

簡介

Brightcove Auto Captioning 是一項平台級服務,可讓您自動為 31 種不同語言的新視頻或現有視頻生成字幕(前提是您有指定語言的音軌)。與所有語音轉文本服務一樣,自動字幕並非 100% 準確,但它提供了一種快速簡便的方法來直接在 Video Cloud 中生成字幕。

Video Cloud 使用以下過程來確定將用於生成字幕的來源。

  • 如果視頻有默認音軌,將用作字幕源文件(媒體模塊默認支持)
  • 如果視頻沒有默認音軌但存在主/夾層文件,則該文件將用作源文件(媒體模塊默認支持)
  • 如果視頻沒有默認音軌或主/夾層文件,但在動態攝取調用中指定了音軌,則將使用指定的音軌(媒體模塊尚不支持)
  • 如果視頻沒有默認音軌,沒有主/夾層文件,也沒有指定音軌,則無法生成字幕

設定

的設置Dynamic Ingest requests 是一樣的,無論你是攝取視頻,圖像,音軌,WebVTT文件、請求自動字幕或所有這些:

請求網址
https://ingest.api.brightcove.com/v1/accounts/{account_id}/videos/{video_id}/ingest-requests
驗證
身份驗證需要一個訪問令牌作為Bearer令牌在Authorization標頭:
      Authorization: Bearer {access_token}

要獲取訪問令牌,您將需要客戶憑證(見下文)。有關獲取訪問令牌的過程,請參見獲取訪問令牌

關於 S3 的注意事項

如果您的源文件將從受保護的S3存儲桶中提取,則需要設置存儲桶策略以允許Video Cloud訪問文件。看到使用Dynamic Ingest與S3有關詳細信息。

取得認證

要獲取client_idclient_secret,您需要轉到 OAuth UI 並註冊此應用程序:

這些是您將需要的權限:

動態提取權限
Dynamic Ingest權限

您還可以通過CURLPostman或我們的在線應用程序獲取憑據-請參閱:

如果您直接從 API 獲取憑據,則以下是您需要的權限:

[
  "video-cloud/video/all",
  "video-cloud/ingest-profiles/profile/read",
  "video-cloud/ingest-profiles/account/read",
  "video-cloud/upload-urls/read"
]

使用案例

以下是一些典型的用例

為新的攝取或重新轉碼創建自動字幕

要求主體
{
  "master": {
    "use_archived_master": true
  },
  "profile": "multi-platform-standard-static-with-mp4",
  "transcriptions": [
    {
      "srclang": "EN-us",
      "kind": "captions",
      "label": "English",
      "status" : "published",
      "default": true
    }
  ],
  "priority": "normal"
}

攝取音軌時創建自動字幕

要求主體
{
  "audio_tracks": {
    "merge_with_existing": true,
    "masters": [
        {
            "language": "fr-FR",
            "variant": "alternate",
            "url": "https://support.brightcove.com/test-assets//audio/celtic_lullaby.m4a"
        }
    ]
  },
  "transcriptions": [
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "status" : "published",
          "default": false,
          "input_audio_track": {
              "language": "fr-FR",
              "variant": "alternate"
          }
      }
  ]
}

使用數字母版為現有視頻創建自動字幕

要求主體
{
  "transcriptions": [
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "default": false
      }
  ]
}

為定義音軌的現有視頻創建自動字幕

要求主體
{
  "transcriptions": [
      {
          "srclang": "en-US",
          "kind": "captions",
          "label": "english-EN",
          "default": false,
          "input_audio_track": {
              "language": "en-US",
              "variant": "main"
          }
      },
      {
          "srclang": "fr-FR",
          "kind": "captions",
          "label": "french-FR",
          "default": false,
          "input_audio_track": {
              "language": "fr-FR",
              "variant": "alternate"
          }
      }
  ]
}

請求自動字幕的正文字段

下表顯示了自動字幕的請求正文字段。

自動字幕和文字記錄字段
欄位 類型 必填 描述
autodetect 布林 true自動檢測來自音頻源的語言。false使用srclang指定音訊語言。
default 布林 如果truesrclang將被忽略,並且將使用主音軌-語言將被自動檢測。
input_audio_track 對象 對於多個音軌,定義要從中提取字幕的音頻。它由語言和變體組成(兩者都是必需的)。
kind 要生成的輸出類型。允許值:
  • 字幕
  • 成績單
注意事項:
  1. 如果 kindtranscripts並且 包含 transcripts 文件的 url ,則將攝取 transcript 文件,並且不會生成自動字幕。有關更多詳細信息,請參閱 攝取轉錄
  2. 如果種類成績單 , 網址對於成績單文件是不是包括在內,將生成成績單文件和字幕,
  3. 如果 kindcaptions ,將生成一個 captions,而不是一個 transcript 文件。
label 人類可讀的標籤。默認為 BCP-47 風格的語言代碼。
srclang 文本軌道的 BCP-47 樣式語言代碼(en-US、fr-FR、es-ES 等);查看 支持的語言
status 指示註解的實際情況 (如果是published ) draft
url 腳本文件所在的 URL。必須包含的 種類成績單。必須不是被包括在內,如果種類字幕 .

input_audio_track欄位

input_audio_track 字段
欄位 類型 必填 描述
language 文本軌道的 BCP-47 樣式語言代碼(en-US、fr-FR、es-ES 等);查看 支持的語言
variant 指定要使用的變體:
  • main
  • alternate
  • dub
  • commentary
  • descriptive

支持的語言

目前,自動字幕僅限於以下語言

  • 澳大利亞英語 (en-AU)
  • 南非荷蘭語 (af-ZA)
  • 巴西葡萄牙語 (pt-BR)
  • 英國英語 (en-GB)
  • 加拿大法語 (fr-CA)
  • 丹麥語 (da-DK)
  • 荷蘭語 (nl-NL)
  • 波斯語 (fa-IR)
  • 法語 (fr-FR)
  • 德語 (de-DE)
  • 海灣阿拉伯語 (ar-AE)
  • 希伯來語 (he-IL)
  • 印度英語 (en-IN)
  • 印度印地語 (hi-IN)
  • 印度尼西亞語 (id-ID)
  • 愛爾蘭英語 (en-IE)
  • 意大利語 (it-IT)
  • 日語 (ja-JP)
  • 韓語 (ko-KR)
  • 馬來語 (ms-MY)
  • 普通話 - 大陸 (zh-CN)
  • 普通話(台灣)(zh-TW)
  • 現代標準阿拉伯語 (ar-SA)
  • 新西蘭英語 (en-NZ)
  • 葡萄牙語 (pt-PT)
  • 俄語 (ru-RU)
  • 蘇格蘭英語 (en-AB)
  • 南非英語 (en-ZA)
  • 西班牙語 (es-ES)
  • 瑞士德語 (de-CH)
  • 泰米爾語 (ta-IN)
  • 泰盧固語 (te-IN)
  • 泰語 (th-TH)
  • 土耳其語 (tr-TR)
  • 美國英語 (en-US)
  • 美國西班牙語 (es-US)
  • 威爾士英語 (en-WL)