Skip to content

PlayerBufferingMode

wshichang edited this page Mar 2, 2017 · 3 revisions

播放器缓存方式

播放器数据缓存维度可分为两类:时间空间
时间是指播放器缓存的数据可播放多长时间,SDK提供如下接口控制播放器可缓存时长的最大值

/**
 * 此接口在v1.7.1及以前版本只对直播有效
 * @param bufferTimeSecond 播放器可缓存时长的最大值,单位:秒, 默认值:2s
 */
public void setBufferTimeMax(float bufferTimeSecond)

空间是指播放器缓存的数据占用的内存大小,SDK提供如下接口控制播放器缓存数据可占用内存的最大值

/**
 * @param size 播放器缓存数据可占用内存的最大值,单位:MB, 默认值:15MB
 * 此接口在1.7.3及以上版本设置范围为0~100MB,设置为0时不缓冲,默认值不变仍为15MB
 */
public void setBufferSize(int size)

版本要求

以上两个API对于直播点播的影响与SDK版本有关,如下表所示

API 直播 点播
setBufferTimeMax 均有效 仅v1.7.2及以上版本有效
setBufferSize 均有效 均有效

setBufferTimeMax vs setBufferSize

两个接口体现了缓存数据的两个维度,会限制播放器缓存数据的时长与内存占用。

直播 vs 点播

直播

主播和观众之间延迟是直播场景下最为关键的要素之一,因此推荐只使用接口 setBufferTimeMax
具体可参见直播延迟控制功能

点播

在SDK版本v1.7.2及以上版本,接口setBufferTimeMaxsetBufferSize

Clone this wiki locally