[Asterisk-Dev] Please help test jitterbuffer/PLC patches.

Steve Underwood steveu at coppice.org
Tue Mar 15 11:06:04 MST 2005


Hi Steve,

Does this only buffer audio? Will it let things like T.38 image packets 
straight through, without buffering? Dynamic buffering  would be very 
bad for T.38. In fact, any buffering is inappropriate.

Regards,
Steve

Steve Kann wrote:

>
>
> Hi,
>
>    The Jitterbuffer and PLC patches, plus IAX2 integration posted on 
> mantis at 
> http://bugs.digium.com/bug_view_advanced_page.php?bug_id=0002532 and 
> the "trunktimestamp" patch posted at 
> http://bugs.digium.com/bug_view_advanced_page.php?bug_id=0003400 are 
> now ready for testing and review.
>
>    The new jitterbuffer offers several new features, and gives us a 
> foundation for even more improvement.  It presently includes the 
> following features that may be of interest:
>
> 1) Packet Loss Concealment: It detects lost packets, and attempts to 
> reconstruct them, concealing their loss.  With this functionality, you 
> can hardly notice 10% packet loss situations.
>
> 2) Greatly improved diagnostics, including IAX2 "receiver reports", 
> where you can get good details of the network situation with "iax2 
> show netstats".  (A manager-specific interface to this will be added 
> soon -- it would also be nice to integrate this with the new enhanced 
> CDR system, so these metrics can be stored for post-mortem analysis).
>
> 3) Some testing capabilities with a new command "iax2 test losspct 
> <percentage>" which simulates a particular rate of random incoming 
> packet loss.
>
> 4) Enhanced tuning for jitter vs loss.
>
> 5) Automatic bypass of the JB for VoIP <-> VoIP bridging (configurable).
>
>
> TODO:
>
> Since the jitterbuffer (any jitterbuffer, really) requires getting 
> sensible timestamps, it is important that IAX2 clients output 
> timestamps correctly.  In particular, discontinuities in timestamps 
> will lead to audio loss or large delays.    There's some cleanup in 
> chan_iax2 in particular that can address some of the causes of this.
>
> Need to re-examine if IAX2 bridge optimization is doing the right things.
>
>
> STATUS:
> This code is presently in production on a handful of production boxes 
> with pretty good results.   If we can get some more reports on it, we 
> can hopefully get this into CVS.  Also useful would be for people to 
> test this with the jitterbuffer (and PLC) turned off.
>
> PATCHES:
> You really ought to read the bug reports before you apply these, but 
> here's the patches in question, in (one possible) order they will 
> apply most cleanly:
>
>
> [IAX2 trunk timestamps]
> http://bugs.digium.com/file_download.php?file_id=5124&type=bug
>
> [Add PLC to codecs]
> http://bugs.digium.com/file_download.php?file_id=5155&type=bug
>
> [Build the JB with asterisk]
> http://bugs.digium.com/file_download.php?file_id=5137&type=bug
>
> [Integrate JB with IAX2]
> http://bugs.digium.com/file_download.php?file_id=5138&type=bug
>
> [Add new "channel properties" flag to identify VoIP technologies]
> http://bugs.digium.com/file_download.php?file_id=5139&type=bug
>
> [Optionally bypass IAX2 jitterbuffer when we're bridged to a VoIP 
> channel]
> http://bugs.digium.com/file_download.php?file_id=5140&type=bug
>
>
> -SteveK





More information about the asterisk-dev mailing list