Muestra de Brightcove Player: Carga dinámica del reproductor

En este tema, aprenderá a cargar Brightcove Player dinámicamente, es decir, en un evento de usuario y NO en el HTML escrito inicialmente.

Ejemplo de jugador

En esta muestra, haga clic en el Agregar jugador para construir y cargar dinámicamente el reproductor, y luego reproducir el video.

Ver la pluma 18169-cargando-jugador-dinámicamente 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.

secuencia de desarrollo

Esta es la secuencia de desarrollo recomendada:

  1. Utilice la implementación del reproductor de incrustación en la página para probar la funcionalidad de su reproductor, complemento y CSS (si es necesario CSS)
  2. Coloque el JavaScript y CSS del plugin en archivos separados para pruebas locales
  3. Implementa el código del plugin y CSS en tu servidor una vez que hayas resuelto cualquier error.
  4. Usa Studio para agregar el plugin y CSS a tu reproductor
  5. Reemplace la implementación del reproductor de incrustación en página si determina que la implementación de iframe se ajusta mejor (se detalla en la siguiente sección)

Para obtener más información sobre estos pasos, consulte la sección Paso a paso: Guía de desarrollo de plugins.

iframe o incrustación en página

Al desarrollar mejoras para Brightcove Player, deberás decidir si el código se ajusta mejor a la implementación de iframe o incrustación en la página. La recomendación de práctica recomendada es crear un complemento para usarlo con una implementación de iframe. Las ventajas de utilizar el reproductor iframe son:

  • Sin colisiones con JavaScript y/o CSS existentes
  • Responde automáticamente
  • El iframe facilita el uso en aplicaciones de redes sociales (o siempre que el vídeo tenga que «viajar» a otras aplicaciones)

Aunque la integración del reproductor de incrustación en la página puede ser más compleja, hay ocasiones en que planificará el código en torno a esa implementación. Para generalizar, este enfoque es mejor cuando la página que contiene necesita comunicarse con el reproductor. En concreto, estos son algunos ejemplos:

  • El código de la página que contiene necesita escuchar y actuar en función de los eventos de los jugadores
  • El reproductor utiliza estilos de la página que lo contiene
  • El iframe hará que la lógica de la aplicación falle, como un redireccionamiento desde la página que contiene

Incluso si tu implementación final no utiliza el código iframe, puedes seguir usando el código de incrustación en la página con un plugin para tu JavaScript y un archivo separado para tu CSS. Esto encapsula tu lógica para que puedas utilizarla fácilmente en varios reproductores.

Recursos de API/plugins utilizados

Métodos API
jugar ()
silenciado ()

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

No se requiere ninguna configuración especial para el reproductor de Brightcove que crea para este ejemplo. Por supuesto, para esta muestra, el código del reproductor NO se coloca inicialmente en la página HTML, se construye e inyecta dinámicamente.

Otros HTML

A <button> se agrega a la página HTML que activa la construcción e inyección del reproductor. También una <div> El elemento se agrega como la ubicación de la inyección.

Flujo de aplicaciones

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

  • Establezca valores variables con la identificación de la cuenta, la identificación del jugador y la identificación del video que desea utilizar.
  • Al hacer clic en el botón, una <video> La etiqueta se crea mediante una simple concatenación de cadenas y esa cadena se inyecta en la página HTML.
  • Un jugador válido <script> La etiqueta también se crea e inyecta en la página HTML. Cuando se hace esto, el JavaScript se ejecutará en la página, enviando un onload evento. En el onload controlador de eventos, llame a la función que inicializa el reproductor.
  • En la función llamada, use el bc() para inicializar la etiqueta de video genérica en un Brightcove Player, luego llame al play() método.

Proporcione la identificación de cuenta deseada, la identificación del jugador y la identificación de video

Busque el código etiquetado:

// ### Set the data for the player ###

Asigne a las variables los valores deseados para la configuración del jugador.

Cree el código de implementación de inserción en la página del reproductor e instálelo en la página

Busque el código etiquetado:

// ### Build the player and place in HTML DOM ###

Este es el trabajo de JavaScript. Utilice la concatenación de cadenas para construir una <video> etiqueta. Luego, inyecta la etiqueta en la página HTML. A continuación, crea un Brightcove Player válido <script> etiqueta. Cuando agrega esto a la página HTML, el JavaScript se ejecutará automáticamente. Esto crea una onload evento, para el cual puede escribir un controlador.

Inicialice el reproductor como Brightcove Player y reproduzca el video

Busque el código etiquetado:

// ### Initialize the player and start the video ###

Usas el estándar bc() método para inicializar el reproductor genérico como Brightcove Player, luego reproduzca el video usando el play() método.

Estilismo de aplicaciones

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

implementación de iframe

La implementación de iframe se puede utilizar de forma muy similar a la que se muestra arriba. Código de muestra está disponible. Si desea que el video se reproduzca en carga, lo mejor que puede hacer es en Studio configurar el reproductor Autoencendido propiedad a .

Código de plugin

El código de esta muestra no se ejecutará como un complemento de Brightcove Player, ya que el reproductor debe existir antes de que se pueda registrar un complemento. Por supuesto, puede guardar el JavaScript en un archivo separado e importarlo si lo desea.

Eliminar un jugador

Es posible que desee eliminar dinámicamente un jugador. Para hacerlo, debe utilizar el myPlayer.dispose() método. NO desea eliminar el reproductor del DOM a través de JavaScript, ya que esto podría causar pérdidas de memoria. Cuando usa el dispose() método, el reproductor se eliminará del DOM.