2

我在 StackOverflow 上搜索了所有类似的问题,但没有找到可以回答我的问题。

我正在尝试将一些电影从我的 Linux 计算机(openSuSE 12.1)流式传输到我的 iPad。我用 ffmpeg 转换它们,用我自己的分段器对它们进行分段,将它们放在我的 apache2 服务器的 www 文件夹中,也放在 .m3u8 播放列表中。直到这里 - 一切都好!

我开始播放电影(带有标签的 HTML 页面),它播放得很好,但只有前五个片段已经加载了播放列表的第一次加载。HTML 页面(浏览器或播放器 - 不知道)不会从服务器刷新(重新下载)播放列表。这是我的 .m3u8 播放列表文件的样子:

#EXTM3U
#EXT-X-MEDIA-SEQUENCE:19
#EXT-X-TARGETDURATION:8

#EXTINF:8,
http://192.168.1.4/segment_19.ts
#EXTINF:8,
http://192.168.1.4/segment_20.ts
#EXTINF:8,
http://192.168.1.4/segment_21.ts
#EXTINF:8,
http://192.168.1.4/segment_22.ts
#EXTINF:8,
http://192.168.1.4/segment_23.ts

片段与播放列表文件位于同一文件夹中,片段已正确编码(因为我至少可以看到前五个:D)。我还从 apache 服务器观看了 access_log,我看到了播放列表的第一次加载,然后是所有 5 个段的后续加载,它一直停在那里。它甚至不会尝试进一步刷新 m3u8 文件。

如果重要的话 - iOS 5.0、iPad 2、仅限 Wi-Fi 版本,未越狱

想法?我究竟做错了什么?

4

1 回答 1

1

播放器(平台)将自动更新 m3u8 文件。不需要在 ios 和 android 中设置 http Expires。可以查看httpserver的访问日志。

于 2013-02-27T07:11:47.903 回答