M3U8
El índice de texto que el reproductor lee antes de cualquier stream HLS. Pesa unos kilobytes, no contiene vídeo y sin él no se reproduce nada.
Un M3U8 es la lista de reproducción de un stream HLS: un archivo de texto que enumera las versiones de calidad y los segmentos de vídeo de cada una. No es el vídeo. Es el manifiesto que guía al reproductor, y en una entrega protegida su enlace caduca.
¿Qué es un archivo M3U8?
Un M3U8 es un archivo índice que describe un vídeo en streaming: enumera todas las versiones de calidad disponibles y las direcciones de los segmentos cortos que forman cada una. Cuando el reproductor inicia un stream adaptativo, el manifiesto es lo primero que descarga.
La confusión más habitual es pensar que el .m3u8 es el vídeo. El material está repartido en decenas o cientos de segmentos, y el manifiesto es el texto ligero que le dice al reproductor que existen, en qué calidad está cada uno y en qué orden reproducirlos.
El nombre viene del formato M3U de listas de reproducción de audio; el «8» indica la codificación UTF-8. Por eso un .m3u8 se abre en cualquier editor de texto: por dentro es texto plano.
Qué hay dentro
Un stream HLS usa dos niveles de manifiesto, y esa división explica cómo cambia la calidad durante la reproducción.
Enumera cada versión una vez, con el ancho de banda que necesita, la resolución y los códecs. También puede apuntar a pistas de audio y subtítulos alternativos.
Una por versión. Enumera los segmentos de esa versión en orden, con la duración de cada uno y, en un stream cifrado, la referencia a la clave.
El reproductor descarga la lista maestra, elige la versión que cabe en el ancho de banda medido, descarga su lista de medios y empieza a pedir segmentos. Si la conexión cambia, salta a otra versión en el siguiente segmento: es el bitrate adaptativo.
M3U8 y MPD
| Formato | Protocolo | Tipo | Estructura |
|---|---|---|---|
| .m3u8 | HLS | Texto plano | Lista maestra → listas de medios |
| .mpd | DASH | XML | Un único Media Presentation Description |
Las plataformas actuales suelen generar los dos a partir de los mismos segmentos para cubrir todos los dispositivos.
Manifiesto en directo y en vídeo bajo demanda
| Vídeo bajo demanda | Directo | |
|---|---|---|
| Lista de segmentos | Completa y fija | Crece a medida que se producen segmentos |
| Marca de final | #EXT-X-ENDLIST presente | Ausente mientras dura la emisión |
| Reproductor | Lee la lista una vez | La vuelve a pedir para encontrar segmentos nuevos |
Cómo abrir un .m3u8
Como no es un vídeo, hacer doble clic en un .m3u8 no siempre funciona. Necesitas un reproductor que entienda HLS:
En Medio → Abrir ubicación de red, pega la dirección del .m3u8. VLC lee la lista y reproduce los segmentos.
Reproduce HLS de forma nativa en Mac, iPhone y iPad: basta con abrir el enlace.
Necesitan un reproductor web con soporte HLS dentro de la página, como el que incluye cualquier plataforma de vídeo.
Por qué un enlace .m3u8 copiado deja de funcionar
Quien encuentra una dirección .m3u8 en las herramientas del navegador suele descubrir dos cosas seguidas: se abre en un reproductor externo y, unas horas después, ya no.
El motivo es que la dirección no es permanente. En una entrega protegida es una URL firmada: lleva una firma y un plazo, y la capa de entrega comprueba los dos antes de servir nada. Pasado el plazo, el vídeo sigue ahí, pero el mapa para llegar a él caduca. Si además el contenido usa DRM, los segmentos están cifrados y no se reproducen sin licencia.
Para saber más
- Apple: HTTP Live Streaming (en inglés): la especificación de las listas HLS.
- Manifiesto: el concepto general, con .m3u8 y .mpd.
Sigue leyendo
Manifiesto
Un pequeño archivo índice (.m3u8 o .mpd) que enumera todas las versiones y segmentos disponibles, para que el reproductor sepa…
Leer →HLS (HTTP Live Streaming)
El protocolo de streaming adaptativo de Apple. Usa manifiestos .m3u8 y entrega por segmentos; funciona en cualquier navegador,…
Leer →Bitrate adaptativo (ABR)
Ajusta la calidad del vídeo en tiempo real a la conexión de cada espectador: reproducción fluida de 480p a 4K, sin cortes por…
Leer →