Muestra de Brightcove Player: Desplazamiento del reproductor a la vista con anuncios

En este tema, aprenderá a usar un Brightcove Player que comienza a reproducir el video o el anuncio tan pronto como desplaza completamente el reproductor a la vista, y detiene el video o el anuncio cuando lo hace fuera de la vista. La API de Brightcove Player play() y pause() Se llaman métodos para iniciar y detener el video según la posición del reproductor.

Ejemplo de jugador

Desplázate hacia dentro y fuera de la vista por el reproductor. Cuando el reproductor esté completamente desplazado a la vista, el video o anuncio comenzará a reproducirse. Cuando desplaza el reproductor fuera de la vista, el video o anuncio dejará de reproducirse. En este ejemplo, hay un pre-roll, un mid-roll que se puede omitir a los cinco segundos y un post-roll.

Ver la pluma 18352-reproductor-de-desplazamiento-vista-anuncios por Brightcove Learning Services ( rcrooks1969 ) en CodePen.

Código fuente

Ver el solución completa en GitHub.

Uso de CodePen

Estos son algunos consejos para utilizar eficazmente el CodePen anterior:

  • Cambie la visualización real del reproductor haciendo clic en el Result botón.
  • Haga clic en el HTML/CSS/JS botones para mostrar UNO de los tipos de código.
  • Más adelante, en este documento, la lógica, el flujo y el estilo utilizados en la aplicación se analizarán en la configuración de reproductor/HTML, Flujo de aplicaciones y Estilo de la aplicación. secciones. La mejor manera de seguir la información de estas secciones es:
    1. Haga clic en el EDIT ON CODEPEN en el CodePen y tenga el código disponible en un navegador / pestaña del navegador.
    2. En CodePen, ajusta el código que quieres que se muestre. Puede cambiar el ancho de las distintas secciones de código dentro de CodePen.
    3. Ver el Configuración de reproductor / HTML , Flujo de aplicación y / o Estilo de aplicación secciones en otra pestaña del navegador / navegador. Ahora podrá seguir las explicaciones del código y, al mismo tiempo, ver el código.

Recursos de API/plugins utilizados

Métodos API Complementos de Brightcove Player
jugar () Complemento IMA3
pausa ()  
sobre()  

Un evento JavaScript clave utilizado en este código es onscroll. Este evento se distribuye y, en este código, se gestiona cada vez que se desplaza el window elemento.

Configuración de reproductor/HTML

En esta sección se detalla cualquier configuración especial necesaria durante la creación del reproductor. Además, se describen otros elementos HTML que deben agregarse a la página, más allá del código de implementación del reproductor de incrustación de la página.

Configuración del reproductor

El muted atributo se ha añadido al reproductor para evitar problemas de reproducción automática. Ver el Consideraciones sobre la reproducción automática documento para más detalles.

Otros HTML

Un HTML <script> La etiqueta se utiliza para importar la biblioteca jQuery y JavaScript para el complemento IMA3. En los HTML head sección el CSS de IMA3 se importa usando un HTML <link> etiqueta.

Flujo de aplicaciones

La lógica básica detrás de esta aplicación es:

  • Configure el complemento IMA3.
  • Escucha eventos de scroll.
  • Cuando se gestiona un evento de desplazamiento, comprueba si el reproductor está en la ventana gráfica o no.
  • Si el reproductor está en la ventana gráfica, reproduzca el vídeo, si no lo está, pausa el vídeo.
  • Realice un seguimiento de los eventos publicitarios para determinar si el reproductor Brightcove Player normal o el reproductor publicitario se están utilizando actualmente.

Configurar el complemento IMA3

Busque el código etiquetado:

// ### Configure IMA3 plugin

El complemento IMA3 está configurado para usar una configuración de VMAP que reproducirá un pre, mid- y post-roll.

Escuche cualquier evento de desplazamiento en el ventana elemento

Busque el código etiquetado:

// ### Execute every time page is scrolled ###

Esta línea de código llama al checkIfVideoInView() método en cada envío de window.onscroll eventos.

Gestionar los eventos de desplazamiento

Busque el código etiquetado:

// ### Called on scroll, check if in view and the play/pause ###

La checkIfVideoInView() La función del controlador de eventos generalmente verifica si el reproductor está en la ventana gráfica y luego reproduce o pausa el video. Es fundamental que el código determine qué reproductor se está utilizando, el reproductor normal o el reproductor de anuncios. El valor booleano isAdPlaying se alterna según los eventos de anuncios (en el controlador de eventos en la parte inferior del código), luego se usa un operador condicional (ternario) para asignar el currentPlayer variable el jugador correcto. El isScrolledIntoView() método se utiliza en una instrucción if para comprobar si el reproductor está en la ventana gráfica. Naturalmente, el isScrolledIntoView() método devuelve un valor booleano.

Comprueba si el reproductor está completamente en la ventana gráfica

Busque el código etiquetado:

// ### Checks if player is in view ###

Esta función, que devuelve un valor booleano, utiliza jQuery para determinar si el reproductor está completamente en la ventana gráfica.

Seguimiento de qué jugador se está utilizando

Busque el código etiquetado:

// ### Set Boolean value for if ad is playing ###

Se supervisan varios eventos publicitarios y el valor booleano se establece en consecuencia.

Estilismo de aplicaciones

El único CSS establece el tamaño del reproductor.

Código de plugin

Normalmente, al convertir JavaScript en un complemento de Brightcove Player, se necesitan cambios nominales. Un cambio necesario es reemplazar el uso estándar del ready() método por el código que define un complemento.

Aquí está el código de inicio a JavaScript muy utilizado que funcionará con el reproductor:

videojs.getPlayer('myPlayerID').ready(function() {
  var myPlayer = this;
  ...
});

Cambiarás la primera línea para usar la sintaxis estándar para iniciar un plugin de Brightcove Player:

videojs.registerPlugin('pluginName', function(options) {
  var myPlayer = this;
  ...
});

Como se mencionó anteriormente, puede ver el código JavaScript del complemento en el repositorio de GitHub correspondiente de este documento: scroll-into-view-ads.js.

Uso del complemento con un reproductor

Una vez que tengas los archivos CSS y JavaScript del plugin almacenados en una ubicación accesible a Internet, puedes usar el plugin con un reproductor. En Studio's JUGADORES módulo puedes elegir un jugador, luego en el PLUGINS sección agregue las URL a los archivos CSS y JavaScript, y también agregue el Nombre y Opciones , si se necesitan opciones.