Hi Karl,

that's funny you are asking this, am also currently looking at how to 
solve the g722 codec negotiation riddle, in my particular case to play 
nicely together with a KonfTel 300 IP conference phone.

> In other words, incoming calls are easy since codecs are negotiated
> from least-known (the remote party) to most-known (my endpoint) and my
> codecs can simply be preferred accordingly to match the remote. 

Look at setting the channel variable_SIP_CODEC - however it might or 
might not work depending on your version of Asterisk, see for example:

  https://issues.asterisk.org/view.php?id=13243

Here's a dialplan snippet that might give you another hint or two.

exten => 123,1,NoOp(-- Inbound read: ${CHANNEL(audioreadformat)} --)
exten => 123,n,NoOp(-- Inbound native: ${CHANNEL(audionativeformat)} --)
exten => 123,n,Set(WIDEBAND=0)
exten => 123,n,Set(WIDEBAND=${REGEX("g722" 
${SIPPEER(${SIPCHANINFO(peername)}:codecs)})})
exten => 123,n,ExecIf($[${WIDEBAND} = 1]|Set|_SIP_CODEC=g722)
exten => 123,n,Dial(SIP/abc123)

Please note the SPACE between ${REGEX("g722" and ${SIPPEER

> Outbound calls seem harder.  Our endpoints always negotiate g.722 between
> themselves and Asterisk and then Asterisk must transcode to the preferred
> codec of the REMOTE party.  Not ideal.

Together with the g722 transcoding patch for Asterisk 1.4.17 it does not 
work out, unfortunately. Currently I cannot make a statement on a more 
recent 1.4 release.

g722 patch: http://users.netplex.net/~andrew/asterisk/#g722

Older patch that I use for 1.4.17: 
http://users.netplex.net/~andrew/asterisk/g722-20080110.patch.gz

However I can successfully employ setting _SIP_CODEC if in the example 
above instead of "Dial()" I do a "MusicOnHold()" - both with or without a 
preceeding ANSWER; without means early audio playing of the native g722 
encoded MOH file. My snom starts out with alaw, and then we switch to 
g722.

> Is there an elegant way to do this?

Consider the codec negotiation patch? I'd be interested to hear about 
your results!

  http://www.b2bua.org/wiki/AsteriskCodecNegotiationPatch
  https://issues.asterisk.org/view.php?id=4825

Philipp


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to