En video_player.js
, define una clase de wrapper del reproductor de video para iniciar y controlar el reproductor de dash.js.
Configura el reproductor de banda ancha
Define dónde colocar el reproductor de banda ancha en tu app creando etiquetas de video y de wrapper:
Crea el reproductor de video
Inicializa la clase del reproductor de video con variables para los elementos HTML, el reproductor dash.js y las devoluciones de llamada que pueden usar otros métodos de clase.
Define las funciones de control de reproducción
Para mostrar el reproductor de anuncios y adjuntar la vista de video, crea el método VideoPlayer.play()
. Luego, crea el método VideoPlayer.stop()
para controlar la limpieza después de que finalicen los pods de anuncios.
Precarga el manifiesto de la transmisión de anuncios
Para verificar que los anuncios se carguen lo suficiente durante la transmisión de contenido y antes de que comience la pausa publicitaria, usa VideoPlayer.preload()
y VideoPlayer.isPreloaded()
.
1. Precarga la transmisión de anuncios
Crea el método VideoPlayer.preload()
para precargar el manifiesto de la transmisión de anuncios y crear un búfer de anuncios antes de una pausa publicitaria. Debes actualizar la configuración de transmisión del reproductor 'cacheInitSegments'
a true
. Si actualizas la configuración, habilitas el almacenamiento en caché de los segmentos de inicialización, lo que evita demoras cuando cambias a los anuncios.
2. Verifica el búfer de anuncios precargados
Crea el método VideoPlayer.isPreloaded()
para verificar si se precargó suficiente búfer de anuncios en comparación con un umbral de búfer establecido en la app:
Cómo adjuntar objetos de escucha del reproductor
Para agregar objetos de escucha de eventos para el evento del reproductor de dash.js, crea el método VideoPlayer.attachPlayerListener()
: PLAYBACK_PLAYING
, PLAYBACK_ENDED
, LOG
y ERROR
. Este método también controla los eventos del URI de ID de esquema, además de configurar la función de limpieza para quitar estos objetos de escucha.
Cómo establecer devoluciones de llamada de eventos del reproductor
Para administrar la reproducción del grupo de anuncios en función de los eventos del reproductor, crea los métodos VideoPlayer.onAdPodPlaying()
, VideoPlayer.onAdPodEnded()
y VideoPlayer.onAdPodError()
:
Crea el método setter para el evento onAdPodEnded
Crea el método VideoPlayer.setOnAdPodEnded()
para establecer una función de devolución de llamada que se ejecute cuando finalice un pod de anuncios. La clase de la app usa este método para reanudar la transmisión de contenido después de las pausas publicitarias.
Cómo controlar eventos de metadatos de transmisiones
Crea el método VideoPlayer.setEmsgEventHandler()
para establecer una función de devolución de llamada que se ejecute según los eventos de emsg. Para esta guía, incluye el parámetro scope
, ya que invocas setEmsgEventHandler()
fuera de video_player.js
.
Cómo mostrar y ocultar el reproductor de video durante las pausas publicitarias
Para mostrar el reproductor de video durante las pausas publicitarias y ocultarlo después de que finalicen, crea los métodos VideoPlayer.show()
y VideoPlayer.hide()
:
A continuación, crea una clase de administrador de anuncios para usar el SDK de IMA y realizar una solicitud de transmisión, obtener un manifiesto de cápsula publicitaria, escuchar los eventos de transmisión de IMA y pasar los eventos de emsg al SDK de IMA.