一 传统上的jitter和skew
jitter是时钟的频率的抖动
skew指时钟的相位差
更确切的说jitter是指的一个时钟周期长度和另一个时钟周期长度的差别,比如说前一个时刻高电平和低电平时间是10ns而下一个时刻高低电平时间是12ns;jitter还包含半周期抖动,就是一个时钟周期内部高低电平的时间长度不一样;
jitter是指的一个时钟沿的抖动,由时钟周期的不稳定造成
skew应该是时钟的走线路径引起的,而jitter是时钟源的质量引起的
skew是指的同一个时钟源引出的时钟到不同目标所通过不同的路径引起的时钟相位的不同
二 RTP中的jitter何slide
对RTP传输来说jitter是一个需要考虑的问题,在ortp中对jitter处理的部分占了不少的比重。
主要的实现都在jitterctl.c里面,也不算很复杂,没有太仔细看。从注释中看到算法如下:
The algorithm computes two values:
slide: an average of difference between the expected and the socket-received timestamp
Slide:期望和实际socket接收的时间戳的误差的平均值。
jitter: an average of the absolute value of the difference between socket-received timestamp and slide.
Jitter:socket接收的时间戳和slide的差别的绝对值的平均值。
slide is used to make clock-slide detection and correction.
Slide用于时钟检测检测和修正。