[asterisk-bugs] [Asterisk 0010590]: RTP statistics returned by ast_rtp_get_quality reflects the last RTCP packet not a call overall
noreply at bugs.digium.com
noreply at bugs.digium.com
Fri Aug 31 07:28:57 CDT 2007
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=10590
======================================================================
Reported By: gasparz
Assigned To:
======================================================================
Project: Asterisk
Issue ID: 10590
Category: Core/RTP
Reproducibility: always
Severity: minor
Priority: normal
Status: new
Asterisk Version: 1.4.11
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Disclaimer on File?: N/A
Request Review:
======================================================================
Date Submitted: 08-29-2007 06:22 CDT
Last Modified: 08-31-2007 07:28 CDT
======================================================================
Summary: RTP statistics returned by ast_rtp_get_quality
reflects the last RTCP packet not a call overall
Description:
The result of the function ast_rtp_get_quality is the value set by the LAST
RTCP frame. This value is inserted to the RTPAUDIOQOS channel variable and
should be a some kind of quality metric of the call.
So if we take only one sample: one (the last) RTCP frame we won't get a
relevant value for a parameter. The min/max values calculated (ex:
maxrtt,minrtt and all the others) are unused and would be very usefull to
aproximate call quality.
An average value could be easily computed for the parameters (ex: rtt) and
would give a mutch better picture of RTP quality.
Ex:
Last rtt value: 80ms
Min rtt value: 30ms
Max rtt value: 500ms (perhaps congestion)
Avg rtt value: 35ms
My proposal is to create a new function:ast_rtp_get_quality_ext that would
return a detailed parsable string with the 4 values for each parameter.
This could be saved in another channel variable RTPAUDIOQOSEXT. This way we
would be backwards compatible with the current version.
Another less elegant way is to modify the curent function and add the
informations (min/max/avg) for each parameter at the end of the string
returned by ast_rtp_get_quality.
======================================================================
----------------------------------------------------------------------
gasparz - 08-31-07 07:28
----------------------------------------------------------------------
Here are the new files (updated the 1.4.10.1). Please take a look at the
source code and give feedback.
I used an optimised version of the standard deviation formula given by:
http://www.cs.umd.edu/~austinjp/constSD.pdf
I made only one sqrt at the end.
If the code is ok I can make a patch against trunk too.
Issue History
Date Modified Username Field Change
======================================================================
08-31-07 07:28 gasparz Note Added: 0069774
======================================================================
More information about the asterisk-bugs
mailing list