Reproducción de archivos m3u8 con etiqueta de video HTML

Estoy tratando de usar HTTP Live Streaming (HLS) para transmitir video a mis computadoras y mi iPhone. Después de leer la 'Visión general de transmisión en vivo HTTP' de Apple, así como las 'Mejores prácticas para crear e implementar HTTP Live Streaming Media para iPhone y iPad', estoy un poco atascado.

Tomé mi archivo de origen (un mkv) y usé ffmpeg para codificar el formato MPEG-TS y la configuración recomendada por Apple y un perfil de Línea de base 3.0:

ffmpeg -i "example.mkv" -f mpegts -threads:v 4 -sws_flags bicubic -vf "scale=640:352,setdar=16/9,ass=sub.ass" -codec:v libx264 -r 29.970 -b:v 1200k -profile:v baseline -level:v 3.0 -movflags faststart -coder 1 -flags +loop -cmp chroma -partitions +parti8x8+parti4x4+partp8x8+partb8x8 -me_method hex -subq 6 -me_range 16 -g 239 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -b_strategy 1 -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -direct-pred 1 -fast-pskip 1 -af "aresample=48000" -codec:a libvo_aacenc -b:a 96k -ac 2  -y "output.ts"

No te preocupes allí. Usé unherramienta de segmentación precompilada para segmentar el video y construir una lista de reproducción .m3u8. El archivo resultante se veía así:

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXTINF:10,
http://localhost/media/stream/stream-1.ts
#EXTINF:10,
http://localhost/media/stream/stream-2.ts
#EXTINF:10,
http://localhost/media/stream/stream-3.ts
#EXT-X-ENDLIST

Lo comprobé contra algunosEjemplos de archivos de lista de reproducción para usar con transmisión en vivo HTTP, y no veo ningun problema. También intenté reproducir el archivo .m3u8 en VLC, y funciona como un encanto.

Creé una página HTML para reproducir el archivo:

<html lang="en">
    <head>
        <meta charset=utf-8/>
    </head>
    <body>
        <div id='player'>
            <video width="352" height="288" src="stream.m3u8" controls autoplay>
            </video>
        </div>
    </body>
</html>

Y esta página no funciona en Chrome, Safari, en mi iPhone. Los ejemplos de etiquetas de video html5 en w3schools funcionan bien en mi computadora, y el resumen oficial de Apple mencionado anteriormente ofrece un ejemplo de HTML muy similar a mi página. Sin embargo, mi reproductor de video no responde cuando visito mi propia página .m3u8.

Respuestas a la pregunta(5)

Su respuesta a la pregunta