【问题标题】:Generate .m3u8 on the fly from .ts files从 .ts 文件即时生成 .m3u8
【发布时间】:2016-06-24 10:47:10
【问题描述】:

我有一个遵循此模式的 .ts 文件段列表

http://www.someaddress.com/file_11223344.ts
http://www.someaddress.com/file_11223345.ts
http://www.someaddress.com/file_11223346.ts
...

因为我需要一个 m3u8 文件才能打开这些视频,有没有办法在 .php 中手动(从 ts 段)生成这个 m3u8。原始 m3u8 仅在我有用户/密码 id 等时才受到保护和生成。这是始终根据时间戳更新和生成的实时流

【问题讨论】:

  • 如果你没有找到方法,你可以尝试一些非常简单的方法,同时使用 php 或其他方法检查下一个段是否可用(可能使用 HTTP HEAD 请求)和,如果是,请通过添加其 URL 并删除第一个片段的 URL 来相应地更新您的播放列表。 #EXTM3U #EXT-X-VERSION:3 [3 段]。

标签: live-streaming http-live-streaming m3u8


【解决方案1】:

如果你有主文件,假设:http://www.someaddress.com/file_11223344.ts 你不必转换任何东西。只需将 URL 的结尾从 .ts 更改为 .m3u8 即可:)

【讨论】:

  • 它可以工作,但它似乎在此过程中丢失了信息(如额外的音频流)。有什么解决方法吗?
【解决方案2】:

是的,有办法。你只需生成它。 m3u8 规范非常简单且文档齐全。 https://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-19

【讨论】:

  • 你是对的,我的男人!我刚刚将这种方法与 Atom 编辑器一起使用,创建了一个 Roku 应用程序,它确实有效!只需确保没有 BOM,是的,它可以工作。
【解决方案3】:

szatmary 是正确的。

对于您的情况,通过保护您可以使用 json 或 xml 提要并对其进行解析,或者只需调用 m3u8 文件并确保它是在没有 BOM 的 utf-8 中完成的。 这是一个 m3u8 方法。

#EXTM3U
#EXTINF:-1,Title Here
http://www.someaddress.com/live/user/pass/file_11223344.m3u8
#EXTINF:-1,Title Here
http://www.someaddress.com/live/user/pass/file_11223345.m3u8
#EXTINF:-1,Title Here
http://www.someaddress.com/live/user/pass/file_11223346.m3u8

在此处了解 BOM What's different between UTF-8 and UTF-8 without BOM?

【讨论】:

    【解决方案4】:

    您所要做的就是一个提供.ts流媒体文件的IPTV网站,如果您订阅了它会更有用。只是你想改变一个地址。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-02
      • 2017-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-07
      相关资源
      最近更新 更多