注意:YouTube 於 2024 年 3 月 13 日宣布,將淘汰
captions.insert 和 captions.update API 端點的 sync 參數。你仍可在 YouTube 創作者工作室中使用字幕自動同步功能。詳情請參閱 API 修訂版本歷史記錄。caption 資源代表 YouTube 字幕音軌。字幕軌只能與一個 YouTube 影片建立關聯。
方法
這個 API 支援 captions 資源的下列方法:
資源表示法
以下 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 |
stringYouTube 用來識別字幕音軌的 ID。 |
snippet |
objectsnippet 物件包含字幕的基本詳細資料。 |
snippet.videoId |
stringYouTube 會使用這個 ID 來識別與字幕音軌相關聯的影片。 |
snippet.lastUpdated |
datetime字幕軌上次更新的日期和時間。這個值採用 ISO 8601 格式指定。 |
snippet.trackKind |
string字幕音軌的類型。 這個屬性的有效值如下:
|
snippet.language |
string字幕音軌的語言。屬性值為 BCP-47 語言標記。 |
snippet.name |
string字幕音軌的名稱。這個名稱會在播放期間以選項的形式顯示給使用者。支援的名稱長度上限為 150 個半形字元。 |
snippet.audioTrackType |
string與字幕音軌相關聯的音軌類型。 這個屬性的有效值如下:
|
snippet.isCC |
boolean指出音軌是否含有失聰和重聽人士專用的隱藏式輔助字幕。預設值為 false。 |
snippet.isLarge |
boolean指出字幕軌是否使用大字體,方便視障人士觀看。預設值為 false。 |
snippet.isEasyReader |
boolean指出字幕音軌是否採用「易讀」格式,也就是語言學習者程度的第三級。預設值為 false。 |
snippet.isDraft |
boolean指明字幕音軌是否為草稿。如果值為 true,則該曲目不會公開顯示。預設值為 false。 |
snippet.isAutoSynced |
boolean指出 YouTube 是否已將字幕音軌與影片中的音訊音軌同步。如果在字幕軌上傳時明確要求同步,則值會是 true。舉例來說,呼叫 captions.insert 或 captions.update 方法時,您可以將 sync 參數設為 true,指示 YouTube 將已上傳的曲目同步至影片。如果值為 false,YouTube 會使用上傳字幕音軌中的時間碼,判斷何時顯示字幕。 |
snippet.status |
string字幕音軌的狀態。 此屬性的有效值如下:
|
snippet.failureReason |
stringYouTube 無法處理字幕軌的原因。只有在 state 屬性的值為 failed 時,才會出現這個屬性。這個屬性的有效值如下:
|