Re: [iaxmodem-users] [hylafax-users] Modems Wedging
Brought to you by:
faxguy
From: Lee H. <fa...@ho...> - 2010-03-02 02:36:06
|
James Lamanna wrote: > On Thu, Aug 27, 2009 at 9:21 PM, Lee Howard<fa...@ho...> wrote: > >> James Lamanna wrote: >> >>>> Here's the last few lines from the iaxmodem output: >>>> >>>> [2009-08-27 09:15:07] Registration completed successfully. >>>> [2009-08-27 09:16:02] Registration completed successfully. >>>> [2009-08-27 09:16:57] Registration completed successfully. >>>> [2009-08-27 09:17:52] Registration completed successfully. >>>> [2009-0[2009-08-27 09:32:53] IAX2 jitter - last_ts: 50000, ts: -15516 >>>> >>>> >>>> Maybe the jitter line being the last line explains the Freeze? >>>> >>>> >>> I thought the negative value for ts was a bit suspicious, so I decided to >>> dig >>> around in the source a bit, and also disabled the jitterbuffer. >>> >>> Disabling the jitterbuffer seems to have prevented the wedge/hang problem >>> of the modem, but I don't see in the code why it would hang on that >>> condition, >>> since the while loop is (last_ts + 20 < iaxevent->ts) >>> >> Okay, that's some good information. I'll have to look into it more deeply >> when I have some time (hopefully this weekend?). >> >> But truth told the iaxmodem jitterbuffer was probably a bad idea. I'm not >> sure that I've ever seen it do any real good. >> > > Ahh, now I understand what is going on here and why I was confused. > iaxevent->ts and last_ts are both _unsigned_, but the printf is printing them > as signed integers. -15516 is a pretty large number when it is unsigned :) > So that while loop was only going to execute (4294951780 - 50020) / 20 = > 214,745,088 times! ouch. To be honest I don't know why the IAX2 timestamp would suddenly have high bits set and then go back to not having them set. They must be indications of something I missed while reading the IAX2 spec... or a bug of some sort. However, in the next release any jump in the timestamp that seems obviously too long to be jitter will simply be ignored. So the wedge/hang shouldn't happen in the next release. Thanks, Lee. |