[OpenSIPS-Users] codec_delete_except_re() has no effect

Răzvan Crainea razvan at opensips.org
Wed Apr 19 03:40:43 EDT 2017


Hi, Jeff!

Unfortunately I don't think this will work.
The idea is that during a message processing, the same SDP buffer is 
seen by all functions. Changes do not immediately alter the buffer, but 
they are registered as lumps (changes that are later applied), when the 
message processing is done. So even in the branch route you will see the 
initial SDP, because it is part of the same processing context (branch 
route is triggered by the t_relay() function).

Best regards,

Răzvan Crainea
OpenSIPS Solutions
www.opensips-solutions.com

On 04/18/2017 09:44 PM, Jeff Pyle wrote:
> Dragomir,
>
> If Zoiper speaks only G.729, and SIP.js speaks only G.711, rtpengine 
> isn't going to help.  It doesn't transcode.  From its github page 
> <https://github.com/sipwise/rtpengine>:
>
>     /Rtpengine/ does not (yet) support:
>
>       o Repacketization or transcoding
>
>
> Is iLBC an option for you in SIP.js and Zoiper?  It's license free and 
> sounds a little bitter.  If not, Asterisk or FreeSWITCH could perform 
> this task with the appropriate G.729 licenses.
>
>
>
>
> Răzvan,
>
> Is there any effect of using either the codec manipulation or 
> rtpengine in a branch route?  I ask this admittedly not understanding 
> the buffers in use.
>
>
>
>
> - Jeff
>
>
>
>
>
> On Tue, Apr 18, 2017 at 12:39 PM, Dragomir Haralambiev 
> <goup2010 at gmail.com <mailto:goup2010 at gmail.com>> wrote:
>
>     Hi Razvan,
>
>     How to make follow connection using rtpengine?
>
>     Zoiper(g729) <-----> Opensips(rtpengine) <--------> browser
>     (SIP.JS with g711)
>
>     2017-04-18 19:10 GMT+03:00 Răzvan Crainea <razvan at opensips.org
>     <mailto:razvan at opensips.org>>:
>
>         Hi, Jeff!
>
>         Unfortunately you can't use both rtpengine and codec_delete_*,
>         that's because each change different buffers. The
>         codec_delete_* function runs on the initial SDP received, then
>         rtpengine completely overwrites the SDP with whatever
>         rtpengine replied.
>         The only way you can do something like this (although it may
>         be very ugly) is to store the rtpengine reply in a pvar using
>         the 3rd[1] parameter of the rtpengine_* functions and perform
>         some text replaces[2] on it, then replace the body "manually".
>
>         [1]
>         http://www.opensips.org/html/docs/modules/2.3.x/rtpengine.html#rtpengine.f.rtpengine_offer
>         <http://www.opensips.org/html/docs/modules/2.3.x/rtpengine.html#rtpengine.f.rtpengine_offer>
>         [2]
>         http://www.opensips.org/html/docs/modules/2.3.x/textops#idp5907728
>         <http://www.opensips.org/html/docs/modules/2.3.x/textops#idp5907728>
>
>         Best regards,
>
>         Răzvan Crainea
>         OpenSIPS Solutions
>         www.opensips-solutions.com <http://www.opensips-solutions.com>
>
>         On 04/18/2017 06:49 PM, Jeff Pyle wrote:
>>         Hello,
>>
>>         This is on OpenSIPS 2.3, downloaded from git and compiled today.
>>
>>         An INVITE arrives over TLS with the following SDP:
>>
>>         v=0
>>         o=- 1492528621 1492528621 IN IP4 172.22.202.191
>>         s=Polycom IP Phone
>>         c=IN IP4 172.22.202.191
>>         t=0 0
>>         m=audio 16852 RTP/SAVP 115 9 0 8 110 18 127
>>         a=rtpmap:115 G7221/32000
>>         a=fmtp:115 bitrate=48000
>>         a=rtpmap:9 G722/8000
>>         a=rtpmap:0 PCMU/8000
>>         a=rtpmap:8 PCMA/8000
>>         a=rtpmap:110 iLBC/8000
>>         a=fmtp:110 mode=20
>>         a=rtpmap:18 G729/8000
>>         a=fmtp:18 annexb=no
>>         a=rtpmap:127 telephone-event/8000
>>         a=rtcp:16853
>>         a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:[stripped]
>>         a=setup:actpass
>>         a=fingerprint:sha-1 [stripped]
>>         m=audio 16888 RTP/AVP 115 9 0 8 110 18 127
>>         a=rtpmap:115 G7221/32000
>>         a=fmtp:115 bitrate=48000
>>         a=rtpmap:9 G722/8000
>>         a=rtpmap:0 PCMU/8000
>>         a=rtpmap:8 PCMA/8000
>>         a=rtpmap:110 iLBC/8000
>>         a=fmtp:110 mode=20
>>         a=rtpmap:18 G729/8000
>>         a=fmtp:18 annexb=no
>>         a=rtpmap:127 telephone-event/8000
>>         a=rtcp:16889
>>
>>         I run
>>           codec_delete_expect_re(PCMU|PCMA|telephone-event)
>>         but it doesn't have any effect. The INVITE leaving after
>>         t_relay() over UDP to localhost on a different port is the
>>         same as when it came in (with the exception of the c= line
>>         because of rtpengine).
>>
>>         At log_level=6 the only log entry I see is
>>           DBG:sipmsgops:create_codec_lumps: creating 0 streams
>>
>>         I'm not sure where to go from here.
>>
>>
>>         - Jeff
>>
>>
>>
>>         _______________________________________________
>>         Users mailing list
>>         Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>         http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>         <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20170419/80d881b9/attachment-0001.html>


More information about the Users mailing list