Menu

#20 long delay on answer

open
nobody
None
5
2005-12-27
2005-12-27
No

First of all, excellent job on a great project!!

I downloaded the latest IAXCLIENT sources (you should
really make it easier to download the sources through
http or ftp).

Then I compiled it with Visual Studio 6.0 using these
settings:
WIN32,SPEEX_PREPROCESS=1,SPEEX_EC=1,NDEBUG,_LIB,IAXC_IA
X2,LIBIAX,NEWJB

Then i created a simple client and made a call from
one client to another client. If I wait 5 seconds
before answering, then voice in the one direction is
delayed by 5 seconds while voice in the other
direction is almost immediate.

If I make the same call, but answer immediately, then
there is no delay in both directions. I could
reproduce this on multiple PCs. The delay always
matches exactly the amount of time I wait before
answering.

I created a hack that fixes the problem that I can
send you, but it is probably not the best way to do
it. I found the issue in managing the Jitter Buffer
(regardless of whether I use the new or the old jitter
buffer). The issue is that when making the call, the
timer is immediately started (used for timestamps of
voice packets). So if the remote client answers 5
seconds later, then the first audio packet is received
with timestamp 5 seconds... So the remote client plays
5 seconds of silence before starting to play the audio.

So, what I did was to take a timestamp when the call
is established and then subtract it from timestamps
and it seems to work just fine in my testing.

I also see the same problem when calling into an
Asterisk server (meetme). The delay in Asterisk
answering the call results in a long delay in meetme
calls because of this bug too.

Again, great project!

Kind regards,
Frik Strecker

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.