
Buenos días, creé Estoy probando la transmisión HLS y creé una lista de reproducción simple y un segmento de un video usando el comando ffmpeg -i C:\Users\funny\Desktop\uscita\out.mp4 -vcodec libx264 -g 24 -hls_time 10 -hls_playlist_type vod -vsync 1 index1.m3u8
.
El video fuente se abre sin problemas y ffmpeg lo codifica sin problemas en index1, que es el archivo de lista de reproducción, y index10 index11 index12 son los 3 .ts (el video dura solo 26 segundos). Instalé VLC porque sé que abre archivos de lista de reproducción, así que pude probar mi .m3u8, pero cuando lo abro con VLC, el programa comienza a ejecutarse pero no reproduce nada. Como referencia aquí también está la lista de reproducción:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:12
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:11.500000,
index10.ts
#EXTINF:12.000000,
index11.ts
#EXTINF:2.500000,
index12.ts
#EXT-X-ENDLIST
Respuesta1
tl;dr: Esto parece un error con VLC. Utilice un jugador diferente.
Puedo reproducir este problema con un conjunto de archivos de video HLS, creados ffmpeg
como se indica en la pregunta. Eso es con ffmpeg 4.0.2 y VLC 3.0.4
Síntomas:
Al abrir el .m3u8
archivo con VLC, aparece el mensaje de error:
Error de demux adaptativo: no se pudo crear TLS demuxer (nulo)
Los registros de depuración indican que VLC realmente lee correctamente la lista de reproducción y encuentra los archivos TS, pero luego algo sale mal.
Sin embargo, puedo reproducir correctamente los archivos con ambos ffplay
yreproductor MP, entonces parece que la falla está en VLC.
El rastreador de errores de VLC tiene algunos informes de errores similares, pero la mayoría son bastante antiguos y supuestamente están solucionados. Logré reproducir una transmisión HLS a través de HTTP abriendo la URL del .m3u8
archivo, por lo que el error parece aplicarse solo a las transmisiones HLS descargadas. Quizás la reproducción de .m3u8
archivos descargados localmente no sea una alta prioridad para VLC, así que utilice un reproductor diferente.
Respuesta2
Parece que VLC no puede procesar un archivo m3u8 con esas directivas 'EXT-X'. Presumiblemente, se trata de un error de VLC (como se indicó en otra parte) que aún no se ha resuelto hasta el día de hoy.
Tus mejores opciones son:
- Edite el
.m3u8
archivo y elimine las líneas EXT-X (pero conserve esas líneas EXTINF). Entonces deberías poder reproducir la lista de reproducción con VLC, o - Utilice una aplicación diferente para reproducir el
.m3u8
archivo tal cual.ffplay
es uno que lo jugará, por ejemplo.
Respuesta3
Por si alguien todavía necesita información al respecto.
Verifique el encabezado "tipo de contenido" de su fragmento mpegs. Debería ser "vídeo/mp2t".