ExoPlayer - 如何知道HLS视频是否为直播?

3

我正在开发一个视频应用程序,当HLS视频作为Live开始播放时,但在.m3u8播放列表完成加载后,我们希望回到看VOD HLS而不是Live。

如何判断HLS视频是否处于Live模式并更改为VOD?


已经找到了解决方案吗?我也在寻找exoplayer中的相同解决方案,以了解HLS视频是直播、点播还是事件。 - Namdev Londhe
2个回答

2
你可以尝试使用 mExoPlayer.isCurrentWindowDynamic(),具体请参考链接。在代码中,你可以这样使用它:
    if (mExoPlayer.isCurrentWindowDynamic()) {
        // treat me as live stream
    } else {
        // treat me as VOD (Video On Demand)
    }

1
我尝试检测HLS视频是直播还是点播。我们可以通过在准备后获取播放器的时长来区分直播流和点播流。直播流将返回UNKNOWN_TIME,而点播流将返回当前播放的已知固定时长。

3
我使用了相同的方法,但在更新版本中好像出现了问题。我们从2.0.4升级到2.1.1,现在exoplayer返回60秒作为流源的持续时间! - JDurstberger
是的 @Altoyyr,在新版本的ExoPlayer中,提出了带有DVR功能的直播。如果当前版本发布到稳定频道,则将可用。 - Namdev Londhe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接