Summary:ASTERISK-07927: Asterisk crashes with jitterbuffer + mixmonitor
Reporter:Edward Eastman (whisk)Labels:
Date Opened:2006-10-13 04:54:14Date Closed:2007-03-26 12:52:52
Versions:Frequency of
Environment:Attachments:( 0) jitterbuffercrashbt.txt
( 1) utils.diff
Description:We're using asterisk as a SIP->PRI gateway - and with the fixed jitterbuffer enabled in zapata.conf we get a crash after about 30secs when we throw calls at it - i've attached a bt/bt full. Without the jitterbuffer it is stable.
Comments:By: Edward Eastman (whisk) 2006-10-13 05:28:06

Oh - forgot to mention we're also mixmonitoring all the calls.

By: Edward Eastman (whisk) 2006-10-13 06:00:53

Sorry for the fragmented report - the problem also doesn't occur if we don't mixmonitor - so it's only with jitterbuffer + mixmonitor.

By: Edward Eastman (whisk) 2006-10-17 09:36:36

I think ast_frame_slinear_sum is giving ast_slinear_saturated_add a null pointer when ast_channel_spy_read_frame tries to mix audio - I can work around this by checking for null in ast_frame_slinear_sum, but i don't think this is really a fix? Is it that the number of samples in the read frame is greater than in the write? I don't quite get it :)

By: Martin Vit (festr) 2006-10-20 05:29:37

i can also reproduce this with jitter simulation and mixmonitoring.

By: Anthony LaMantia (alamantia) 2006-11-02 15:47:45.000-0600

please apply this patch to utils.h and report back if it resolves the issue for you.

By: Edward Eastman (whisk) 2006-11-02 16:20:32.000-0600

This would fix the crash, (I did something similar in ast_slinear_saturated_sum), but is this just going to mask a more important issue?  I'll give it a try and see if there's any effects to audio or recordings.

By: Anthony LaMantia (alamantia) 2006-11-02 16:25:16.000-0600

sounds good, we await your feedback

By: Russell Bryant (russell) 2006-11-02 20:14:58.000-0600

Can you provide the jitterbuffer settings you are using?  Also, are you providing any extra options to MixMonitor?  What format is the recording?  Is it the same format as both ends of the call, or is there transcoding necessary?

I'm asking all of this because I have not been able to recreate this issue.

By: Edward Eastman (whisk) 2006-11-03 08:23:58.000-0600

I tried with jbenable=yes, jbmaxsize=800, jbresyncthreshold=1000,jbimpl=fixed,jblog=yes and also with adaptive jitterbuffer.  Mixmonitor is just MixMonitor(/path/to/recording.wav49|b).

The calls are coming in on sip as ulaw and going out zaptel on an e1.  I'd be happy to provide ssh into a server exhibiting the problem if you like.

Thanks, Ed

By: Serge Vecher (serge-v) 2006-11-09 09:37:05.000-0600

Russell: would you please look at this one ...

By: Russell Bryant (russell) 2006-11-09 09:46:48.000-0600

I have been very busy with school, and that is why I haven't made any further progress on this issue.  I will look at it when I can, but I do not want to assign the issue to myself due to time constraints.  If any other developer wants to lab this up to recreate the bug and fix it, feel free ...

By: Anthony LaMantia (alamantia) 2006-12-15 19:07:56.000-0600

im'm just updating this to see if anyone has a status update on this bug?
is it still happening with the latest asterisk1.4beta4? is anyone else working on this?

By: Serge Vecher (serge-v) 2007-03-07 15:30:47.000-0600

what are the test results with 1.4.1?

By: Serge Vecher (serge-v) 2007-03-26 12:52:51

if still an issue with 1.4.2, please reopen the issue with a new backtrace.