RE: SDP wrapper? Object-oriented API?

Hello Ken,


We started to develop a WebRTC JavaScript library which is available at

We are experts on VoIP and one of our objectives in the development of this library is to bring our expertise to Web developers and solve specific VoIP issues

We plan to add this “SDP manipulation” feature on our API so let us know if we can help on this subject




From: Ken Smith [] 
Sent: samedi 15 juin 2013 07:14
To: cowwoc
Cc: Suhas Nandakumar (snandaku);
Subject: Re: SDP wrapper? Object-oriented API?


I would believe that SDP is a mere "implementation detail" if it weren't for the fact that over on the webrtc-discuss mailing list, maybe half the discussions involve how to tweak the SDP to get it to interoperate with some gateway or other.


It's quite plausible to me that because of backwards compatibility issues, dealing with SDP directly is going to remain a critical feature of getting WebRTC to work with legacy systems. But among other things, that also leads me to believe that the industry has suffered a collective failure of imagination. SDP is a horrible API, and somebody, somewhere need to figure out a better way of getting these systems to interoperate without arbitrary edits to of opaque text files.


That's probably beyond the scope of WebRTC, but I'd appreciate it if everyone involved in designing these API's took this as an important data point. Folks like myself who want to use WebRTC but who aren't experts in VOIP quite justifiably hate everything about SDP and everything it stands for. It's a significant problem in desperate need of a real solution.




On Fri, Jun 14, 2013 at 8:58 PM, cowwoc <> wrote:

    An object wrapper would be nice but it wasn't really the point I was trying to make.

    My point is that if SDP really is an implementation detail then the specification must ensure that we can swap it out for something else in the future without breaking backwards compatibility. To me, that begins by specifying that the SDP argument is an opaque token. WebRTC 1.0 might use SDP while WebRTC 2.0 might use some other format.


On 14/06/2013 11:47 PM, Suhas Nandakumar (snandaku) wrote:

My 2 cents ..

I personally dont feel why would one want to modify SDP frequently than supporting few special cases. Also once the APIs, SDP Usages and constraints are finalized, i envision there will be much lesser need to modify SDP by hand.

Needing to have a object wrapper is fine by not sure if it is a MUST requirement.


From: cowwoc []
Sent: Friday, June 14, 2013 6:10 PM
Subject: Re: SDP wrapper? Object-oriented API?

      +1. I understand that the spec authors are determined to stick with
SDP and that's okay, but can we get the specification to explicitly
state that SDP arguments are to be treated as read-only opaque tokens at
this time? This leaves the door open to providing an object-oriented API
for mutating SDP at some future time.


On 14/06/2013 3:14 PM, wrote:

Isn't there somewhere a wrapper for SDPs? It's crazy trying to work
with them, and nothing have been decided yet about using a more
object-oriented API that modify the SPD strings by hand, while it has
been agreed several times on this list about SDPs should be
implementation detail... Also, such wrapper should be a basis where to
start to develop that higher-level API...

"Si quieres viajar alrededor del mundo y ser invitado a hablar en un
monton de sitios diferentes, simplemente escribe un sistema operativo
– Linus Tordvals, creador del sistema operativo Linux




Ken Smith
Cell: 425-443-2359


Received on Monday, 17 June 2013 13:39:46 UTC