LiveBroadcasts: transition

變更 YouTube 現場直播的狀態,並啟動新狀態的相關程序。例如,當您將廣播的狀態轉換為 testing 時,YouTube 就會開始將影片傳輸至該廣播的監控串流。呼叫這個方法之前,請先確認繫結到廣播的串流的 status.streamStatus 屬性值為 active

常見用途

要求

HTTP 要求

POST https://www.googleapis.com/youtube/v3/liveBroadcasts/transition

授權

此要求需要至少具備下列其中一個範圍的授權 (進一步瞭解驗證和授權)。

範圍
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

參數

下表列出這項查詢支援的參數。上方列出的所有參數都是查詢參數。

參數
必要參數
broadcastStatus string
broadcastStatus 參數可識別廣播變更的狀態。請注意,如要將廣播轉換為 testinglive 狀態,status.streamStatus 必須是 active,且該廣播可繫結的串流。

可接受的值如下:
  • complete - 廣播已結束。YouTube 會停止傳輸影片。
  • live - 觀眾可以看見廣播。YouTube 會將影片傳輸到廣播的監控串流及其廣播串流。
  • testing:開始測試廣播。YouTube 會將影片傳輸到廣播的監控串流。請注意,只有在其 contentDetails.monitorStream.enableMonitorStream 屬性設為 true 時,您才能將廣播轉換為 testing 狀態。
id string
id 參數會指定即將轉換為其他狀態的廣播專屬 ID。
part string
part 參數會指定以逗號分隔的清單,其中包含 API 回應將包含的一或多個 liveBroadcast 資源屬性。您可以在參數值中加入的 part 名稱為 idsnippetcontentDetailsstatus
選用參數
onBehalfOfContentOwner string
這個參數只能在妥善的授權要求中使用。注意:這個參數僅適用於 YouTube 內容合作夥伴。

onBehalfOfContentOwner 參數表示請求的授權憑證能代表代替參數值中所指定的內容擁有者所擔任的 YouTube CMS 使用者。這個參數適用於擁有和管理多個不同 YouTube 頻道的 YouTube 內容合作夥伴。內容擁有者只要驗證一次即可,就能存取所有影片和頻道資料,而不需要為每個頻道分別提供驗證憑證。使用者驗證的 CMS 帳戶必須連結至指定的 YouTube 內容擁有者。
onBehalfOfContentOwnerChannel string
這個參數只能在妥善的授權要求中使用。這個參數只能在適當的授權要求中使用。注意:這個參數僅適用於 YouTube 內容合作夥伴。

onBehalfOfContentOwnerChannel 參數會指定影片所屬頻道的 YouTube 頻道 ID。如果要求指定了 onBehalfOfContentOwner 參數的值,就必須使用這個參數,而且這個參數只能搭配該參數使用。此外,要求必須使用連結至 onBehalfOfContentOwner 參數指定內容擁有者的 CMS 帳戶。最後,onBehalfOfContentOwnerChannel 參數值指定的管道必須連結至 onBehalfOfContentOwner 參數指定的內容擁有者。

這個參數適用於擁有和管理多個不同 YouTube 頻道的 YouTube 內容合作夥伴。這樣內容擁有者就能驗證一次,並且能代表參數值指定的頻道執行動作,而不必分別為每個頻道提供驗證憑證。

要求主體

呼叫此方法時請不要提供要求主體。

回應

如果成功,此方法會在回應主體中傳回 liveBroadcast 資源

錯誤

下表說明 API 在回應此方法時可能傳回的錯誤訊息。詳情請參閱錯誤訊息說明文件。

錯誤類型 錯誤詳細資料 說明
backendError errorExecutingTransition 變更廣播狀態時發生錯誤。
forbidden (403) errorStreamInactive 與廣播繫結的串流無效時,無法進行要求的轉場效果。
forbidden (403) invalidTransition 現場直播無法透過目前的狀態轉換成所要求的狀態。
forbidden (403) redundantTransition 現場直播處於要求的狀態,或是正在處理到要求的狀態。
insufficientPermissions insufficientLivePermissions 此要求無權移轉現場直播。
insufficientPermissions livePermissionBlocked 授權要求的使用者目前無法在 YouTube 上串流播放即時影像。如要進一步瞭解使用者無法串流播放直播影片的原因,請前往使用者的頻道設定:https://www.youtube.com/features
insufficientPermissions liveStreamingNotEnabled 授權要求的使用者未啟用 YouTube 的即時串流影片。使用者可以前往 https://www.youtube.com/features 瞭解詳情。
notFound (404) liveBroadcastNotFound id 參數指定的廣播不存在。
rateLimitExceeded (403) userRequestsExceedRateLimit 使用者在指定時間範圍內傳送太多要求。
required (400) idRequired 必要的 id 參數必須識別您想要轉換狀態的廣播。
required (400) statusRequired API 要求必須指定 status 參數的值。

試試看!

使用 APIs Explorer 呼叫這個 API 並查看 API 要求和回應。