Em ads_manager.js, defina uma classe wrapper para o StreamManager do SDK do IMA que
faz solicitações de stream, recebe o manifesto do conjunto de anúncios, detecta eventos de stream do IMA
e transmite eventos emsg para o SDK do IMA.
Em ads_manager.js, o app de exemplo HbbTV do IMA configura os seguintes métodos:
requestStream()onStreamEvent()onEmsgEvent()loadAdPodManifest()
Inicializar o gerenciador de anúncios
Inicialize a classe do gerenciador de anúncios e defina listeners para os eventos de stream da IMA. Nessa chamada, defina o manipulador de eventos emsg com o método VideoPlayer.setEmsgEventHandler().
Fazer uma solicitação de um fluxo de um conjunto de anúncios
Crie o método AdManager.requestStream() para criar um objeto PodStreamRequest usando o código da rede do Google Ad Manager e a chave de recurso personalizada do stream. Teste seu app HbbTV usando o fluxo de veiculação de pod DASH de amostra da IMA com os seguintes parâmetros de fluxo:
- Código da rede:
'21775744923' - Chave de recurso personalizada:
'hbbtv-dash'
Detectar eventos de stream de anúncios
Crie o método AdManager.onStreamEvent() para processar a resposta do app aos
eventos de stream do IMA, STREAM_INITIALIZED, AD_BREAK_STARTED e
AD_BREAK_ENDED.
Processar metadados de stream de anúncios
Para transmitir as informações do evento emsg à IMA, crie o método AdManager.onEmsgEvent()
usando o método StreamManager.processMetadata(). A classe do player de vídeo chama
esse método com o método VideoPlayer.setEmsgEventHandler().
Carregar o manifesto do pod de anúncio
Crie o método AdManager.loadAdPodManifest() para pré-carregar o manifesto do conjunto de anúncios
com o player de vídeo. Construa o URL do manifesto usando a estrutura em
Método: manifesto do pod DASH.
O
app de exemplo HbbTV
usa um podId exclusivo gerado aleatoriamente. Em apps de produção, o podId é um
número inteiro que começa em um e aumenta em um para cada intervalo de publicidade. Verifique se o podId é o mesmo valor para todos os espectadores do intervalo comercial. Para receber um podId, recomendamos usar a API Early ad break notifications (EABN). Em um ambiente de produção, inclua podId e podDuration no evento de stream HbbTV AD_BREAK_ANNOUNCE.
Em seguida, crie a classe principal do aplicativo HbbTV que interage com a transmissão HbbTV.