Summary:ASTERISK-17568: crash in musiconhold, using external mpg123
Reporter:raarts (raarts)Labels:
Date Opened:2011-03-16 17:26:16Date Closed:2011-06-07 14:01:08
Versions: Frequency of
Environment:Attachments:( 0) backtrace.txt
Description:One of our customers experiences crashes twice a day. No special circumstances I can see, except they use pretty large mp3 files (up to 200Mb). The mpg123 is the CentOS 5.5 standard one. Backtrace attached.


I might test, but the file res_musiconhold.c was not changed in these versions.
Comments:By: David Woolley (davidw) 2011-03-17 09:24:09

This is a memory management error, so you will be asked to run valgrind.  You should also compile with thread debugging enabled, and check for errors involving invalid operations on locks.

It looks to me to be a local channel hangup race condition problem, rather than a res/musiconhold one.

(I never understand why people convert MP3s on the fly, rather than converting them to a more telphone friendly format, offline.  There should be no reduction in quality.)

By: Leif Madsen (lmadsen) 2011-03-31 13:05:31

Per davidw:  https://wiki.asterisk.org/wiki/display/AST/Debugging

Additionally, I heavily agree -- converting MP3s on the fly makes no logical sense to me. It's a heavy burden on the CPU, and you're relying on external applications.

Converting these MP3s to ulaw, wav, or some other format which Asterisk can play natively makes more sense to me.

By: raarts (raarts) 2011-03-31 13:26:56

A test setup is currently being readied for this problem. I'll report back later.

About the mp3 problem, this now also shows up at a customer (radio station) that uses their own mp3 stream as music on hold. They are contemplating using a sound card and connecting that to the sound equipment, because the mp3 encoding/decoding delay messes up the synchronisation for callers. ALSA also requires an external application correct? I'm open to suggestions.

By: raarts (raarts) 2011-03-31 13:27:52

Tried 4 older mpg123 program versions, makes no difference.

By: Leif Madsen (lmadsen) 2011-04-19 09:54:44

If you are able to reproduce this on a development box and produce valgrind output per davidw, then please reopen the issue and attach the requested information. Thanks!