[ previous ] [ next ] [ threads ]
 To :  Marian Podgoreanu <marian@v...>
 From :  Bill Simon <bill@b...>
 Subject :  Re: [yate] Prevent Yate from transcoding
 Date :  Thu, 21 Mar 2013 23:01:23 -0400
For the sake of testing, I set this:

[contexts]
.*=;rtp_forward=no;formats=mulaw

[default]
.*=;formats=mulaw
.*=jingle/${called}@v...;line=GV;ojingle_version=0;ojingle_flags=noping;redirectcount=5;checkcalled=false;dtmfmethod=rfc2833


Placing a call from SIP to the jingle target, I see this sequence in the logs with sniffer turned on:

Sniffed 'call.preroute' time=1363918521.221970^M
  param['formats'] = 'gsm'^M

(call comes in with gsm only)

Returned false 'call.preroute' delay=0.000949^M
  param['formats'] = 'mulaw'^M

(preroute sets formats to mulaw only)

Sniffed 'call.route' time=1363918521.221970^M
  param['formats'] = 'mulaw'^M

Returned true 'call.route' delay=0.008331^M
  param['formats'] = 'mulaw'^M

It looks good so far, and then this line appears:

20130322021521.231271  Not changing to 'mulaw' from 'gsm' [0x172c6cf0]

Sniffed 'call.execute' time=1363918521.221970^M
  param['formats'] = 'mulaw'^M

Returned true 'call.execute' delay=0.011453^M
  param['formats'] = 'mulaw'^M

then a masquerade and the other call.execute because of google voice redirect...

Returned true 'call.execute' delay=0.001421^M
  param['formats'] = 'mulaw'^M


Then the jingle leg connects, mulaw as expected

Sniffed 'chan.rtp' time=1363918521.428908^M
  param['format'] = 'mulaw'^M

Now the SIP side, and what? where did gsm come from?

Sniffed 'chan.rtp' time=1363918525.223366^M
  param['module'] = 'sip'^M
  param['format'] = 'gsm'^M

then because I have SIP debugs on I can see the SIP 200 being sent back to the client with GSM codec in the SDP.

Thanks for your help,
Bill


On Mar 21, 2013, at 3:56 AM, Marian Podgoreanu wrote:

> Hi,
> 
> Can you send the routing rule(s)?
> 
> Marian
> 
> On 3/20/2013 5:11 AM, Bill Simon wrote:
>> Yate seems to automatically transcode even when I try to prevent it from doing so.
>> 
>> The scenario is interworking between Jingle and SIP. On the Jingle side the only format available is mulaw (set in yjinglechan.conf). On SIP I have enabled mulaw and gsm (in ysipchan.conf).
>> 
>> In prerouting and routing I set formats=mulaw so that this should be the only format offered on either leg.
>> 
>> When I connect a SIP client that has only gsm enabled, Yate transcodes between it and mulaw anyway on a call from SIP to Jingle. This message appears in the log:
>> 
>> 20130320010428.133080  Not changing to 'mulaw' from 'gsm' [0xfe74b60]
>> 
>> In this case, I want the call to fail (and return a SIP 415 Unsupported Media Type) when the SIP caller is trying to force gsm and I am trying to force mulaw. How do I stop Yate from transcoding?
>>