[svn-commits] oej: branch oej/videocaps r103757 - /team/oej/videocaps/channels/chan_sip.c

SVN commits to the Digium repositories svn-commits at lists.digium.com
Mon Feb 18 07:07:41 CST 2008


Author: oej
Date: Mon Feb 18 07:07:41 2008
New Revision: 103757

URL: http://svn.digium.com/view/asterisk?view=rev&rev=103757
Log:
If there's no b=CT but an b=AS in the SDP, use the b=AS as the maxcallbitrate as well as
maxvideobitrate given by the peer.

Modified:
    team/oej/videocaps/channels/chan_sip.c

Modified: team/oej/videocaps/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/team/oej/videocaps/channels/chan_sip.c?view=diff&rev=103757&r1=103756&r2=103757
==============================================================================
--- team/oej/videocaps/channels/chan_sip.c (original)
+++ team/oej/videocaps/channels/chan_sip.c Mon Feb 18 07:07:41 2008
@@ -6537,6 +6537,9 @@
 
 	
 	/* Get the b= bandwidths, this should really be performed with a notion of scope at session and media level */
+	/*! \note If you have multiple b=AS:xxx only the last one will be used since we're scanning both
+		session and media levels at the same time...
+ 	*/
 	iterator = req->sdp_start;
 	ct = as = tias = -1; /* indicates we didn't find one */
 	while ((b = get_sdp_iterate(&iterator, req, "b"))[0] != '\0') {
@@ -6552,6 +6555,10 @@
 			else
 				ast_verbose("Unable to parse b=%s in process_sdp\n", b);
 	}
+
+	/* If we have no CT setting, but an AS setting, use that as a maxcallbitrate anyway */
+	if (ct == -1 && as > 0)
+		p->peercaps.maxcallbitrate = as;
 
 	if(sipdebug_caps)	
 		ast_verbose("SIP PROCESS SDP: CT=%d, AS=%d, TIAS=%d\n", ct, as, tias);




More information about the svn-commits mailing list