node package manager


Website and documentation

Demo online



You can support mediasoup by making a donation here. Thanks!


Within your Node.js application:

$ npm install mediasoup --save

Prior to that, ensure your host satisfies the following requirements:

  • Node.js >= v4.8.0
  • POSIX based operating system (Windows not yet supported)
  • Python 2 (python2 or python command must point to the Python 2 executable)
  • make
  • gcc and g++, or clang, with C++11 support

NOTE: In Debian and Ubuntu install the build-essential package. It includes both make and gcc/g++.

Design goals

  • Be a WebRTC SFU (Selective Forwarding Unit).
  • Be a Node.js module.
  • Be minimalist: just handle the media layer.
  • Expose a modern ECMAScript 6 API in sync with WebRTC 1.0 and ORTC.
  • Work with current WebRTC client implementations.


  • Multiple conference rooms with multiple participants.
  • Multi-stream over a single (BUNDLE) transport (Plan-B and Unified-Plan).
  • IPv6 ready.
  • ICE / DTLS / RTP / RTCP over UDP and TCP.
  • Congestion control via REMB.
  • Extremely powerful (media worker subprocess coded in C++ on top of libuv).
  • Can handle RTP packets in JavaScript land.