Mit der Video Stitcher API erstellst du jedes Mal eine Video-on-Demand-Sitzung (VOD-Sitzung), wenn du vor der Auslieferung an Clientgeräte dynamisch Anzeigen einfügst, die von Google Ad Manager ausgeliefert werden. Wenn du eine Sitzung erstellst, enthält die Antwort die Wiedergabe-URL und Informationen zu den Anzeigen, die du in das Video eingefügt hast.
Auf dieser Seite wird beschrieben, wie Sie eine VOD-Sitzung erstellen und verwalten, die durch Google Ad Manager. Informationen zu VOD-Sitzungen, die nicht verwendet werden Weitere Informationen zu Google Ad Manager finden Sie unter VOD-Sitzung verwalten.
Hinweise
- Erstelle eine VOD-Konfiguration. Für die Integration mit Google Ad Manager muss das Objekt
gamVodConfig
festgelegt sein.
Sitzung erstellen
Du kannst eine VOD-Sitzung mit dem IMA SDK (das die Video Stitcher API aufruft) oder direkt mit der Video Stitcher API erstellen.
IMA SDK verwenden
Wenn du die Integration mit dem IMA SDK verwendest, wird die VOD-Sitzung vom IMA SDK erstellt.
function requestVodVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherVodStreamRequest(); streamRequest.vodConfigId = 'VOD_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamManager.requestStream(streamRequest); }
Für von Google Ad Manager aktivierte VOD-Sitzungen muss clientseitiges Anzeigen-Tracking verwendet werden.
Sie können die folgenden optionalen Parameter pro Sitzung festlegen oder überschreiben:
manifestOptions
: Gibt an, welche Videowiedergabevarianten im zusammengefügten Videomanifest generiert werden und wie sie angeordnet werden. Weitere Informationen findest du in der Dokumentation zu Manifestoptionen.adTagMacroMap
: eine Liste von Schlüssel/Wert-Paaren für das Anzeigen-Tag Makro-Ersetzung; finden Sie im Bereich Anzeigen-Tag-Makros.
Im nächsten Abschnitt erfahren Sie, wie Sie diese Parameter mithilfe der Methode IMA SDK verwenden.
Optionale Parameter und Überschreibungen
function requestVodVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherVodStreamRequest(); streamRequest.vodConfigId = 'VOD_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamRequest.videoStitcherSessionOptions = { manifestOptions: { "includeRenditions": [ { "bitrateBps": 150000, "codecs": "hvc1.1.4.L126.B0" }, { "bitrateBps": 440000, "codecs": "hvc1.1.4.L126.B0" }, ], "bitrateOrder": "descending", }, "adTagMacroMap": { "my-key": "my-value" } }; streamManager.requestStream(streamRequest); }
API direkt verwenden
Um eine Sitzung für ein Video mit Anzeigen-Stitching zu erstellen, verwende die
projects.locations.vodSessions.create
-Methode.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_NUMBER
: Ihr Google Cloud-Projekt Die Nummer finden Sie in den IAM-Einstellungen im Feld Projektnummer. SeiteLOCATION
: 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
VOD_CONFIG_ID
: die benutzerdefinierte Kennung für die VOD-Konfiguration
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/vodSessions/SESSION_ID", "interstitials": { "sessionContent": { "duration": "60s" } }, "playUri": "PLAY_URI", # This is the ad-stitched VOD URI "sourceUri": "VOD_URI", "adTagUri": "AD_TAG_URI", "assetId": "ASSET_ID", "adTracking": "SERVER", "vodConfig": "projects/PROJECT_NUMBER/locations/LOCATION/vodConfigs/VOD_CONFIG_ID" }
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 Go API-Referenzdokumentation für die Video Stitcher API.
Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Java
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Java in der Video Stitcher API-Kurzanleitung mit Clientbibliotheken. Weitere Informationen finden Sie in der Video Stitcher API Java API Referenzdokumentation.
Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. 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 Einrichtungsanleitung für Ruby in der Video Stitcher API-Kurzanleitung mit Clientbibliotheken. Weitere Informationen finden Sie in der Ruby API-Referenzdokumentation für die Video Stitcher API.
Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Die Video Stitcher API generiert für jede Anfrage eine eindeutige Sitzungs-ID. Eine Sitzung läuft nach 4 Stunden ab.
Die Antwort sollte jetzt in etwa so aussehen:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/vodSessions/SESSION_ID", "interstitials": { "adBreaks": [ { "progressEvents": [ { "timeOffset": "0s", "events": [ { "type": "IMPRESSION", "uri": "https://securepubads.g.doubleclick.net/pcs/view..." }, { "type": "START", "uri": "https://pubads.g.doubleclick.net/pagead/interaction/..." }, ... ] }, ... ], "ads": [ { "duration": "10s", "activityEvents": [ { "type": "ERROR", "uri": "https://pubads.g.doubleclick.net/pagead/interaction/..." }, { "type": "CLICK_THROUGH", "uri": "https://pubads.g.doubleclick.net/pcs/click...", "id": "GDFP" }, ... ] } ], "endTimeOffset": "10s", "startTimeOffset": "0s" } ], "sessionContent": { "duration": "70s" } }, "playUri": "PLAY_URI", "sourceUri": "VOD_URI", "adTagUri": "AD_TAG_URI", "assetId": "ASSET_ID", "adTracking": "SERVER", "vodConfig": "projects/PROJECT_NUMBER/locations/LOCATION/vodConfigs/VOD_CONFIG_ID" }
Die Antwort ist ein
VodSession
-Objekt
die die folgenden Felder enthält:
- Ein
name
-Feld, das den VOD-SESSION_ID enthält. Verwenden Sie diese ID, um die Sitzung abzurufen. - Ein
interstitials
-Feld, das Metadaten zu den Anzeigen enthält, die eingefügt (siehe Konzepte für Anzeigenmetadaten). - Ein
playUri
-Feld mit der URL, die das Clientgerät zum Abspielen verwendet des konditionierten Video-Assets.
Wenn du eine Sitzung im Namen der Geräte deiner Kunden generierst, musst du die folgenden Parameter mithilfe von HTTP-Headern festlegen:
Parameter | HTTP-Header |
---|---|
CLIENT_IP | x-user-ip |
REFERRER_URL | referer |
USER_AGENT | user-agent |
Sie können der vorherigen curl
-Anfrage die folgenden Header hinzufügen:
-H "x-user-ip: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Anzeigen-Tag-Makros
Ein Anzeigen-Tag kann Makros enthalten, die zu einem anderen Anzeigen-Tag für jedes Sitzung. Makros werden im Anzeigen-Tag durch eckige Klammern gekennzeichnet, wie im folgenden Beispiel dargestellt:
AD_TAG_URI¯o=[my-key]
adTagUri
wird in der VOD-Konfiguration definiert.
Wenn Sie den Wert im Anzeigen-Tag-Makro ersetzen möchten, stellen Sie eine Zuordnung im
adTagMacroMap
-Feld. Wenn Sie z. B.
[my-key]
-Makro mit dem String my-value
angeben, müssen Sie
Folgendes:
{ ... "adTagMacroMap": { "my-key": "my-value" }, ... }
Wenn die Video Stitcher API die Anzeigenmetadaten anfordert, wird das folgende Anzeigen-Tag verwendet:
AD_TAG_URI¯o=my-value
Sitzung abrufen
Verwende die Methode projects.locations.vodSessions.get
, um die Sitzung für ein Video mit eingeblendeten Anzeigen 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 Standort Ihrer Sitzung. 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 ID für die VOD-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/vodSessions/SESSION_ID", "interstitials": { "adBreaks": [ { "progressEvents": [ { "timeOffset": "0s", "events": [ { "type": "IMPRESSION", "uri": "https://securepubads.g.doubleclick.net/pcs/view..." }, { "type": "START", "uri": "https://pubads.g.doubleclick.net/pagead/interaction/..." }, ... ] }, ... ], "ads": [ { "duration": "10s", "activityEvents": [ { "type": "ERROR", "uri": "https://pubads.g.doubleclick.net/pagead/interaction/..." }, { "type": "CLICK_THROUGH", "uri": "https://pubads.g.doubleclick.net/pcs/click...", "id": "GDFP" }, ... ] } ], "endTimeOffset": "10s", "startTimeOffset": "0s" } ], "sessionContent": { "duration": "70s" } }, "playUri": "PLAY_URI", "sourceUri": "VOD_URI", "adTagUri": "AD_TAG_URI", "assetId": "ASSET_ID", "adTracking": "SERVER", "vodConfig": "projects/PROJECT_NUMBER/locations/LOCATION/vodConfigs/VOD_CONFIG_ID" }
C#
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für C# in der Video Stitcher API-Kurzanleitung mit 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 Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. 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 Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Node.js in der Video Stitcher API-Kurzanleitung mit 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 Einrichtungsanleitung für PHP in der Video Stitcher API-Kurzanleitung mit 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 Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ruby
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Ruby in der Video Stitcher API-Kurzanleitung mit Clientbibliotheken. Weitere Informationen finden Sie in der Ruby API-Referenzdokumentation für die Video Stitcher API.
Richten Sie Standardanmeldedaten für Anwendungen ein, um sich bei der Video Stitcher API zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Beispiel für eine Playlist mit zusammengefügten Anzeigen
Hier sehen Sie eine Beispiel-VOD-Quellplaylist vor dem Anzeigen-Stitching:
#EXTM3U
#EXT-X-TARGETDURATION:6
#EXT-X-VERSION:4
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:6.000,
segment_01.ts
#EXTINF:6.000,
segment_02.ts
#EXTINF:6.000,
segment_03.ts
#EXTINF:6.000,
segment_04.ts
#EXTINF:6.000,
segment_05.ts
#EXTINF:6.000,
segment_06.ts
#EXT-X-ENDLIST
Im Folgenden siehst du eine Beispiel-VOD-Playlist nach dem Zusammenfügen von Anzeigen mit Pre-Roll-, Mid-Roll- und Post-Roll-Anzeigen:
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:6
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-DISCONTINUITY
#EXTINF:4.000,
https://redirector.googlevideo.com/videoplayback/...
#EXTINF:4.000,
https://redirector.googlevideo.com/videoplayback/...
#EXTINF:1.990,
https://redirector.googlevideo.com/videoplayback/...
#EXT-X-DISCONTINUITY
#EXTINF:6.000,
segment_01.ts
#EXTINF:6.000,
segment_02.ts
#EXT-X-DISCONTINUITY
#EXTINF:4.000,
https://redirector.googlevideo.com/videoplayback/...
#EXTINF:0.990,
https://redirector.googlevideo.com/videoplayback/...
#EXT-X-DISCONTINUITY
#EXTINF:6.000,
segment_03.ts
#EXTINF:6.000,
segment_04.ts
#EXTINF:6.000,
segment_05.ts
#EXTINF:6.000,
segment_06.ts
#EXT-X-DISCONTINUITY
#EXTINF:4.000,
https://redirector.googlevideo.com/videoplayback/...
#EXTINF:4.000,
https://redirector.googlevideo.com/videoplayback/...
#EXTINF:1.990,
https://redirector.googlevideo.com/videoplayback/...
#EXT-X-ENDLIST
Clientseitiges Anzeigen-Tracking
Das IMA SDK übernimmt automatisch das clientseitige Anzeigen-Tracking.
Von Google Ad Manager aktivierte VOD-Sitzungen prüfen
Um VOD-Sitzungen und die Anzeigen-Tag-Details für diese Sitzungen zu prüfen, verwenden Sie die Methode Beobachten Sie die Streamingaktivitäten in Ad Manager.