Mit der Video Stitcher API erstellen Sie jedes Mal eine Live-Sitzung, wenn Sie die Wiedergabe eines Livestreams starten, in dem von Google Ad Manager bereitgestellte Anzeigen während Werbeunterbrechungen dynamisch eingefügt werden. Die Antwort enthält die Wiedergabe-URL und die Konfiguration der Livesitzung.
Auf dieser Seite wird beschrieben, wie Sie eine von Google Ad Manager unterstützte Live-Sitzung erstellen und verwalten. Informationen zu Livesitzungen, bei denen kein Google Ad Manager verwendet wird, finden Sie unter Livesitzung verwalten.
Hinweise
- Live-Konfiguration erstellen Für die Integration mit Google Ad Manager muss das
gamLiveConfig
-Objekt festgelegt sein. - Wenn Sie ein Slate angeben, muss das Objekt
gamSlate
für das registrierte Slate festgelegt sein.
Livesitzung erstellen
Sie können eine Livesitzung mit dem IMA SDK (das die Video Stitcher API aufruft) oder direkt mit der Video Stitcher API erstellen.
IMA SDK verwenden
Wenn Sie das IMA SDK einbinden, wird die Live-Sitzung vom IMA SDK erstellt.
function requestVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherLiveStreamRequest(); streamRequest.liveStreamEventId = 'LIVE_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamRequest.customAssetKey = 'CUSTOM_ASSET_KEY'; streamManager.requestStream(streamRequest); }
Sie können die folgenden optionalen Parameter pro Sitzung festlegen oder überschreiben:
manifestOptions
: Gibt an, welche Video-Renditionen im Manifest für das zusammengefügte Video generiert werden und in welcher Reihenfolge. Weitere Informationen finden Sie in der Dokumentation zu Manifestoptionen.adTracking
: Wählen Sie entweder clientseitiges oder serverseitiges Anzeigen-Tracking aus.targetingParameters
: Ein Google Ad Manager-Anzeigentag kann Targeting-Parameter enthalten, die pro Sitzung aktualisiert werden können. Weitere Informationen zum Festlegen von Targeting-Parametern mit dem IMA SDK
Im nächsten Abschnitt erfahren Sie, wie Sie diese Parameter mit dem IMA SDK festlegen.
Optionale Parameter und Überschreibungen
Sie können optionale Parameter pro Sitzung festlegen, z. B. das Feld manifestOptions
.
Dieses Feld ist in der Live-Konfiguration nicht verfügbar. Sie können auch bestimmte Parameter überschreiben, die in der Live-Konfiguration für eine bestimmte Sitzung festgelegt sind.
Wenn beispielsweise der Standardwert adTracking
in der Live-Konfiguration auf SERVER
festgelegt ist, können Sie diesen Wert mit CLIENT
überschreiben und das Feld manifestOptions
im IMA SDK festlegen, indem Sie das JSON-Objektfeld videoStitcherSessionOptions
festlegen.
function requestVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherLiveStreamRequest(); streamRequest.liveStreamEventId = 'LIVE_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamRequest.customAssetKey = 'CUSTOM_ASSET_KEY'; streamRequest.videoStitcherSessionOptions = { adTracking: 'CLIENT', 'manifestOptions': { 'includeRenditions': [ { 'bitrateBps': 150000, 'codecs': 'hvc1.1.4.L126.B0' }, { 'bitrateBps': 440000, 'codecs': 'hvc1.1.4.L126.B0' }, ], 'bitrateOrder': 'descending' } }; streamRequest.adTagParameters = { "key1": "value1", "key2": "value2", }; streamManager.requestStream(streamRequest); }
Weitere Informationen finden Sie unter Optionen für Streaming-Sitzungen hinzufügen.
API direkt verwenden
Verwenden Sie die Methode projects.locations.liveSessions.create
, um eine Livesitzung direkt über die API zu erstellen.
Das Feld liveConfig
ist das einzige Pflichtfeld im JSON-Text. Sie können die folgenden optionalen Parameter pro Livesitzung festlegen oder überschreiben (wie im folgenden REST-Beispiel gezeigt):
manifestOptions
: Gibt an, welche Video-Renditionen im Manifest für das zusammengefügte Video generiert werden und in welcher Reihenfolge. Weitere Informationen finden Sie in der Dokumentation zu Manifestoptionen.adTracking
: Wählen Sie entweder clientseitiges oder serverseitiges Anzeigen-Tracking aus. Dadurch wird der Wert in der Live-Konfiguration für die Sitzung überschrieben.targetingParameters
: Ein Google Ad Manager-Anzeigen-Tag kann Targeting-Parameter enthalten, die pro Sitzung aktualisiert werden können. Geben Sie in diesem Feld eine Zuordnung an, z. B. um das Makro[my_key]
durch den Stringmy_value
zu ersetzen (siehe REST-Beispiel).
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_NUMBER
: Ihre Google Cloud Projektnummer, die auf der Seite IAM-Einstellungen im Feld Projektnummer zu finden istLOCATION
: Der Standort, an dem die Sitzung erstellt werden soll. Verwenden Sie eine der unterstützten Regionen.Standorte anzeigenus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: die benutzerdefinierte Kennung für die Live-Konfiguration
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "PLAY_URI", "manifestOptions": { "includeRenditions": [ { "bitrateBps": 150000, "codecs": "hvc1.1.4.L126.B0" }, { "bitrateBps": 440000, "codecs": "hvc1.1.4.L126.B0" } ], "bitrateOrder": "DESCENDING" }, "gamSettings": { "streamId": "STREAM_ID" }, "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", "adTracking": "SERVER" }
C#
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der C#-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API C# API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Go-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Go API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Java-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Java API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Node.js-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Node.js API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
PHP
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der PHP-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API PHP API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Python-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Python API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Ruby-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Ruby API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Die Antwort ist ein Livesitzungsobjekt. playUri
ist die URL, die das Clientgerät zum Abspielen des Streams mit eingefügten Anzeigen für diese Livesitzung verwendet.
Die Video Stitcher API generiert für jede Anfrage eine eindeutige Sitzungs-ID. Eine Sitzung läuft ab, wenn die playUri
in den letzten 5 Minuten nicht angefordert wurde.
Wenn Sie eine Sitzung im Namen der Geräte Ihrer Kunden generieren, können Sie die folgenden Parameter mit HTTP-Headern festlegen:
Parameter | HTTP-Header |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
Sie können der vorherigen curl
-Anfrage die folgenden Header hinzufügen:
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Wenn der x-forwarded-for
-Header nicht angegeben ist, verwendet die Video Stitcher API die IP-Adresse des Clients in Anfragen für Anzeigenmetadaten. Die IP-Adresse des Clients stimmt möglicherweise nicht mit der IP-Adresse der Geräte Ihrer Kunden überein, wenn Sitzungen im Namen der Geräte Ihrer Kunden generiert werden.
Sitzung abrufen
Verwenden Sie die Methode projects.locations.liveSessions.get
, um die Live-Sitzung abzurufen.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_NUMBER
: Ihre Google Cloud Projektnummer, die auf der Seite IAM-Einstellungen im Feld Projektnummer zu finden istLOCATION
: Der Standort, an dem die Sitzung erstellt werden soll. Verwenden Sie eine der unterstützten Regionen.Standorte anzeigenus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: die Kennung für die Live-Sitzung
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "ad-stitched-live-stream-uri", "manifestOptions": { "includeRenditions": [ { "bitrateBps": 150000, "codecs": "hvc1.1.4.L126.B0" }, { "bitrateBps": 440000, "codecs": "hvc1.1.4.L126.B0" } ], "bitrateOrder": "DESCENDING" }, "gamSettings": { "streamId": "STREAM_ID", "targetingParameters": { "my_key": "my_value" } }, "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", "adTracking": "SERVER" }
C#
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der C#-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API C# API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Go
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Go-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Go API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Java-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Java API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Node.js-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Node.js API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
PHP
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der PHP-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API PHP API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Python-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Python API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Ruby-Einrichtungsanleitung in der Video Stitcher API-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Ruby API-Referenzdokumentation.
Richten Sie zur Authentifizierung bei der Video Stitcher API Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Beispiel für eine Playlist mit eingefügten Anzeigen
Das Folgende zeigt eine Beispiel-Live-Playlist der Quelle vor dem Zusammenfügen von Anzeigen:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:32:00Z",DURATION=60,SCTE35-OUT=0xF...
#EXTINF:10.010
segment_00007.ts
#EXTINF:10.010
segment_00008.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:39:20Z",SCTE35-IN=0xF...
#EXTINF:10.010
segment_00009.ts
Das Folgende zeigt eine Beispiel-Live-Playlist nach dem Zusammenfügen von Anzeigen:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://dai.google.com/.../ad-1/seg-1.ts
#EXTINF:5.000
https://dai.google.com/.../ad-1/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://dai.google.com/.../ad-2/seg-1.ts
#EXTINF:5.000
https://dai.google.com/.../ad-2/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:10.010
segment_00009.ts
Von Google Ad Manager aktivierte Livesitzungen prüfen
Wenn Sie Details zu Anzeigen-Tags für Sitzungen aufrufen möchten, verwenden Sie die Überprüfung der Streamingaktivitäten in Ad Manager, um Details zu Anzeigenanfragen zu sehen.