L'API Video Stitcher consente di creare una sessione dal vivo ogni volta che inizi la riproduzione di un live streaming in cui gli annunci vengono uniti dinamicamente durante le interruzioni pubblicitarie. La risposta specifica l'URL di riproduzione e la configurazione della sessione dal vivo.
Questo documento descrive come creare una sessione in tempo reale. Per maggiori dettagli, consulta la documentazione relativa a REST.
Prima di iniziare
Definisci una sessione dal vivo
Quando definisci una sessione dal vivo, è obbligatorio il seguente campo:
liveConfig
Quando definisci una sessione dal vivo, i seguenti campi sono facoltativi:
adTagMacros
manifestOptions
Il parametro adTagMacros
è un elenco di coppie chiave-valore per la sostituzione delle macro dei tag annuncio. Per informazioni dettagliate, consulta la sezione Macro dei tag annuncio.
Il parametro manifestOptions
specifica quali versioni video vengono generate nel file manifest video unito. Supporta anche l'ordinamento delle
restituzioni nel file manifest video unito. Per ulteriori informazioni, consulta la documentazione relativa alle opzioni del file manifest.
Creare una sessione dal vivo
Per creare una sessione dal vivo, utilizza il metodo projects.locations.liveSessions.create
.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud disponibile nel campo Numero di progetto della pagina Impostazioni IAMLOCATION
: la località in cui creare la sessione; utilizza una delle regioni supportate.Mostra localitàus-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: identificatore definito dall'utente per la configurazione 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": "PLAY_URI", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher C#.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Go.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Java.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Node.js.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher PHP.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Python.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Ruby.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori 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 se il playUri
non viene richiesto negli ultimi 5 minuti.
Un annuncio deve essere codificato prima di poter essere unito a una sessione dal vivo. Quando crei una sessione per un video con stitching di annunci, l'API Video Stitcher determina se l'annuncio è già stato codificato da una sessione precedente. L'API cerca solo gli annunci codificati creati dalle sessioni associate al tuo progetto Google Cloud. Per ulteriori informazioni su questa procedura, consulta la Panoramica.
La risposta è un oggetto sessione live. Il playUri
è l'URL che il dispositivo client utilizza per riprodurre lo stream con stitching di annunci per questa sessione dal vivo.
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 precedente richiesta curl
:
-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 sono generate per conto dei dispositivi dei tuoi clienti.
Macro dei tag annuncio
Un tag annuncio può contenere macro, i quali possono produrre un tag annuncio diverso per ogni sessione. Le macro sono indicate da parentesi quadre nel tag annuncio, come illustrato nell'esempio riportato di seguito:
AD_TAG_URI¯o=[value]
adTagUri
è definito nella
configurazione del live streaming.
Per sostituire il valore nella macro del tag annuncio, fornisci una mappatura nel campo adTagMacros
. Ad esempio, se vuoi sostituire la macro [value] con la stringa bar
, devi fornire quanto segue:
{ ... "adTagMacros": { "value": "bar" }, ... }
Quando l'API Video Stitcher richiede i metadati dell'annuncio, utilizza il seguente tag annuncio:
AD_TAG_URI¯o=bar
Ottieni una sessione
Per ricevere la sessione dal vivo, utilizza il metodo projects.locations.liveSessions.get
.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
PROJECT_NUMBER
: il numero del tuo progetto Google Cloud disponibile nel campo Numero di progetto della pagina Impostazioni IAMLOCATION
: la località in cui creare la sessione; utilizza una delle regioni supportate.Mostra 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", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher C#.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Go.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Java.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Node.js.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher PHP.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Python.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Ruby
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby riportate nella guida rapida dell'API Video Stitcher sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Video Stitcher Ruby.
Per eseguire l'autenticazione all'API Video Stitcher, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Playlist di esempio con unione di annunci
Di seguito è riportato un esempio di playlist live di origine 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 è riportato un esempio di playlist live di origine 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://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-1/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-1.ts
#EXTINF:5.000
https://ads.us-west1.cdn.videostitcher.goog/ad-2/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:10.010
segment_00009.ts