5

我已经完成了所有一切, 我还制作了 .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>

我的 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....

那么在 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 文件并收到错误链接

4

3 回答 3

5

只要你的 conf 是

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

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

  • 从 Apple 下载示例 .ts 和 .m3u8 文件并在您的服务器上进行测试
  • 检查索引文件中是否有空行,作为这个问题
于 2012-08-16T14:48:58.070 回答
1

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

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

于 2012-08-16T13:08:22.330 回答
0

The m3u8 you're using was generated for seeking only. See EXT-X-I-FRAMES-ONLY as described here: https://developer.apple.com/library/ios/technotes/tn2288/_index.html#//apple_ref/doc/uid/DTS40012238-CH1-I_FRAME_PLAYLIST

于 2014-04-24T00:13:10.870 回答