Con l'API Video Stitcher, puoi creare ogni volta una sessione video on demand (VOD) inserisci dinamicamente gli annunci pubblicati da Google Ad Manager prima della pubblicazione sui dispositivi client. Quando crei una sessione, la risposta include la riproduzione URL e informazioni sugli annunci che hai inserito nel video.
Questa pagina descrive come creare e gestire una sessione VOD abilitata da in Google Ad Manager. Per informazioni sulle sessioni VOD che non utilizzano Google Ad Manager, consulta Gestire una sessione VOD.
Prima di iniziare
- Crea una configurazione VOD. Per l'integrazione con Google Ad Manager, assicurati che l'oggetto
gamVodConfig
sia impostato.
Crea una sessione
Puoi creare una sessione VOD utilizzando l'SDK IMA (che chiama l'API Video Stitcher) o direttamente l'API Video Stitcher.
Utilizzare l'SDK IMA
Se esegui l'integrazione con l'SDK IMA, il parametro L'SDK IMA crea la sessione VOD.
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); }
Le sessioni VOD attivate da Google Ad Manager devono utilizzare il monitoraggio degli annunci lato client.
Puoi impostare o sostituire i seguenti parametri facoltativi per sessione:
manifestOptions
: specifica le versioni video generate nel manifest video unito e l'ordine delle versioni. Consulta la documentazione relativa alle opzioni manifestadTagMacroMap
: un elenco di coppie chiave-valore per la sostituzione delle macro dei tag annuncio; consulta la sezione Macro dei tag annuncio
Consulta la sezione successiva per scoprire come impostare questi parametri utilizzando l'SDK IMA.
Parametri facoltativi e sostituzioni
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); }
Utilizzare direttamente l'API
Per creare una sessione per un video con annunci uniti, utilizza il metodo
projects.locations.vodSessions.create
.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il tuo progetto Google Cloud che si trova nel campo Numero progetto delle Impostazioni IAM paginaLOCATION
: la località in cui creare la sessione. Utilizza una delle regioni supportateMostra localitàus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
VOD_CONFIG_ID
: l'identificatore definito dall'utente per la configurazione VOD
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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#
Prima di provare questo esempio, segui le C#istruzioni di configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Video Stitcher C#.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni per la configurazione di Go nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Go dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le Javaistruzioni di configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le librerie client. Per ulteriori informazioni, consulta API Java dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le Node.jsistruzioni di configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le librerie client. Per ulteriori informazioni, consulta API Node.js dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni per la configurazione di PHP nel Guida rapida dell'API Video Stitcher con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Video Stitcher PHP.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nel Guida rapida dell'API Video Stitcher con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Video Stitcher Python.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni per la configurazione di Ruby nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Ruby dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
L'API Video Stitcher genera un ID sessione univoco per ogni richiesta. Una sessione scade dopo 4 ore.
La risposta ora dovrebbe essere simile alla seguente:
{ "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" }
La risposta è un
Oggetto VodSession
che contiene i seguenti campi:
- Un campo
name
che mostra il VOD SESSION_ID. Utilizza questo ID per ottenere la sessione. - Un campo
interstitials
che contiene i metadati relativi agli annunci pubblicati (consulta i concetti sui metadati degli annunci). - Un campo
playUri
che mostra l'URL utilizzato dal dispositivo client per giocare la asset video condizionato.
Se generi una sessione per conto dei tuoi clienti tra i dispositivi, imposta seguenti parametri utilizzando le intestazioni HTTP:
Parametro | Intestazione HTTP |
---|---|
CLIENT_IP | x-user-ip |
REFERRER_URL | referer |
USER_AGENT | user-agent |
Puoi aggiungere le seguenti intestazioni alla richiesta curl
precedente:
-H "x-user-ip: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Macro dei tag annuncio
Un tag annuncio può contenere macro, il che può comportare un tag annuncio diverso per ogni sessione. Le macro sono indicate tra parentesi quadre nel tag annuncio, come illustrato dall'esempio seguente:
AD_TAG_URI¯o=[my-key]
adTagUri
è definito nella configurazione VOD.
Per sostituire il valore nella macro del tag annuncio, fornisci una mappatura nel campo
adTagMacroMap
. Ad esempio, se vuoi sostituire la macro [my-key]
con la stringa my-value
, devi fornire quanto segue:
{ ... "adTagMacroMap": { "my-key": "my-value" }, ... }
Quando l'API Video Stitcher richiede i metadati dell'annuncio, utilizza il seguente annuncio :
AD_TAG_URI¯o=my-value
Recupera una sessione
Per ottenere la sessione per un video con lo stitching di annunci, utilizza la
projects.locations.vodSessions.get
.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud nel campo Numero progetto della pagina Impostazioni IAMLOCATION
: la località della sessione. Utilizza una delle regioni supportateMostra localitàus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: l'identificatore della sessione VOD
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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#
Prima di provare questo esempio, segui le istruzioni per la configurazione di C# nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API C# dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni per la configurazione di Go nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Go dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Java dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Node.js dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni per la configurazione di PHP nel Guida rapida dell'API Video Stitcher con librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Video Stitcher PHP.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nel Guida rapida dell'API Video Stitcher con librerie client. Per ulteriori informazioni, consulta API Python dell'API Video Stitcher documentazione di riferimento.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le Rubyistruzioni di configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Video Stitcher Ruby.
Per autenticarti all'API Video Stitcher, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Playlist di esempio con annunci uniti
Di seguito è riportata una playlist VOD di origine di esempio prima dell'unione degli annunci:
#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
Di seguito è riportata una playlist VOD di origine di esempio dopo l'unione degli annunci con annunci pre-roll, mid-roll e post-roll:
#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
Gestire il monitoraggio degli annunci lato client
L'SDK IMA gestirà automaticamente il monitoraggio degli annunci lato client.
Ispezionare le sessioni VOD abilitate da Google Ad Manager
Per esaminare le sessioni VOD e i dettagli dei tag annuncio per queste sessioni, utilizza il metodo Monitoraggio attività di streaming in Ad Manager.