Consejos prácticos

Convertir M3U8 a MP4: FFmpeg, VLC y errores frecuentes

Guarda un archivo o URL M3U8 como MP4: copia de flujos, H.264/AAC, VLC y comprobación de acceso, audio y reproducción.

Actualizado

M3U8 es una lista de reproducción; MP4 es un contenedor que puede incluir vídeo y audio.

¿El editor no abre el M3U8 ni al cambiarle el nombre a MP4? Comprueba primero que sus segmentos estén disponibles. Estos pasos sirven para una fuente HLS terminada que poseas o tengas permiso para guardar.

Distingue la lista de los segmentos de vídeo

M3U8 suele ser una lista de texto con segmentos HLS, no el vídeo. Puede apuntar a otras calidades o listas de audio. Cambiar .m3u8 por .mp4 no crea los datos multimedia.

La URL y sus recursos deben estar accesibles. Una copia local necesita también los .ts, .m4s y archivos de inicialización. Conserva la estructura para rutas relativas. Aquí se utiliza una fuente terminada, no una grabación en directo.

Prueba primero la copia de flujos con FFmpeg

Primero ejecuta ffmpeg -version en una terminal nueva. Si no se reconoce el comando, revisa la instalación y la ruta del ejecutable. El ejemplo elige el primer vídeo y primer audio, no necesariamente la mejor calidad o idioma. Un vídeo sin audio produce un MP4 mudo. Las listas solo de audio necesitan otro comando; no se incluyen subtítulos ni demás pistas.

-c copy cambia el contenedor sin recodificar. Evita otra generación de codificación, pero no recupera segmentos ni corrige códecs incompatibles con MP4. Usa solo rutas o URL permitidas y mantén entre comillas los espacios o parámetros. +faststart coloca los metadatos MP4 al principio para facilitar el inicio de reproducción. No aumenta la velocidad de descarga de la red.

  1. Abre una terminal en la carpeta de destino. Si la lista es local, prepara una copia con sus segmentos y conserva la estructura de carpetas.
  2. Sustituye la entrada por la ruta real o URL de la lista y elige otro nombre de salida.
  3. Ejecuta la copia, revisa los errores y comprueba la reproducción.
Guardar MP4 sin recodificar
ffmpeg -i "input.m3u8" -map 0:v:0 -map "0:a:0?" -c copy -movflags +faststart "output.mp4"

Recodifica por compatibilidad o utiliza VLC

Si el equipo de destino no reproduce la copia, prueba H.264 y AAC. El comando requiere libx264 y AAC en FFmpeg. Puede tardar y cambiar calidad o tamaño; conserva el original. Es un ejemplo para SDR normal; convertir el color de HDR a SDR requiere ajustes aparte.

Recodificar para compatibilidad: H.264 y AAC
ffmpeg -i "input.m3u8" -map 0:v:0 -map "0:a:0?" -c:v libx264 -crf 20 -preset medium -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart "output-compatible.mp4"

En Windows, VLC suele partir de Media → Convert/Save y una entrada Network, seguida del perfil y destino. El perfil puede llamarse H.264 + MP3 (MP4); AAC y los nombres dependen de la versión. Los menús de macOS son distintos.

  1. Busca Media → Convert/Save y la pestaña Network.
  2. Introduce la URL M3U8 y selecciona Convert.
  3. Comprueba el perfil MP4 y un destino .mp4 nuevo.
  4. Pulsa Start y abre el resultado al acabar; consulta la ayuda de tu versión si cambia la interfaz.

Revisa por separado 403, 404 y la falta de sonido

Ante 403, revisa permisos y caducidad; ante 404, cambios o desaparición de la dirección. Si falla un segmento, comprueba su ruta y archivo de inicialización. Mover carpetas también rompe referencias. Recodificar no reemplaza medios ausentes.

Si no hay sonido, revisa si existe audio, si está en otra lista y qué pista elegiste. La primera puede no ser tu idioma. Usa direcciones vigentes autorizadas o descargas oficiales. Para DRM o restricciones, utiliza el método de guardado admitido por el servicio.

Comprueba opciones móviles y el archivo terminado

En el móvil, busca primero una descarga oficial u opción sin conexión. Comprueba si un conversor online requiere segmentos y si envía archivos o enlaces a servidores. Lee tratamiento y retención antes de proporcionar vídeos privados o enlaces autenticados.

Reproduce principio, centro y final con audio y compara la duración. Una lista en directo sin marca final puede no terminar automáticamente; los segmentos antiguos eliminados siguen faltando. Prefiere VOD terminado. La demostración usa nuestro propio HLS corto y finalizado.

Inspeccionar el resultado: pistas y duración Sustituye output.mp4 por el nombre que guardaste. El ejemplo de recodificación crea output-compatible.mp4.
ffprobe -v error -show_entries format=duration:stream=codec_type,codec_name,width,height -of json "output.mp4"
Este MP4 procede de nuestro breve ejemplo HLS. Reprodúcelo para comprobar duración y sonido.

Compara la duración y reproduce el principio, el centro y el final con sonido. Comparte el MP4 revisado y conserva la lista y los segmentos originales hasta terminar la comprobación.

Herramientas

Fuentes

Revisión de documentación pública; no es una auditoría funcional o de seguridad completa.

Todas las guías →