Con 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 uniti 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 in tempo reale abilitata da Google Ad Manager. Per informazioni sulle sessioni dal vivo che non utilizzano Google Ad Manager, consulta Gestire una sessione dal vivo.
Prima di iniziare
- Crea una configurazione in tempo reale. Per l'integrazione con Google Ad Manager, assicurati che l'oggetto
gamLiveConfig
sia impostato. - Se specifichi una scheda, assicurati che l'oggetto
gamSlate
sia impostato sulla scheda registrata.
Creare una sessione dal vivo
Puoi creare una sessione live 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, è l'SDK IMA a creare 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 le versioni video generate nel manifest video unito e l'ordine delle versioni. Consulta la documentazione relativa alle opzioni 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 facoltativi e sostituzioni
Puoi impostare parametri facoltativi per sessione, ad esempio il campo manifestOptions
.
Questo campo non è disponibile nella configurazione in tempo reale. Puoi anche sostituire determinati parametri impostati nella configurazione live per una determinata sessione.
Ad esempio, se il valore predefinito adTracking
nella configurazione in tempo reale è impostato su SERVER
,
puoi sostituire questo valore con 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' } }; streamManager.requestStream(streamRequest); }
Per ulteriori informazioni, consulta Aggiungere opzioni per le sessioni di streaming.
Utilizzare direttamente l'API
Per creare una sessione dal vivo 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 ogni sessione live (come mostrato nell'esempio REST seguente):
manifestOptions
: specifica le versioni video generate nel manifest video unito e l'ordine delle versioni. Consulta la documentazione relativa alle opzioni manifestadTracking
: seleziona il monitoraggio degli annunci lato client o il monitoraggio degli annunci lato server. Questo valore sostituisce il valore nella configurazione in tempo reale 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 es. per sostituire la macro[my_key]
con la stringamy_value
, consulta l'esempio REST)
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à in cui creare la sessione. Utilizza una delle regioni supportateMostra sedius-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 C# 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, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione Go 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 Go.
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 di configurazione Java 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 Java.
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.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js 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 Node.js.
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 di configurazione PHP 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 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 di configurazione Python 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 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 di configurazione Ruby 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.
La risposta è un oggetto sessione live. playUri
è l'URL utilizzato dal dispositivo client per riprodurre lo stream con annunci uniti per questa sessione live.
L'API Video Stitcher genera un ID sessione univoco per ogni richiesta. Una sessione scade se 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 cliente nelle richieste di metadati degli annunci. Tieni presente che l'indirizzo IP del cliente potrebbe non corrispondere all'IP dei dispositivi dei tuoi clienti se le sessioni vengono generate per conto dei dispositivi dei tuoi clienti.
Recupera una sessione
Per accedere alla sessione in tempo reale, utilizza il metodo
projects.locations.liveSessions.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à in cui creare la sessione. Utilizza una delle regioni supportateMostra sedius-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: l'identificatore della sessione live
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 C# 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, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione Go 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 Go.
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 di configurazione Java 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 Java.
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.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione Node.js 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 Node.js.
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 di configurazione PHP 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 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 di configurazione Python 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 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 di configurazione Ruby 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 con annunci uniti di esempio
Di seguito è riportata una playlist live di origine di esempio prima dell'unione 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 è riportata una playlist live di origine di esempio dopo l'unione 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
Controllare le sessioni dal vivo attivate da Google Ad Manager
Per visualizzare i dettagli dei tag annuncio per le sessioni, utilizza il Monitoraggio attività di streaming in Ad Manager per visualizzare i dettagli sulle richieste di annunci.