适用于iPhone的Http Live Streaming以及为什么我们使用.m3u8文件



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

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

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

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

我的媒体文件分段器创建了两个 .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....

那么 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

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

只要你的 conf 是

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

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

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

视频标记源类型 video/m3u8 在 iOS 平台上无效。我建议您简单地省略声明源属性,这不是必需的。

如果您真的想指定源类型,即允许不兼容的客户端选择另一个源,我发现audio/x-mpegurl有效。

您使用的 m3u8 仅用于查找。请参阅此处所述的EXT-X-I-FRAMES-ONLY:https://developer.apple.com/library/ios/technotes/tn2288/_index.html#//apple_ref/doc/uid/DTS40012238-CH1-I_FRAME_PLAYLIST

相关内容

  • 没有找到相关文章

最新更新