YouTube Live Streaming API – Überarbeitungsverlauf

Auf dieser Seite findest du Änderungen an der YouTube Live Streaming API und Aktualisierungen der Dokumentation. Abonniere diese Änderungsliste. Abonnieren

9. Oktober 2023

In dieser CSV-Datei findest du nur zu Informationszwecken, welche Sticker-IDs zu welchen Super Stickern gehören. Die Definitionen der Property snippet.superStickerDetails.superStickerMetadata.stickerId der Ressource liveChatMessage und der Property snippet.superStickerMetadata.stickerId der Ressource superChatEvent wurden entsprechend aktualisiert.

15. September 2023

Die API unterstützt jetzt eine neue Möglichkeit, Anzeigen in Livestreams einzufügen. Zusätzlich zu liveCuepoints, mit dem du Werbeunterbrechungen manuell in einen Livestream einfügen kannst, unterstützt YouTube jetzt eine Funktion, mit der Mid-Roll-Werbeunterbrechungen in einem Livestream in festen Intervallen automatisch eingefügt werden.

Wenn der Inhaber der Übertragung automatische Anzeigen aktiviert, kann er sich die folgenden Aspekte des Anzeigenverhaltens ansehen:

  • die Länge des Intervalls zwischen Mid-Roll-Werbeunterbrechungen.
  • die Planungsstrategie für Anzeigen-Cuepoints. Cue-Punkte können gleichzeitig für alle Zuschauer eingefügt werden oder das Timing der Cue-Punkte kann von Zuschauer zu Zuschauer variieren. Bei der zweiten Strategie kann YouTube Cuepoints häufiger planen, sodass Zuschauer sie erhalten, wenn sie berechtigt sind.
  • Ein Zeitraum, in dem keine Mid-Roll-Anzeigen ausgeliefert werden. Bei dieser Funktion gibt der Inhaber der Übertragung an, dass die Auslieferung von Mid-Roll-Anzeigen bis zu einem bestimmten Zeitpunkt pausiert wird.

Die Dokumentation enthält die folgenden API-Änderungen zur Unterstützung dieser Funktion:

  • Die liveBroadcast-Ressource enthält jetzt ein monetizationDetails-Objekt. Die Felder des Objekts geben an, ob die automatische Anzeigenbereitstellung für die Übertragung aktiviert ist, und enthalten zusätzliche Informationen zum Planen von Cuepoints.
  • Der Parameter part der Methode liveBroadcast.list unterstützt den Wert monetizationDetails.
  • Mit der Methode update kannst du das Einfügen von Mid-Roll-Anzeigen für einen bestimmten Zeitraum für eine Liveübertragung pausieren. Außerdem werden in der Dokumentation jetzt mehrere Fehler beschrieben, die beim Aktualisieren der Monetarisierungsdetails für eine Liveübertragung auftreten können.

1. August 2023

Dieses Update enthält die folgenden Änderungen:

  • Bei der liveBroadcasts.update-Methode müssen für diese Felder keine Werte mehr angegeben werden:

    • snippet.title
    • status.privacyStatus

    Wenn Sie diese Felder aus der Anfrage ausschließen, bleiben sie unverändert.

1. November 2022

  • Mit der neuen liveBroadcasts.cuepoint-Methode können alle Kanalinhaber, die eine Liveübertragung auf YouTube starten, Cue-Punkte in die Übertragung einfügen, die Werbeunterbrechungen auslösen können. Diese Methode ersetzt die Methode liveCuepoints.insert, mit der nur YouTube-Inhaltspartner Cue-Punkte in Livestreams einfügen konnten.

    Mehrere Leitfäden wurden aktualisiert, um die Verfügbarkeit dieser neuen Methode widerzuspiegeln.

  • Hinweis:Dies ist eine Ankündigung zur Einstellung.

    Die Methode liveCuepoints.insert ist jetzt eingestellt. Die Unterstützung für die Methode liveCuepoints.insert wird am oder nach dem 1. Mai 2023 entfernt. API-Nutzer sollten ihre Anwendungen so aktualisieren, dass stattdessen die Methode liveBroadcasts.cuepoint aufgerufen wird.

  • Die Dokumentation zur Methode liveBroadcasts.control wurde entfernt. Im September 2020 wurde ein Hinweis zur Einstellung dieser Methode veröffentlicht.

1. Oktober 2022

Dieses Update enthält die folgenden Änderungen:

  • Bei der liveBroadcasts.update-Methode müssen für diese Felder keine Werte mehr angegeben werden:

    • contentDetails.enableContentEncryption
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • contentDetails.startWithSlate

    Wenn Sie diese Felder aus der Anfrage ausschließen, bleiben sie unverändert.

  • Dokumentation für veraltete liveBroadcast-Felder entfernt:

    • contentDetails.enableContentEncryption
    • contentDetails.startWithSlate

1. April 2022

Dieses Update enthält die folgenden Änderungen:

  • Die Property snippet.type unterstützt jetzt zwei neue Werte:

    • membershipGiftingEvent
    • giftMembershipReceivedEvent
  • Die neue snippet.membershipGiftingDetails-Eigenschaft der liveChatMessage-Ressource und ihre untergeordneten Elemente enthalten Informationen zum Ereignis „Kanalmitgliedschaft verschenken“. Ähnlich enthalten die neue Property snippet.giftMembershipReceivedDetails und ihre untergeordneten Elemente Informationen zum Ereignis „Geschenkmitgliedschaft erhalten“.

15. September 2021

Dieses Update enthält die folgenden Änderungen:

  • Die Property snippet.type unterstützt jetzt zwei neue Werte:

    • newSponsorEvent
    • memberMilestoneChatEvent
  • Das neue Attribut snippet.memberMilestoneChatDetails der liveChatMessage-Ressource und seine untergeordneten Elemente enthalten Informationen zum Ereignis „Chatnachricht für treue Mitglieder“. Ebenso enthalten die neue snippet.newSponsorDetails-Property und ihre untergeordneten Elemente Informationen zum Ereignis „Neuer Sponsor“.

1. Dezember 2020

Die Methode liveBroadcasts.transition der API unterstützt einen neuen Fehler 403 (Forbidden), der darauf hinweist, dass der Nutzer innerhalb eines bestimmten Zeitraums zu viele Anfragen gesendet hat. Der Fehlergrund lautet userRequestsExceedRateLimit.

21. September 2020

  • Die Definition des Attributs status.madeForKids der Ressource liveBroadcast wurde aktualisiert, um zu verdeutlichen, dass es sich um ein schreibgeschütztes Attribut handelt. Dies spiegelt keine Änderung der API-Funktionen wider.

    Wenn du einen Livestream als speziell für Kinder konzipiert kennzeichnen möchtest, setze das Attribut status.selfDeclaredMadeForKids beim Aufrufen der Methode liveBroadcasts.insert zum Erstellen des Livestreams auf true.

  • Hinweis:Diese Änderung umfasst eine Einstellungsankündigung und eine Aktualisierung einer früheren Einstellungsankündigung.

    Die Methode liveBroadcasts.control wird am oder nach dem 1. Oktober 2020 eingestellt. Nach diesem Datum wird bei allen Aufrufen dieser Methode der Fehler „Forbidden“ (403) zurückgegeben. Die Methode wird später vollständig entfernt. Kunden können weiterhin ihre eigenen Zeitpläne implementieren, indem sie dem Video, das an die Aufnahmeserver von YouTube gesendet wird, ein Overlay hinzufügen.

    Die Einstellung der am 16. April 2020 angekündigten Produkte, die ursprünglich für den 1. September 2020 geplant war, wurde verschoben. Sie erfolgt jetzt am oder nach dem 1. Oktober 2020. Daher werden die in dieser Ankündigung enthaltenen Funktionen und die liveBroadcasts.control-Methode gleichzeitig eingestellt.

17. Juli 2020

Hinweis:Dies ist eine Aktualisierung einer früheren Ankündigung zur Einstellung.

Das Feld „cdn.format“ der Ressource „liveStream“ wurde im April 2016 eingestellt und wird ab dem 17. August 2020 nicht mehr unterstützt. Anfragen, in denen dieses Feld noch verwendet wird, schlagen ab diesem Datum fehl.

Wenn in deinem Code noch das Feld cdn.format verwendet wird, muss es aktualisiert werden, damit die Framerate und Auflösung mit den Eigenschaften cdn.frameRate und cdn.resolution separat angegeben werden.

6. Juli 2020

Der Leitfaden Live-YouTube-Inhalte über HLS bereitstellen wurde um einige Änderungen ergänzt:

  • Die empfohlene Dauer für ein Mediensegment wurde auf ein bis vier Sekunden aktualisiert.
  • In einem neuen Abschnitt wird erläutert, wie du eine HLS-Aufnahme-URL in YouTube Studio abrufen kannst.
  • Die Anleitung zum Formatieren des file-Parameterwerts wurde in den neuen Abschnitt HLS-Aufnahme-URL fertigstellen verschoben. Diese Anleitung gilt unabhängig davon, ob die HLS-Aufnahme-URL über die YouTube API oder YouTube Creator Studio abgerufen wird.

Außerdem sind im neuen Vergleich der Datenaufnahmeprotokolle die von YouTube unterstützten Datenaufnahmeprotokolle, die für jedes Protokoll unterstützten Codecs und zusätzliche Informationen zu geeigneten Anwendungsfällen für jedes Protokoll aufgeführt.

16. April 2020

Dieses Update enthält eine neue Property und eine Ankündigung zur Einstellung:

  • Die liveBroadcast-Ressource unterstützt jetzt das Attribut contentDetails.enableAutoStop. Die Property gibt an, ob eine Übertragung etwa eine Minute nach dem Ende des Videostreams durch den Kanalinhaber automatisch beendet werden soll.

    Das Dokument Lebensdauer einer Übertragung wurde aktualisiert. Darin wird nun erläutert, wie sich die Schritte zum Erstellen und Verwalten eines YouTube-Live-Ereignisses ändern, wenn du die Eigenschaften contentDetails.enableAutoStart oder contentDetails.enableAutoStop auf true festlegst.

  • Hinweis:Dies ist eine Ankündigung zur Einstellung. Diese Änderungen treten am oder nach dem 1. September 2020 in Kraft. Das Datum, an dem die Änderungen in Kraft treten, wird unten als Einstellungsdatum bezeichnet.

    In diesem Update wird eine potenziell funktionsgefährdende Änderung erläutert. Sie wirkt sich auf API-Clientanwendungen aus, die die Standard-liveStream- und liveBroadcast-Ressourcen von Kanälen zum Streamen von Livestreams auf YouTube verwenden. Insbesondere die Broadcast-ID und die Stream-ID, die mit der dauerhaften Übertragung und dem Stream verknüpft sind, können nicht mehr zum Starten neuer Übertragungen verwendet werden.

    Ihre Anwendung ist betroffen, wenn eine der folgenden Bedingungen zutrifft:

    • Es wird der Wert des Attributs isDefaultBroadcast der Ressource liveBroadcast geprüft. Diese Property wird nach dem Einstellungsdatum nicht mehr zurückgegeben.
    • Es wird der Wert des Attributs isDefaultStream der Ressource liveStream geprüft. Diese Property wird nach dem Einstellungsdatum nicht mehr zurückgegeben.
    • Dabei wird die Methode liveBroadcasts.list aufgerufen und der Parameterwert broadcastType auf persistent oder all festgelegt. Dieser Parameter wird im Rahmen dieser Änderungen eingestellt. Zum Zeitpunkt der Einstellung:
      • Wenn der Parameterwert für broadcastType persistent ist, gibt die Methode liveBroadcasts.list keine Ergebnisse zurück.
      • Wenn der Parameterwert broadcastType all ist, gibt die Methode liveBroadcasts.list keine persistenten Übertragungen zurück, die vor diesem Zeitpunkt vorhanden waren.

    In den letzten Jahren hat YouTube automatisch einen Standardstream und eine Standardübertragung für einen Kanal erstellt, wenn dieser für das Livestreaming aktiviert war. Der Standardstream existierte unbegrenzt, hatte keine Start- oder Endzeit und konnte nicht gelöscht werden. Ebenso wurde die Standardübertragung als persistent eingestuft. Sie war immer vorhanden und nicht an ein bestimmtes Ereignis gebunden.

    Ab dem Einstellungsdatum:

    • YouTube erstellt keine Standardstreams und ‑übertragungen mehr. Anstatt sich auf die Standardressourcen zu verlassen, müssen API-Clients liveBroadcast- und liveStream-Ressourcen erstellen und verwalten und diese Ressourcen miteinander verknüpfen können.
    • Wenn die Standardübertragung und der Standardstream eines Kanals aktiv sind, also der Kanal sie zu dem Zeitpunkt, an dem die Einstellung in Kraft tritt, für eine Liveübertragung verwendet, ist die laufende Übertragung davon nicht betroffen. Nach Ende dieser Übertragung kann der Kanal die Standardübertragung und den Standardstream jedoch nicht mehr verwenden.
    • Wenn die Standardübertragung und der Standardstream eines Kanals nicht aktiv sind, werden Versuche, diese Ressourcen zur Übertragung von Videos zu verwenden, nach der Einstellung ignoriert.

    Wenn Ihre Anwendung betroffen ist, lesen Sie die folgenden Dokumente, um sie so zu aktualisieren, dass sie nach dieser Änderung wie erwartet funktioniert:

    • In einem neuen Leitfaden zur Migration werden die Schritte erläutert, die Entwickler in API-Clients ausführen müssen, die derzeit Standardübertragungen und ‑streams verwenden.
    • In der Anleitung Der Lebenszyklus einer Übertragung wird Schritt für Schritt erklärt, wie du eine Live-Veranstaltung auf YouTube erstellst und verwaltest. In jedem Schritt werden die API-Aufrufe oder andere Dinge erläutert, die du ausführen musst, um eine bestimmte Aktion auszuführen. Deine Anwendung muss diesen Prozess befolgen, wenn YouTube die Standardstreams und ‑übertragungen nicht mehr unterstützt.

31. März 2020

Hinweis:Dies ist eine Ankündigung zur Einstellung.

Die Ressource sponsor und die Methode sponsors.list wurden eingestellt und durch die Ressource member und die Methode members.list ersetzt.

Die sponsors.list-Methode wird ab dem 30. September 2020 nicht mehr unterstützt. API-Clients sollten Aufrufe der Methode sponsors.list aktualisieren, um stattdessen die Methode members.list zu verwenden. Weitere Informationen zu der neuen Ressource findest du im Versionsverlauf der YouTube Data API.

11. März 2020

Der Abschnitt Aufnahmeendpunkt im Leitfaden Live-YouTube-Inhalte über HLS bereitstellen wurde aktualisiert. Darin wird jetzt erläutert, wie ein Encoder den Parameterwert file= beim Erstellen der primären und der sekundären Aufnahme-URLs angeben sollte.

4. Februar 2020

Der Leitfaden Live-YouTube-Inhalte über HLS bereitstellen wurde aktualisiert. Dort wird jetzt darauf hingewiesen, dass DELETE-Anfragen optional sind und vom HLS-Endpunkt von YouTube ignoriert werden. Aus Leistungsgründen empfiehlt YouTube, dass Clients keine DELETE-Anfragen senden.

10. Januar 2020

Die API unterstützt jetzt die Erkennung von Inhalten, die sich an Kinder richten. Auf YouTube werden diese als „speziell für Kinder“ gekennzeichnet. Weitere Informationen zu Inhalten speziell für Kinder

  • Die liveBroadcast-Ressource unterstützt zwei neue Properties, mit denen Creator und Zuschauer Inhalte speziell für Kinder erkennen können:
    • Mit dem Attribut selfDeclaredMadeForKids können Creator angeben, ob ein Livestream auf Kinder ausgerichtet ist. Diese Eigenschaft kann beim Erstellen einer Übertragung über die Methode liveBroadcasts.insert festgelegt werden. Hinweis: Diese Property ist nur in API-Antworten enthalten, die liveBroadcast-Ressourcen enthalten, wenn der Kanalinhaber die API-Anfrage autorisiert hat.
    • Mit der Eigenschaft madeForKids kann jeder API-Nutzer den Status „Für Kinder“ einer Übertragung abrufen. Der Status kann beispielsweise anhand des Werts des Attributs selfDeclaredMadeForKids ermittelt werden. Weitere Informationen dazu, wie du die Zielgruppe für deinen Kanal, deine Videos oder deine Livestreams festlegst, findest du in der YouTube-Hilfe.
  • In der YouTube Data API werden für die Ressource channel auch die neuen Properties selfDeclaredMadeForKids und madeForKids unterstützt.

Außerdem haben wir die Nutzungsbedingungen der YouTube API-Dienste und die Richtlinien für Entwickler aktualisiert. Weitere Informationen finden Sie in der Versionsübersicht der Nutzungsbedingungen für YouTube API-Dienste. Die Änderungen an den Nutzungsbedingungen für YouTube API-Dienste und den Entwicklerrichtlinien treten am 10. Januar 2020 (UTC-8) in Kraft.

20. August 2019

Im Abschnitt Anforderungen des Leitfadens Live-YouTube-Inhalte über HLS bereitstellen wurden zwei Änderungen vorgenommen:

  • Darin wird erklärt, dass es eine Best Practice ist, sowohl bestätigte als auch ausstehende Segmente in jede Media-Playlist aufzunehmen. So ist es weniger wahrscheinlich, dass ein Segment übersprungen wird, wenn eine Medienplaylist auf Serverseite verloren geht. So können Sie beispielsweise bis zu zwei bestätigte Segmente und bis zu fünf ausstehende Segmente in jede Media-Playlist aufnehmen.
  • Für jedes Mediensegment muss jetzt eine Medienplaylist gesendet werden. So kann der Server schnell wiederhergestellt werden, wenn eine Medienplaylist verloren geht. Diese Vorgehensweise wurde zuvor als Empfehlung aufgeführt.

28. Juni 2019

YouTube unterstützt jetzt die HLS-Aufnahme. Die Property ingestionType der liveStream-Ressource unterstützt daher den neuen Wert hls, um Streams zu identifizieren, die mit HLS auf YouTube hochgeladen wurden.

In der neuen Anleitung Live-YouTube-Inhalte über HLS bereitstellen findest du Richtlinien für die Verwendung von HLS, um Liveinhalte von einem Encoder auf YouTube zu streamen. Der Leitfaden soll Encoder-Anbietern helfen, ihren Produkten die Unterstützung der HLS-Auslieferung hinzuzufügen.

4. April 2019

Dieses Update enthält die folgenden Änderungen:

  • Die API-Referenzdokumentation wurde aktualisiert, um gängige Anwendungsfälle für jede Methode besser zu erläutern und dynamische, hochwertige Codebeispiele über das API Explorer-Widget bereitzustellen. Ein Beispiel hierfür finden Sie in der Dokumentation der Methode liveBroadcasts.list. Auf Seiten mit API-Methoden gibt es jetzt zwei neue Elemente:

    • Mit dem APIs Explorer-Widget können Sie Autorisierungsbereiche auswählen, Beispielparameter und -eigenschaftswerte eingeben und dann tatsächliche API-Anfragen senden und API-Antworten abrufen. Das Widget bietet auch eine Vollbildansicht mit vollständigen Codebeispielen, die dynamisch aktualisiert werden, um die von Ihnen eingegebenen Bereiche und Werte zu verwenden.

    • Im Abschnitt Gängige Anwendungsfälle werden ein oder mehrere gängige Anwendungsfälle für die auf der Seite beschriebene Methode beschrieben. Du kannst die Methode liveBroadcasts.list beispielsweise aufrufen, um Daten zu einer bestimmten Übertragung oder zu den Übertragungen des aktuellen Nutzers abzurufen.

      Über die Links in diesem Abschnitt können Sie den APIs Explorer mit Beispielwerten für Ihren Anwendungsfall füllen oder den APIs Explorer im Vollbildmodus mit diesen Werten öffnen. Mit diesen Änderungen soll es einfacher sein, Codebeispiele zu finden, die direkt auf den Anwendungsfall anwendbar sind, den Sie in Ihrer eigenen Anwendung implementieren möchten.

    Codebeispiele werden derzeit für Java, JavaScript, PHP, Python und curl unterstützt.

  • Die Seite Codebeispiele hat ebenfalls eine neue Benutzeroberfläche mit den oben beschriebenen Funktionen. Mit diesem Tool können Sie Anwendungsfälle für verschiedene Methoden untersuchen, Werte in den APIs Explorer laden und den APIs Explorer im Vollbildmodus öffnen, um Codebeispiele in Java, JavaScript, PHP und Python zu erhalten.

    Im Rahmen dieser Änderung wurden die Seiten entfernt, auf denen zuvor verfügbare Codebeispiele für Java, PHP und Python aufgeführt waren.

25. Februar 2019

Die Dokumentation der Ressourcen liveChatMessage und superChatEvent wurde aktualisiert, da beide Ressourcen jetzt Informationen zu Super Stickern enthalten können. Super Sticker sind eine Art von Super Chat-Nachricht, bei der ein Bild angezeigt wird. Wie bei Super Chats wird auch eine Super Sticker-Nachricht von einem Fan während eines YouTube-Livestreams gekauft.

  • In einer liveChatMessage-Ressource ist das Attribut snippet.type jetzt auf superStickerEvent festgelegt, um anzugeben, dass die Ressource Informationen zu einem Super Sticker enthält. In diesem Fall enthält die Ressource auch das snippet.superStickerDetails-Objekt mit zusätzlichen Informationen zum Super Sticker.
  • In einer superChatEvent-Ressource gibt das boolesche Attribut snippet.isSuperStickerEvent an, ob die Super Chat-Nachricht auch ein Super Sticker ist. In diesem Fall enthält das snippet.superStickerMetadata-Objekt zusätzliche Details zum Super Sticker.

5. April 2018

Die Beschreibung der superChatEvents.list-Methode wurde aktualisiert, da die API-Antwort keine fanFundingEvents mehr enthält. Diese wurden Anfang 2017 eingestellt.

3. April 2017

Es wurden neue Java-Codebeispiele hinzugefügt, die zeigen, wie Sie Livechat-Nachrichten auflisten, einfügen und löschen. In den Beispielen werden die folgenden Methoden aufgerufen:

13. Februar 2017

Dieses Update enthält die folgenden Änderungen:

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • Die Methode liveCuepoints.insert wurde aktualisiert, um darauf hinzuweisen, dass der Parameter onBehalfOfContentOwner derzeit erforderlich ist. Außerdem wurde die Beschreibung der Methode aktualisiert. Darin wird nun darauf hingewiesen, dass Aufrufe dieser Methode von einem Konto autorisiert werden müssen, das mit einem YouTube-Rechteinhaber verknüpft ist.

9. Februar 2017

Dieses Update enthält die folgenden Änderungen:

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • Mit dem neuen Parameter hl der Methode superChatEvents.list können Sie angeben, dass der Wert der Property snippet.displayString gemäß den Konventionen einer bestimmten Sprache formatiert werden soll. Die Definition dieser Property wurde ebenfalls entsprechend aktualisiert.

      Der Parameterwert muss ein Sprachcode sein, der in der Liste enthalten ist, die von der i18nLanguages.list-Methode zurückgegeben wird. Der Standardwert ist en. Das bedeutet, dass Anzeigestrings standardmäßig so formatiert werden, wie sie auf Englisch verwendet würden. Beispielsweise wird ein String standardmäßig als $1.00 statt als $1,00 formatiert.

1. Februar 2017

Dieses Update enthält die folgenden Änderungen:

  • Neue Ressourcen und Methoden

    • Die neue superChatEvent-Ressource steht für eine Super Chat-Nachricht, die von einem Fan während eines YouTube-Livestreams gekauft wurde. Im YouTube-Livechat-Stream hebt sich ein Super Chat gleich doppelt von anderen Nachrichten ab:

      • Super Chats werden farblich hervorgehoben.
      • Super Chats bleiben für einen bestimmten Zeitraum im Ticker angepinnt.

      Die Farbe des Super Chats, die Dauer, für die er im Ticker angepinnt bleibt, und die maximale Nachrichtenlänge werden vom Kaufbetrag bestimmt. Weitere Informationen zu Super Chats findest du in der YouTube-Hilfe.

      Die API unterstützt eine Methode, mit der Super Chat-Ereignisse für die Livestreams eines Kanals in den letzten 30 Tagen aufgelistet werden können. Mit dieser Methode werden auch Daten zu Fan-Funding-Ereignissen (fanFundingEvents) aus dem letzten Livestream des Kanals zurückgegeben.

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • Das Attribut snippet.type unterstützt jetzt den Wert superChatEvent, der angibt, dass die Ressource einen Super Chat beschreibt.

      Außerdem enthalten die neue Property snippet.superChatDetails der liveChatMessage-Ressource und ihre untergeordneten Elemente Informationen zum Super Chat-Ereignis.

    • Die Eigenschaft cdn.resolution der liveStream-Ressource unterstützt jetzt den Wert 2160p.

  • Neue und aktualisierte Fehler

    • Die API unterstützt die folgenden neuen Fehler:

      Fehlerdetails
      liveBroadcasts.insert, liveBroadcasts.update Die Methoden liveBroadcasts.insert und liveBroadcasts.update geben 400-Fehler (Bad Request) zurück, um anzugeben, dass die eingefügte oder aktualisierte liveBroadcast-Ressource einen ungültigen Wert für das Attribut contentDetails.enableEmbed oder das Attribut contentDetails.projection enthält. Die Fehlerursachen für die beiden neuen Fehler sind invalidEmbedSetting und invalidProjection.

12. Januar 2017

Hinweis:Dies ist eine Ankündigung zur Einstellung.

Im Zusammenhang mit der Einführung der neuen Funktion Super Chat hat YouTube die Fan-Funding-Funktion eingestellt. Die Fan-Funding API wird am 28. Februar 2017 deaktiviert. Ab diesem Datum gilt Folgendes:

11. August 2016

Dieses Update enthält die folgenden Änderungen:

  • Die neu veröffentlichten Nutzungsbedingungen für die YouTube API-Dienste („die aktualisierten Nutzungsbedingungen“) wurden im YouTube Engineering and Developers Blog ausführlich erläutert. Sie enthalten zahlreiche Änderungen an den aktuellen Nutzungsbedingungen. Neben den aktualisierten Nutzungsbedingungen, die am 10. Februar 2017 in Kraft treten, enthält dieses Update mehrere ergänzende Dokumente, in denen die Richtlinien erläutert werden, die Entwickler einhalten müssen.

    Die vollständigen neuen Dokumente sind im Versionsverlauf der aktualisierten Nutzungsbedingungen beschrieben. Außerdem werden in diesem Änderungsverlauf zukünftige Änderungen an den aktualisierten Nutzungsbedingungen oder an den zugehörigen Dokumenten erläutert. Über einen Link in diesem Dokument können Sie einen RSS-Feed mit Änderungen in diesem Änderungsverlauf abonnieren.

20. Mai 2016

YouTube unterstützt jetzt die DASH-Aufnahme. Die Property ingestionType der liveStream-Ressource unterstützt daher den neuen Wert dash, um Streams zu identifizieren, die mit DASH auf YouTube aufgenommen wurden.

Der neue Leitfaden Live-YouTube-Inhalte über DASH bereitstellen enthält Richtlinien für die Verwendung des DASH-Übermittlungsformats, um Livedaten von einem Encoder auf YouTube zu streamen. Es soll Encoder-Anbietern helfen, ihren Produkten DASH-Unterstützung für die Bereitstellung hinzuzufügen.

18. April 2016

Dieses Update enthält die folgenden Änderungen:

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • liveStream-Ressourcenaktualisierungen
      • YouTube unterstützt jetzt Streams mit einer Auflösung von 1440p mit 30 oder 60 Frames pro Sekunde.

        Außerdem enthält die liveStream-Ressource neue Eigenschaften zum Angeben der Framerate und Auflösung der eingehenden Videodaten:

        Attribute
        cdn.frameRate Die Framerate der eingehenden Videodaten. Gültige Werte sind 30fps und 60fps.
        cdn.resolution Die Auflösung der eingehenden Videodaten. Gültige Werte für „property“ sind 1440p, 1080p, 720p, 480p, 360p und 240p.
      • Mit der Einführung der Eigenschaften cdn.frameRate und cdn.resolution der Ressource liveStream wird die Eigenschaft cdn.format der Ressource jetzt eingestellt. Mit der Property cdn.format werden Auflösung und Framerate in einem einzigen Wert angegeben.

        Wir empfehlen Ihnen, auf die neu unterstützten Felder umzustellen. In der Zwischenzeit funktioniert cdn.format weiter. Außerdem sind Anfragen zum Einfügen von Livestreams derzeit erfolgreich, sofern Sie Werte für die Property cdn.format oder die Properties cdn.frameRate und cdn.resolution angeben. Wenn Sie Werte für alle drei Properties angeben, gibt die API möglicherweise einen Fehler zurück, wenn die Werte nicht übereinstimmen.

        Hinweis: Obwohl das Attribut cdn.format eingestellt wird, werden jetzt zwei neue Werte unterstützt: 1440p und 1440p_hfr. Sie spiegeln die Unterstützung von 1440p-Streams mit 30 oder 60 Frames pro Sekunde durch die API wider.

    • liveBroadcast-Ressourcenaktualisierungen
      • Die liveBroadcast-Ressource enthält die folgenden neuen Properties:

        Attribute
        contentDetails.boundStreamLastUpdateTimeMs Das Datum und die Uhrzeit, zu dem der Livestream, auf den in der contentDetails.boundStreamId-Eigenschaft der Übertragung verwiesen wird, zuletzt aktualisiert wurde.
        contentDetails.projection Das Projektionsformat der Übertragung. Der Standardwert der Property ist rectangular. Gültige Werte für die Property sind 360 und rectangular.
      • Die Definition des Attributs statistics.totalChatCount der liveBroadcast-Ressource wurde aktualisiert. Der Attributwert wird nur angezeigt, wenn die Übertragung mindestens eine Chatnachricht enthält.

    • liveChatMessage-Ressourcenaktualisierungen
      • Die Property snippet.type unterstützt zwei neue Werte: messageDeletedEvent und userBannedEvent. Sie entsprechen den neuen Properties, die in der folgenden Aufzählung beschrieben werden. Die Definition der Property snippet.authorChannelId wurde ebenfalls aktualisiert, um zu erläutern, was der Property-Wert für diese neuen Nachrichtentypen identifiziert.

      • Die liveChatMessage-Ressource enthält die folgenden neuen Properties:

        Attribute
        snippet.messageDeletedDetails Dieses Objekt enthält Informationen zu einer Nachricht, die von einem Chatmoderator gelöscht wurde. Das Objekt ist nur vorhanden, wenn der Wert der Property snippet.type messageDeletedEvent ist.
        snippet.userBannedDetails Dieses Objekt enthält Informationen zu einem Nutzer, der von der Teilnahme am Chat ausgeschlossen wurde. Das Objekt enthält auch Informationen zum Bann selbst, nämlich ob er dauerhaft oder vorübergehend ist. Wenn das Verbot vorübergehend ist, wird die Dauer des Verbots in einer der Objekt-Properties angegeben.

        Dieses Objekt ist nur vorhanden, wenn der Wert des Attributs snippet.type userBannedEvent ist.
  • Neue und aktualisierte Fehler

    • Die API unterstützt die folgenden neuen Fehler:

      Fehlerdetails
      liveBroadcasts.bind Die liveBroadcasts.bind-Methode gibt den Fehler 403 (Forbidden) zurück, um anzugeben, dass der Nutzer innerhalb eines bestimmten Zeitraums zu viele Anfragen gesendet hat. Die Fehlerursache ist userRequestsExceedRateLimit.

      Die Methoden liveBroadcasts.insert und liveBroadcasts.update unterstützen bereits denselben Fehler.
      liveStreams.insert Die liveStreams.insert-Methode unterstützt vier neue 400-Fehler (Bad Request), die einen ungültigen Property-Wert in der liveStream-Ressource angeben, die in der Anfrage eingefügt werden sollte. In der folgenden Liste sind die Fehlerursachen und die zugehörigen Properties aufgeführt:
      liveStreams.insert Die liveStreams.insert-Methode unterstützt zwei neue 400-Fehler (Bad Request), die jeweils darauf hinweisen, dass ein erforderlicher Wert nicht in der liveStream-Ressource vorhanden ist, die in der Anfrage eingefügt werden sollte. In der folgenden Liste sind die Fehlerursachen und die zugehörigen Properties aufgeführt:
      Wenn Sie eine liveStream-Ressource einfügen, müssen Sie entweder einen Wert für das Attribut cdn.format oder für die Attribute cdn.frameRate und cdn.resolution angeben.
      • Die API gibt einen formatRequired-Fehler zurück, wenn Sie für keine der drei Properties einen Wert angeben.
      • Die API gibt einen frameRateRequired-Fehler zurück, wenn Sie einen Wert für cdn.resolution, aber keinen für cdn.frameRate angeben.
      • Die API gibt einen resolutionRequired-Fehler zurück, wenn Sie einen Wert für cdn.frameRate, aber nicht für cdn.resolution angeben.
      liveStreams.update Die liveStreams.update-Methode gibt einen 403-Fehler (Forbidden) zurück, wenn bei der Anfrage versucht wird, den Wert einer der folgenden nicht veränderbaren Eigenschaften zu ändern: Die reason in der Fehlerantwort ist liveStreamModificationNotAllowed.

18. Dezember 2015

Gemäß den Gesetzen der Europäischen Union (EU) müssen Endnutzer in der EU bestimmte Informationen erhalten und ihre Einwilligung erteilt haben. Daher müssen Sie für Endnutzer in der Europäischen Union die Richtlinie zur Einwilligung der Nutzer in der EU einhalten. Wir haben in unseren Nutzungsbedingungen für die YouTube API einen Hinweis auf diese Anforderung aufgenommen.

17. Dezember 2015

Dieses Update enthält die folgenden Änderungen:

  • Neue Ressourcen und Methoden

    • Die API unterstützt mehrere neue Ressourcen zur Unterstützung der Chatfunktion für Livestreams. YouTube unterstützt die Livechat-Funktion während aktiver Livestreams. Mit diesen Ressourcen und Methoden können Chatnachrichten abgerufen und Verwaltungsfunktionen für den Chat genutzt werden.

      Ressourcen
      liveChatMessage Diese Ressource stellt eine Nachricht in einem YouTube-Livechat dar. YouTube unterstützt verschiedene Arten von Nachrichten, darunter SMS und Fan-Funding-Ereignisse. Einige Nachrichtentypen geben eine bestimmte Phase des Chats an, z. B. den Beginn eines Zeitraums, in dem nur Sponsoren teilnehmen dürfen, oder das Ende des Chats. Die API unterstützt Methoden zum Auflisten, Einfügen und Löschen von Livechat-Nachrichten.
      liveChatModerators Diese Ressource identifiziert einen Chatmoderator. Moderatoren können einige administrative Funktionen ausführen, z. B. Nutzer vom Chat ausschließen oder Nachrichten entfernen. Die API unterstützt Methoden zum Auflisten, Einfügen und Löschen von Livechat-Moderatoren.
      liveChatBans Diese Ressource identifiziert einen Nutzer, der nicht mehr im Livechat Nachrichten posten darf. Sperrungen können vorübergehend oder dauerhaft sein. Die API unterstützt Methoden zum Einfügen und Löschen von Livechat-Sperrungen.
      fanFundingEvents Diese Ressource stellt ein Fan-Funding-Ereignis auf einem YouTube-Kanal dar. Mit Fan-Funding können Zuschauer YouTube-Creator mit einer einmaligen Geldspende unterstützen.

      Die Methode fanFundingEvents.list der API listet die Fan-Funding-Ereignisse eines Kanals auf. Fan-Funding-Ereignisse, die über einen Livechat während einer Liveübertragung auf dem Kanal initiiert werden, lösen auch eine fanFundingEvent-Nachricht im Livechat der Übertragung aus.

      Weitere Informationen zu Fan-Funding findest du in der YouTube-Hilfe.
      sponsors Die sponsor-Ressource identifiziert einen Sponsor eines YouTube-Kanals. Ein Sponsor zahlt einem Kanal eine monatliche Gebühr. In den Livechats des Kanals wird neben den Nachrichten der Unterstützer ein Badge angezeigt. Außerdem können sie an Livechats teilnehmen, die ausschließlich für die Unterstützer des Kanals gedacht sind, sofern solche stattfinden.

      Die Methode sponsors.list der API listet die Sponsoren eines Kanals auf. Wenn sich Nutzer während einer Livestreams auf einem Kanal als Unterstützer registrieren, fügt die API dem Livechat der Übertragung eine newSponsorEvent-Nachricht hinzu.

      Weitere Informationen zu Sponsorships findest du in der YouTube-Hilfe.

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • Die liveBroadcast-Ressource enthält die folgenden neuen Properties:

      Attribute
      snippet.liveChatId Die ID für den YouTube-Livechat der Übertragung. Mit dieser ID können Sie die Methoden der liveChatMessage-Ressource verwenden, um Chatnachrichten abzurufen, einzufügen oder zu löschen. Außerdem kannst du Chatmoderatoren hinzufügen oder entfernen, Nutzer von der Teilnahme an Livechats ausschließen oder bestehende Sperrungen aufheben.
      contentDetails.closedCaptionsType Hinweis: Dieses Attribut ersetzt das Attribut contentDetails.enableClosedCaptions.

      Dieses Attribut gibt an, ob Untertitel für deine Übertragung aktiviert sind und falls ja, welche Art von Untertiteln du zur Verfügung stellst:
      • closedCaptionsDisabled: Untertitel sind für die Livestreams deaktiviert.
      • closedCaptionsHttpPost: Du sendest Untertitel per HTTP-POST an eine Aufnahme-URL, die mit deinem Livestream verknüpft ist.
      • closedCaptionsEmbedded: Untertitel werden im Videostream mit den Formaten EIA-608 und/oder CEA-708 codiert.
      contentDetails.enableClosedCaptions Dieses Attribut wird seit dem 17. Dezember 2015 nicht mehr unterstützt. Verwende stattdessen die Property contentDetails.closedCaptionsType. Für API-Clients, die diese Property bereits verwenden:
      • Wenn Sie den Attributwert auf true festlegen, entspricht das dem Festlegen des Attributs contentDetails.closedCaptionsType auf closedCaptionsHttpPost.
      • Wenn Sie den Attributwert auf false festlegen, entspricht das dem Festlegen des Attributs contentDetails.closedCaptionsType auf closedCaptionsDisabled.
    • Mit dem neuen Parameter broadcastType der Methode liveBroadcasts.list kannst du eine API-Antwort so filtern, dass sie Ereignis-, persistente oder alle Übertragungen enthält.

      Ein dauerhafter Broadcast ist immer vorhanden und nicht an ein bestimmtes Ereignis gebunden. Insbesondere ist die Standardübertragung eines Kanals eine dauerhafte Übertragung. Sie ist über das Live-Dashboard in YouTube Studio zugänglich. Die anderen Übertragungen des Kanals sind Ereignisübertragungen.

  • Im Feld status.healthStatus.configurationIssues[].type der liveStream-Ressource werden die folgenden neuen Fehler für den Gesundheitsstatus gemeldet:

    Fehler
    audioTooManyChannels Die Audiodaten umfassen mehr als zwei Kanäle. Es werden aber nur ein Kanal (Mono) oder zwei Kanäle (Stereo) unterstützt. Korrigiere die Anzahl der Audiokanäle.
    frameRateHigh Die aktuelle Framerate ist zu hoch. Stelle die Framerate auf %(framerate)s fps oder niedriger ein.
  • Das Veröffentlichungsdatum der vorherigen Dokumentationsaktualisierung wurde korrigiert.

  • Neue und aktualisierte Fehler

    • Zusätzlich zu den für die oben aufgeführten neuen Ressourcen definierten Fehlern unterstützt die API die folgenden neuen Fehler:

      Fehlerdetails
      liveBroadcasts.update
      HTTP-Antwortcodeforbidden (403)
      GrundclosedCaptionsTypeModificationNotAllowed
      BeschreibungDer Wert contentDetails.closedCaptionsType kann nur geändert werden, wenn die Übertragung den Status created oder ready hat.
      liveBroadcasts.update
      HTTP-AntwortcodeinvalidValue (400)
      GrundinvalidEnableClosedCaptions
      BeschreibungIn der liveBroadcast-Ressource ist der Wert der Eigenschaft contentDetails.enableClosedCaptions nicht mit dem Wert der Einstellung contentDetails.closedCaptionType kompatibel. Ändern Sie die Ressource so, dass sie nur eine der beiden Properties enthält, und reichen Sie die Anfrage noch einmal ein.

19. August 2015

Dieses Update enthält die folgenden Änderungen:

  • Neue Ressourcen und Methoden

    • Hinweis:Die Dokumentation für die liveChat-Ressource und ihre Methoden ist vertraulich und nur für ausgewählte YouTube-Partner sichtbar.

      Die neue liveChat-Ressource enthält einen Kommentar, der während einer Liveübertragung auf YouTube gepostet wurde. Die API unterstützt zwei Methoden für diese Ressource:

      Methoden
      liveChats.list Livechatnachrichten für eine Übertragung auflisten
      liveChats.insert Erstellen Sie eine neue Chatnachricht.

      Livechatnachrichten können nur abgerufen und gepostet werden, während eine Übertragung live ist.

  • Aktualisierungen vorhandener Ressourcen und Methoden

    • Die liveStream-Ressource enthält die folgenden neuen Properties:

      Attribute
      snippet.isDefaultStream Gibt an, ob es sich bei diesem Stream um den Standardstream für den Kanal handelt. Der Standardstream eines Kanals existiert unbegrenzt, hat keine Start- oder Endzeit und kann nicht gelöscht werden. Weitere Informationen zur Funktionsweise von Standardstreams finden Sie in der Definition der Property.
      status.healthStatus Dieses Objekt enthält Informationen, mit denen Streamingprobleme identifiziert, diagnostiziert und behoben werden können. Das Objekt enthält eine Reihe von untergeordneten Properties, mit denen du den Zustand eines Live-Videostreams bewerten kannst.

      Im status.healthStatus.configurationIssues[]-Objekt werden insbesondere Probleme aufgelistet, die sich auf einen Videostream auswirken. Im neuen Dokument Konfigurationsprobleme für Livestream-Ressourcen sind alle Probleme aufgeführt, die von der API gemeldet werden.
      contentDetails.isReusable Gibt an, ob der Stream wiederverwendbar ist, d. h., ob er mehreren Übertragungen zugeordnet werden kann. Es ist üblich, dass Sender denselben Stream für viele verschiedene Übertragungen wiederverwenden, wenn diese zu unterschiedlichen Zeiten stattfinden.
    • Die liveBroadcast-Ressource enthält die folgenden neuen Properties:

      Attribute
      snippet.isDefaultBroadcast Gibt an, ob es sich bei dieser Übertragung um die Standardübertragung für den Kanal handelt. Wenn für einen YouTube-Kanal das Livestreaming aktiviert ist, erstellt YouTube einen Standardstream und eine Standardübertragung für den Kanal. Der Stream definiert, wie der Kanalinhaber Livevideos an YouTube sendet. Die Übertragung ist die Art und Weise, wie Zuschauer den Standardstream sehen können. Weitere Informationen zur Funktionsweise von Standardübertragungen finden Sie in der Definition der Property.
      contentDetails.enableLowLatency Gibt an, ob diese Übertragung für Streaming mit niedriger Latenz codiert werden soll. Ein Stream mit niedriger Latenz kann die Zeit verkürzen, die es dauert, bis das Video für Nutzer sichtbar ist, die sich eine Übertragung ansehen. Er kann sich aber auch auf die Auflösung für Zuschauer des Streams auswirken.
      statistics.totalChatCount Die Gesamtzahl der Livechatnachrichten, die mit der Übertragung verknüpft sind. Die Property und ihr Wert sind vorhanden, wenn die Übertragung für den Nutzer sichtbar ist und die Livechat-Funktion aktiviert ist. Hinweis: Nach dem Ende der Übertragung wird für dieses Attribut kein Wert mehr angegeben. Mit dieser Property wird also nicht die Anzahl der Chatnachrichten für ein archiviertes Video einer abgeschlossenen Liveübertragung ermittelt.
  • Neue und aktualisierte Fehler

    • Zusätzlich zu den für die neue liveChat-Ressource definierten Fehlern unterstützt die API den folgenden neuen Fehler:

      Fehlerdetails
      liveStreams.update
      HTTP-Antwortcodeforbidden (403)
      GrundliveStreamModificationNotAllowed
      BeschreibungMit der API kannst du einen wiederverwendbaren Stream nicht in einen nicht wiederverwendbaren Stream ändern und umgekehrt. Weitere Informationen finden Sie unter Streams und Übertragungen.

21. Mai 2015

Dieses Update enthält die folgenden Änderungen:

  • YouTube unterstützt jetzt das Livestreaming von Videos mit 60 Frames pro Sekunde (fps). Das sorgt für eine flüssigere Wiedergabe von Gaming- und anderen Videos mit schneller Action. Wenn du einen Livestream auf YouTube mit 60 fps startest, stellt YouTube den Stream auch mit 30 fps auf Geräten zur Verfügung, auf denen die Wiedergabe mit hoher Framerate noch nicht möglich ist.

    Das Attribut cdn.format der Ressource liveStream unterstützt zwei neue Werte für diese Funktion: 720p_hfr und 1080p_hfr.

    Weitere Informationen zu dieser Funktion findest du im YouTube Creators-Blog.

21. August 2014

Dieses Update enthält die folgenden Änderungen:

  • Die Definition des Parameters walltime der Methode liveBroadcasts.control wurde aktualisiert. Der Property-Wert muss jetzt im ISO 8601-Format (YYYY-MM-DDThh:mm:ss.sssZ) angegeben werden.

  • Die API unterstützt jetzt die folgenden Fehler:

    Fehlertyp Fehlerdetails Beschreibung
    insufficientPermissions liveStreamingNotEnabled Alle Methoden für die Ressourcen liveBroadcast und liveStream geben diesen Fehler zurück, wenn der Nutzer, der die API-Anfrage autorisiert hat, nicht zum Streamen von Livevideos auf YouTube berechtigt ist. Weitere Informationen dazu, warum der Nutzer keine Livestreams streamen kann, sind möglicherweise in den Kanaleinstellungen unter https://www.youtube.com/features verfügbar.
    rateLimitExceeded userRequestsExceedRateLimit Die Methoden liveBroadcasts.insert und liveStreams.insert geben diesen Fehler zurück, um anzugeben, dass der Nutzer innerhalb eines bestimmten Zeitraums zu viele Anfragen gesendet hat.

2. Mai 2014

Dieses Update enthält die folgenden Änderungen:

  • Die Beschreibungen der liveStream-Ressource und der liveBroadcasts.bind-Methode wurden aktualisiert. Es wird nun darauf hingewiesen, dass eine Übertragung nur an einen Videostream gebunden werden kann, ein Videostream aber an mehrere Übertragungen. Diese Änderung ist lediglich eine Korrektur der Dokumentation. Die zugrunde liegende API-Funktionalität hat sich nicht geändert.

  • Die Property „contentDetails.monitorStream.enableMonitorStream“ der liveBroadcast-Ressource wurde aktualisiert. Wenn der Wert der Property true ist, musst du deine Übertragung in den Status testing ändern, bevor du sie in den Status live ändern kannst. Wenn der Wert der Property false ist, kann die Übertragung keine Phase testing haben. Du kannst sie also direkt in den Status live überführen.

  • Die Property settings.offsetTimeMs der liveCuepoint-Ressource wurde aktualisiert. Du solltest keinen Wert für die Property angeben, wenn deine Übertragung keinen Monitorstream hat.

  • Alle Methoden für die Ressourcen liveBroadcast und liveStream unterstützen jetzt die Parameter onBehalfOfContentOwner und onBehalfOfContentOwnerChannel. Mit diesen Parametern kannst du dieselben Autorisierungsdaten verwenden, um API-Anfragen für verschiedene Kanäle auszuführen, die mit demselben Rechteinhaber verknüpft sind.

  • In der Dokumentation der liveCuepoints.insert-Methode wurde aktualisiert, dass Sie beim Aufrufen dieser Methode einen Wert für die settings.walltime-Property festlegen können.

  • In der Fehlerdokumentation wird jetzt der HTTP-Antwortcode für jeden Fehlertyp angegeben.

  • Die API unterstützt jetzt den folgenden Fehler:

    Fehlertyp Fehlerdetails Beschreibung
    insufficientPermissions livePermissionBlocked Die Methoden liveBroadcasts.insert, liveBroadcasts.transition und liveStreams.insert geben diesen Fehler zurück, wenn der Nutzer, der die Anfrage autorisiert hat, kein Livevideo auf YouTube streamen kann. Weitere Informationen dazu, warum der Nutzer keine Livestreams streamen kann, sind möglicherweise in den Kanaleinstellungen unter https://www.youtube.com/features verfügbar.
  • Der Fehler invalidScheduledStartTime der Methode liveBroadcasts.insert wurde aktualisiert, um zu verdeutlichen, dass der geplante Startzeitpunkt nah genug am aktuellen Datum liegen muss, damit eine Übertragung zu diesem Zeitpunkt zuverlässig geplant werden kann.

13. Dezember 2013

Dieses Update enthält die folgenden Änderungen:

  • Das neue status.recordingStatus-Attribut der liveBroadcast-Ressource gibt den aktuellen Status der Übertragung an.

  • Die neue Property contentDetails.enableClosedCaptions der liveBroadcast-Ressource gibt an, ob Untertitel für die Übertragung aufgenommen werden können. Der Property-Wert kann beim Einfügen oder Aktualisieren einer Übertragung festgelegt werden, aber nicht mehr, wenn die Übertragung den Status testing oder live hat. Wenn du diese Property auf true setzt, wird in der liveStream-Ressource, die an die Übertragung gebunden ist, die Datenaufnahme-URL für die Untertitel der Übertragung angegeben.

  • Die Property snippet.scheduledEndTime der liveBroadcast-Ressource unterstützt jetzt Übertragungen, die auf unbestimmte Zeit geplant sind. Durch diese Änderung ist die Property in liveBroadcasts.insert- und liveBroadcasts.update-Anfragen nicht mehr erforderlich.

    Wenn du eine liveBroadcast-Ressource abrufst, für die kein Wert für diese Property angegeben ist, wird die Übertragung unbegrenzt fortgesetzt. Wenn Sie die Methode liveBroadcasts.insert oder liveBroadcasts.update aufrufen und keinen Wert für diese Property angeben, wird die Übertragung ebenfalls auf unbestimmte Zeit geplant.

  • Die Eigenschaft contentDetails.recordFromStart der liveBroadcast-Ressource, die bereits den Standardwert true hatte, kann jetzt nur noch auf false festgelegt werden, wenn der Übertragungskanal berechtigt ist, Aufzeichnungen für Livestreams zu deaktivieren.

    Wenn dein Kanal keine Berechtigung zum Deaktivieren von Aufzeichnungen hat und du versuchst, eine Übertragung einzufügen, für die die recordFromStart-Eigenschaft auf false festgelegt ist, gibt die API den Fehler Forbidden zurück. Wenn dein Kanal nicht über diese Berechtigung verfügt und du versuchst, eine Übertragung zu aktualisieren, um die recordFromStart-Eigenschaft auf false festzulegen, gibt die API den Fehler modificationNotAllowed zurück.

  • Die liveBroadcast-Ressource enthält keine enableArchive-Property mehr, die in den Beschreibungen der contentDetails.enableDvr- und contentDetails.enableEmbed-Properties erwähnt wurde.

  • Die Liste der gültigen Werte für die Property status.lifeCycleStatus der Ressource liveBroadcast wurde um eine Beschreibung der einzelnen Status ergänzt.

  • Mit der neuen settings.walltime-Eigenschaft der liveCuepoint-Ressource werden das Datum und die Uhrzeit angegeben, zu denen der Cue-Punkt eingefügt werden soll. Die API gibt einen Fehler zurück, wenn in einer Anfrage versucht wird, einen Cue-Punkt einzufügen, der einen Wert für diese und die settings.offsetTimeMs-Eigenschaft angibt.

  • Das neue contentDetails-Objekt in einer liveStream-Ressource enthält Informationen zum Stream. Derzeit ist contentDetails.closedCaptionsIngestionUrl die einzige Property des Objekts. Sie gibt die Datenaufnahme-URL für Untertitel an, die mit dem Videostream verknüpft sind.

  • Die Liste der gültigen Werte für die Property status.streamStatus der Ressource liveStream wurde um eine Beschreibung der einzelnen Status ergänzt.

  • Mit dem neuen Parameter walltime der Methode liveBroadcasts.control kannst du das Datum und die Uhrzeit angeben, zu dem eine Änderung des Slates erfolgt. Die API gibt einen Fehler zurück, wenn in einer Anfrage ein Wert für diesen Parameter und für den Parameter offsetTimeMs angegeben ist.

  • In der API-Antwort auf eine liveBroadcasts.list-Anfrage hat sich der Wert des Attributs kind von youtube#liveBroadcastList zu youtube#liveBroadcastListResponse geändert.

  • In der API-Antwort auf eine liveStreams.list-Anfrage hat sich der Wert des Attributs kind von youtube#liveStreamList zu youtube#liveStreamListResponse geändert.

  • Das Attribut eventId wird sowohl in liveBroadcastListResponse als auch in liveStreamListResponse nicht mehr unterstützt.

  • Die API unterstützt die folgenden neuen Fehler:

    Fehlertyp Fehlerdetails Beschreibung
    invalidValue conflictingTimeFields Die Methode liveBroadcasts.control gibt diesen Fehler zurück, wenn in Ihrer Anfrage Werte für die Parameter offsetTimeMs und walltime angegeben sind. In einer Anfrage können beide Parameter entweder weggelassen oder für einen der beiden Parameter ein Wert angegeben werden.
    invalidValue invalidWalltime Die Methode liveBroadcasts.control gibt diesen Fehler zurück, wenn der Wert des Parameters walltime ungültig ist.
    forbidden enableClosedCaptionsModificationNotAllowed Die Methode liveBroadcasts.update gibt diesen Fehler zurück, wenn du versuchst, den Wert contentDetails.enableClosedCaptions zu aktualisieren und der Status der Übertragung nicht created oder ready ist.
    invalidValue conflictingTimeFields Die Methode liveCuepoints.insert gibt diesen Fehler zurück, wenn in Ihrer Anfrage Werte für die Properties settings.offsetTimeMs und settings.walltime angegeben sind. In einer Anfrage können beide Eigenschaften weggelassen oder ein Wert für eine der beiden Eigenschaften angegeben werden.

    Außerdem wird bei der liveStreams.update-Methode kein cdnRequired-Fehler mehr unterstützt, der der liveStreams.insert-Methode ähnelt.

10. Mai 2013

Dieses Update enthält die folgenden Änderungen:

2. Mai 2013

Dieses Update enthält die folgenden Änderungen:

27. März 2013

Dieses Update enthält die folgenden Änderungen:

  • Die folgenden Properties in der liveBroadcast-Ressource haben sich geändert:

    • Das Attribut startWithSlateCuepoint wurde in startWithSlate umbenannt.
    • Das Attribut enableArchive wurde in recordFromStart umbenannt.
    • Das slateSettings-Objekt wurde eingestellt und aus der Dokumentation entfernt. Auch Fehlermeldungen im Zusammenhang mit dem slateSettings-Objekt oder seinen Properties wurden entfernt. Außerdem wurde der Abschnitt „Slates anzeigen“ aus dem Leitfaden für die ersten Schritte entfernt.

  • Die API unterstützt das Einfügen von In-Stream-Slates mit der Methode liveCuepoints.insert nicht mehr. Die folgenden Dokumente wurden zur Berücksichtigung dieser Änderung aktualisiert:

18. März 2013

Dieses Update enthält die folgenden Änderungen:

  • Alle Fehlermeldungen der API wurden aktualisiert, um mögliche Fehler klarer zu erklären und nach Möglichkeit eine Anleitung zur Fehlerbehebung anzugeben.

  • Die API gibt jetzt möglicherweise mehrere neue Fehler zurück. In der folgenden Liste werden der Fehler und die API-Methode angegeben, die diesen Fehler möglicherweise zurückgeben:

    • liveBroadcasts.insert – Das geplante Ende einer Übertragung muss nach dem geplanten Beginn liegen.
    • liveBroadcasts.insert: Für die Übertragung ist ein ungültiger Datenschutzstatus angegeben.
    • liveBroadcasts.update: Die Ressource enthält keinen Wert für die Property contentDetails.enableArchive oder hat keinen festgelegt.
    • liveBroadcasts.update: Die Ressource enthält keinen Wert für die Property contentDetails.enableContentEncryption oder hat keinen festgelegt.
    • liveBroadcasts.update: Die Ressource enthält keinen Wert für die Property contentDetails.enableDvr oder hat keinen festgelegt.
    • liveStreams.insert – Der Titel des Snippets muss zwischen 1 und 128 Zeichen lang sein.
    • liveStreams.update: Die Ressource enthält keinen Wert für die Property snippet.title oder hat keinen festgelegt.

  • Die Dokumentation zur liveStream-Ressource wurde aktualisiert, um darauf hinzuweisen, dass Multicast und WebM nicht wie zuvor angegeben unterstützte Datenaufnahmemethoden sind. Die Liste der Formate für die Property cdn.format wurde entsprechend aktualisiert und das cdn.multicastIngestionInfo-Objekt und seine untergeordneten Properties wurden aus der Dokumentation der Ressource entfernt. Außerdem wurde http aus der Liste der unterstützten cdn.ingestionType-Werte entfernt.