L'inserimento di annunci guidato dal server (SGAI) fornisce un manifest del pod di annunci pronto lo stitching sui dispositivi client. Se hai abilitato l'inserimento di annunci dinamici nella pubblicazione di pod nel tuo rete Ad Manager, puoi utilizzare SGAI. Se non è disponibile la pubblicazione di pod DAI abilitato. Contatta il tuo account manager.
Con SGAI, si utilizzano gli endpoint API di gestione dei pod per la creazione di un flusso recupero dei metadati degli annunci e dei file manifest dei pod di annunci.
Se utilizzi un server di manipolazione del manifest, puoi generare il pod di annunci gli URL manifest e inserire indicatori di annunci contenenti le informazioni sul file manifest del pod di annunci nel tuo stream di contenuti, in base alle specifiche che preferisci.
In alternativa, puoi pianificare un'interruzione pubblicitaria utilizzando un meccanismo diverso rispetto agli indicatori di annunci nel file manifest dello stream. In questi casi, l'app può ascoltare ad altri eventi, ad esempio l'interazione dell'utente con lo stream, l'app stessa o una notifica push. Dopo questi eventi, l'app può generare l'annuncio gli URL manifest dei pod e comunicare al player di iniziare a caricare il manifest del pod di annunci.
Prerequisiti
Prima di continuare, assicurati di avere quanto segue:
- Pubblicazione di pod DAI abilitata sulla tua rete Google Ad Manager.
- Un evento in live streaming con tipo Manifest per la pubblicazione di pod. Per creare l'evento: vedi Configura un live streaming per l'inserimento di annunci dinamici.
Segui i consigli
Prima di generare l'URL manifest del pod di annunci, consigliamo chiami API Early Ad Break Notification (EABN) per specificare la durata prevista, le informazioni di targeting e altre di ciascuna interruzione pubblicitaria.
Per gli stream di produzione e di prova, chiama l'API EABN, soprattutto se il tuo annuncio la rete ha campagne di pubblicità programmatica. Per ulteriori informazioni, vedi Funzionalità e linee guida per Programmatic Direct.
Effettuare una richiesta di registrazione allo stream
Quando un utente avvia uno stream di contenuti nella tua app video player, tu crei uno stream. richiesta di registrazione con parametri di targeting per creare una sessione di streaming su Ad Manager. Per maggiori dettagli su come inviare una richiesta di registrazione di uno stream, consulta: Method:stream. In seguito, riceverai dati delle risposte dalla richiesta.
I seguenti esempi consentono di presentare una richiesta di registrazione di uno stream:
HTTP testo normale
- Richiesta:
authority: dai.google.com
method: POST
path: /ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream
scheme: https
content-type: application/x-www-form-urlencoded
cust_params=customID%253D1543216789%2526anotherKey%253Dvalue1%252Cvalue2
- Risposta:
{
"manifest_format": "hls",
"media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
"metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
"polling_frequency": 10,
"session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
"stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL"
}
Conchiglia
- Riga di comando:
curl \
-H "Host: dai.google.com" \
-H "content-type: application/x-www-form-urlencoded" \
--data-binary "cust_params=channelID%253D1543216789%2526anotherKey%253Dvalue1%252Cvalue2" \
--compressed "https://dai.google.com/ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream"
- Output:
{
"manifest_format": "hls",
"media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
"metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
"pod_manifest_url": "https://dai.google.com/linear/pods/v1/hls/event/TFyZF0IoSpqvCLtLv8JdCw/pod/$pod-id$.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db%3ATUL",
"polling_frequency": 10,
"session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
"stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL"
}
JavaScript
- Utilizzo dell'API Fetch:
const response = await fetch("https://dai.google.com/ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream", {
"headers": {
"content-type": "application/x-www-form-urlencoded",
},
"body": "cust_params=channelID%3D1543216789%26anotherKey%3Dvalue1%2Cvalue2",
"method": "POST",
});
const stream = await response.json();
console.log(stream);
- Log di Play Console:
{
"stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL",
"media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
"metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
"session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
"polling_frequency": 10,
"pod_manifest_url": "https://dai.google.com/linear/pods/v1/hls/event/TFyZF0IoSpqvCLtLv8JdCw/pod/$pod-id$.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db%3ATUL",
"manifest_format": "hls"
}
Sondaggio per i metadati dell'interruzione pubblicitaria
Dopo aver effettuato una richiesta di registrazione dello streaming, esegui un sondaggio per i metadati dell'annuncio. A
sondaggio, imposti un timer utilizzando polling_frequence
nella risposta allo stream su
il passaggio di registrazione per chiamare l'annuncio
metadata.
Per ogni sondaggio potresti ricevere un elenco parziale di annunci con metadati che
diventano disponibili.
Generare l'URL manifest del pod di annunci
Crea un URL per risorsa pod dell'API Pod Serving. Dopodiché, passa l'URL a un video player per iniziare caricare il pod di annunci.
L'esempio seguente mostra la struttura dell'URL manifest del pod di annunci:
https://dai.google.com/linear/pods/v1/hls/network/51636543/custom_asset/pod_serving_hls_manifest_mp4/pod/101.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db:TUL&pd=120000
Puoi calcolare i parametri URL del file manifest dei pod di annunci in base all'interruzione pubblicitaria informazioni recuperate dal video player o da una notifica del server. Per i requisiti di questi parametri, vedi Metodo: manifest del pod.
Riprodurre il manifest del pod di annunci
Nell'app video player client, avvia la riproduzione dello stream di contenuti con un nel video player e segui la documentazione del video player per osservare la riproduzione e la pianificazione degli annunci, se pertinenti.
Se generi gli URL manifest dei pod di annunci e li inserisci nel file manifest nella lato server, osserva gli eventi di interruzione pubblicitaria imminenti del video player e assicurati di Effettuare l'iscrizione agli eventi id3 durante la riproduzione di ogni interruzione pubblicitaria. Se pianifichi l'annuncio interrompere gli eventi dal lato client, iscriviti agli eventi id3 al momento della creazione.
Segnalare impressioni ed eventi relativi agli annunci
Quando un video player riproduce il pod di annunci e trova metadati con timestamp ID3, ascoltare eventi annuncio che il video player attiva e li elabora inviare ping di verifica dei contenuti multimediali.