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 |
stringAPI kaynağının türünü tanımlar. Değer youtube#liveStream olur. |
etag |
etagBu kaynağın Etag değeri. |
id |
stringYouTube'un yayını benzersiz şekilde tanımlamak için atadığı kimlik. |
snippet |
objectsnippet nesnesi, kanal, başlık ve açıklama dahil olmak üzere yayınla ilgili temel ayrıntıları içerir. |
snippet.publishedAt |
datetimeAktarmanın oluşturulduğu tarih ve saat. Değer, ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) biçiminde belirtilir. |
snippet.channelId |
stringYouTube'un, yayını yapan kanalı benzersiz şekilde tanımlamak için kullandığı kimlik. |
snippet.title |
stringAkışın başlığı. Değer 1 ila 128 karakter uzunluğunda olmalıdır. |
snippet.description |
stringYayı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 |
objectcdn 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 |
stringBu ö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 |
stringVideo akışını iletmek için kullanılan yöntem veya protokol. Bu özellik için geçerli değerler şunlardır:
|
cdn.ingestionInfo |
objectingestionInfo nesnesi, aktarmanızı YouTube'a iletmek için YouTube'un sağladığı bilgileri içerir. |
cdn.ingestionInfo.streamName |
stringYouTube'un video akışına atadığı akış adı. |
cdn.ingestionInfo.ingestionAddress |
stringRTMP, 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 |
stringRTMP, 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 |
stringRTMPS 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 |
stringRTMPS kullanıyorsanız YouTube'da video yayınlamak için kullanmanız gereken yedek besleme URL'si. |
cdn.resolution |
stringGelen video verilerinin çözünürlüğü. Bu özellik için geçerli değerler şunlardır:
|
cdn.frameRate |
stringGelen video verilerinin kare hızı. Bu özellik için geçerli değerler:
|
status |
objectstatus nesnesi, canlı yayının durumuyla ilgili bilgileri içerir. |
status.streamStatus |
stringAktarmanın durumu. Bu özellik için geçerli değerler şunlardır:
|
status.healthStatus |
objectBu 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 |
stringBu aktarımın durum kodu. Bu özellik için geçerli değerler şunlardır:
|
status.healthStatus.lastUpdateTimeSeconds |
unsigned longYayı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[] |
listBu nesne, aktarımı etkileyen yapılandırma sorunlarının listesini içerir. |
status.healthStatus.configurationIssues[].type |
stringAktarımı etkileyen hata türünü tanımlar. |
status.healthStatus.configurationIssues[].severity |
stringSorunun 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 |
stringSorunun 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 |
stringSorunun 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 |
objectcontent_details nesnesi, altyazı besleme URL'si dahil olmak üzere akışla ilgili bilgileri içerir. |
contentDetails.closedCaptionsIngestionUrl |
stringBu yayının altyazılarının gönderildiği besleme URL'si. |
contentDetails.isReusable |
booleanAktarı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:
|