Uygulama: Yayınlar ve Akışlar

Aşağıdaki örneklerde, canlı yayınlar ve akışlar oluşturmak ve yönetmek için YouTube Canlı Yayın API'sinin nasıl kullanılacağı gösterilmektedir.

Yayın oluşturma

Yeni bir canlı etkinlik planlamak için liveBroadcasts.insert yöntemini çağırın. İstek gövdesinde yayının başlığı, planlanan başlangıç zamanı ve gizlilik durumu tanımlanmalıdır. İsteğe bağlı olarak snippet.categoryId özelliğini kullanarak video kategorisini de belirtebilirsiniz. videoCategories.list yöntemini kullanarak kategorilerin listesini alabilirsiniz.

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

İstek gövdesi bir liveBroadcast kaynağı içerir. Bu örnekte, istek gövdesi şöyledir:

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

Akış oluşturma

Videonuzun iletim ayarlarını tanımlayan bir yayın oluşturmak için liveStreams.insert yöntemini çağırın. Yayının başlığını ve CDN ayarlarını (besleme türü, çözünürlük ve kare hızı) belirtmeniz gerekir.

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

İstek gövdesinde bir liveStream kaynağı bulunur. Bu örnekte, istek gövdesi şöyledir:

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

Canlı yayını akışa bağlama

Yayınlarınızı akışınızla ilişkilendirmek için liveBroadcasts.bind yöntemini çağırın. id parametresini yayın kimliğine, streamId sorgu parametresini ise akış kimliğine ayarlayın.

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

Geçiş yayını durumu

Yayınınızın durumunu değiştirmek için liveBroadcasts.transition yöntemini çağırın. Örneğin, test etmeye başlamak için durumu testing olarak değiştirin. Asıl yayını başlatmak için durumu live olarak değiştirin.

Bu örnekte yayın testing olarak değiştiriliyor. id parametresini yayın kimliğine, broadcastStatus parametresini ise testing değerine ayarlayın.

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

Yayınları alma

Yayınları almak için liveBroadcasts.list yöntemini çağırın. broadcastStatus parametresini kullanarak filtreleme yapabilir (ör. active, completed, upcoming) veya mine parametresini kullanarak kendi yayınlarınızı alabilirsiniz.

Bu örnek, kimliği doğrulanmış kullanıcının yaklaşan yayınlarını alır.

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