導入:廣播和串流

下列範例說明如何使用 YouTube Live Streaming API 建立及管理直播和串流。

建立廣播

呼叫 liveBroadcasts.insert 方法,安排新的現場直播。要求主體必須定義廣播的標題、預定開始時間和隱私權狀態。你也可以視需要使用 snippet.categoryId 屬性指定影片類別。您可以使用 videoCategories.list 方法擷取類別清單。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.insert?
        part=snippet,status

要求主體包含 liveBroadcast 資源。在這個範例中,要求主體為:

{
  "snippet": {
    "title": "My Live Event",
    "scheduledStartTime": "2026-10-30T19:00:00Z",
    "categoryId": "17"
  },
  "status": {
    "privacyStatus": "unlisted"
  }
}

建立串流

呼叫 liveStreams.insert 方法建立串流,定義影片的傳輸設定。你必須指定直播的標題和 CDN 設定 (擷取類型、解析度和影格率)。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveStreams.insert?
        part=snippet,cdn

要求主體包含 liveStream 資源。在本範例中,要求主體為:

{
  "snippet": {
    "title": "My Live Stream"
  },
  "cdn": {
    "frameRate": "30fps",
    "ingestionType": "rtmp",
    "resolution": "720p"
  }
}

將直播繫結至串流

呼叫 liveBroadcasts.bind 方法,將廣播與串流建立關聯。將 id 參數設為直播 ID,並將 streamId 查詢參數設為串流 ID。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.bind?
        id=BROADCAST_ID
        &streamId=STREAM_ID
        &part=id,snippet

轉換廣播狀態

呼叫 liveBroadcasts.transition 方法,變更直播狀態。舉例來說,如要開始測試,請將狀態轉換為 testing。如要開始實際直播,請將狀態轉換為 live。

這個範例會將廣播轉換為 testing。將 id 參數設為直播 ID,並將 broadcastStatus 參數設為 testing。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.transition?
        broadcastStatus=testing
        &id=BROADCAST_ID
        &part=id,status

擷取廣播

呼叫 liveBroadcasts.list 方法來擷取廣播。您可以依 broadcastStatus (例如 active、completed、upcoming) 篩選,或使用 mine 參數擷取自己的直播。

這個範例會擷取已驗證使用者的近期直播。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.list?
        part=snippet,status
        &broadcastStatus=upcoming
        &mine=true