Entrega de video HLS

En este tema, aprenderá sobre HTTP Live Streaming (HLS), un protocolo de transmisión de medios basado en HTTP implementado por Apple.

Resumen

El protocolo HLS divide el video en una secuencia de descargas de archivos pequeños, cada descarga carga una pequeña parte del video mediante HTTP. A medida que se reproduce el flujo, el cliente puede seleccionar entre varios flujos alternativos diferentes que contienen el mismo material codificado en una variedad de velocidades de datos, lo que permite que la sesión de transmisión se adapte a la velocidad de datos disponible. Al comienzo de la sesión de transmisión, descarga una lista de reproducción extendida que contiene los metadatos de las diversas subtransmisiones que están disponibles.

Introducción

HLS se ha convertido en un estándar de facto para la transmisión de video en dispositivos móviles gracias a su soporte nativo en iOS y Android. Hay una serie de beneficios al entregar video usando HLS:

  • Admite selección de velocidad de bits adaptativa (impulsada por el cliente)
  • Entregado a través de puertos HTTP estándar
  • Formato de manifiesto sencillo y basado en texto
  • No se requieren servidores de streaming patentados

Creación de HLS

Video Cloud admite HLS como una opción de codificación de video, junto con H.264 (MP4) y H.263 (FLV). Los perfiles de ingesta determinan la cantidad y el tipo de representaciones que se crean cuando los videos se cargan usando el Dynamic Ingest API o Subir módulo. Dependiendo del perfil de ingesta que se use al cargar, las representaciones de HLS pueden crearse automáticamente como parte de ese perfil. Para obtener más información sobre los perfiles de ingesta y los tipos de copias que se crean con cada perfil, consulte Perfiles de ingesta estándar.

Dynamic Ingest admite perfiles de ingesta personalizados, pero en este momento no puede crear sus propios perfiles personalizados. Si necesita un perfil personalizado, comuníquese con su ingeniero de soluciones de Brightcove o su gerente de cuentas.

Una vez que haya seleccionado o creado un perfil de ingesta que incluya una o más representaciones de HLS, cada vez que cargue un video, ya sea que use el Dynamic Ingest API o módulo de carga, el video incluirá representaciones de HLS junto con cualquier otra representación de tasa de bits múltiple que se haya especificado como parte del perfil.

Jugando HLS

Brightcove Player incluye un motor de reproducción HLS de forma predeterminada. Si el video que proporcionas al reproductor incluye representaciones de HLS, las reproducirá antes de probar MP4 porque el orden de reproducción predeterminado es HLS, luego HTML5 y luego Flash. Si el navegador es compatible con HLS de forma nativa, utilizará esa capacidad (por ejemplo, Safari en el escritorio o iOS). Si el navegador no es compatible con HLS, pero el navegador tiene Flash instalado, cargará el respaldo de Flash. Puedes cambiar este comportamiento cambiando el orden técnico del jugador. Para obtener más información, consulte el Guía de tecnología de reproducción.

Video Cloud ofrece encriptación HLS que le permite enviar video encriptado a través de HTTP para su reproducción en dispositivos que ejecutan iOS. Ver Protección de videos con cifrado HLS para detalles.

Brightcove Player intenta garantizar la experiencia de visualización de la más alta calidad posible, dado el ancho de banda y las codificaciones disponibles. Esto no siempre significa utilizar la copia de velocidad de bits más alta disponible. Si el reproductor mide 300 px por 150 px, sería una pérdida de ancho de banda descargar una transmisión 4K. De forma predeterminada, el reproductor intenta cargar la variante de velocidad de bits más alta que es inferior al ancho de banda de segmento detectado más recientemente, con una condición: si hay varias variantes con dimensiones superiores al tamaño del reproductor actual, solo cambiará un tamaño mayor que el tamaño del reproductor actual.