目录
前言
在video jitter buffer中讲述过video在insert frame buff时会调用TimestampExtrapolator::update来更新卡尔曼增益,然后在nextframe中获取期望接收时间来进行预估输出期望时间。本节将尽本人最大的努力来讲述下这个过程,虽然看了很多文章,还是对卡尔曼滤波这个过程一知半解,不过代码还是看懂了。
卡尔曼滤波核心5大公式
这里只贴一张图,具体推导,暂时还没看懂,果然写paper的才是顶级程序员,码农数学底子落光了
上面5大公式 即卡尔曼5大核心公式,在接下来的代码中就可以看到他们身影
期望接收时间和rtp时间戳之间的关系
TimestampExtrapolator类负责期望接收时间的产生
记帧RTP时间戳之差:Tframe_rtp_delta = Tframe_rtp - Tfirst_frame_rtp
帧本地接收时间之差:Tframe_recv_delta = Tframe_recv - Tfirst_frame_rcv
两者为线性关系,期望RTP时间戳之差Tframe_rtp_delta = _w[0] *