[asterisk-bugs] [Asterisk 0012501]: autoframing only works if SDP contains rtpmap
noreply at bugs.digium.com
noreply at bugs.digium.com
Tue May 27 14:26:30 CDT 2008
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=12501
======================================================================
Reported By: slimey
Assigned To: file
======================================================================
Project: Asterisk
Issue ID: 12501
Category: Channels/chan_sip/CodecHandling
Reproducibility: always
Severity: minor
Priority: normal
Status: ready for testing
Asterisk Version: 1.6.0-beta7.1
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Disclaimer on File?: N/A
Request Review:
======================================================================
Date Submitted: 04-23-2008 04:00 CDT
Last Modified: 05-27-2008 14:26 CDT
======================================================================
Summary: autoframing only works if SDP contains rtpmap
Description:
I'm currently doing an interop with a SIP provider who requires 10ms
packetisation of media (PCMA Audio). I've set autoframing=yes in [global]
of sip.conf, and "sip show settings" shows that Auto Framing is enabled.
The SDP that comes from the SIP provider looks like:
v=0
o=BroadWorks 8348755 1 IN IP4 172.19.0.20
s=-
c=IN IP4 172.19.0.20
t=0 0
m=audio 24342 RTP/AVP 8
a=ptime:10
However, when Asterisk replies with its own SDP, it's still using 20ms:
v=0
o=BroadWorks 8348747 2 IN IP4 172.19.0.20
s=-
c=IN IP4 172.19.0.20
t=0 0
m=audio 24242 RTP/AVP 8 101
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=ptime:20
a=fmtp:101 0-11
a=sendrecv
I've checked through chan_sip.c, and from what I can see in the code,
autoframing only works if the incoming SDP has a=rtpmap lines
Around line 6638 (I have a patch of my own in there which may have
affected the line numbers) of chan_sip.c:
} else if (strlen(a) > 5 && !strncasecmp(a, "ptime", 5))
{
[...]
if (framing && last_rtpmap_codec) {
last_rtpmap_codec is only set when it parses an a=rtpmap line in the SDP
Asterisk should apply the ptime even without an rtpmap line, as rtpmap is
only (as I understand it) _required_ if the m= line references a dynamic
rtp type.
======================================================================
----------------------------------------------------------------------
svnbot - 05-27-08 14:26
----------------------------------------------------------------------
Repository: asterisk
Revision: 118558
U branches/1.4/channels/chan_sip.c
------------------------------------------------------------------------
r118558 | file | 2008-05-27 14:26:29 -0500 (Tue, 27 May 2008) | 4 lines
Fix an issue where codec preferences were not set on dialogs that were not
authenticated via a user or peer and allow framing to work without rtpmap
in the SDP.
(closes issue http://bugs.digium.com/view.php?id=12501)
Reported by: slimey
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=118558
Issue History
Date Modified Username Field Change
======================================================================
05-27-08 14:26 svnbot Note Added: 0087391
======================================================================
More information about the asterisk-bugs
mailing list