On Thu, May 14, 2020 at 11:31 AM John Hughes <j...@calva.com> wrote: > On 14/05/2020 08:10, John Hughes wrote: > > I am having a problem with one of my callers who is using either g729 or > alaw. I can do alaw but not g729 so asterisk should negotiate alaw right? > In fact from the sip debug it looks like it does, but then I get the > dreaded "channel.c:5630 set_format: Unable to find a codec translation > path: (g729) -> (alaw)" and the call hangs up. Why? > > Last minute thought: Is it possible that the caller is sending g729 in RTP > even though the SIP negotiation clearly chooses alaw? Maybe I need some > RTP debugging. > > And in fact that is exactly what's happening. > > <--- SIP read from UDP:SUPPLIER:5060 ---> > > INVITE sip:LOCAL@ASTERISK:5060 SIP/2.0 > Via: SIP/2.0/UDP SUPPLIER:5060;branch=z9hG4bK02B5ab9c8e55f864da9 > From: <sip:REMOTE@SUPPLIER>;tag=gK02498cb1 > To: <sip:LOCAL@ASTERISK> > Call-ID: 205665777_90679951@SUPPLIER > CSeq: 539098 INVITE > Max-Forwards: 70 > Allow: > INVITE,ACK,CANCEL,BYE,REGISTER,REFER,INFO,SUBSCRIBE,NOTIFY,PRACK,UPDATE,OPTIONS,MESSAGE,PUBLISH > Accept: application/sdp, application/isup, application/dtmf, > application/dtmf-relay, multipart/mixed > Contact: <sip:REMOTE@SUPPLIER:5060> > P-Asserted-Identity: <sip:REMOTE@REMOTE-SUPPLIER;user=phone> > Supported: timer,100rel,precondition > Session-Expires: 1800 > Min-SE: 90 > Content-Length: 282 > Content-Disposition: session; handling=required > Content-Type: application/sdp > > v=0 > o=Sonus_UAC 176880 320591 IN IP4 SUPPLIER > s=SIP Media Capabilities > c=IN IP4 213.41.124.6 > t=0 0 > m=audio 8526 RTP/AVP 18 8 101*a=rtpmap:18 G729/8000* > a=fmtp:18 annexb=no*a=rtpmap:8 PCMA/8000* > a=rtpmap:101 telephone-event/8000 > a=fmtp:101 0-15 > a=sendrecv > a=ptime:20 > <-------------> > > So he says he wants g729 or alaw > > Found RTP audio format 18 > Found RTP audio format 8 > Found RTP audio format 101 > Found audio description format G729 for ID 18 > Found audio description format PCMA for ID 8 > Found audio description format telephone-event for ID 101 > Capabilities: us - (alaw|ulaw|gsm), peer - > audio=(alaw|g729)/video=(nothing)/text=(nothing), combined - (*alaw*) > Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x1 > (telephone-event|), combined - 0x1 (telephone-event|) > > And asterisk calculates that the common codecs are just alaw, > > So asterisk says: "let's do alaw": > > <--- Reliably Transmitting (no NAT) to SUPPLIER:5060 ---> > > SIP/2.0 200 OK > Via: SIP/2.0/UDP > SUPPLIER:5060;branch=z9hG4bK02B5ab9c8e55f864da9;received=SUPPLIER > From: <sip:REMOTE@SUPPLIER>;tag=gK02498cb1 > To: <sip:LOCAL@ASTERISK>;tag=as4502927f > Call-ID: 205665777_90679951@SUPPLIER > CSeq: 539098 INVITE > Server: Asterisk PBX 13.14.1~dfsg-2+deb9u4 > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, > PUBLISH, MESSAGE > Supported: replaces, timer > Session-Expires: 1800;refresher=uas > Contact: <sip:LOCAL@ASTERISK:5060> > Content-Type: application/sdp > Require: timer > Content-Length: 264 > > v=0 > o=root 227409966 227409966 IN IP4 ASTERISK > s=Asterisk PBX 13.14.1~dfsg-2+deb9u4 > c=IN IP4 ASTERISK > t=0 0 > m=audio 13948 RTP/AVP 8 101*a=rtpmap:8 PCMA/8000* > a=rtpmap:101 telephone-event/8000 > a=fmtp:101 0-16 > a=ptime:20 > a=maxptime:150 > a=sendrecv > > <------------> > > And when I look at the RTP debugging I see the data from the remote is: > > Got RTP packet from xx.xx.xx.xx:50644 (type 18, seq 001338, ts 610458, > len 000020) > > AAArgh! Type 18 is g729. Why on earth is the remote sending me g729 when > I clearly said the only thing I could do was alaw. > > Is this legal? > > Is the other side broken? >
It shouldn't be sending it, but as well we should be ignoring it. I believe we do ignore in modern versions, I can't speak for your old one. As for why... I don't really have an answer. -- Joshua C. Colp Asterisk Technical Lead Sangoma Technologies Check us out at www.sangoma.com and www.asterisk.org
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- Check out the new Asterisk community forum at: https://community.asterisk.org/ New to Asterisk? Start here: https://wiki.asterisk.org/wiki/display/AST/Getting+Started asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users