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

Steve Underwood steveu at coppice.org
Tue Mar 15 16:59:54 MST 2005


Hi,

My PLC code should *not* be used for G.729. G.729 has its own PLC 
algorithm, which is tuned for that particular codec. It should work 
better than mine for that particular codec only. My PLC algorithm is a 
more generic one, designed for codecs which do not have their own.

What is needed for G.729 is to enable the PLC code which is probably 
already in the Digium G.729 implementaion.

Regards,
Steve


Michael Giagnocavo wrote:

>But G729 still isn't supported for PLC yet? 
>
>I'd love to apply it, as I've got some seriously horrendous connections
>(packetloss up to 10%, jitter up to 100ms sometimes).
>
>Thanks,
>-Michael
>
>-----Original Message-----
>From: asterisk-dev-bounces at lists.digium.com
>[mailto:asterisk-dev-bounces at lists.digium.com] On Behalf Of Steve Kann
>Sent: Tuesday, March 15, 2005 11:52 AM
>To: Asterisk Developers Mailing List
>Subject: [Asterisk-Dev] Please help test jitterbuffer/PLC patches.
>
>
>
>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