获取持续时间

时间:2019-05-23 11:06:09

标签: android exoplayer exoplayer2.x

我正在使用exoplayer:2.10.1。我有一个活动,其中包含带有多个音频/数据(.mp3)轨道的RecyclerView。此外,我正在使用ConcatenatingMediaSource将所有曲目放入“播放列表”,该曲目允许在播放完曲目后自动过渡到下一曲目。

一切正常,只有让曲目的持续时间不断出现一些我想澄清的问题。

进行一些研究后,我得出了以下发现。

有2种情况下音轨发生变化

  1. 当前曲目结束
    在这种情况下,调用onPositionDiscontinuity()的原因为DISCONTINUITY_REASON_PERIOD_TRANSITION,似乎在这一点上设置了持续时间。

  2. 用户手动点击要播放的特定曲目
    在这种情况下,onPlayerStateChanged()的原因为STATE_READY被调用,并且持续时间为!= C.TIME_UNSET,我可以使用持续时间

我的发现正确吗?有没有更好的方法来获取持续时间?

0 个答案:

没有答案