Brussels / 2 & 3 February 2019


Beyond the monoculture

Alternative WebRTC implementations in C and Python

WebRTC’s most prominent implementations rely on the codebase. In this talk, Jeremy Lainé and Lennart Grahl will present two alternative WebRTC / ORTC implementations (aiortc in Python and RAWRTC in C), their use cases, the challenges in writing these implementations and the benefits for the WebRTC ecosystem.

Both Chrome’s and Firefox’s (to some extent) WebRTC implementations are built on top of a common codebase hosted at, which serves as the de facto reference implementation of WebRTC. While it is popular, hacking on the codebase or embedding into a custom project is a complex endeavour.

Alternative implementations of WebRTC (and ORTC) exist in the form of libraries which are simpler to understand and embed:

  • RAWRTC (in C, currently data channels only), written by Lennart Grahl
  • aiortc (in Python), written by Jeremy Lainé

The talk will focus on the following aspects:

  • Use cases and demos for these alternative WebRTC implementations, such as Internet of Things or server-side real time audio and video processing.
  • The genesis and challenges involved in implementing these two libraries.
  • How the WebRTC ecosystem benefits from having such alternative WebRTC implementations.


Jeremy Lainé