Is WebRTC Open Source or Not?

April 7, 2014

It is and it isn’t at the same time.

two drops of water

Time to put some order into things. Mainly because someone told me this a couple of weeks ago, reminding me that WebRTC isn’t a single thing.

In most of the workshops and presentations I give about WebRTC, I say a few things about it. these are stitched within my slides and not necessarily in a single place:

  • WebRTC is a technology and not a solution
  • WebRTC is just a media engine that happens to have JS APIs and gets embedded into the browser
  • WebRTC specification isn’t closed

These are actually different things about different WebRTC’sā€¦

In general, what we have is 2 different WebRTC out there

1. WebRTC the specification

WebRTC the specification is what the IETF and W3C are working on.

The IETF takes care of the network part of this standard while the W3C is working on the Java Script APIs.

This is all in draft mode and hasn’t gone into specification yet. So expect it to change and wobble at the edges.

2. WebRTC the open source project

WebRTC the open source project can be found at

It is a piece of code that roughly implements the WebRTC specification. It is governed by Google and contributed freely to the “community” under a permissive BSD open source license.

It has a lot of junk in it at the moment (Jingle implementation).

It is hard to navigate, because the focus there is on compiling it into Chromium and Chrome.

It is the best open source media engine out there.

It gets updated frequently.

It works. Today.

Why it matters

Get your bearings.

The WebRTC open source project doesn’t implement everything in the proposed spec at the moment, and takes a bit of different approaches at the moment. That will probable merge with time when both these things get stabilized.

You can use the open source project wherever ā€“ as a whole, parts of it, port it, etc.

You can decide to build your own from scratch or from stuff you have laying around in your company already.

Another way to look at it? WebRTC is a spec that happens to have a single open source project implementing it already.

You may also like

Fixing packet loss in WebRTC

Fixing packet loss in WebRTC

Your email address will not be published. Required fields are marked

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}