diff options
author | Matthew Jordan <mjordan@digium.com> | 2012-07-23 21:15:26 +0000 |
---|---|---|
committer | Matthew Jordan <mjordan@digium.com> | 2012-07-23 21:15:26 +0000 |
commit | b6a0ae0b35797bcdf5368e7d0e2223c6321c9b21 (patch) | |
tree | 708c28c7f73c2fd7981442f55213a60ee6d396c8 /include/asterisk/abstract_jb.h | |
parent | a28e6fc7bd86b31b7ed613f63f1dd0fb7fca5479 (diff) |
Unit tests for the Jitter Buffer API; remove unnecessary resync
This patch includes the following:
* Unit tests for the abstract Jitter Buffer API. This includes both fixed
and adaptive flavors, testing nominal creation, frame input, frame retrieval,
resyncing; off nominal frame input overflow, out of order, and others.
* Tweaks to the abstract_jb API to remove the unnecessary resync_threshold
parameter from the create function (resync_threshold is already in the
struct passed into the create function)
* Ensure the fixed jitter buffer is empty before destroying it, to avoid an
ASSERT
* Don't "resync" the adaptive jitter buffer. The mechanism that was being
used actually causes the jitter buffer to think its being overflowed by going
around the jitterbuf API and attempting to 'resynch' it improperly. If a
resync is needed, the jitter buffer will do it properly by itself. Note that
this is only an optimization needed for trunk, as the worst that happens is
the loss of three voice packets before the adaptive jitter buffer will resync
anyway.
Review: https://reviewboard.asterisk.org/r/2035
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@370387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk/abstract_jb.h')
-rw-r--r-- | include/asterisk/abstract_jb.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asterisk/abstract_jb.h b/include/asterisk/abstract_jb.h index d1121cc5e..3e6bedd26 100644 --- a/include/asterisk/abstract_jb.h +++ b/include/asterisk/abstract_jb.h @@ -92,7 +92,7 @@ struct ast_jb_conf /* Hooks for the abstract jb implementation */ /*! \brief Create */ -typedef void * (*jb_create_impl)(struct ast_jb_conf *general_config, long resynch_threshold); +typedef void * (*jb_create_impl)(struct ast_jb_conf *general_config); /*! \brief Destroy */ typedef void (*jb_destroy_impl)(void *jb); /*! \brief Put first frame */ |