什么是抖动

image.png
消除抖动的原理,因为生产的包,到达经过网络到达对端后,实际情况的时间间隔会不一样。消除抖动就是按照处理后按照原始的时间间隔顺序到达对端。

网络抖动的计算

image.png

抖动的含义

image.png

举个例子

image.png
一共发送四个包A、B、C、D。每个包时间间隔30ms。
A包 发送时间30毫秒 + 10毫秒的网络延迟 = 到达时间40毫秒
B包 发送时间60毫秒 + 网络延迟30毫秒 = 到达时间90毫秒
C包 发送时间90毫秒 + 网络延迟10毫秒 = 到达时间100毫秒
D包 发送时间120毫秒 + 网络延迟10毫秒 = 到达时间130毫秒
如果还是希望这些包按照正常顺序界面播放,应该设置个缓存区,时间为30毫秒。
这种样子则,各个包的播放顺序时间间隔都是 30 毫秒,60,90,120,150毫秒,播放比较平滑不会一个慢一个快。

直方图

image.png
延迟3个包的概率是20%, 延迟4个包的概率是10%…
如果这些概率加在一起,大于95%的话,则说明找到了最佳的缓存大小。
就是以间隔最长的15个包作为缓存区。
不能用原始数据得出的直方图,因为加起来不能大于1 。经过处理,实际是右手边的图。