HLS frente a DASH: cómo funcionan realmente los protocolos de streaming

Antes del streaming, ver un vídeo por Internet significaba descargar primero el archivo completo y reproducirlo después. Un vídeo de 500 MB tenía que llegar entero a tu dispositivo, aunque solo quisieras ver los primeros 30 segundos. Los protocolos de streaming resuelven precisamente ese problema: dividen el vídeo en fragmentos pequeños y los reproducen mientras el resto sigue descargándose.

Segmentación: la base del streaming

Tomemos como ejemplo HLS (HTTP Live Streaming, creado por Apple), el protocolo más habitual: el servidor divide un vídeo completo en numerosos archivos pequeños llamados segmentos, normalmente de entre 2 y 10 segundos y encapsulados en MPEG-TS o fMP4. También genera una lista de reproducción (.m3u8) con el orden y las direcciones de los segmentos. El reproductor obtiene primero esa lista y después descarga los segmentos según los necesita: termina uno, obtiene el siguiente y apenas hay esperas.

Reproductor de vídeo online

Tasa de bits adaptativa: por qué la reproducción no se detiene con una conexión lenta

Tanto HLS como DASH (Dynamic Adaptive Streaming over HTTP, impulsado por Microsoft y otras empresas) preparan varios conjuntos de segmentos del mismo vídeo con diferentes resoluciones y tasas de bits; por ejemplo, uno para 1080p, otro para 720p y otro para 480p. Todos figuran en una lista de reproducción maestra. El reproductor supervisa en tiempo real la velocidad de descarga y el nivel del búfer: aumenta la tasa de bits cuando la conexión va bien y la reduce cuando empeora, para mantener la reproducción continua. Esto se llama streaming con tasa de bits adaptativa (ABR) y explica por qué los vídeos se vuelven borrosos automáticamente cuando viajas en metro.

Por qué descargar un enlace m3u8 suele fallar

Al descargar directamente una URL .m3u8 obtienes unos pocos KB de texto: la lista de reproducción, no el vídeo. Para guardar el vídeo de verdad, una herramienta tiene que analizar la lista, descargar todos los segmentos y unirlos de nuevo en el orden correcto. Por eso muchos descargadores no admiten vídeos HLS o requieren un paso específico para unir los segmentos. TakeVid incorpora detección de segmentos y unión automática, de modo que el resultado de la descarga es un archivo completo y listo para reproducir.

Descargador de M3U8

  • HLS: creado por Apple, utiliza listas .m3u8, tiene compatibilidad nativa con iOS/Safari y sirve tanto para emisiones en directo como para vídeo bajo demanda.
  • DASH: un estándar abierto con manifiestos .mpd, utilizado a gran escala por YouTube, Netflix y otros servicios.
  • Ambos utilizan HTTP convencional, funcionan bien con las CDN y dominan el streaming actual.

Descargador de DASH

Volver a todos los artículos