Wireshark-dev: [Wireshark-dev] RTP Jitter calculation (Telephony->RTP Stream	Analysis)
      
      
Dear all,
I'm trying to match
---------------------------
http://wiki.wireshark.org/RTP_statistics
---------------------------
How jitter is calculated
Wireshark calculates jitter according to RFC3550 (RTP):
If Si is the RTP timestamp from packet i, and Ri is the time of arrival in RTP timestamp units for packet i, then for two packets i and j, D may be expressed as
    * D(i,j) = (Rj - Ri) - (Sj - Si) = (Rj - Sj) - (Ri - Si) 
The interarrival jitter SHOULD be calculated continuously as each data packet i is received from source SSRC_n, using this difference D for that packet and the previous packet i-1 in order of arrival (not necessarily in sequence), according to the formula
    * J(i) = J(i-1) + (|D(i-1,i)| - J(i-1))/16 
---------------------------
to the following code from tap-rtp-common.c (rtp_packet_analyse):
---------------------------
		if( !statinfo->first_packet )
		{ /* Calculate the current jitter(in ms) */
			expected_time    = statinfo->time + (nominaltime - statinfo->lastnominaltime);
			current_diff     = fabs(current_time - expected_time);
			current_jitter   = (15 * statinfo->jitter + current_diff) / 16;
			statinfo->delta  = current_time - (statinfo->time);
			statinfo->jitter = current_jitter;
			statinfo->diff   = current_diff;
		}
		statinfo->lastnominaltime = nominaltime;
---------------------------
And I can't find (m)any similarities between the two.
Can anyone lend a hand?
Thanks!
CP.
-- 
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de