首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过hls.js跳转到hls流中的具体UTC时间戳?

如何通过hls.js跳转到hls流中的具体UTC时间戳?
EN

Stack Overflow用户
提问于 2019-11-27 15:55:42
回答 1查看 737关注 0票数 2

我们使用的是一个音频播放器,它使用hls.js库来播放hls格式的广播实况流。我们正在尝试实现一个功能,允许我们的用户在直播流中跳回到某个时间点(歌曲的开始时间)。从过去两小时内播放的每首歌曲,我们可以获得该歌曲的开始时间作为UTC时间戳。由于hls.js似乎没有提供任何实用方法来直接查找某个utc时间戳的位置,因此我们尝试找出其他方法来计算流中的该点。

我们的想法是找出当前正在播放的流的utc时间戳,使用此时间戳来计算流中的livetime与我们想要跳转到的歌曲的开始时间之间的秒数差,并将该差值添加到流中播放器的当前位置(我们将此位置作为流在两小时时间窗口中播放的秒数的时间)。但不幸的是,我们只能设法找出流中当前播放的片段的开始时间,但无法找到流在片段中实际播放的确切时间点。由于我们的碎片持续时间为5秒,因此我们对跳转位置的计算并不那么精确。

有没有人知道如何通过hls.js获取当前正在播放的实时流的确切时间戳?例如,在Android上使用exoplayer,可以在HLSManifest类的帮助下计算直播流中当前位置的协调世界时时间戳。该类提供了一个方法,该方法随时返回已配置的hls时间窗口的起始点的utc时间戳。通过在该时间窗口中添加当前位置的时间(以秒为单位),可以很容易地计算出流在某个时间点的确切utc时间戳。

任何帮助,即使是关于如何使用hls.js的最小提示,也是非常感谢的。提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-07-22 18:52:51

你能解决这个问题吗?我可以为MPD (DASH)实现这一点,但不能为MPD的M3U8 (HLS)实现,使用下面的标记来实现相同的效果。

保持视频点播

代码语言:javascript
复制
type="static"
mediaPresentationDuration="PT2M7.3S"
minBufferTime="PT10.0S">

允许视频仅在特定时间开始

代码语言:javascript
复制
type="dynamic"
minimumUpdatePeriod="PT5S"
suggestedPresentationDelay="PT5S"
availabilityStartTime="2020-07-16T09:23:30Z"
publishTime="2020-07-16T09:23:30Z"
timeShiftBufferDepth="PT20M50.0S"
minBufferTime="PT10.0S">
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59065532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档