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 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 conjunto de anúncios
Crie o método AdManager.loadAdPodManifest() para pré-carregar o manifesto do conjunto de anúncios
com o player de vídeo. Construa um URL de manifesto autenticado usando a
estrutura em Método: manifesto do pod DASH.
O app de exemplo HbbTV usa um valor adBreakId exclusivo gerado aleatoriamente. Em apps de produção, o valor adBreakId é uma string alfanumérica, por exemplo, ab-001, que aumenta em um para cada intervalo de anúncio. Verifique se o valor de adBreakId é o mesmo para todos os espectadores do intervalo de anúncio. Para conseguir um valor adBreakId, recomendamos usar a
API DAI Ad Break.
Em um ambiente de produção, inclua os valores adBreakId e podDuration no evento de transmissão HbbTV AD_BREAK_ANNOUNCE.
Em seguida, crie a classe principal do aplicativo HbbTV que interage com a transmissão HbbTV.