Con l'API Video Stitcher, crei una sessione live ogni volta che inizi la riproduzione di un live streaming in cui vengono mostrati annunci pubblicati da Google Ad Manager unite dinamicamente durante le interruzioni pubblicitarie. La risposta contiene l'URL di riproduzione e la configurazione della sessione dal vivo.
In questa pagina viene descritto come creare e gestire una sessione dal vivo abilitata da in 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 pubblicata. Per l'integrazione con
Google Ad Manager, assicurati che
gamLiveConfig
. - Se specifichi uno slate, assicurati che
gamSlate
è impostato sullo slate che registri.
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, il parametro L'SDK IMA crea la sessione dal vivo.
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 sostituire i seguenti parametri facoltativi per sessione:
manifestOptions
: specifica quali versioni video vengono generati nel file manifest del video unito allo stitching e l'ordine delle rappresentazioni. consulta la documentazione sulle 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 aggiornabili per sessione; vedi come impostare i parametri di targeting con l'SDK IMA
Consulta la prossima sezione per scoprire come impostare questi parametri utilizzando il parametro SDK IMA.
Parametri ed override facoltativi
Puoi impostare parametri facoltativi per sessione, ad esempio il campo manifestOptions
.
Questo campo non è disponibile nella configurazione live. Puoi anche eseguire l'override
i parametri impostati nella configurazione
in tempo reale per una determinata sessione.
Ad esempio, se il valore predefinito di adTracking
nella configurazione in tempo reale è SERVER
,
puoi sostituire quel valore su CLIENT
e impostare anche il campo manifestOptions
nell'SDK IMA impostando il valore 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, vedi Aggiungi opzioni per la sessione di streaming.
Usa direttamente l'API
Per creare una sessione dal vivo direttamente tramite l'API, utilizza
projects.locations.liveSessions.create
.
Il campo liveConfig
è l'unico campo obbligatorio nel corpo JSON. Puoi impostare
oppure eseguire l'override dei seguenti parametri facoltativi per sessione dal vivo (come mostrato in
il seguente esempio REST):
manifestOptions
: specifica quali versioni video vengono generati nel file manifest del video unito allo stitching e l'ordine delle rappresentazioni. consulta la documentazione sulle 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 aggiornabili per sessione; fornisci una mappatura in questo campo (ad esempio, per sostituire[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 del tuo progetto Google Cloud nel campo Numero progetto della pagina Impostazioni IAMLOCATION
: la posizione in cui creare session; 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 live
Per inviare la richiesta, espandi una delle seguenti 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 C#configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le 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, 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 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, vedi Configura 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 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, vedi Configura 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 ulteriori informazioni, consulta API PHP 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.
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 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, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
La risposta è un oggetto sessione live. La
playUri
è l'URL utilizzato dal dispositivo client per riprodurre lo stream con stitching di annunci
questa sessione dal vivo.
L'API Video Stitcher genera un ID sessione univoco per ogni richiesta. R
scade se l'playUri
non è stata richiesta negli ultimi 5 minuti.
Se generi una sessione per conto dei tuoi clienti di Google, puoi impostare 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 il metodo
l'indirizzo IP del tuo client
nelle richieste di metadati degli annunci. Tieni presente che l'indirizzo IP del client
potrebbe non corrispondere all'IP dei tuoi clienti dispositivi, se le sessioni sono
per conto dei clienti dispositivi mobili.
Ottieni una sessione
Per ottenere la sessione dal vivo, utilizza
projects.locations.liveSessions.get
.
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
SESSION_ID
: l'identificatore della sessione dal vivo
Per inviare la richiesta, espandi una delle seguenti 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 C#configurazione riportate nella guida rapida all'API Video Stitcher che utilizza le 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, 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 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, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di Node.jsconfigurazione 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, vedi Configura 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 ulteriori informazioni, consulta API PHP 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.
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, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di Rubyconfigurazione riportate nella guida rapida all'API Video Stitcher che utilizza le 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, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Playlist di esempio con annunci uniti
Di seguito viene mostrato un esempio di playlist live prima dello stitching 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 viene mostrato un esempio di playlist live dopo lo stitching 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 relativi alle sessioni, utilizza il Streaming Activity Monitor in Ad Manager per visualizzare i dettagli sulle richieste di annunci.