Mit der Video Stitcher API erstellst du jedes Mal eine Live-Sitzung, wenn du die Wiedergabe eines Livestreams startest, in dem von Google Ad Manager ausgelieferte Anzeigen während Werbeunterbrechungen dynamisch zusammengeführt werden. Die Antwort enthält die Wiedergabe-URL und die Konfiguration der Livestream-Sitzung.
Auf dieser Seite wird beschrieben, wie Sie eine Live-Sitzung erstellen und verwalten, die in Google Ad Manager aktiviert ist. Informationen zu Livesitzungen, für die kein Google Ad Manager verwendet wird, finden Sie unter Livesitzung verwalten.
Hinweise
- Erstelle eine Live-Konfiguration. Für die Integration mit Google Ad Manager muss das Objekt
gamLiveConfig
festgelegt sein. - Wenn du einen Slate angibst, muss das Objekt
gamSlate
für den registrierten Slate festgelegt sein.
Livesitzung erstellen
Du kannst eine Live-Sitzung mit dem IMA SDK erstellen (das die Video Stitcher API aufruft) oder direkt mit der Video Stitcher API.
IMA SDK verwenden
Wenn du die Integration mit dem IMA SDK verwendest, 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 Videowiedergabevarianten im zusammengefügten Videomanifest generiert werden und in welcher Reihenfolge sie angeordnet werden. 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-Anzeigen-Tag kann Targeting-Parameter enthalten, die pro Sitzung aktualisiert werden können. Weitere Informationen finden Sie unter Targeting-Parameter mit dem IMA SDK festlegen.
Im nächsten Abschnitt erfährst du, wie du diese Parameter mit dem IMA SDK festlegst.
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 der Standardwert für adTracking
in der Livekonfiguration beispielsweise auf SERVER
festgelegt ist, kannst du diesen Wert überschreiben und CLIENT
festlegen. Außerdem kannst du das Feld manifestOptions
im IMA SDK festlegen, indem du das JSON-Objektfeld videoStitcherSessionOptions
festlegst.
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' } }; streamManager.requestStream(streamRequest); }
Weitere Informationen finden Sie unter Optionen für Streamingsitzungen hinzufügen.
API direkt verwenden
Wenn Sie eine Live-Sitzung direkt über die API erstellen möchten, verwenden Sie die Methode projects.locations.liveSessions.create
.
Das Feld liveConfig
ist das einzige Pflichtfeld im JSON-Text. Du kannst die folgenden optionalen Parameter pro Live-Sitzung festlegen oder überschreiben (wie im folgenden REST-Beispiel gezeigt):
manifestOptions
: Gibt an, welche Videowiedergabevarianten im zusammengefügten Videomanifest generiert werden und in welcher Reihenfolge sie angeordnet werden. Weitere Informationen finden Sie in der Dokumentation zu Manifestoptionen.adTracking
: Wählen Sie entweder „clientseitiges Anzeigen-Tracking“ 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 im Feld Projektnummer auf der Seite IAM-EinstellungenLOCATION
: Der Speicherort, 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 Livekonfiguration
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort 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 C# API-Referenzdokumentation für die Video Stitcher API.
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 Go API-Referenzdokumentation für die Video Stitcher API.
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 Java API-Referenzdokumentation für die Video Stitcher API.
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 Node.js API-Referenzdokumentation für die Video Stitcher API.
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 PHP API-Referenzdokumentation für die Video Stitcher API.
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 Python API-Referenzdokumentation für die Video Stitcher API.
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 Ruby API-Referenzdokumentation für die Video Stitcher API.
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 Live-Sitzungsobjekt. playUri
ist die URL, über die das Clientgerät den mit Anzeigen zusammengefügten Stream für diese Livestream-Sitzung wiedergibt.
Die Video Stitcher API generiert für jede Anfrage eine eindeutige Sitzungs-ID. Eine Sitzung läuft ab, wenn die playUri
nicht innerhalb der letzten 5 Minuten angefordert wurde.
Wenn Sie eine Sitzung im Namen der Geräte Ihrer Kunden generieren, können Sie die folgenden Parameter mithilfe von 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 im Feld Projektnummer auf der Seite IAM-EinstellungenLOCATION
: Der Speicherort, 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 in etwa folgende JSON-Antwort 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 C# API-Referenzdokumentation für die Video Stitcher API.
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 Go API-Referenzdokumentation für die Video Stitcher API.
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 Java API-Referenzdokumentation für die Video Stitcher API.
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 Node.js API-Referenzdokumentation für die Video Stitcher API.
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 PHP API-Referenzdokumentation für die Video Stitcher API.
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 Python API-Referenzdokumentation für die Video Stitcher API.
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 Ruby API-Referenzdokumentation für die Video Stitcher API.
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 mit Anzeigen zusammengefügte Playlist
Unten siehst du eine Beispiel-Live-Playlist vor dem Anzeigen-Stitching:
#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
Im Folgenden siehst du ein Beispiel für eine Live-Playlist nach dem Stitching 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 sehen möchten, verwenden Sie die Überprüfung der Streamingaktivitäten in Ad Manager. Dort finden Sie auch Details zu Anzeigenanfragen.