Hi All,
I made the following enhancements to the RTP analysis tool (rtp_analysis.c):
1) Added a graphic analysis of RTP packets (see
RTP_graph_analysis2.jpg for a screenshot). This graph displays the forward and reverse
RTP packets over the time in the x axis, and the “jitter” and
“difference” in the y axis. Where:
- jitter: is the mean deviation of the difference in packet spacing at the
receiver compared to the sender (as per RTP RFC1889). Basically this is the
“average jitter”.
- difference: is the time difference in two consecutive packets at the receiver
compared to the sender. This is basically the “jitter” between two
consecutive packets (the time difference when the packet actually arrived and
when it should theory arrive). This is the value that is more important to
understand when there are voice problems. For example, if a device has a
“jitter buffer” of 100ms, and you see that the
“difference” is 150ms, that means there are a couple of packets
that the device will drop because it doesn’t feet in his “jitter
buffer”.
This graph interface is based on io_stat.c and tested in Windows 2000 using GTK
1 and 2.
2) The graphic also display an “x” at the bottom
of the x-axis if there was a “wrong sequence number” between two
consecutives packets. This usually means a packet lost, or out of order
packets. And will display an “m” for packets with the RTP
“Mark set”. This means the end of a silence period.
3) Fixed a bug where the reverse RTP packets were not
displayed in the “RTP analysis tool” when using “Stream
Analysis…” menu option.
4) Display the “Delay” and “Jitter”
column in “ms” instead of “sec”. And added the
percentage of packet lost to the statistic.
Attached is a screenshot and the “diff” of rtp_analysis.c.
Comments/suggestions are very welcome.
Thanks and Regards
Alejandro