cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
438
Views
0
Helpful
5
Replies

Configuring Unity with G.729

Clifford McGlamry
Spotlight
Spotlight

I'm trying to understand how to engineer Unity to work with G.729 in the network. Based on the other posts I've looked it, it appears that unity needs to be running G.711 in order to provide the Unified Messaging capability (so the files can play through E mail.).<br><br>So, my question is, if I put the gateways in a region by themselves that can support G.711 or G.729, put the phones in a G.729 region, the will talk to unity ONLY using G.711, and put unity in a region that will only talk G.711.....will this work and provide full functionality? <br><br>What I'm worried about it what happens if a call hits the phone (G.729), and then gets forwarded to Unity. Will it go to G.711?<br><br>

5 Replies 5

kechambe
Level 7
Level 7

The codec that Unity is using to communicate with an IP phone or gateway does not dictate which codec the message will be recorded in. These two system functions are isolated processes.

CallManager controls which codec is used between the end points. If the end points don’t support the codec that CallManager is trying to use the call will fail. Unity can't influence the CallManager in the decision.

The setrecordformat.exe utility dictates which codec Unity will record the message in. CallManager can’t influence Unity in the decision. Keep in mind that Unity can record in GSM too which is a codec that CallManager does not support yet.

If a call comes to Unity from a phone that is using g.729 and Unity is set to record in g.711, Unity will transcode the g.729 voice call to g.711 before recording it and vise versa.

Keith

Keith Chambers
Diagnostic Engineer
Voice Network Team, San Jose
Cisco Systems, Inc.

So, can Unity be set to communicate in either codec (G.711 or G.729)? I was under the impression that Unity would only support a single Codec at a time (for communication with another endpoint). How do you set this?

It depends upon how one thinks of "supporting" codecs. Unity's interaction with codecs is going to happen at two disctinct places: 1) incoming audio stream (from the other end point) and 2) message recording (record format) and/or playback (codec of prompt set). Unity can only support one message record format (codec for message recording) at a time. You could set the record format to one codec, make a recording and then change the record format to another codec (after restarting Unity of course) and make another recording. There's going to be recordings in different message formats, but at any given time, you can only record one format. Make sense?

As far as incoming audio streams, Unity can support both g729 and g711 at the same time (as long as the g729 setup has been ran on Unity). In regards to "support" for these incoming audio streams, we'll define that as Unity telling CCM at registration time that it's media capabilites include both g729 and g711.

For record: Depending upon what the record format is set to, if the incoming stream does not match the record format, the stream will be transcoded to match the record format.

For playback: Depending upon what the prompt or message's format, if the incoming stream's format doesn't match, Unity will transcodec the playback stream to match the incoming stream.

Steve Olivier
Software Engineer
Cisco Systems

So how do you tell Unity to support G729 and G711 incoming audio streams? What is the G729 setup you refer to, and how do you do it?


Run the sl_g729a_setup.exe application, which is located in the Utilities folder. You may want to first check the Sounds and Multimedia Control Panel to see if it is already installed. Look for Audio Codecs under the Hardware tab. The one you're looking for is Sipro Labs G.729A.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: