Search code examples
iphoneioshtmlwebserverhttp-live-streaming

Http Live Streaming for iPhone and why we use .m3u8 file


I have done all that from This I have also made .ts and m3u8 file. In local server and live server i can play mp4 file like

 <video width="320" height="240" controls="controls" autoplay="autoplay">
 <source src="movie.mp4" type="video/mp4" />
 </object>
 </video>

But i have problem with playing .m3u8 file

 <video width="320" height="240" controls="controls" autoplay="autoplay">
 <source src="movie.m3u8" type="video/m3u8" />
 </object>
 </video>

My mediafilesegmenter created two .ts file and one .m3u8 . My m3u8 file is

 #EXTM3U
 #EXT-X-TARGETDURATION:10
 #EXT-X-VERSION:4
 #EXT-X-MEDIA-SEQUENCE:0
 #EXT-X-PLAYLIST-TYPE:VOD
 #EXT-X-I-FRAMES-ONLY
 #EXTINF:1.0117,    
 #EXT-X-BYTERANGE:8084@376
 fileSequence0.ts
 #EXTINF:1.0117,    
 #EXT-X-BYTERANGE:7332@36096   and so on....

So is there any problem in mime.types because i wrote all the confusions in mime.types see like -

 application/x-mpegURL                          m3u8
 video/MP2T                                     ts

 AddType appliction/x-mpegURL                   m3u8
 AddType video/MP2T                             ts

 #application/x-mpegURL                          m3u8
 #video/MP2T                                     ts

 application/x-mpegURL.m3u8
 video/MP2T.ts

 #application/x-mpegURL.m3u8
 #video/MP2T.ts

 #AddType application/x-mpegURL                   m3u8
 #AddType video/MP2T                             ts

 #AddType application/x-mpegURL.m3u8
 #AddType video/MP2T.ts

 AddType application/x-mpegURL.m3u8
 AddType video/MP2T.ts

I can't play .m3u8 file in VLC and got that error Link


Solution

  • As long as your conf is

    AddType application/x-mpegURL .m3u8
    AddType video/MP2T .ts
    

    it should work for apache. I'm not sure if it's your .ts or .m3u8 problem, so I suggest the following:

    • Download example .ts and .m3u8 file from Apple and test them on your server
    • check if there is empty lines in the index file, as this question