How to license G.729 codec for use in Freeswitch
Contact FreeSWITCH community maintainers at [email protected] or visit http://www.freeswitch.org and learn more about the new
Official FreeSWITCH Licensed G729 module.
Using G.729 with Freeswitch or other PBX requires a license per channel unless it is used in a way that does not do convert the G.729 encoded data to another format; for example look at: Asterisk G.729 pass-thru mode.
Study or experiment with G.729 for free
Under patent law, it is a legitimate use to study or experiment with a patented technology without paying for a patent license. You only have to pay royalty fees if you sell a product based on the technology or use the technology in products internally (this includes using the codec in a commercial setting, even if you aren’t selling your platform, but only a service). Do not depend on this as legal advice, consult your own legal advisor.
Freeswitch G.729 Licenses
Howler provides a free trial so the codec performance can be tested on your system. There is also a floating license model which means you can deploy or ‘pool’ licenses across multiple servers.
Opensource implementation
An opensource implementation of G.729 codec can be found at http://www.readytechnology.co.uk/open/ipp-codecs-g729-g723.1/. It is a wrapper around Intel Integrated Performance Primitives. Please note: You might still have to pay royalty fees to the G.729 patent holders for using their algorithm and to Intel for using their libraries!
Freeswitch G.729 Installation notes
To allow your Freeswitch installation to accept G.729 calls, you must configure it to do so. The information below will show you how to do this, with the relevant modifications shown:
FreeSWITCH users must edit /usr/local/freeswitch/conf/vars.xml:
<X PRE PROCESS cmd=”set”
data=”global_codec_prefs=G729,G7221@32000h,G7221@16000h,G722,PCMU,PC
MA,GSM”/>
<X PRE PROCESS cmd=”set”
data=”outbound_codec_prefs=G729,PCMU,PCMA,GSM”/>
You must also disable the existing mod_g729 by editing /usr/local/freeswitch/conf/autload_configs/modules.conf.xml and making the following changes:
<! <load module=”mod_g729”> >
<load module=”mod_howlets”>