I contracted with Allison Smith for my IVR menu, since she does all the other prompts. She sent me a .wav file that sounds excellent. I uploaded it to the media files, and it would not work.
I uploaded the file to the PBX, but the IVR would not play it. There are several things that can cause this behavior.
Symptoms:
1. You dial in, and you here it ring, and then a click. Then silence.
2. You press a menu item from the script, in my case #2 which is company directory. I was placed into the company directory script. So I KNOW the IVR script was running, but the prompt did not play.
The problem in my case is the audio file format. A Google search revealed that this is a common problem. Various forms of “wave” files exist, and have different properties. The one Allison sent me was .wav, which was a windows format.
The system supports .wav, .gsm, and g729 for voice recordings.
Partial Solution:
At www.nch.com.au/switch I found a utility (free) that converts wav to gsm. The file size is MUCH smaller on the gsm file that is created. As you might guess, the audio quality is much lower as well.
My question here for you guys is this. Why wouldn't the original .wav file from Allison play? I tried reducing the bit rate, converting to mono, changing to 8 bit.... still won't play.
My problem is that the uploaded .gsm file sounds poor. I would like to have better auido quality similar to the original .wav file.
when you type 'file
when you type 'file alisonaudiofile.wav' does it report back..
RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz
if not you need to resample into 16bit mono 8khz
as far as converting, asterisk itself can do conversions btw
vpbx01*CLI> file convert
Usage: file convert
Convert from file_in to file_out. If an absolute path is not given, the
default Asterisk sounds directory will be used.
Example:
file convert tt-weasels.gsm tt-weasels.ulaw
absolute paths are usually required
Fixed
BobRafferty you were right on the money. And that utility worked well too. I was able to upload the file and it played fine after this bitrate conversion.
Thank you all for your replys. I appreciate it.
The thing is, the audio quality is still really poor. I mean... 8kbps is a really low bitrate. No wonder it sounds bad. I'm surprised that the PBX doesn't support audio files of at least toll quality.
Am I missing something? Would eeman's or axisinternet's methods yield better audio quality results?
Or is 8kbps just the limit for the system. The other default prompts sound fuzzy as well.
read up on G711 (what the
read up on G711 (what the telephone companies use) and the Nyquist theorem. 8kbps is 2x the audio spectrum of G711. The Future of Telephony pdf has a good section on it.
do they sound fuzzy when listening to them from a phone? Are you sure its not just your phone? What phones are you using?
Hi eeman No matter what
Hi eeman
No matter what phone, external or internal. And the default prompts sound a little fuzzy too. Just a little The codec being used is g711 at the moment so that should be good. You are right, I didn't think about the 8kbps being better than toll qual.
Internal phones are SNOM. Mines a 370. No matter though. Even external pstn callers hear some hiss (white noise) that comes in with the voice modulation.
It's not bad. Actually, it's pretty good. I just expected better. To tell you the truth, it's probably good enough.
Thanks for your help.
The phone probably makes the difference
When I use Grandstream (ugh) the prompts and most everything else sounds choppy here and there. Move to Linksys or Polycom and it gets a lot better. g711 is the way to go I think.
You can also try changing your samples from wav to ulaw. Sometimes this sounds better. To do this, you need an editor like Goldwave or similar. Load the wav (or whatever), and resample at 8000 Hz. Save as raw sound (.snd), with mono u-law properties. (In Goldwave you set this in 'Save as'). After saving, change the .snd extension to .ulaw. Load this file like usual. The bad part is that you usually can't preview the sound because your client won't support the .ulaw extension. But you can just call the IVR you assign it to and check it that way.
However, this requires the g711 libraries
The previous conversion does require that you loaded the g711 libraries on Asterisk complile time, though...
You will have to down sample it to 8000 bits from the 48000 that she sends you...
I have found the following software to be very helpful in doing this.
Easy Audio Converter
http://www.audiotool.net
Hope this helps.
Bob Rafferty