[Asterisk-Users] Distortion/crackling/skipping problems on outgoing calls -- please help!!!

Rich Adamson radamson at routers.com
Sun Sep 4 10:26:06 MST 2005


> Sorry to write so many consecutive messages in such a short period of 
> time, but this problem is really bugging me as it has been going on for 
> days.
> 
> When I look in Ethereal, there are actually "two calls" going on -- in 
> this particular call, Source call #4 and Source call #10318, #4 coming 
> from the asterisk server and the other one coming from my computer to 
> the Asterisk server. I don't know why there are two separate "calls," 
> but perhaps one of you do. 

Its not really two separate calls; its the transmit leg and the receive
leg of the same call.

> Anyhow, source call #10318 seems fine, 
> sending a new packet every 20 ms pretty much perfectly and all (although 
> I do see now that one packet has a timestamp of 33080 and the next has 
> one of 35060 -- is this something to be concerned about? 

The diff is 1980, which essentially suggests there were 99 iax packets
missing between those two timestamps. (Should note that timestamps 
miscalculations have been an issue in the iax2 source code, but I don't
remember if some of the fixes were before or after the version of code
your running. That really was the basis for suggesting a code upgrade.)

If 99 iax2 packets are actually missing, you _would_ have a problem 
with the audio quality.

> it doesn't seem 
> widespread). However, call #4 seems to send every 20 ms, but then there 
> will be a pause or something in sending, in between which there will be 
> more packets from source call #10318 which are sent pretty much OK. 

Keep in mind that you're looking at a full duplex flow of packets in
and out. The fact that packets are not exactly one transmit for one 
every one received is not as important as identifying missing packets
in the form of large jumps in timestamp values.

> Then, the next packet for source call #4 will have a timestamp of 
> something like 33540, exactly 200 ms after the previous packet from 
> source call #10318. However, the next packet for SC (source call) #10318 
> increments 20 ms like it should. Every single packet then on (in this 
> capture, I recorded about 1500 packets) sends perfectly. iax2.rrdropped, 
> iax2.rrjitter, and iax2.iax.rrloss returned only 2 packets--the same 
> two, in the middle of the 1500 packets. So, out of 1500, these are the 
> only two that seem to have problems.

Asterisk can generally handle a couple of missing 20 millisecond packets,
but it can't compensate (or cover up) hugh timestamp jumps. Might
consider doing another ethereal run or two and see if you can reach
a conclusion that the timestamp jumps are in fact associated with the
choppy audio. If you can reach that conclusion, the next step is to
isolate why; is it bad code or the network that's causing the issue?

I don't recall from your previous postings, but could you repeat what
exact code versions are running on "my computer" and the remote "asterisk
server"?





More information about the asterisk-users mailing list