Consideraciones sobre la reproducción automática

En este tema, aprenderá acerca de los problemas relacionados con la reproducción automática de un video al cargar la página.

Resumen

Usar Brightcove Player para reproducir automáticamente un video cuando se carga una página no es un problema simple. Esto se debe a que los proveedores de navegadores responden a los deseos de los usuarios de que NO se reproduzcan automáticamente los videos. Este documento detallará el estado actual de la reproducción automática de videos en varios navegadores y configuraciones de Brightcove Player que afectan la reproducción automática.

Tenemos un conjunto de casos de prueba disponibles.

Línea de fondo

Si solo desea nuestro mejor consejo, sin los detalles:

Reproducción automática sin anuncios del lado del cliente

Estos pasos brindarán la mejor oportunidad para una reproducción automática exitosa en reproductores sin anuncios del lado del cliente o con SSAI:

  • Colocar autoplay a "any"
  • playsinline Establecer en true(para iPhones)

Reproducción automática con anuncios del lado del cliente

La configuración de reproducción automática varía según la versión del complemento IMA que esté utilizando o si está utilizando FreeWheel.

IMA3 (más reciente)

Estos pasos brindarán la mejor oportunidad para una reproducción automática exitosa en reproductores con anuncios del lado del cliente (complemento IMA3 v4):

  • Colocar autoplay a "any"
  • playsinline Establecer en true(para iPhones)
  • Configure el complemento publicitario a través de la configuración JSON del reproductor, no mediante carga lateral o agrupación personalizada

IMA3 v3 o rueda libre

Estos pasos brindarán la mejor oportunidad para una reproducción automática exitosa en reproductores con anuncios del lado del cliente (IMA3 v3 o FreeWheel):

  • Colocar autoplay a true
  • playsinline Establecer en true(para iPhones)
  • Configure el complemento publicitario a través de la configuración JSON del reproductor, no mediante carga lateral o agrupación personalizada

Configuración de reproducción automática

Brightcove Player admite cinco valores posibles para la reproducción automática. En la especificación HTML5, la reproducción automática es un atributo booleano: se identifica en (true ) o apagado (false). En Brightcove Player, tenemos tres valores especiales disponibles:

  • play: Esto hará que Brightcove Player llame play() cuando se establece una fuente.
  • muted: Esto hará que Brightcove Player silencie al reproductor y llame play().
  • any: Esto hará que Brightcove Player llame play(). Si eso falla, silenciará al jugador y llamará play() de nuevo.

¡Estos tres valores no son compatibles con los atributos de etiqueta!

Prioridad

La siguiente lista describe todas las formas en que se puede configurar la reproducción automática y cómo se priorizan en el proceso de inicialización de Brightcove Player.

  1. Atributo del elemento de video

    Siguiendo el estándar HTML5, esto puede ser true (el atributo existe) o false (el atributo no existe).

    A diferencia de otras propiedades donde los valores de los parámetros de consulta (iframes solo en otros casos) ganan, el atributo gana aquí porque gana en Video.js.

    <video-js autoplay controls></video-js>
  2. Hash de URL o cadena de consulta

    A diferencia de la mayoría de los casos, el parámetro de cadena de consulta de reproducción automática o el parámetro hash de URL se respetan para TODOS los tipos de incrustaciones por razones de compatibilidad con versiones anteriores.

    Esto debería eliminarse para las incrustaciones en la página en una versión principal futura.

    La existencia de un parámetro es equivalente a true , es decir ?autoplay&foo=bar , pero se admiten valores de cadena, p. ej. ?autoplay=muted&foo=bar

    No puede configurar la reproducción automática en false a través de query / hash param!

  3. videojs()/bc() Opciones

    La opción de reproducción automática se puede pasar al bc() función.

  4. Configuración JSON

    Si la reproducción automática no está disponible en las opciones, use cualquier valor pasado de la configuración JSON del reproductor.

  5. Defecto

    Por último, si no se aplica nada de lo anterior, de forma predeterminada false.

Configuración y políticas del navegador

Los navegadores se han vuelto más consistentes en los últimos años, pero las siguientes secciones resumen las configuraciones y / o políticas disponibles de cada navegador principal.

Safari (macOS)

Safari en macOS tiene estas configuraciones:

  • Permitir todo el juego automático
  • Detener los medios con sonido (defecto)
  • Nunca Auto-Play

Además, esta configuración se puede cambiar por sitio.

Safari (iOS y iPadOS)

Safari en iOS y iPadOS no tiene configuraciones de reproducción automática de cara al usuario, pero implementa las siguientes políticas:

  • La reproducción automática silenciada siempre funcionará
  • La reproducción automática con sonido requiere un gesto del usuario
  • En iPhone, el playsinline El atributo es obligatorio en todos los casos.

Leer esta publicación de blog de WebKit para más detalles.

Cromar

Chrome no tiene una configuración de reproducción automática para el usuario, pero implementa las siguientes políticas:

  • La reproducción automática silenciada siempre debería funcionar, pero eso es siempre hasta el navegador; nos hemos encontrado con algunos casos extremos en los que no es así, pero no tenemos control sobre ellos.
  • La reproducción automática con sonido requiere un gesto del usuario o un MEI lo suficientemente alto (en el escritorio).

Leer esta publicación de blog de Chrome para más detalles.

Firefox

Firefox tiene estas configuraciones tanto a nivel mundial como por sitio web:

  • Permitir audio y video
  • Bloquear audio (defecto)
  • Bloquear audio y video

Borde

Por defecto, Edge tiene estas configuraciones:

  • Permitir (defecto)
  • Límite

Sin embargo, yendo a edge://flags/#edge-autoplay-user-setting-block-option , se puede restaurar la opción para bloquear la reproducción automática que estaba disponible en Edge (Legacy).

Edge (heredado)

Edge (Legacy) tenía estas configuraciones:

  • Permitir
  • Límite
  • Cuadra

La opción Límite es similar a otros navegadores en que requiere reproducción automática silenciada o un gesto del usuario.

Problemas conocidos

Fuentes en la página y reproducción automática programática

Hay un problema conocido al usar fuentes en la página (por ejemplo, a través de un <source> elemento) y llamando play().

Esto se ha visto en Firefox, pero puede estar presente en otros navegadores.

Este no es un caso de uso común para los clientes de Brightcove. Debido a que las fuentes de Video Cloud se cargan después de la creación del reproductor, este problema no ocurre.

En su lugar, debe esperar a que canplay evento para disparar antes de llamar play(). Alternativamente, configurando autoplay: true funcionará como se esperaba, dependiendo de la configuración / preferencias del usuario.

IMA3 / FreeWheel

Prerolls faltantes o defectuosos

Si intenta llamar play() con estos complementos, hay casos en los que la reproducción automática fallará y, cuando se hace clic en el botón de reproducción, no se reproducirá ningún preroll.

Con FreeWheel, también ha habido informes de prerolls jugando detrás el gran botón de reproducción.

Recomendación

Al usar estos complementos, el método recomendado para habilitar la reproducción automática es:

  • Agrupe el complemento en su reproductor (por ejemplo, a través de Studio). No se recomienda la carga lateral (in-page).
  • No intente utilizar los valores especiales de reproducción automática. Establecer reproducción automática en true y permitir que el complemento publicitario intente reproducirse como sea posible.