[Asterisk-Dev] Good quality iaxclient phone
Steve Kann
stevek at stevek.com
Sun Dec 19 12:47:59 MST 2004
On Dec 19, 2004, at 4:28 AM, joachim wrote:
>
> Actually there are some big bugs in iaxclient at the moment causing a
> lot of delay. on iax2 to iax2 calls.
>
> Try iaxclient to asterisk to iaxclient, a lot of calls will have huge
> delays.
>
> I think its only in recent iaxclients, the version firefly uses doesnt
> seem to be affected. (but latest diax and iaxcomm are).
>
> Im not using any iaxclient, but have heard several reports, tried it
> myself and confirmed it.
>
I generally don't use/test much native bridging or transferring, but
there have been some patches to libiax2 coming from Bill Doll (who is
using libiax2, but not iaxclient) affecting how transferring works.
There's a couple of things I see of note:
1) In complete_transfer, Bill resets a bunch of variables, including
the (old) jitterbuffer history and rxcore, Maybe this isn't correct?
(also, if it is correct, we ought to clear the (new) jitterbuffer
history as well, although the rxcore clearing is more relevant). If
problems only happen on native transfer, this seems like the area to
look, in libiax2.
2) recent asterisks (within the past 6 months or so?) when bridged
inside asterisk, will pass along timestamps it receives to the other
side of the call. When doing IAX2 -> IAX2, and having the jitterbuffer
in asterisk enabled, you end up dejittering things inside of asterisk,
and also passing along the timestamps to the remote end to do
dejittering there. This could add a bit of latency..
3) until a few weeks ago, timestamps we generated within iaxclient were
not correlated precisely to the number of samples in a frame: IOW, the
frames were timestamped when we sent them out, but due to scheduling
latency, we never send frames exactly 20ms apart, instead, the
_average_ time we send them is 20ms, but the particular timestamps
might be as much as +- 64ms. On Win9x, in particular, with a timer
running only every 55ms, we would often send frames every 55ms, and
then send 2 or 3 at a time, with timestamps differing by only 3ms.
This would only add about 55ms of latency, though, but I think caused
problems when bridged to devices which depend on the delta in
timestamps equalling the actual audio time (apparently, some Cisco SIP
phones fall into this category).
-SteveK
> Zoa.
>
>
> Steve Kann wrote:
>
>>
>> On Dec 19, 2004, at 12:12 AM, Preston Garrison wrote:
>>
>>> Hey have you g uys experienced the same quality problems I am having
>>> with iaxclient. My own windows softphone which i based on the
>>> iaxclient lib as well as iaxcomm seems to have a sound like i am
>>> talking in a tin can. Incoming audio sounds fine. Also if silence
>>> supression is set to -99, it adds atleast a second of latency. I
>>> notice that iaxcomm has these latency all the time as well. Has
>>> everyone else experienced these problems, and are there ways of
>>> fixing them?
>>>
>>
>> The iaxclient list is probably the best place for this discussion,
>> but it kinda sounds like you have echo cancellation turned on. Echo
>> cancellation is really an experimental feature, which can lead to
>> results like you describe (although, I'm not sure which direction is
>> "incoming" in your description).
>>
>> Generally, there's _very_ little latency in audio coming _from_
>> iaxclient..
>>
>>
>>
>> -SteveK
>>
>> _______________________________________________
>> Asterisk-Dev mailing list
>> Asterisk-Dev at lists.digium.com
>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>> To UNSUBSCRIBE or update options visit:
>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>
>
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-dev
>
More information about the asterisk-dev
mailing list