liveStream
kaynağı, YouTube'a aktardığınız video akışıyla ilgili bilgileri içerir. Akış, YouTube kullanıcılarına yayınlanacak içeriği sağlar. Oluşturulan bir liveStream
kaynağı, bir veya daha fazla liveBroadcast
kaynağına bağlanabilir.
Yöntemler
API, liveStreams
kaynakları için aşağıdaki yöntemleri destekler:
- list
- API istek parametreleriyle eşleşen video akışlarının listesini döndürür. Hemen deneyin.
- insert
- Video akışı oluşturur. Akış, videonuzu YouTube'a göndermenize olanak tanır. YouTube, videonuzu kitlenize yayınlayabilir. Hemen deneyin.
- güncelle
- Video akışını günceller. Değiştirmek istediğiniz özellikler güncellenemiyorsa doğru ayarlarla yeni bir akış oluşturmanız gerekir. Hemen deneyin.
- sil
- Video akışını siler. Hemen deneyin.
Kaynak temsili
Aşağıdaki JSON yapısında, liveStreams
kaynağının biçimi gösterilmektedir:
{ "kind": "youtube#liveStream", "etag": etag, "id": string, "snippet": { "publishedAt": datetime, "channelId": string, "title": string, "description": string, "isDefaultStream": boolean }, "cdn": { "ingestionType": string, "ingestionInfo": { "streamName": string, "ingestionAddress": string, "backupIngestionAddress": string }, "resolution": string, "frameRate": string }, "status": { "streamStatus": string, "healthStatus": { "status": string, "lastUpdateTimeSeconds": unsigned long, "configurationIssues": [ { "type": string, "severity": string, "reason": string, "description": string } ] } }, "contentDetails": { "closedCaptionsIngestionUrl": string, "isReusable": boolean } }
Özellikler
Aşağıdaki tabloda bu kaynakta görünen özellikler tanımlanmaktadır:
Özellikler | |
---|---|
kind |
string API kaynağının türünü tanımlar. Değer youtube#liveStream olur. |
etag |
etag Bu kaynağın Etag değeri. |
id |
string YouTube'un yayını benzersiz şekilde tanımlamak için atadığı kimlik. |
snippet |
object snippet nesnesi, kanal, başlık ve açıklama dahil olmak üzere yayınla ilgili temel ayrıntıları içerir. |
snippet.publishedAt |
datetime Aktarmanın oluşturulduğu tarih ve saat. Değer, ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) biçiminde belirtilir. |
snippet.channelId |
string YouTube'un, yayını yapan kanalı benzersiz şekilde tanımlamak için kullandığı kimlik. |
snippet.title |
string Akışın başlığı. Değer 1 ila 128 karakter uzunluğunda olmalıdır. |
snippet.description |
string Yayının açıklaması. Değer 10.000 karakterden uzun olamaz. |
snippet.isDefaultStream |
boolean
Bu özelliğin desteği 1 Eylül 2020'de veya bu tarihten sonra sonlandırılacaktır. Bu tarihten itibaren, bir kanal canlı yayın için etkinleştirildiğinde YouTube varsayılan yayın ve varsayılan yayın oluşturmayı durduracak. Daha fazla bilgi için lütfen kullanımdan kaldırma duyurusuna bakın.
Bu özellik, bu yayının kanal için varsayılan yayın olup olmadığını belirtir.Varsayılan akışların işleyiş şekli Bir YouTube kanalı canlı yayın için etkinleştirildiğinde YouTube, kanal için varsayılan bir akış ve varsayılan bir yayın oluşturur. Yayın, kanal sahibinin canlı videoyu YouTube'a nasıl gönderdiğini tanımlar. Yayın ise izleyicilerin varsayılan yayını nasıl görebileceğini belirtir. Kanal sahipleri, bu kaynakları tanımlamak için liveStreams.list
ve liveBroadcasts.list
yöntemlerini kullanabilir.Kanalın varsayılan yayını süresiz olarak mevcuttur, başlangıç veya bitiş zamanı yoktur ve silinemez. Kanal sahibinin video bitlerini göndermeye başlaması yeterlidir. Ardından yayın otomatik olarak devam eder. Bir yayın sona erdiğinde YouTube, tamamlanan yayını YouTube videosuna dönüştürür ve videoya bir YouTube video kimliği atar. Dönüşüm tamamlandıktan sonra video, kanalın yüklenen videolar listesine eklenir. Video, yayın sona erdikten hemen sonra yayınlanmaz. Yayın süresinin uzunluğu, yayının gerçek uzunluğuna bağlıdır. |
cdn |
object cdn nesnesi, canlı yayının içerik yayınlama ağı (CDN) ayarlarını tanımlar. Bu ayarlar, içeriğinizi YouTube'a aktarma şeklinizle ilgili ayrıntıları içerir. |
cdn.format |
string Bu özelliğin desteği 18 Nisan 2016'dan beri sonlandırılmıştır ve 17 Ağustos 2020'den itibaren artık desteklenmeyecektir. Bu tarih itibarıyla bu özelliği kullanmaya devam eden istekler başarısız olur. Bunun yerine, kare hızını ve çözünürlüğü ayrı ayrı belirtmek için cdn.frameRate ve cdn.resolution özelliklerini kullanın.
|
cdn.ingestionType |
string Video akışını iletmek için kullanılan yöntem veya protokol. Bu özellik için geçerli değerler şunlardır:
|
cdn.ingestionInfo |
object ingestionInfo nesnesi, aktarmanızı YouTube'a iletmek için YouTube'un sağladığı bilgileri içerir. |
cdn.ingestionInfo.streamName |
string YouTube'un video akışına atadığı akış adı. |
cdn.ingestionInfo.ingestionAddress |
string RTMP, DASH veya HLS kullanıyorsanız YouTube'da video yayınlamak için kullanmanız gereken birincil besleme URL'sidir. Videoyu bu URL'ye aktarmanız gerekir. Video akışınızı kodlamak için kullandığınız uygulamaya veya araca bağlı olarak, yayın URL'sini ve yayın adını ayrı ayrı girmeniz veya aşağıdaki biçimde birleştirmeniz gerekebilir: STREAM_URL/STREAM_NAME |
cdn.ingestionInfo.backupIngestionAddress |
string RTMP, DASH veya HLS kullanıyorsanız YouTube'da video yayınlamak için kullanmanız gereken yedek besleme URL'si. ingestionAddress 'ye gönderdiğiniz içeriği bu URL'de aynı anda yayınlama seçeneğiniz vardır. |
cdn.ingestionInfo.rtmpsIngestionAddress |
string RTMPS kullanıyorsanız YouTube'da video yayınlamak için kullanmanız gereken birincil besleme URL'si. Bu URL'ye video aktarmanız gerekir. Video akışınızı kodlamak için kullandığınız uygulamaya veya araca bağlı olarak, yayın URL'sini ve yayın adını ayrı ayrı girmeniz veya aşağıdaki biçimde birleştirmeniz gerekebilir: STREAM_URL/STREAM_NAME |
cdn.ingestionInfo.rtmpsBackupIngestionAddress |
string RTMPS kullanıyorsanız YouTube'da video yayınlamak için kullanmanız gereken yedek besleme URL'si. |
cdn.resolution |
string Gelen video verilerinin çözünürlüğü. Bu özellik için geçerli değerler şunlardır:
|
cdn.frameRate |
string Gelen video verilerinin kare hızı. Bu özellik için geçerli değerler:
|
status |
object status nesnesi, canlı yayının durumuyla ilgili bilgileri içerir. |
status.streamStatus |
string Aktarmanın durumu. Bu özellik için geçerli değerler şunlardır:
|
status.healthStatus |
object Bu nesne, canlı yayının sağlık durumuyla ilgili bilgileri içerir. Bu bilgiler, yayın sorunlarını tespit etmek, teşhis etmek ve çözmek için kullanılabilir. |
status.healthStatus.status |
string Bu aktarımın durum kodu. Bu özellik için geçerli değerler şunlardır:
|
status.healthStatus.lastUpdateTimeSeconds |
unsigned long Yayının sağlık durumunun en son güncellendiği zaman. Değer, saniye cinsinden bir UNIX zaman damgasını yansıtır. |
status.healthStatus.configurationIssues[] |
list Bu nesne, aktarımı etkileyen yapılandırma sorunlarının listesini içerir. |
status.healthStatus.configurationIssues[].type |
string Aktarımı etkileyen hata türünü tanımlar. |
status.healthStatus.configurationIssues[].severity |
string Sorunun akış için ne kadar ciddi olduğunu gösterir. Bu mülk için geçerli değerler şunlardır:
|
status.healthStatus.configurationIssues[].reason |
string Sorunun kısa bir açıklaması. Canlı Yayın Kaynakları İçin Yapılandırma Sorunları belgesinde, her yapılandırma sorunu türüyle ilişkili neden açıklanmaktadır. |
status.healthStatus.configurationIssues[].description |
string Sorunun ayrıntılı açıklaması. Mümkün olduğunda açıklamada, sorunun nasıl çözüleceğiyle ilgili bilgiler verilir. Canlı Yayın Kaynakları İçin Yapılandırma Sorunları belgesinde tüm yapılandırma sorunu türleri ve bunlarla ilişkili açıklamalar listelenmiştir. |
contentDetails |
object content_details nesnesi, altyazı besleme URL'si dahil olmak üzere akışla ilgili bilgileri içerir. |
contentDetails.closedCaptionsIngestionUrl |
string Bu yayının altyazılarının gönderildiği besleme URL'si. |
contentDetails.isReusable |
boolean Aktarımın yeniden kullanılabilir olup olmadığını belirtir. Yani aktarımın birden fazla yayına bağlanıp bağlanamayacağını belirtir. Yayıncıların, farklı zamanlarda gerçekleşen birçok farklı yayın için aynı yayını yeniden kullanması yaygın bir durumdur. Bu değeri false olarak ayarlarsanız akış yeniden kullanılamaz. Yani yalnızca bir yayına bağlanabilir. Tekrar kullanılamayan akışlar, tekrar kullanılabilir akışlardan aşağıdaki yönlerden farklıdır:
|