iPhone的Http实时流媒体以及为什么我们使用.m3u8文件

Pra*_*ana 5 iphone html5 webserver http-live-streaming ios

我已经完成了一切, 还制作了.ts和m3u8文件。在本地服务器和实时服务器中,我可以播放mp4文件,例如

 <video width="320" height="240" controls="controls" autoplay="autoplay">
 <source src="movie.mp4" type="video/mp4" />
 </object>
 </video>
Run Code Online (Sandbox Code Playgroud)

但是我在播放.m3u8文件时遇到问题

 <video width="320" height="240" controls="controls" autoplay="autoplay">
 <source src="movie.m3u8" type="video/m3u8" />
 </object>
 </video>
Run Code Online (Sandbox Code Playgroud)

我的mediafilesegmenter创建了两个.ts文件和一个.m3u8。我的m3u8文件是

 #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....
Run Code Online (Sandbox Code Playgroud)

那么mime.types是否有任何问题,因为我在mime.types中写了所有的困惑,就像-

 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
Run Code Online (Sandbox Code Playgroud)

我无法在VLC中播放.m3u8文件,并收到该错误链接

Bab*_*nda 5

只要你的conf是

AddType application/x-mpegURL .m3u8
AddType video/MP2T .ts
Run Code Online (Sandbox Code Playgroud)

它应该适用于Apache。我不确定是您的.ts还是.m3u8问题,所以我建议以下几点:

  • 从Apple下载示例.ts和.m3u8文件并在您的服务器上对其进行测试
  • 检查索引文件中是否有空行,因为这个问题