【问题标题】:Recommended buffer and rebuffer duration of data for ExoPlayer instance and the impact of changing thoseExoPlayer 实例的推荐数据缓冲和重新缓冲持续时间以及更改这些数据的影响
【发布时间】:2017-01-23 13:27:56
【问题描述】:

ExoPlayer 示例具有以下默认值:

mPlayer = ExoPlayer.Factory.newInstance(RENDERER_COUNT, 1000, 5000);

其中 1000 是 minBufferMs,而 5000 是 minRebufferMs。来自文档:

minBufferMs - 必须缓冲的最短数据持续时间 播放以在用户操作(如搜索)后开始或恢复。

minRebufferMs - 必须缓冲的数据的最短持续时间 播放器调用重新缓冲(即重新缓冲)后恢复播放 这是由于缓冲区耗尽而发生的,而不是由于用户操作等 开始播放或搜索)。

这些似乎是合理的默认值,但可能与播放器的平均视频长度有关?在我的应用程序中,平均视频约为 24 秒,但是,在某些情况下,视频可能为 1 秒或

问题是,推荐值是多少?将这两个值设置为 500 和 2000 会有什么影响?

【问题讨论】:

    标签: android video exoplayer


    【解决方案1】:

    这些值实际上与视频的总长度无关 - 它们与您要缓冲的量有关,以确保在缓冲更多视频时无需暂停视频。

    如果您的视频非常短,例如您的 1 秒示例,那么这可能是一个极端情况,可能值得尝试一些不同的值。

    我认为任何推荐值都不过是推荐值,而且上面的默认值似乎也不是不合理的。您可以尝试更改这些值,但问题是您的结果将反映测试期间出现的网络、CPU 负载等条件。

    自适应比特率视频也会使水有点混,因为播放器也会在比特率之间切换,以尝试找到当前网络条件下的最高质量比特率。同样,您的 1 秒时长视频是一种边缘情况,自适应比特率视频可能没有多大意义,除非它们是连续视频流的一部分,并且您希望能够使所有视频的比特率保持相似.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-17
      • 2023-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-11
      相关资源
      最近更新 更多