Asterisk with g729 Codec

Hai All,

As per the internet, reference to use the G729 Codec with Asterisk is license need to purchase.

I have the Asterisk Server installed on Centos 7.X OS. Now my operator is ready to send the call on G729 Codec and I have an IVR treatment on the Asterisk Machine. After the IVR treatment, the calls will again dial out on the same SIP trunk.

For the above do I need to purchase a license?

Free codec available at http://asterisk.hosting.lv/

Script Install

wget http://download.vicidial.com/optional-apps/codec-install.sh

chmod 777 codec-install.sh

./codec-install.sh


Manual install

Asterisk v.1.8, 11, 12, 13, 14, 15 32 bit intel machine

cd /usr/src

wget http://asterisk.hosting.lv/bin/codec_g729-ast18-gcc4-glibc-pentium4.so

cp codec_g729-ast18-gcc4-glibc-pentium4.so /usr/lib/asterisk/modules/codec_g729.so

chmod +x /usr/lib/asterisk/modules/codec_g729.so

asterisk -rc “module load codec_g729.so”

Asterisk v.1.8, 11, 12, 13, 14, 15 64 bit intel machine

cd /usr/src

wget http://asterisk.hosting.lv/bin/codec_g729-ast18-gcc4-glibc-x86_64-pentium4.so

cp codec_g729-ast18-gcc4-glibc-x86_64-pentium4.so /usr/lib64/asterisk/modules/codec_g729.so

chmod +x /usr/lib64/asterisk/modules/codec_g729.so

asterisk -rc “module load codec_g729.so”

Asterisk v.1.8, 11, 12, 13, 14, 15 AMD machines

cd /usr/src

wget http://asterisk.hosting.lv/bin/codec_g729-ast18-gcc4-glibc-athlon-sse.so

cp codec_g729-ast18-gcc4-glibc-athlon-sse.so /usr/lib/asterisk/modules/codec_g729.so

chmod +x /usr/lib/asterisk/modules/codec_g729.so

asterisk -rc “module load codec_g729.so”

Now check the whether codec is loaded

asterisk -rx “core show translation”

Although they seem to have dropped the GPL claim, I still can’t find any licence from Intel permitting the use of their code.

Not necessarily. It depends on exactly what the IVR does, and whether you have G.729 encoded versions of all the prompt files. You should be able to to record such files if you have a G.729 capable phone, but you’ll need a licence, during the actual conversion, if you want to convert existing files.

It is strange to not support the basic mu-law and A-law codecs.

Note, if you specifically mean a FreePBX IVR, you need to ask on the FreePBX forum. I was assuming that you are using the term generically, and have implemented it from first priciples, so know how it is implemented in terms of Asterisk primitivesa.

Probably a really good ‘bad habit’ to break.

This allows any user to edit a file that will be executed by root.

A simple

chmod +x codec-install.sh

is sufficient.

“But I’m the only user on this box” may be true today, but may not in the future. A bad habit is a bad habit.

1 Like

I have a simple IVR that answers the call and based on the option of customer pressed there will prompt will be played to the end user and forward that call to the trunk which supports g729 codec supported.

Below is my sample IVR prompt file.
Channels : 1
Sample Rate : 8000
Precision : 16-bit
Sample Encoding: GSM

means i can use g729 code without license ? or any issue will that lock my hardware ?

With the Sangoma codec, you will need a licence to transcode the prompt file.

From a quality point of view, transcoding GSM to G.729 is not a good idea. In practice it also requires two back to back transcodes (GSM to signed linear, then signed linear to G.729), which is not an efficient use of CPU power. You should record the prompt directly in G.729, which would mean you were using the provider’s or phone’s licence, or you should record it in a format like signed linear.

OK.

Two options.

  1. If I wanted to use the existing call recordings in the same format then for transcoding I need a g729 codec license.

2 . If I convert my IVR Recordings from GSM to G729 Codec and my trunk provider support g729 codec and do still I need to have a license for using that?

Also if my provider supports the g729 codec I can also do a conference call. Is there an license concerns on that ?

Conferencing within Asterisk requires media samples to be added together. That can only be done in signed linear format, so any G.729 must be transcoded to signed linear and the signed linear transcoded back again. I believe that will require two licences for every G.729 participant in the conference.

Thanks, @david551 ,

Is there a condition that the g729 code is used as per the script which is given in the ticket and hardware can get locked?

Or where we can find the GPL license concerns for the g729 code with Asterisk.

The .lv one no longer appears to claim to have any licence. The GPL concern arose because it contained, and still seems to contain, code from Intel, which, at least, wasn’t licensed for production use. Moreover, that code is still included with clauses in the source file headers saying not to be distributed except under a licence from Intel, and, as there is no licence, at all, that I can see, there is no evidence that Intel have issued a public licence for it, and it seems unlikely that they have.

More research would probably turn up the current Intel licence terms, but I suspect that they still have a restriction against production use.

I was unable to work out what this was trying to say.

Hai @david551 - If i follow the link http://asterisk.hosting.lv/ is there any chance that hardware get locked from Asterisk ?

This forum is not a source for legal advice in regards to software licensing or consequences of such. Any usage of the linked module is on you.

@jcolp @david551

Just wanted to know

IF am converting my all prompt files on the asterisk server with g729 codec support. And my SIP Trunk provider have g729 codec and they will send the call with g729 and Asterisk Server answer the call and play the IVR with g729 codec and if required it will connect to agents on soft-phone(Soft phone also have g729 codec support).

The above scenario does this required to have g729 codec licensee on my asterisk server ?

At face value that is correct, it would not be required.

@jcolp Thanks for the clarification.

1.For that do i need to install g729 codec on my asterisk server ?
If yes. Can you help with link from where can install them ?

For what? Sangoma provides a codec which has a per-channel fee, available from the Sangoma website. I can’t comment on anything else.

For the above situation :

“IF am converting my all prompt files on the asterisk server with g729 codec support. And my SIP Trunk provider have g729 codec and they will send the call with g729 and Asterisk Server answer the call and play the IVR with g729 codec and if required it will connect to agents on soft-phone(Soft phone also have g729 codec support).”