HLS 流总是在 Android 浏览器中从头开始

HLS streaming always starts from the beginning in Android Browser

问题

HLS 流在 iOS 浏览器中运行良好(实时中流),

但在大多数 Android 浏览器中,流总是从头开始(流开始时的第一个 Ts 文件)。

参考

帮助

还有其他人遇到这个问题吗?

正如 Aergistal 在评论中所说。 最新的ffmpeg直接支持hls。 所以只需使用 -f hls 而不是 -f segment。 然后问题解决了。

  1. 如果我们使用-f segment

    • #EXT-X-MEDIA-SEQUENCE 的值将始终为 0
    • 添加最新记录时不会删除以前的 TS 记录。
    • 可能还有一些我不知道的参数。

    这样 Android 设备将始终从第一个 TS 文件开始。

  2. 如果我们使用-f hls

    • 我们可以用-hls_list_size来定义m3u8文件中TS文件的个数
    • #EXT-X-MEDIA-SEQUENCE 的值将自动更新。

    然后效果很好