@David55: I think that this url: http://www.callcentric.com/faq/8/100 reads as the G729 to be the #1 default codec?
When a call is setup between my VOIP provider (Callcentric) and my ATA, I understand that they negotiate which codec to use. Both ends support G729. Throw in Asterisk in between the two as a pass through and I can then select Gtalk or Callcentric to make \ receive calls. I am acclimating the relatives to use G729 Callcentric and familiarizing the more advance ones to use a SIP URI.
I found an article discussing Passthrough: http://www.voip-info.org/wiki/view/Asterisk+G.729+pass-thru and it suggested sip.conf contain:
[general]
disallow=all
allow=g729
allow=ulaw
allow=alaw
I don’t think that any of these codecs support the Gtalk codecs:
[quote]Today, Google Talk supports the following standard voice codecs:
•PCMA
•PCMU
•G.722
•GSM
•iLBC
•Speex
We also support the following codecs from Global IP Sound: ISAC, IPCMWB, EG711U, EG711A.[/quote]
So I guess I would need to add G.722 to the list above: this chart shows speex codec is on par with G729 when it come to bandwidth. Not sure how one would go about having Asterisk convert G.722 or G729 (from ATA) to Speex for Gtalk. How to check if Speex is in my distro of Asterisk:
Disclaimer: this command is for informational purposes only.
It does not indicate anything about your configuration.
INT BINARY HEX TYPE NAME DESCRIPTION
1 (1 << 0) (0x1) audio g723 (G.723.1)
2 (1 << 1) (0x2) audio gsm (GSM)
4 (1 << 2) (0x4) audio ulaw (G.711 u-law)
8 (1 << 3) (0x8) audio alaw (G.711 A-law)
16 (1 << 4) (0x10) audio g726aal2 (G.726 AAL2)
32 (1 << 5) (0x20) audio adpcm (ADPCM)
64 (1 << 6) (0x40) audio slin (16 bit Signed Linear PCM)
128 (1 << 7) (0x80) audio lpc10 (LPC10)
256 (1 << 8) (0x100) audio g729 (G.729A)
512 (1 << 9) (0x200) audio speex (SpeeX)
1024 (1 << 10) (0x400) audio ilbc (iLBC)
2048 (1 << 11) (0x800) audio g726 (G.726 RFC3551)
4096 (1 << 12) (0x1000) audio g722 (G722)
If anyone has experience setting up Asterisk as a pass through and configuring both an ATA to negotiate using G729 with Callcentric I would be interested in how you implemented this. Is this something you would setup in the setup of the Callcentric channel in sip.conf by specifying the codecs:
[callcentric]
type=peer
context=from-callcentric ;how incoming calls are handle: defined in: extensions.conf
host=callcentric.com
defaultuser=1777XXXXXXX
secret=MyPassword
fromuser=1777XXXXXXX
fromdomain=callcentric.com
insecure=invite
disallow=all
allow=g729
I tried this and forced the ATA to use G729, however, calls did not go through to the ATA. I disabled “force G729 Codec” and calls went through using the ulaw codec.
root@athomehost:~# asterisk -rx "sip show channels"
Peer User/ANR Call ID Format Hold Last Message Expiry Peer
204.11.192.38 3609170032 370f97e627b119f 0x4 (ulaw) No Tx: ACK <guest>
192.168.8.110 101 49df06406bb43e6 0x4 (ulaw) No Tx: ACK 101
2 active SIP dialogs
Apparently, I need another control mechanism to force G729 codec usage? Or should allowed codecs be specified in extensions.conf?
I would like all callcentric traffic to be configured to negotiate use of G729 codec, with Asterisk as the passthrough (broker?). Any examples are appreciated.