Proxy Media
From FreeSWITCH Wiki
Contents |
What it is
Proxy Media mode puts Freeswitch in a "transparent proxy mode" for the RTP streams. The RTP streams still pass through freeswitch (unlike bypass media mode), however it is lighter on the CPU because freeswitch never even parses the packets or processes them in any way, it simply forwards them onwards.
Why you might want to use it
- Less CPU usage
- Most likely able to handle t38 passthru (UDPTL)
- Allows freeswitch to handle codecs that it does not officially support
- SBC network traversal goodies
- Should work even if endpoints are behind NAT's
How to detect when it should be used
[18:07] bkw_: late-neg [18:07] bkw_: regexp on the sdp [18:08] bkw_: then decide
Please document!
Enable late codec negotiation in the SIP profile:
<param name="inbound-late-negotiation" value="true"/>
How to enable it
Set proxy_media=true before the bridge
<action application="set" data="proxy_media=true"/>
Alternatively, configure the SIP profile to use proxy media by default:
<param name="inbound-proxy-media" value="true"/>
(see example in conf/sip_profiles/internal.xml)
Important note
You can't "proxy_media" two outbound legs.
This means that if you originate a call through some api (console, for example), this will NOT work.
In fact, the 1st leg will answer before the 2nd leg is called.
The 1st one will share the SDP with Freeswitch but will not be able to re-share with the 2nd one.
FAQs
i get "Codec PROXY PASS-THROUGH encoder error" message
Enable late negotiation
proxy media doesn't work
Enable late negotiation.
