【问题标题】:Read EXT-X-PROGRAM-DATE-TIME in Safari via Javascript for an HLS stream通过 Javascript 在 Safari 中读取 EXT-X-PROGRAM-DATE-TIME 以获取 HLS 流
【发布时间】:2020-06-09 01:51:46
【问题描述】:

我有一个将EXT-X-PROGRAM-DATE-TIME 成功嵌入到 .m3u8 文件中的视频流。此流在 Safari 上本地播放,但我无法找到从 Javascript 访问值的方法(或根本没有)。有谁知道如何从流中获取此值,以便我可以将其与当前播放的视频相关联?

【问题讨论】:

    标签: safari video-streaming html5-video http-live-streaming


    【解决方案1】:

    您需要通过单独的fetchxhr 请求提取.m3u8 文件,然后将内容解析为文本。您可以使用 library 来执行此操作,或者只使用 RegExp (/#EXT-X-PROGRAM-DATE-TIME\s*:\s*([\d-T:.-Z]+)/)

    【讨论】:

    • 但是当流继续播放时,我将如何接收.m3u8 的更新版本?如果我使用原始的.m3u8,流可能会卡顿并且事情会不同步
    • 您最初的询问没有提及任何有关节目日期时间更改的内容。您可以继续轮询 m3u8 文件(确保将请求设置为“无缓存”)。或者站在巨人的肩膀上,使用像 hls.jsvideo.js 这样的库。
    • 对不起,当我谈到 .m3u8 文件时,我指的是最初的 m3u8 以及在流式传输时定期下载的那个。我正在使用 video.js(并且我已经查看了 hls.js),但它们仍然需要我在 safari 和 ios 上使用本机流媒体。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-26
    • 1970-01-01
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多