Music on hold is not clear

Hi All,

we are using asterisk 1.2.8 on linux suse plat form . every thing is working perfectly except the MOH. while connecting to the to pbx from external line music on hold is breaking. I tried all stuff which has been put up the forums like changing the program which playing the music , tried feeding external music…

The most interesting part is when i assign music on hold to an extension and called from the internal line, then MOH is working. but if called from external phone the music start breaking very often.

Could you please help me … give me ur suggetions…

Thanks & Regards

what codec is the external line using? if it’s GSM, that could be the problem.

First, if you are using the mpg123 version of music on hold, please make sure you are using the newest version of mpg123. I believe asterisk only supports this version.

Secondly, you can try the ‘native’ version of music on hold. I believe you can find this module in asterisk add-ons. Personally, I believe native music on hold works better than the mpg123 version, but it’s up to preference I guess.

Matt Brooks
Digium, Inc.

Are you using gsm or wav files? I’ve had that problem in the past. I used sox to convert them to wav files and used the following config…works great for both internal and external calls afterwards…

application=application=/usr/local/bin/mpg123 -q -r 8000 -f 8192 -s --mono

Hope this helps…

One issue that I’ve had with most Music On Hold MP3 systems is the bit rate for said MP3 files is much higher than necessary. By default, most people rip MP3s to 128Kbps or Higher. I’ve had lots of success by down sampling MOH mp3 files to a bit rate of just 16kbps. This level of audio quality is fine for telephone handsets.

I hope this helps,

Did you get this to go at all? It sounds similar to the issue that I had and posted earlier (" TDM400P (TDM01B), Festival, Music on hold, noise"). I tried disabling GSM, as suggested on your thread, but that made no difference for me.


Is it just music on hold or does this affect recorded announcements as well? Do the voicemail announcements sounds OK for external callers?

For me, music on hold, festival and voicemail prompts, are garbled, for external callers. However call quality when connected is fine, and the voicemail that is left is ok. Everything is clear for internal calls.


I’ve had this problem before where the MOH sounded choppy and found it was the gains on my zaptel interfaces to my telco. Try pushing up the rx/tx gains in your zapata.conf to see if that helps.


If the problem affects MoH and recorded announcements of different types it could be a timing issue. If you are using ztdummy it might be something to do with PC hardware timing. I seem to remember reading about a few issues like this in

Under the 2.4 kernel ztdummy uses USB UHCI type controller for timing. It cannot use USB OHCI so check to see which your machine is using. Under 2.6 kernel it uses the PC hardware clock.

Have a look at:

I have also had problems myself with running Asterisk under VMware as ztdummy timing doesn’t appear great under VMware.

First of all let me thank all who have contributed to the discussion.

I tried out all the possibilities which was mentioned . But nothing seems to be working for me .

I thought it will be better to narrate some more details regarding the architechture of our setup. We have 15 digital pri line which terminates to our router. The voip network is connected to this router. All the external calls are routed to asterisk server through a siptrunk.We are not using any other interface cards.

We are facing problem only with MoH and voice mail, rest of the things are working perfectly. and even MoH in internal calls are working perfectly. But the MoH starts breaking for external calls.

I doubt the problem is because some device in the network(it can be switch ,router …etc) does not support the format/protocol for MoH.

First I thought it will be a bug in astersik , so i tried with the latest version of asterisk ie 1.4.0. But in this also the MOH is breaking, but its better than 1.2.x. but TIMESTAMP varable is not working. All ways its value is blank .

Please advice me how to solve this .


You are correct even the Voie mail is also breaking.

BTW I am running on an AMD rather than an Intel… You aren’t on an AMD are you?