[asterisk-users] sip ... codec conversion matrix

Gordon Henderson gordon+asterisk at drogon.net
Fri Aug 10 10:19:17 CDT 2007


On Fri, 10 Aug 2007, Cesc Santa wrote:

> inline ...
>
> On 8/10/07, Gordon Henderson <gordon+asterisk at drogon.net> wrote:
>>
>> On Fri, 10 Aug 2007, Cesc Santa wrote:
>>
>>> Hi,
>>>
>>> I have asterisk 1.2.18.
>>
>> Installed from binary or compiled by yourself?
>
>
> I compiled it myself ...

OK, Great.

>> I just took a peak at the command: > show translation
>>> and I saw that I can only convert from/to ulaw, ulaw, gsm and slin.
>>> No speex, no ilbc ... do I need a license or compile something extra?
>>> The G723, 726 and 729 ... I need a license, is that it? one for all of
>> them?
>>> or for each?
>>>
>>> How do I get them to work? not just pass-through ... I need conversion.
>>
>> Speex and ilibc will be compiled into asterisk automatically. It is on my
>> systems (Debian)
>
>
> I can use them ... but cannot do translation ... only "pass-through" ... it
> complains that
> there is no function to convert to internal codec (pcm?)
>
> G726 should also be compiled in as standard - it's supplied with asterisk.
>
> no license to use it needed?

None at all.

> These may not be "free" enough for your Linux distribution, so that might
>> be why you don't have them if you're running a binary installation. Eg.
>> iLbc isn't "free" enough for standard Debian.
>
> well, i use debian, but not the asterisk binary distro ... i compiled myself
> from 1.2.18 sources

OK. This is what I do too!

I have Debian Sarge on my development box.

So it's strange you don't have iLBC and speex. There is a debian package 
for speex:

On my development box:

bob:~# dpkg -l | grep speex
ii  libspeex-dev   1.1.6-2        The Speex Speech Codec
ii  libspeex1      1.1.6-2        The Speex Speech Codec
ii  speex          1.1.6-2        The Speex Speech Codec

but I have no iLBC packages - they appear to be in the asterisk source...

bob:~# asterisk -rx 'show translation'
          Translation times between formats (in milliseconds)
           Source Format (Rows) Destination Format(Columns)

          g723   gsm  ulaw  alaw  g726 adpcm  slin lpc10  g729 speex  ilbc
    g723     -     -     -     -     -     -     -     -     -     -     -
     gsm     -     -     2     2     3     2     1     7     -    31    19
    ulaw     -     4     -     1     3     2     1     7     -    31    19
    alaw     -     4     1     -     3     2     1     7     -    31    19
    g726     -     4     2     2     -     2     1     7     -    31    19
   adpcm     -     4     2     2     3     -     1     7     -    31    19
    slin     -     3     1     1     2     1     -     6     -    30    18
   lpc10     -     5     3     3     4     3     2     -     -    32    20
    g729     -     -     -     -     -     -     -     -     -     -     -
   speex     -     5     3     3     4     3     2     8     -     -    20
    ilbc     -     6     4     4     5     4     3     9     -    33     -

so I get everything apart from g723 and g729. I didn't do anything special 
to the makefile, etc. (other than set the i586 flag as my target box needs 
it)

> G723 and G729 are patent encumbered and so you need licenses to run the
>> software. You can get G729 licenses from Digium, but I don't know about
>> G723...
>
> ok ... i will contact digium for g729 license ... anyone knows about g723?

Do you actually need g729? I'd not spend the money on it unless you really 
needed it.

I've not heard of anyone using or offering g723...

And I have to say; you're not missing much by not having iLBC or speex. 
The CPU overhead is significant and the voice quality is somewhat 
"dubious" :) Unless you absolutely really desperately need to compress the 
data stream to squeeze out every ounch of bandwidth, then I'd really not 
use them.

If you need to compress, start with G726, then move to GSM, and then if 
you need better audio quality, buy g729 licenses.

Gordon



More information about the asterisk-users mailing list