Sto cercando di utilizzare HTTP Live Streaming (HLS) per trasmettere video ai miei computer e al mio iPhone. Dopo aver letto la panoramica HTTP Live Streaming di Apple e le "Best practice per la creazione e distribuzione di HTTP Live Streaming Media per iPhone e iPad", sono un po 'bloccato.Riproduzione di file m3u8 con tag video HTML
ho preso il mio file sorgente (un mkv) e ffmpeg usata per codificare il file nel formato MPEG-TS e le impostazioni di Apple raccomandati e un profilo Baseline 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"
non ci preoccupa. Ho usato uno pre-compiled segmenting tool per segmentare il video e creare una playlist .m3u8. Il file risultante si presentava così:
#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
ho controllato che contro alcuni Example Playlist Files for use with HTTP Live Streaming, e non vedo problemi. Ho anche provato a riprodurre il file .m3u8 in VLC e funziona come un incantesimo.
ho creato una pagina HTML per riprodurre il file:
<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>
E questa pagina non funziona in Chrome, Safari, sul mio iPhone. Gli esempi di tag video html5 su w3schools funzionano correttamente sul mio computer e la panoramica ufficiale di Apple sopra menzionata fornisce un esempio HTML molto simile alla mia pagina. Tuttavia, il mio lettore video non risponde affatto quando visito la mia pagina .m3u8.
È possibile visualizzare l'output dello strumento mediastreamvalidator? – vipw
Grazie per la risposta! Sfortunatamente, non ho biforcato il denaro per diventare uno "vero" sviluppatore Apple, quindi non ho quel particolare strumento. Ho cercato un sostituto probabile con scarso successo. Qualunque consiglio potresti dare su quel fronte sarebbe il benvenuto! – drucifer
Forse potresti mettere i file su un server web pubblico. È possibile utilizzare un'istanza micro Amazon EC2 se è necessario un server web gratuito. Quindi qualcuno con accesso a più strumenti potrebbe dare un'occhiata. In realtà, questo mi fa meravigliare dei tipi mime restituiti dal tuo server web ... Vedi se questo potrebbe aiutare: http://stackoverflow.com/questions/6438680/http-live-streaming-not-working-on- apache/15696465 – vipw