SDK 关于bufferTime和maxBufferTime的说明

Posted on Jan 4, 2016

在最新发布的SDK(Android:v0.9.3, iOS:v0.5.2)中,增加了对播放端maxBufferTime的控制.
那么现在对播放缓冲区就有两处设置.

第一个setBufferTime,控制开始取流后到开始播放的缓冲时间,单位毫秒.内网环境可以设置为100毫秒,如果服务端支持GOP_Cache,基本上是毫秒级的连接播放速度.公网环境视延迟,带宽等增大该值,比如300毫秒.注意:由于音频不需要关键帧,开始播放后马上就可以听到声音,但视频需要等待第一个关键帧后才会显示画面,最大需要一个GOP的时间.

第二个setMaxBufferTime,控制数据流在本地最大缓冲的时间,单位毫秒.用来控制播放端于发布端的最大延迟.由于存在网络抖动,网络延迟或者短时带宽不足等造成的延时,在本地最大允许保存多久,超出的过期数据会加速播放.该值建议大于1000,小于等于2000