If all calls in/out are g729; no transcode=min cpu impact?

In a specialized rollout I’m doing, I have the good fortune to control virtually all the connections both inbound and outbound. As such, I plan to have all of those connections use the g.729 codec.

Given that I’m using only g.729 in from the DID provider (over IAX2), connections from the hardphones (over SIP), and connections from some customized software (also SIP) – am I correct in my belief that there should be no transcoding required?

More info: I will be making extensive use of ‘MeetMe’ as well as voicemail, and will also be doing a lot of recording and playback of audio captured from meetme conferences.

I’d like to avoid transcoding as much as possible in the hopes of getting the best CPU utilization at the least cost.

Does anyone have tips on the scale requirements of an environment such as I describe?

Should I do the recording in one particular way or another so that the records do not need to be re-coded each time they are played back?

There should be no transcoding if everybody is using G729; That does not mean that you will achieve the lowest CPU utilization with G729. G729 uses less bandwidth at the cost of more calculations (IE CPU time).

As I study this and realize that recording & playback are a large part of what I’ll be doing, combined with the CPU utilization and cost of g729 that it probably makes sense to use GSM end to end provided the quality is high enough. So far, it seems to be.

There are two distinct usages I’m building out – one is voice traffic, person to person in a pretty typical pbx use case. For that, g.729 may have enough value to be worth the trouble. Since the total connections will be 10->10 (twenty total paths at a time) CPU usage on a modern machine should be fine. The other case is different, and the source quality is actually going to be the limiting factor. GSM itself will not further degrade the signal.