From: Terry Wilson Date: Thu, 2 Dec 2010 18:07:39 +0000 (+0000) Subject: Merged revisions 297310 via svnmerge from X-Git-Tag: 1.6.2.16-rc1~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c81f9d0fdaf97791751b2acaa2ea9f0c96c96c23;p=thirdparty%2Fasterisk.git Merged revisions 297310 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r297310 | twilson | 2010-12-02 12:00:27 -0600 (Thu, 02 Dec 2010) | 12 lines Initialize offset for adaptive jitter buffer When the adaptive jitter buffer is enabled in sip.conf, the first frame placed in the jitter buffer fails with something like: jb_warning_output: Resyncing the jb. last_delay 0, this delay -215886466, threshold 1000, new offset 215886466 This happens because the offset is not initialized before calling jb_put(). This patch modifies jb_put_first_adaptive() to set the offset to the frame's timestamp. Review: https://reviewboard.asterisk.org/r/1041/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@297311 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/abstract_jb.c b/main/abstract_jb.c index eb42346af3..6b86ba7ae5 100644 --- a/main/abstract_jb.c +++ b/main/abstract_jb.c @@ -763,6 +763,11 @@ static void jb_destroy_adaptive(void *jb) static int jb_put_first_adaptive(void *jb, struct ast_frame *fin, long now) { + jitterbuf *adaptivejb = (jitterbuf *) jb; + + /* Initialize the offset to that of the first frame's timestamp */ + adaptivejb->info.resync_offset = fin->ts; + return jb_put_adaptive(jb, fin, now); }