[Freeswitch-users] Codec negotiation with carriers

Anto potxoka at gmail.com
Mon Mar 12 00:42:50 MSK 2012


Hi

I still do not find the solution and not really understanding, because
it works:-S

regards
anto

2012/3/7 Anto <potxoka at gmail.com>:
> Hello
>
> Attached file, with the traces of the different tests (with different
> configurations).
>
> http://pastebin.freeswitch.org/18599
>
> I have read the url that you mentioned, the initial guide FreeSWITCH,
> that of mod_sofia, applications, etc.. I believe that most of the wiki
> (maybe when do not give the solution, read as much documentation is
> worse idea :-S, lock me more).
>
> I made a configuration that works (I have not tested the audio), but
> earlier (before I started "touch" the profiles) if I could talk to a
> physical phone (several times). The problem is that I can not
> understand why it works and sometimes not, and I would like to learn
> :-). Not only do and forget, so I would like to learn and less
> disturbing to the mail list and (maybe in the future) to help other
> newbies like me :-). Thanks !
>
> Best regards
> Anto
>
> 2012/3/7 Michael Collins <msc at freeswitch.org>:
>> You may want to read up on codec negotiation:
>> http://wiki.freeswitch.org/wiki/Codec_negotiation
>>
>> There are different ways to handle codecs depending on your needs. I'd read
>> that page first and then try out some of the suggestions. If you're still
>> having trouble then I'd recommend getting SIP traces of the traffic and
>> putting them on pastebin.freeswitch.org. The gang here is pretty good at
>> looking over logs and helping with diagnosing problems. :)
>>
>> -MC
>>
>> On Tue, Mar 6, 2012 at 2:30 PM, Anto <potxoka at gmail.com> wrote:
>>>
>>> Hi
>>>
>>> I am following the steps in this direction
>>> "http://wiki.freeswitch.org/wiki/SBC_Setup" and
>>> "http://wiki.freeswitch.org/wiki/Provider_Configuration:_Broadvoice",
>>> I reread the whole entire wiki (or so I lack), but do not quite
>>> assimilate or finding the right formula to operate the bridge :-S.
>>>
>>> I captured traffic with ngrep, I enabled sip-trace, console logconsole
>>> 8, etc., but unless the transcoding error (only two of the hundreds of
>>> combinations of settings that I have), I have not seen anything
>>> "weird" :-S
>>>
>>> I have 3 suppliers, each with this codec:
>>>
>>> 1)           2)              3)
>>> G729        G729        G729
>>> G711u      G711A      G711A
>>> G711A     G711u       G711u
>>>                G723         G723
>>>                                  G722
>>>                                  GSM
>>>
>>> I think I understand that when making an outside call, FreeSWITCH
>>> follow these steps:
>>>
>>> USER -> (   Dialplan -> profile (internal) -> bridge (external) ->
>>> profile (external)   ) -> PROVIDER
>>>
>>> PROVIDER -> (   Dialplan -> profile (external) -> bridge (internal) ->
>>> profile (internal)  ) -> USER
>>>
>>> right?
>>>
>>> Internal and external I set as follows (and not many changes have
>>> done, and not remember it, because I've been testing days). If
>>> outbound (outbound-codec-prefs) all codecs specified system does not
>>> handle the call, I have to specify these by hand. If active
>>> inbound-proxy-media, not the caller. Some of the time I worked, but
>>> gave me an error that it can do transcoding G729 codec (I do
>>> passthrough), but the proxy does not work half.
>>>
>>> If the outbound property (outbound-codec-prefs) all codecs specified
>>> system does not handle the call, I have to specify these by hand. If
>>> active inbound-proxy-media, not the caller. Some of the time I worked,
>>> but gave me an error that it can do transcoding G729 codec (I want to
>>> make passthrough), but the "proxy media" does not work.
>>>
>>> Basically, what I do is that local users can use all the codecs
>>> allowed (iLBC, GSM, ...) and make an outside call, use the carrier
>>> that will indicate the priority but the free codec.
>>>
>>> With this configuration works for me, but I would like to understand
>>> why so if it works and otherwise no. Coming to understand how to
>>> configure properly and so as not to disturb the mail list ;-). Thanks
>>> !
>>>
>>> Best regards
>>> Anto
>>>
>>> vars.xml
>>>
>>> <X-PRE-PROCESS cmd="set"
>>>
>>> data="global_codec_prefs=iLBC,G7221,speex,PCMU,PCMA,BV16,G726-32,GSM,G729,G723,AMR"/>
>>> <X-PRE-PROCESS cmd="set"
>>>
>>> data="carriers_codec_prefs=PCMU,PCMA,G729,G723,AMR,iLBC,G7221,speex,BV16,G726-32,GSM"/>
>>>
>>> internal.xml
>>>
>>> <param name="codec-prefs" value="$${global_codec_prefs}"/>
>>> <!--param name="inbound-codec-prefs" value="$${global_codec_prefs}"/>
>>> <param name="outbound-codec-prefs" value="$${global_codec_prefs}"/-->
>>> <!--param name="inbound-codec-negotiation" value="generous"/-->
>>> <param name="inbound-codec-negotiation" value="greedy"/>
>>> <param name="inbound-late-negotiation" value="true"/>
>>> <param name="renegotiate-codec-on-reinvite" value="true"/>
>>> <!--param name="inbound-proxy-media" value="true"/-->
>>>
>>> external.xml
>>>
>>> <param name="codec-prefs" value="$${carriers_codec_prefs}"/>
>>> <param name="inbound-codec-prefs" value="$${carriers_codec_prefs}"/>
>>> <!--param name="outbound-codec-prefs" value="$${carriers_codec_prefs}"/-->
>>> <param name="outbound-codec-prefs" value="PCMU,PCMA,G729,G723"/>
>>> <!--param name="inbound-codec-negotiation" value="generous"/-->
>>> <param name="inbound-codec-negotiation" value="greedy"/>
>>> <param name="inbound-late-negotiation" value="true"/>
>>> <param name="renegotiate-codec-on-reinvite" value="true"/>
>>> <!--param name="inbound-proxy-media" value="true"/-->
>>>
>>> dialplan/outbound.xml
>>>
>>> <include>
>>>        <context name="internal">
>>>                <extension name="outbound">
>>>                  <condition field="destination_number"
>>> expression="^(\d+)$">
>>>                        <!--action application="set"
>>> data="inherit_codec=true"/-->
>>>                        <!--action application="set"
>>> data="hangup_after_bridge=true"/-->
>>>                        <!--action application="set"
>>> data="proxy_media=true"/-->
>>>                        <action application="bridge"
>>> data="sofia/gateway/provider-2/$1"/>
>>>                  </condition>
>>>                </extension>
>>>        </context>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>



Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list