Asterisk is an Open Source "all in one" telephony system. It's really hard to configure, but that's a story for another day.
Asterisk and g.729
Asterisk supports the g.729 codec to compress audio. Digium, the guys who support Asterisk development, have a commercial offering on their site.
There however is an open source g.729 codec implementation for Asterisk developed available (click here, for some reason Blogger is hiding my link). Installation questions are answered in the discussion on the Google group (here), but the installation is actually very simple.
All you need to do is wget the appropriate file to your /usr/lib/asterisk/modules directory and then mv it to codec_g729.so (or codec_g723.so as may be). It should take you only a few minutes to work out which file version to download.
Other Asterisk resource links
I found these links to be invaluable in sorting out my installation:
Click on this link if you are getting a Non existent user in Asterisk CLI message every couple of seconds when you run asterisk -r.
VOIP info was far and away the most comprehensive resource site I could find. It has a wealth of information and configuration examples for Asterisk.