Utilizzando l'API Video Stitcher, crei una sessione live ogni volta che avvii la riproduzione di un live streaming in cui gli annunci pubblicati da Google Ad Manager vengono assemblati dinamicamente durante le interruzioni pubblicitarie. La risposta contiene l'URL di riproduzione e la configurazione della sessione live.
Questa pagina descrive come creare e gestire una sessione live abilitata da Google Ad Manager. Per informazioni sulle sessioni live che non utilizzano Google Ad Manager, consulta Gestire una sessione live.
Prima di iniziare
- Crea una configurazione live. Per l'integrazione con
Google Ad Manager, assicurati che l'oggetto
gamLiveConfig
sia impostato. - Se specifichi una lavagna, assicurati che l'oggetto
gamSlate
sia impostato sulla lavagna che registri.
Creare una sessione dal vivo
Puoi creare una sessione live utilizzando l'SDK IMA (che chiama l'API Video Stitcher) o utilizzando direttamente l'API Video Stitcher.
Utilizzare l'SDK IMA
Se esegui l'integrazione con l'SDK IMA, quest'ultimo crea la sessione live.
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); }
Puoi impostare o eseguire l'override dei seguenti parametri facoltativi per sessione:
manifestOptions
: specifica quali rendering video vengono generati nel manifest video unito e l'ordine dei rendering; consulta la documentazione sulle opzioni del manifestadTracking
: seleziona il monitoraggio degli annunci lato client o il monitoraggio degli annunci lato servertargetingParameters
: un tag annuncio Google Ad Manager può contenere parametri di targeting che possono essere aggiornati per sessione; consulta come impostare i parametri di targeting con l'SDK IMA
Consulta la sezione successiva per scoprire come impostare questi parametri utilizzando l'SDK IMA.
Parametri e override facoltativi
Puoi impostare parametri facoltativi per sessione, ad esempio il campo manifestOptions
.
Questo campo non è disponibile nella configurazione live. Puoi anche ignorare determinati
parametri impostati nella configurazione live per una determinata sessione.
Ad esempio, se il valore predefinito di adTracking
nella configurazione live è impostato su SERVER
,
puoi eseguire l'override di questo valore impostandolo su CLIENT
e impostare anche il campo manifestOptions
nell'SDK IMA impostando il campo dell'oggetto JSON videoStitcherSessionOptions
.
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); }
Per saperne di più, vedi Aggiungere opzioni per la sessione di streaming.
Utilizzare direttamente l'API
Per creare una sessione live utilizzando direttamente l'API, utilizza il metodo
projects.locations.liveSessions.create
.
Il campo liveConfig
è l'unico campo obbligatorio nel corpo JSON. Puoi impostare
o sostituire i seguenti parametri facoltativi per sessione live (come mostrato
nel seguente esempio REST):
manifestOptions
: specifica quali rendering video vengono generati nel manifest video unito e l'ordine dei rendering; consulta la documentazione sulle opzioni del manifestadTracking
: seleziona il monitoraggio degli annunci lato client o lato server; questo valore sostituisce quello nella configurazione live per la sessionetargetingParameters
: un tag annuncio Google Ad Manager può contenere parametri di targeting che possono essere aggiornati per sessione; fornisci una mappatura in questo campo (ad esempio, per sostituire la macro[my_key]
con la stringamy_value
, vedi l'esempio REST)
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero di Google Cloud progetto che si trova nel campo Numero di progetto della pagina Impostazioni IAMLOCATION
: 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
LIVE_CONFIG_ID
: l'identificatore definito dall'utente per la configurazione attiva
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per C#.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Go.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Java.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Node.js.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per PHP.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Python.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Ruby.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
La risposta è un oggetto sessione dal vivo. playUri
è l'URL utilizzato dal dispositivo client per riprodurre lo stream di annunci cuciti per questa sessione live.
L'API Video Stitcher genera un ID sessione univoco per ogni richiesta. Una
sessione scade se il playUri
non viene richiesto negli ultimi 5 minuti.
Se generi una sessione per conto dei dispositivi dei tuoi clienti, puoi impostare i seguenti parametri utilizzando le intestazioni HTTP:
Parametro | Intestazione HTTP |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
Puoi aggiungere le seguenti intestazioni alla richiesta curl
precedente:
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
Se l'intestazione x-forwarded-for
non viene fornita, l'API Video Stitcher utilizza l'indirizzo IP del client nelle richieste di metadati degli annunci. Tieni presente che l'indirizzo IP del client potrebbe non corrispondere all'IP dei dispositivi dei tuoi clienti se le sessioni vengono generate per conto dei dispositivi dei tuoi clienti.
Recuperare una sessione
Per ottenere la sessione live, utilizza il metodo
projects.locations.liveSessions.get
.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_NUMBER
: il numero di Google Cloud progetto che si trova nel campo Numero di progetto della pagina Impostazioni IAMLOCATION
: 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
SESSION_ID
: l'identificatore della sessione dal vivo
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "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#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per C#.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Go.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Java.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Node.js.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per PHP.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Python.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida dell'API Video Stitcher per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher per Ruby.
Per autenticarti all'API Video Stitcher, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Esempio di playlist con annunci integrati
Di seguito è riportato un esempio di playlist live di origine prima dell'inserimento degli annunci:
#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
Di seguito è riportato un esempio di playlist live di origine dopo l'inserimento degli annunci:
#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
Ispezionare le sessioni live attivate da Google Ad Manager
Per visualizzare i dettagli dei tag annuncio per le sessioni, utilizza lo strumento Monitoraggio attività di streaming in Ad Manager per visualizzare i dettagli delle richieste di annunci.