I want to begin by stating that I am in no way affiliated with the makers of the software I am going to mention in this simple guide.
I am a Mac user, but I also have a spare computer running my Asterisk PBX and have long been wondering about creating my own voice prompts and menus. If you plan to use pre-recorded files instead of live text-to-speech, this guide will help simplify the process for you.
The Applications We Will Be Using
- Audacity – http://audacity.sourceforge.net
- Say (optional) – http://nsgn.net/software/say/
A note about SoX Wrap: It doesn’t appear to have been updated in a great while. While I have a PowerPC Macintosh, I do not know how well it will work on an Intel system.
Now let’s get down to business. I will discuss two methods here: using Apple’s (or Cepstral’s) TTS voices to create your prompts, and recording your own voice to use for your prompts.
Using TTS Voices
This is the method that uses Say. Additionally you could run the say command from the command line under OS X, but Say makes everything a little bit easier.
- Download and install the three software packages mentioned.
- Open Say and select whichever voice you prefer to use.
- Click the “Options” button and you notice the three sliders (Speed, Pitch, and Volume) as well as a check box that says “Speak to file on desktop”.
- Use the sliders to adjust the voice of your choosing to your liking, then type in a phrase and listen to how it sounds.
- When you have the voice sounding how you want it, check the box at the bottom, type the phrase you want to use as a prompt and hit enter/return, and you’ll notice a file instantaneously appears on your desktop. Give this file a better name (preferably something descriptive).
- Repeat.
- At this point you could potentially skip to using SoX Wrap to batch convert your prompt files to GSM, but you may want to use Audacity to fine-tune your prompt files.
Using Your Own Voice
This is a relatively easy thing to do. Just make sure your recording environment has minimal ambient sound and use a decent microphone.
- Open up Audacity and record your various voice prompts very clearly.
- Fine-tune your prompts to ensure there are no long periods of silence.
- Save the individual prompts with descriptive filenames. Remember to export them rather than saving the project file.
Now To Convert
This is where you’ll need SoX Wrap. Make sure you have it installed properly before proceeding.
One good idea is to move all your new voice prompt sound files to their own folder if you haven’t done so already.
- Open Sox Wrap
- The default settings for the input side will be fine.
- Change the settings on the output side to:
- To: .gsm
- Sample Rate: 8000 (make sure the box is checked)
- Data Encoding: GSM
- Data Size: 16-bit words
- Volume can be left alone unless you really need a boost, but you should have taken care of that in Audacity.
- Channels: 1
- You can change the output path. I would recommend keeping your newly-converted .gsm files separate from the originals.
- Now click the “Add File(s)” button at the top and navigate to your folder of prompts. Click Open.
- Now click “Run SoX”
It shouldn’t take long at all and your prompts will be converted. Now just upload them to the machine running Asterisk and design your dialplan accordingly.