Re: [Bug 20810] SDP inadequately defined

On 30 Oct 2014, at 13:22, Stefan Håkansson LK <stefan.lk.hakansson@ericsson.com> wrote:

> On 29/10/14 23:33, Matthew Kaufman (SKYPE) wrote:
>> 
>> 
>> Matthew Kaufman
>> 
>>> -----Original Message----- From: Harald Alvestrand
>>> [mailto:harald@alvestrand.no] Sent: Tuesday, October 28, 2014 8:35
>>> PM To: public-webrtc@w3.org Subject: Re: FW: [Bug 20810] SDP
>>> inadequately defined
>>> 
> 
>>> But the WEBRTC (W3C) bugtracker is about tracking issues that can
>>> be solved by *modifying W3C specifications*. There is nothing here
>>> that can be fixed by modifying a W3C specification.
>> 
>> Sure it can. The W3C specification could specifically call out the
>> existing specs explicitly in such a way that one would know what to
>> implement.
>> 
>> The W3C specification could more explicitly define the specific SDP
>> that is to be generated and understood.
>> 
>> The W3C specification could *not use SDP as an API* and then this
>> problem goes away entirely.
> 
> Is that really the case? In the W3C document, as far as I can see, the 
> actual SDP (or RTCSessionDescription) is never dealt with in any other 
> way than applying to the PeerConnection or sending off to a remote peer.
> 

And yet every time I build something in webRTC, I almost always need to extract and parse and
often modify the SDP. 
Recent examples include :
	Displaying the video bandwidth used - The stats object doesn’t currently specify the stream type - just the codec - so you need to
		dig in the sdp to deduce the video ssrc id, then use that to filter the streams.
	Reducing the audio bandwidth to work over 2.5g - need to set the average bitrate with code like this:
                        if (sdpLines[i].search("a=rtpmap:") == 0) {
                            var bits = sdpLines[i].split(" ");
                            if (bits[1].search("opus") == 0) {
                                var num = bits[0].split(":")[1];
                                var line = "a=fmtp:" + num + " minptime=50; maxaveragebitrate=8000;";
                                sdpLines.splice(i, 0, [line]);
                            }
                        }
     
Tim.

Received on Thursday, 30 October 2014 13:35:03 UTC