We are pleased to announce a major new release of the Digium G.729 codec module for Asterisk. This release incorporates a number of changes, and in addition, includes a new performance testing tool which will make it easier for users to choose the best ‘flavor’ of the module for the particular system they are installing it on.
The changes are:
– Version Numbering
The module’s version numbering is now more in line with our other products; the numbers will be in the form ‘X.Y.Z_A.B.C’, with the ‘X.Y.Z’ component representing the version of Asterisk the module is intended to operate in, and the ‘A.B.C’ component representing the actual version of the codec module code itself. Please note that the 1.6.0 modules will work in any Asterisk 1.6 release from 1.6.0 onwards, until such time as a new version is needed; when that occurs, we will provide 1.6.0 modules *and* modules designed for the later releases.
The new modules were built using the latest (4.3) release of the GNU C compiler, and use a number of new optimization methods available in that release to significantly improve encoding/decoding performance. In addition, we now build the modules in both 32-bit and 64-bit varieties for each CPU flavor that support both modes, so that users with 64-bit CPUs running a 32-bit Linux installation can still have a version of the module optimized for their CPU type. GCC 4.3 also provides optimizations for some newer CPU families (Intel Core2, AMD Barcelona, and others), so we’ve made those flavors available with this release.
– Performance Testing
In the past, we’ve offered different CPU flavors of the module to hopefully provide the best encoding/decoding performance, but it was up to the user to install and test each flavor to determine which one provided the best performance. This process is difficult and time consuming, and did not always provide reliable results. To help with this situation, we’ve now released a tool called ‘benchg729’, which can be run on the target system and will execute encoding speed tests (using a real audio sample) for each CPU flavor that we offer for that platform, and then report the results and suggest the best performing module flavor for that system. Note that the use of this tool requires that the system have at least one valid channel license for the Digium
G.729 codec installed; it will not run without a license.
The new codec modules and benchg729 tool are now available at:
New codec modules are available for Asterisk 1.2, Asterisk 1.4 and Asterisk 1.6.x on both x86-32 and x86-64 Linux platforms, and the benchg729 tool is also available for x86-32 and x86-64 Linux platforms.
We hope these product updates improve your system performance, and as always, we thank you for supporting Asterisk and using Digium products!
To Learn more about the Digium G.729 codec, visit our Asterisk Software Page.