ExoPlayer - 使用ConcatenatingMediaSource获取总持续时间

时间:2017-06-18 12:07:50

标签: android exoplayer

我正在尝试使用ExoPlayerConcatenatingMediaSource组合一个无缝播放器。一般的想法是:

  1. 我有一套X短片(每片约15片),保存在资产
  2. 我将每个加载到ExtractorMediaSource
  3. 我把所有这些都放在一个ConcatenatingMediaSource
  4. 解决方案完美无缺,但有一个缺陷 - ConcatenatingMediaSource似乎是动态加载媒体资源,而不是一次性加载。

    这造成了一个问题,因为从Period迭代Timeline个对象以累积总持续时间不起作用。它将加起来为X,但当播放到达某个点时,它将跳到X + 15.

    有关如何在此方案中获得总持续时间的任何提示?

1 个答案:

答案 0 :(得分:0)

我之前遇到过相同的问题,下面是我的解决方案:

扩展LoadControl

覆盖返回真值的shouldContinueLoading,以确保ExoPlayerImplInternal保持更新周期,以便立即加载播放列表。

我希望对您有帮助