Volver al Blog

¿Qué es M3U8? Guía completa del protocolo HLS y de la playlist .m3u8

M3U8 es la playlist de texto UTF-8 que utiliza HLS (HTTP Live Streaming). Análisis a fondo de la estructura del archivo .m3u8, el funcionamiento real de HLS, los segmentos .ts/fMP4, las diferencias clave entre M3U8 y MP4 y el streaming adaptativo de tasa de bits.

By

M3U8 es la playlist de texto UTF-8 que utiliza el protocolo HLS (HTTP Live Streaming). El archivo en sí no contiene fotogramas de vídeo: es un manifiesto que lista las URL de los segmentos de vídeo (.ts o .m4s), su duración y las variantes de tasa de bits disponibles. El reproductor lee el .m3u8, descarga los segmentos en orden y los cose en tiempo real hasta formar un flujo de vídeo reproducible —este es el mecanismo que sostiene YouTube, Netflix, Twitch, Apple TV+ y la mayor parte de los servicios de streaming relevantes en 2026.

Diagrama del flujo M3U8 y HLS: un navegador o reproductor solicita primero la playlist maestra .m3u8, obtiene la playlist de medios por variante, descarga en paralelo los segmentos .ts o .m4s y los reensambla en orden en el cliente, decodificándolos en un flujo de vídeo reproducible.
Figura 1. Flujo completo de una reproducción HLS de extremo a extremo: playlist maestra → playlist de medios → descarga de segmentos → reensamblado en tiempo real.

¿Alguna vez intentaste guardar un vídeo de un sitio de streaming y acabaste con cientos de pequeños archivos .ts en lugar de un único .mp4 ordenado? ¿O abriste la pestaña Network en tu navegador esperando una URL de descarga limpia, y en su lugar te encontraste con un torrente interminable de fragmentos de dos segundos? No estabas haciendo nada mal. Estabas viendo HLS —el protocolo que entrega la mayor parte del vídeo en streaming en la web moderna— y HLS no envía vídeos como archivos únicos. Los envía como recetas más piezas.

La receta es un pequeño archivo de texto llamado playlist .m3u8. Las piezas son segmentos de vídeo cortos e independientemente decodificables que tu reproductor cose al vuelo. HLS fue creado por Apple en 2009 para el primer iPhone y estandarizado como RFC 8216; hoy casi todos los navegadores, dispositivos móviles y televisores principales lo soportan de forma nativa.

Esta guía recorre lo que un .m3u8 contiene realmente, por qué los servicios de streaming eligieron este diseño, cómo encajan los segmentos .ts y fMP4, qué plataformas usan HLS en 2026, y qué pasa cuando intentas guardar uno de estos flujos en disco.

Puntos clave {#key-takeaways}

  • HLS es un protocolo de streaming, no un formato de archivo. Entrega vídeo como un playlist (.m3u8) más segmentos cortos (.ts o MP4 fragmentado) sobre HTTP plano.
  • .m3u8 es el índice, no el vídeo. Guardar solo el archivo .m3u8 te da una receta sin ingredientes.
  • Apple creó HLS en 2009 para el iPhone y lo estandarizó como RFC 8216 en 2017. Ahora es obligatorio en iOS/Safari y está soportado casi universalmente en el resto.
  • Los segmentos son de 2 a 10 segundos de vídeo cada uno —lo bastante cortos para cambiar de calidad entre ellos, lo bastante largos para mantener la sobrecarga HTTP razonable.
  • Un playlist maestro lista variantes; un playlist de medios lista segmentos. Los reproductores leen el maestro, eligen una variante y luego cargan el playlist de medios de esa variante.
  • Los segmentos .ts están siendo reemplazados por MP4 fragmentado (CMAF), para que el mismo archivo pueda servir a reproductores HLS y DASH desde un único origen.
  • La mayor parte del streaming moderno se asienta sobre HLS o DASH, a menudo ambos a la vez —incluyendo YouTube, Netflix, Disney+, Twitch, Apple TV+ y Cloudflare Stream.

M3U8 vs MP4: las diferencias clave

Muchas personas se encuentran con .m3u8 por primera vez al intentar descargar un vídeo y recibir un pequeño archivo de texto en lugar del esperado .mp4. Los dos formatos aparecen a menudo en el mismo flujo de trabajo, pero son cosas distintas en el fondo —uno es una playlist (manifiesto), el otro un contenedor. Esta tabla resume las diferencias que la gente busca a diario.

AspectoM3U8 (playlist HLS)MP4 (contenedor de vídeo)
Qué esPlaylist de texto UTF-8 (manifiesto)Contenedor binario autosuficiente de vídeo
AlmacenamientoUn .m3u8 + decenas o centenares de segmentos .ts/.m4sUn único archivo .mp4
TamañoManifiesto de pocos KB; segmentos ≈ MP4 a la misma calidadVídeo entero en un solo archivo
Cambio de calidadTasa de bits adaptativa (varias variantes, conmutación en vivo)Calidad única fija
Streaming en directoNativo (el manifiesto puede crecer con nuevos segmentos)No apto para directos
SeekInstantáneo en los bordes de segmentoRequiere soporte de HTTP Range en el servidor
CifradoCifrado AES-128 por segmento + capas DRM (FairPlay, Widevine, etc.)Sin cifrar por defecto; DRM opcional
ReproductorNecesita reproductor compatible con HLS (Safari, VLC, IINA, hls.js…)Casi cualquier reproductor reproduce MP4
Uso típicoDistribución online: Netflix, YouTube, Twitch, Apple TV+Reproducción local, descargas, edición, adjuntos
Para uso offlineHay que fusionar todos los segmentos en orden en un MP4Ya es un archivo listo para compartir

En una frase: M3U8 es el “índice”, MP4 es el “archivo terminado”. Al ver online, el navegador recibe un manifiesto M3U8 y va tirando de segmentos bajo demanda. Para guardar una copia a largo plazo o compartirla, casi siempre se acaba combinando esos segmentos en un MP4.

La explicación sencilla

Olvídate de los protocolos por un segundo. Imagina a un director que necesita enviar una película terminada a espectadores de todo el mundo por internet poco fiable. Enviar un único MP4 gigante es inviable: si la conexión de un espectador se cae a mitad de descarga, vuelven a cero, y no hay forma de cambiar de calidad sin volver a descargar. Así que, en su lugar, el director corta la película en cientos de clips de 6 segundos y escribe un playlist numerado que dice “reproduce el clip 001, luego el 002, luego el 003…” El reproductor del espectador descarga el playlist, busca los primeros clips y empieza a reproducirlos mientras el resto va llegando por detrás. Si la conexión se ralentiza, el reproductor cambia a una versión de menor calidad del siguiente clip sin perder un fotograma.

Eso es HLS en una frase: una película cortada en clips cortos, más un archivo de playlist .m3u8 que le dice al reproductor qué clip reproducir a continuación.

Desde la butaca del espectador, este diseño esconde mucha magia. La búsqueda es instantánea porque el reproductor puede saltar a cualquier segmento que cubra la marca de tiempo objetivo en lugar de transmitir todo el archivo. Los cambios de calidad son suaves porque el reproductor puede elegir una variante diferente para el siguiente segmento sin reiniciar la reproducción. El búfer es suave porque el reproductor solo necesita mantener unos pocos segmentos por delante —normalmente de 10 a 30 segundos— en lugar de predescargar grandes trozos de archivo. Y el streaming en directo funciona en absoluto porque los nuevos segmentos pueden añadirse al playlist a medida que el emisor los produce, con el reproductor consultando el .m3u8 en busca de nuevas entradas cada pocos segundos.

Si alguna vez te has preguntado por qué un flujo de YouTube o Netflix se recupera suavemente cuando tu Wi-Fi tiembla, mientras una descarga MP4 directa de un sitio web cualquiera se atasca y muere, esta es la razón. Toda la pila se diseñó con la suposición de que internet es desordenado y las conexiones van y vienen. Una larga discusión sobre cómo los reproductores adaptan la calidad al vuelo vive en su propio artículo; aquí, solo fíjate en que el diseño de segmento y playlist es lo que hace posible esa adaptación.

Cómo funciona HLS realmente

Un flujo HLS son dos capas de playlist más una pila de segmentos, todo servido sobre HTTP ordinario. Nada exótico, ningún protocolo personalizado —tu navegador ya sabe hacer cada parte de esto.

El playlist maestro

Lo primero que descarga un reproductor es el playlist maestro. Es un pequeño archivo de texto con extensión .m3u8 que lista cada variante disponible del flujo —normalmente diferentes niveles de calidad— junto con el ancho de banda y la resolución de cada uno. Aquí tienes uno real, ligeramente recortado:

#EXTM3U
#EXT-X-VERSION:6
#EXT-X-STREAM-INF:BANDWIDTH=5000000,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2"
1080p/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2800000,RESOLUTION=1280x720,CODECS="avc1.4d401f,mp4a.40.2"
720p/index.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1400000,RESOLUTION=854x480,CODECS="avc1.4d401e,mp4a.40.2"
480p/index.m3u8

La línea #EXTM3U marca el archivo como un playlist M3U extendido. #EXT-X-VERSION:6 declara qué versión del protocolo HLS está en uso. Cada bloque #EXT-X-STREAM-INF describe una variante: su tasa de bits, resolución y cadena de códec, seguidos de una URL que apunta a un segundo playlist para esa variante. El reproductor lee este archivo, estima tu ancho de banda y elige la variante que cree poder sostener.

El playlist de medios

Una vez que el reproductor elige una variante, descarga el playlist de medios de esa variante. Aquí es donde viven las URL de los segmentos reales:

#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:6.000,
segment000.ts
#EXTINF:6.000,
segment001.ts
#EXTINF:6.000,
segment002.ts
#EXT-X-ENDLIST

#EXT-X-TARGETDURATION:6 dice que ningún segmento dura más de 6 segundos. Cada línea #EXTINF:6.000, anuncia la duración exacta de un segmento, seguida de la URL del segmento. #EXT-X-ENDLIST le indica al reproductor que se trata de un flujo de vídeo bajo demanda —no se añadirán más segmentos. Los flujos en directo omiten #EXT-X-ENDLIST, y el reproductor vuelve a solicitar este playlist cada pocos segundos para descubrir nuevos segmentos.

Segmentos: .ts y fMP4

Los segmentos son fragmentos cortos de vídeo y audio —normalmente de 2 a 10 segundos— cortados en límites de fotograma clave para que el reproductor pueda empezar a decodificar desde el inicio de cualquier segmento. Cuando el playlist declara #EXT-X-INDEPENDENT-SEGMENTS, se garantiza que cada segmento es reproducible por sí solo; sin esa marca, los segmentos posteriores pueden depender de datos que viajan en segmentos anteriores. Históricamente los segmentos son archivos MPEG-2 Transport Stream con extensión .ts —el mismo formato contenedor que envía la TV por satélite y por cable. MPEG-TS se diseñó para canales de difusión ruidosos, por lo que es robusto frente a la corrupción parcial, y cualquier reproductor que pueda decodificar paquetes .ts puede reproducir un segmento HLS.

La duración típica de segmento es de 2 a 10 segundos. Segmentos más cortos significan menor latencia y un cambio de tasa de bits más ágil, pero más peticiones HTTP y más sobrecarga por minuto de vídeo. Segmentos más largos significan mejor eficiencia de compresión y menos peticiones, pero una reacción más lenta a los cambios de ancho de banda. La especificación original de Apple recomendaba segmentos de 10 segundos; los servicios modernos suelen situarse en el rango de 2 a 6 segundos.

Desde 2016, la industria ha estado migrando de .ts a segmentos MP4 fragmentado —concretamente el Common Media Application Format (CMAF), estandarizado como ISO/IEC 23000-19. Los segmentos CMAF usan la misma fragmentación MP4 que MPEG-DASH, lo que significa que un único conjunto de archivos en una CDN puede servir tanto a reproductores HLS como DASH. Esto supone un importante ahorro de costes para los servicios de streaming: una codificación, un conjunto de bytes, dos protocolos. Los flujos HLS modernos de YouTube, Netflix y Apple son casi todos CMAF en lugar del MPEG-TS heredado.

HTTP hasta el fondo

La “HTTP” en HTTP Live Streaming es la clave. No hay ningún protocolo especial en el cable —cada parte de HLS viaja sobre las mismas peticiones HTTPS que tu navegador usa para HTML y JPEG. A las CDN les encanta porque ya estaban optimizadas para HTTP. Los cortafuegos lo permiten porque nada parece inusual. Las CDN pueden cachear los segmentos populares en el borde. Range requests, gzip, HTTP/2, HTTP/3, TLS —todo funciona gratis.

Por eso también ganó HLS. Los protocolos de streaming anteriores como RTMP, RTSP y MMS necesitaban puertos dedicados, servidores con estado y reglas especiales de cortafuegos. HLS simplemente parece un sitio web sirviendo muchos archivos pequeños.

La mayoría de los usuarios no necesitan gestionar esto manualmente —VidMost analiza el manifiesto .m3u8 y fusiona los segmentos en un MP4 limpio en segundo plano.

Dónde encuentras HLS en el mundo real

HLS está en prácticamente todos los grandes servicios de streaming en 2026, a menudo junto a DASH. Apple inventó HLS en 2009 específicamente para entregar vídeo al iPhone original —el dispositivo no podía manejar bien la descarga progresiva sobre redes celulares, y Apple quería un formato de streaming que pareciera simplemente tráfico HTTP para los operadores. El protocolo se ha convertido desde entonces en el predeterminado para una enorme porción de internet.

  • Los propios servicios de Apple son solo HLS. Apple TV+, la iTunes Store, los podcasts en Apple Podcasts y cada vídeo que se reproduce en Safari, iOS o tvOS se asientan sobre HLS. Las plataformas de Apple no incluyen un decodificador MPEG-DASH integrado, por lo que cualquier servicio que quiera reproducirse en iPhone debe ofrecer un feed HLS.
  • YouTube usa MPEG-DASH como su protocolo principal en web y Android, pero envía HLS para iOS, Safari, AirPlay y la mayoría de aplicaciones de TV. Abre las herramientas de desarrollo del navegador en YouTube en Safari y verás peticiones .m3u8; en Chrome en Android verás peticiones DASH .mpd en su lugar.
  • Netflix, Disney+, Hulu, Max y Amazon Prime Video usan todos una mezcla. Sus aplicaciones para televisores inteligentes y consolas suelen usar HLS con DRM FairPlay o PlayReady; sus reproductores web a menudo cambian a DASH con Widevine. Mismo contenido, distinto protocolo según el cliente.
  • Twitch corre sobre HLS desde 2014, cuando abandonó la pila RTMP heredada del lado de la reproducción. Cada flujo en directo y cada VOD en Twitch es HLS por debajo.
  • Las plataformas en directo de cam y creadores —Bigo Live, Chaturbate, OnlyFans en directo, transmisiones de Fansly— usan casi universalmente HLS para la reproducción en navegador porque funciona sin plugins y tolera conexiones inestables.
  • Los proveedores de vídeo alojado como Vimeo, Mux, JW Player y Cloudflare Stream entregan HLS por defecto. Si un sitio web incrusta un iframe de Vimeo o Mux, el vídeo subyacente es casi con seguridad HLS.
  • Las cadenas de deportes y noticias —ESPN, BBC iPlayer, DAZN, Sling TV— se apoyan todas en HLS para la entrega de eventos en directo, a menudo con DRM superpuesto.

HLS escapó de sus orígenes en iOS porque resolvía problemas reales para todos, no solo para Apple. Para cuando DASH llegó en 2012, HLS ya tenía un amplio soporte de CDN, reproductores funcionando en producción e impulso. Hoy ambos protocolos coexisten; un servicio de streaming sensato soporta ambos, y muchos envían los mismos segmentos CMAF bajo ambos formatos de manifiesto. Para más sobre cómo DASH se compara con HLS en detalle, el artículo hermano lo cubre de principio a fin.

Qué significa esto si quieres guardar el vídeo

Saber cómo funciona HLS hace que un problema práctico se vuelva de repente obvio: no puedes simplemente “clic derecho → Guardar como” para llegar a un vídeo HLS descargado. Algunas razones son mecánicas, otras son sutiles, y una o dos te sorprenderán.

  • El “Guardar como” del navegador solo guarda el .m3u8. El .m3u8 es lo que la página realmente descarga al iniciar la reproducción —un pequeño archivo de texto. Guardarlo te da la receta, no la comida. Abrir ese archivo en VLC a veces funciona (VLC seguirá las URL que contiene), pero solo mientras la sesión original siga siendo válida y las URL no hayan expirado.
  • Cada segmento es una petición HTTP separada. Un vídeo de 30 minutos con segmentos de 6 segundos son 300 descargas separadas. Necesitarías enumerar el playlist, descargar cada segmento y concatenarlos en el orden correcto antes de que sean reproducibles como un único archivo.
  • La selección de variante es una elección real. Los playlists maestros listan múltiples calidades. Elegir la equivocada te da una copia a 480p de una película que se transmitía a 1080p. La elección correcta suele ser la variante de mayor ancho de banda que tu almacenamiento y paciencia puedan absorber.
  • HTTPS protege los bytes en tránsito, no los bytes en disco. Las URL de los segmentos casi siempre se sirven sobre HTTPS, por lo que un fisgón en la red no puede leer lo que estás transmitiendo. Pero una vez que un segmento llega a tu navegador es vídeo en claro —TLS no hace nada para detener a una herramienta que ya tiene acceso a la respuesta.
  • HLS soporta el cifrado de segmento AES-128 como capa de contenido. Cuando el .m3u8 lleva una etiqueta #EXT-X-KEY, cada segmento se cifra con AES-128 y el playlist apunta a una URL de clave que el reproductor descarga sobre HTTPS. Guarda los segmentos sin la clave y tendrás una carpeta de texto cifrado. Esto es cifrado de contenido, separado de la seguridad de transporte, y no tiene ninguna comprobación de derechos integrada —la propia URL de la clave es la puerta.
  • El DRM comercial es un problema distinto. Los servicios premium como Netflix, Disney+ y Apple TV+ superponen HLS con FairPlay (Apple), Widevine (Google) o PlayReady (Microsoft). El cifrado en el cable sigue siendo AES, pero las claves las emite un servidor de licencias solo después de que el reproductor demuestre los derechos en un dispositivo de confianza, y el descifrado ocurre dentro de un módulo seguro respaldado por hardware para que los fotogramas nunca toquen la memoria de la aplicación. Consulta ¿Qué es el contenido protegido por DRM? para el panorama completo.
  • Los tokens y URL firmadas expiran. Muchas URL .m3u8 y de segmentos están firmadas con tokens de corta duración que caducan en minutos. Para cuando hayas escrito a mano el script de descarga, la mitad de tus enlaces puede que ya estén muertos.

Aquí es donde VidMost está pensado para tomar el control. VidMost está diseñado para guardar de forma legal contenido HLS al que tienes derecho legítimo de acceso: archivos de tus propias retransmisiones en directo, clases de pago que has comprado, vídeos con licencias libres o de dominio público, materiales de formación corporativa sin DRM comercial y contenidos de suscripciones de pago cuyos términos del servicio permiten la descarga. Analiza el manifiesto .m3u8, elige la variante de mayor calidad disponible, descarga cada segmento en paralelo desde la misma CDN con la que ya hablaba tu navegador, gestiona automáticamente el cifrado AES-128 estándar a nivel de segmento y remultiplexa los segmentos en un único archivo MP4 limpio. Los flujos protegidos por DRM comercial —FairPlay, Widevine o PlayReady en servicios premium como Netflix, Disney+ o Apple TV+— quedan fuera del alcance de VidMost; respeta los términos de servicio de cada plataforma y la ley de tu jurisdicción. Para el resto, la experiencia visible para el usuario es “pega una URL conforme, obtén un MP4” —la capa de protocolo desaparece.

Errores y conceptos equivocados habituales

Un puñado de equívocos sobre HLS aparece una y otra vez en hilos de foros. Vale la pena aclararlos.

  • .m3u8 no es el archivo de vídeo.” Es el índice. El vídeo real está en los segmentos a los que el playlist hace referencia. Si una herramienta ofrece “descargar el m3u8”, pregunta si también descarga y fusiona los segmentos —de lo contrario tienes un archivo de texto inútil.
  • “Los archivos .ts no se reproducirán directamente en la mayoría de los reproductores.” Un único segmento puede reproducirse unos segundos en VLC, pero el vídeo completo no es una secuencia de archivos .ts en una carpeta —es una secuencia en la que cada uno debe decodificarse en orden y coserse junto al siguiente. Los reproductores que no hablan HLS, en el mejor caso, reproducirán el primer segmento y se detendrán.
  • “HLS no siempre significa en directo.” “HTTP Live Streaming” es un nombre engañoso en 2026. HLS funciona igual de bien para vídeo bajo demanda: mismos playlists, mismos segmentos, solo con #EXT-X-ENDLIST marcando un flujo finito. La gran mayoría del contenido de catálogo de Netflix, Disney+ y Apple TV+ es HLS VOD, no en directo.
  • “Mayor tasa de bits no siempre significa mejor calidad si tu conexión se cae.” Una variante de 10 Mbps se ve genial en fibra y se entrecorta miserablemente en un enlace móvil de 3 Mbps. El propósito mismo del diseño adaptativo es que el reproductor elija lo que tu conexión puede sostener —anularlo manualmente a menudo empeora la experiencia, no la mejora.
  • “Las herramientas de descarga del navegador suelen fallar con HLS.” Las extensiones genéricas de “descargador de vídeo” buscan etiquetas <video src="..."> que apunten a archivos MP4. Los flujos HLS no exponen una URL así; el reproductor usa Media Source Extensions para alimentar segmentos al elemento de vídeo de forma programática. Por eso existen herramientas dedicadas que analizan el manifiesto.

Reflexiones finales

HLS es la infraestructura silenciosa bajo la mayor parte del vídeo que ves. Funciona porque dejó de intentar ser ingenioso con el transporte —no hay protocolo personalizado, ni servidor especial, solo archivos de texto .m3u8 y segmentos .ts o fMP4 descargados sobre el mismo HTTP que tu navegador ya habla. Apple resolvió un problema de teléfono en 2009 y construyó accidentalmente el formato de streaming dominante de las dos décadas siguientes.

Una vez que puedes reconocer una petición .m3u8 en la pestaña de red de tu navegador y leer un playlist, una enorme cantidad de comportamiento de streaming —los breves cambios de calidad, el seek instantáneo, el indicador de “almacenando en búfer”, la extraña carpeta de archivos .ts con la que acabaste— deja de ser misteriosa. Es todo el mismo bucle: descargar playlist, elegir variante, descargar segmentos, decodificar, repetir.

Si prefieres saltarte la capa de protocolo por completo y simplemente guardar el vídeo, VidMost gestiona HLS, DASH, fMP4 y flujos protegidos por DRM.

Lectura relacionada

Preguntas frecuentes

¿Qué es un archivo m3u8?
Un archivo .m3u8 es un playlist de texto UTF-8 utilizado por HTTP Live Streaming (HLS). No contiene ningún vídeo en sí —es un manifiesto que lista las URL de los segmentos reales de vídeo (normalmente archivos .ts o .m4s) junto con sus duraciones y metadatos. Los reproductores leen el .m3u8 para saber qué clips descargar y en qué orden. El archivo es esencialmente el índice de un vídeo en streaming.
¿Cómo abro un archivo m3u8?
Un .m3u8 es solo un archivo de texto, así que cualquier editor de texto lo abrirá para leerlo. Para reproducir realmente el vídeo al que apunta, necesitas un reproductor que hable HLS: VLC, IINA, mpv, ffplay, Safari en macOS o iOS, o cualquier navegador web moderno mediante hls.js. Hacer doble clic en el archivo rara vez funciona porque las URL que contiene suelen ser relativas y solo son válidas en el contexto de streaming original.
¿Por qué mi vídeo llega como un montón de archivos pequeños?
Porque los flujos HLS se cortan deliberadamente en segmentos cortos —normalmente de 2 a 10 segundos de .ts o MP4 fragmentado cada uno, cortados en límites de fotograma clave para que el reproductor pueda empezar a decodificar desde cualquier segmento. Las herramientas de descarga del lado del navegador que intentan guardar un flujo a menudo guardan cada segmento como un archivo separado en lugar de fusionarlos. Para obtener un único MP4 reproducible, los segmentos deben concatenarse en el orden listado en el manifiesto .m3u8, y las pistas de audio y vídeo deben remultiplexarse en un único contenedor.
¿HLS es lo mismo que DASH?
No. Ambos son protocolos de streaming HTTP adaptativo y ambos envían vídeo como un manifiesto más segmentos, pero son especificaciones diferentes. Apple creó HLS en 2009 y se estandarizó como RFC 8216; DASH (Dynamic Adaptive Streaming over HTTP) es un estándar ISO/IEC de 2012. HLS usa manifiestos .m3u8; DASH usa manifiestos XML .mpd. HLS es obligatorio en iOS y Safari; DASH domina en televisores inteligentes, Android y muchos reproductores web.
¿Puedo reproducir archivos .ts directamente?
A veces. Un archivo .ts es un contenedor MPEG transport stream que aloja vídeo H.264 o H.265 y audio AAC. VLC, mpv y ffplay normalmente pueden reproducir un único segmento .ts, pero solo verás unos segundos de metraje. Para ver el vídeo entero necesitas cada segmento listado en el .m3u8, en orden. La mayoría de los reproductores de consumo tienen dificultades con secuencias de archivos .ts incluso cuando están todos presentes —normalmente necesitarás remultiplexarlos a MP4 primero.
¿Por qué HLS elige calidades diferentes en momentos diferentes?
Eso es el streaming adaptativo de tasa de bits (ABR). El playlist maestro ofrece varias variantes —por ejemplo 1080p a 5 Mbps, 720p a 3 Mbps, 480p a 1,5 Mbps— y el reproductor mide a qué velocidad se descargan los segmentos. Cuando tu conexión se ralentiza, el reproductor cae a una variante inferior en el siguiente límite de segmento; cuando acelera, el reproductor vuelve a subir. El resultado son menos rebuffers a costa de cambios visibles de calidad ocasionales.
¿Cuál es la diferencia entre un playlist maestro y un playlist de medios m3u8?
Un playlist maestro es un índice de índices: lista cada variante de calidad disponible con su ancho de banda, resolución y códec, pero ninguna URL de segmento real. Un playlist de medios es la planificación real para una sola variante —una lista ordenada de URL de segmentos con sus duraciones. El reproductor carga primero el maestro para elegir una variante, y luego carga el playlist de medios de esa variante para empezar a descargar segmentos. Algunos flujos envían solo un playlist de medios si solo hay un nivel de calidad.
¿Es legal descargar flujos HLS?
Depende del contenido y de tu jurisdicción. Descargar flujos HLS que tienes derecho legítimo a ver —archivos de tus propias retransmisiones, clases por las que has pagado, contenido con licencia libre— suele ser legítimo. Descargar flujos comerciales protegidos por DRM (Netflix, Disney+, Apple TV+) normalmente viola los términos de servicio de la plataforma y puede activar leyes anti-elusión como el §1201 del DMCA en EE. UU. Consulta siempre las reglas de donde vives y los términos que aceptaste.